![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Ho testato l'Expert Advisor standard di ExpertMACD nel tester di strategie, che viene consegnato insieme a MT5, genera errori:
2013.03.30 19:18:09 Core 2 genetic pass (0, 15) testato con errore "OnInit failed" in 46 ms
2013.03.30 19:18:08 Core 1 genetic pass (0, 13) testato con errore "OnInit failed" in 32 ms
2013.03.30 19:18:07 Core 2 genetic pass (0, 5) testato con errore "OnInit failed" in 0 ms
Ho scoperto cercando che l'errore è nel modulo: "SignalMACD" quando si ottimizzano i periodi Fast e Slow MACD (quando si spuntano le caselle nei parametri del tester della strategia).
Qualcuno ha incontrato un tale problema e come affrontarlo? (quando c'è un solo tick in qualche modo funziona, ma ci sono errori non appena si controllano due tick)
Impostare una gamma diversa di cambiamenti Lento e Veloce. L'errore scomparirà. Puoi semplicemente ignorarlo.
È possibile scrivere una funzione con un numero variabile di parametri in MQL5? Per esempio, come in StringConcatenate(...) o Print(...)?
È possibile scrivere in MQL5 una funzione con un numero variabile di parametri? Per esempio, come in StringConcatenate(...) o Print(...)?
Per esempio, potete fare un array la cui dimensione sarà uguale al numero dei vostri parametri come parametro.
Mi interessa un numero variabile di parametri come in StringConcatenate. Qualcosa del genere: string Concatenate(string s, ...); È possibile?
Simile è possibile. Si possono passare fino a 64 parametri a una funzione.
Simile è possibile. Si possono passare fino a 64 parametri a una funzione.
E possiamo ottenere tipi arbitrari per tutti gli argomenti solo tramite overloading? Cioè, non solo la stringa, ma anche il doppio può essere passato a una funzione, per esempio. stringa s = Concatenate("abc",2.0, "def");
E i tipi arbitrari per tutti gli argomenti possono essere ottenuti solo con l'overloading? Cioè, non solo la stringa, ma anche il doppio può essere passato alla funzione, per esempio. stringa s = Concatenate("abc",2.0, "def");