#import "user32.dll" int RegisterWindowMessageW(string MessageName); int PostMessageW(int hwnd,int msg,int wparam,uchar &Name[]); #import #define INDICATOR_NAME "Indicator_name" //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void StartCustomIndicator(int hWnd,string IndicatorName,bool AutomaticallyAcceptDefaults=false) { uchar name2[]; StringToCharArray(IndicatorName,name2,0,StringLen(IndicatorName)); int MessageNumber=RegisterWindowMessageW("MetaTrader4_Internal_Message"); int r=PostMessageW(hWnd,MessageNumber,15,name2); Sleep(10); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int OnInit() { //--- // In my code where I launch the indicator int hWnd=WindowHandle(Symbol(),0); StartCustomIndicator(hWnd,INDICATOR_NAME); return(INIT_SUCCEEDED); }
Alain Verleyen :
Teşekkürler, şimdi çalıştı, ancak yalnızca ikinci denemeden itibaren çalışıyor. ea'yı başlatırsam, gösterge çağrısı / .ex4[123] açılamıyor hatası veriyor. Ea zaten bir grafiğe eklenmişse ve onu yeniden eklemeye çalışırsam çalışır. Bu nasıl çözülebilir?
Georgiy Liashchenko :
Emin misin?
...mql4'te, mql5 ChartIndicatorAdd() 'daki gibi bir grafiğe gösterge ekleyecek bir komut yoktur. Gerçekten üzücü....
Vasyl Nosal :
Emin misin?
Eh, biraz biliyorsanız, lütfen paylaşın... :)
Emin misin?
Georgiy Liashchenko :
Eh, biraz biliyorsanız, lütfen paylaşın... :)
Eh, biraz biliyorsanız, lütfen paylaşın... :)
:))))))))))))))))))))))))))))))))))))))))) )
Ah özür dilerim. Birkaç dakika.
Hmm. Ben mql4'te olduğunu sanıyordum.
Belki bu size yardımcı olur
ChartApplyTemplate()
Vasyl Nosal :
Evet, ama bu bir durum değil, örneğin bir tane satıyorum ve bir müşteri onu kullanmak istiyor, aynı şablona sahip değil. Dosya ile versem de farklı bir görünüm tercih edebilir. Bu nedenle göstergeyi ea'dan başlatmak istiyorum.
:))))))))))))))))))))))))))))))))))))))))) )
Ah özür dilerim. Birkaç dakika.
Hmm. Ben mql4'te olduğunu sanıyordum.
Belki bu size yardımcı olur
ChartApplyTemplate()
Georgiy Liashchenko :
Evet, ama bu bir durum değil, örneğin bir tane satıyorum ve bir müşteri onu kullanmak istiyor, aynı şablona sahip değil. Dosya ile versem de farklı bir görünüm tercih edebilir. Bu nedenle göstergeyi ea'dan başlatmak istiyorum.
Evet, ama bu bir durum değil, örneğin bir tane satıyorum ve bir müşteri onu kullanmak istiyor, aynı şablona sahip değil. Dosya ile versem de farklı bir görünüm tercih edebilir. Bu nedenle göstergeyi ea'dan başlatmak istiyorum.
Hmm. Belki de "kaynak" kullanarak EA'ya gösterge eklemekten daha iyidir.
#resource "\\Indicators\\SampleIndicator.ex4" int OnInit () { double value= iCustom ( _Symbol , _Period , "::Indicators\\SampleIndicator.ex4" , 0 , 0 );
Vasyl Nosal :
çalışmıyor, ea ele alıyor ama gösterge yok
Hmm. Belki de "kaynak" kullanarak EA'ya gösterge eklemekten daha iyidir.
Georgiy Liashchenko :
çalışmıyor, ea ele alıyor ama gösterge yok
çalışmıyor, ea ele alıyor ama gösterge yok
Grafiğe gösterge eklemez . ind'yi ea ex.4 dosyasında derler.
Servis masasına yazıp mql5'teki gibi ChartIndicatorAdd() eklemelerini isteyebilir misiniz?
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
merhaba insanlar,
Mevcut sorunu çözmeye çalışıyorum. mql4'te, mql5 ChartIndicatorAdd() 'daki gibi bir grafiğe gösterge ekleyecek bir komut yoktur. Gerçekten üzücü.
Ea'mın bir gösterge başlatmasını istiyorum. Forumları kaydırırken böyle bir çözümle karşılaştım ama düzgün çalışmıyor. Lütfen yardım et!
Bu kod, göstergeyi başlatmaya çalışır, ancak dosya adını düzgün okumaz. Yalnızca (gösterge adının ilk harfi) açmaya çalışır.ex4 veya I.ex4
Açıkça görülen çözüm chararray idi, ancak derleyici "parametre dönüştürmeye izin verilmiyor" hatası veriyor. Peki nasıl çözebiliriz?