#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:
Grazie, ora ha funzionato, ma funziona solo dal secondo tentativo. Se avvio l'ea, la chiamata dell'indicatore restituisce l'errore fail to open / .ex4[123]. Se l'ea è già collegato a un grafico e provo a ricollegarlo, allora funziona. Come può essere risolto questo?
Georgiy Liashchenko:
Sei sicuro?
...In mql4 non esiste un comando che aggiunga un indicatore ad un grafico come in mql5 ChartIndicatorAdd(). E' davvero triste....
Vasyl Nosal:
Sei sicuro?
Beh, se ne conosci qualcuno, per favore condividilo... :)
Sei sicuro?
Georgiy Liashchenko:
Beh, se ne conosci qualcuno, per favore condividilo... :)
Beh, se ne conosci qualcuno, per favore condividilo... :)
:))))))))))))))))))))))))))))))))))))))))))))))))))
Oh, scusate. Pochi minuti.
Hmm. Pensavo che fosse in mql4.
Forse questo ti aiuterà
ChartApplyTemplate()
Vasyl Nosal:
Sì, ma questo non è un caso perché per esempio io vendo un ea e un cliente vuole usarlo, lui non ha lo stesso modello. Anche se lo do con il file, potrebbe preferire un outlook diverso. Pertanto voglio inizializzare l'indicatore da ea.
:))))))))))))))))))))))))))))))))))))))))))))))))))
Oh, scusate. Pochi minuti.
Hmm. Pensavo che fosse in mql4.
Forse questo ti aiuterà
ChartApplyTemplate()
Georgiy Liashchenko:
Sì, ma questo non è un caso perché per esempio io vendo un EA e un cliente vuole usarlo, lui non ha lo stesso modello. Anche se gli do un file, potrebbe preferire un outlook diverso. Quindi voglio inizializzare l'indicatore dall'ea.
Sì, ma questo non è un caso perché per esempio io vendo un EA e un cliente vuole usarlo, lui non ha lo stesso modello. Anche se gli do un file, potrebbe preferire un outlook diverso. Quindi voglio inizializzare l'indicatore dall'ea.
Hmm. Forse che aggiungere l'indicatore nell'EA usando il "ricorso".
#resource "\\Indicators\\SampleIndicator.ex4" int OnInit() { double value=iCustom(_Symbol,_Period,"::Indicators\\SampleIndicator.ex4",0,0);
Vasyl Nosal:
non funziona, l'ea ottiene la maniglia ma nessun indicatore
Hmm. Forse che aggiungere indicatore in EA usando "resourse".
Georgiy Liashchenko:
non funziona, ea ottiene la maniglia ma nessun indicatore
non funziona, ea ottiene la maniglia ma nessun indicatore
Non è aggiungere un indicatore al grafico. Si compila ind nel file ea ex.4.
Forse scrivere al srvice desk e chiedere di aggiungere ChartIndicatorAdd() come in mql5?
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Salve gente,
Sto cercando di risolvere il problema attuale. In mql4 non esiste un comando che aggiunga un indicatore ad un grafico come in mql5 ChartIndicatorAdd(). E' davvero triste.
Voglio che il mio ea inizializzi un indicatore. Scorrendo i forum mi sono imbattuto in una soluzione simile, ma non funziona correttamente. Per favore aiutatemi!
Questo codice cerca di lanciare l'indicatore, ma non legge correttamente il nome del file. Cerca di aprire solo (prima lettera del nome dell'indicatore).ex4 o I.ex4
La soluzione ovvia era chararray ma il compilatore restituisce l'errore "parametr conversion not allowed". Quindi come possiamo risolverlo?