PDA

Visualizza Versione Completa : Come faccio a creare un EA



rayyyore
15:34,
La chiamata alla funzione deinit () fa uscire un EA? Come posso fare un salvataggio o un abbandono di EA, per inerzia se non è possibile connettersi a un server o simili?

paloocnogwh
05:30,
La chiamata alla funzione deinit () fa uscire un EA? Come posso fare un salvataggio o un abbandono di EA, per inerzia se non è possibile connettersi a un server o simili?
Nella funzione di avvio, come prima cosa se (la tua creteria si ferma == true) return (0); questo gli impedirà di fare qualcosa oltre l'istruzione if se è vera. Non rimuoverà l'EA dalla piattaforma.

rayyyore
06:51,
Grazie per la risposta Quindi, se chiamo return (0) in init () dal tester startegy, verrà salvato? Non è possibile impedire alla funzione start () di eseguire ogni tick in modo da specificare i propri criteri. Penso di averlo capito ora

paloocnogwh
08:12,
Grazie per la risposta Quindi, se chiamo return (0) in init () dal tester startegy, verrà salvato? Non è possibile impedire alla funzione start () di eseguire ogni tick in modo da specificare i propri criteri. Penso di averlo capito ora
No, return (0) nella funzione init si limiterà a trasferire a start () è necessario utilizzarlo in start () per causare un ciclo senza istruzioni nel ciclo. L'EA è inattivo Il tuo test nel caso (...) potrebbe essere una chiamata a un'altra funzione in cui i tuoi test sono fatti. come se (yourcriteria () == true) return (0); Probabilmente ci sono altri che sono molto più dotati di MT4 rispetto a me. Forse una di quelle persone sa come effettivamente causare la rimozione di se stessa.

aleje
09:33,
Grazie per la risposta Quindi se chiamo return (0) in init () dal tester di egia verrà salvato?
salvataggio di init () sì. poi va dritto per start () puoi usare la funzione IsConnected () per scoprire se il tuo mt4 è connesso al server del broker. se vuoi sapere se EA è in esecuzione su backtester, puoi usare la funzione IsTesting (). un esempio di ciò che inserirai nelle prime righe della funzione start () è. Codice inserito int start () {if (IsTesting ()) {return (0); }/... altri codici qui ...} idealmente, questo disabiliterà efficacemente il backtest di EA. non sono sicuro del perché lo vorrai.