- per esempio - lotto di negoziazione nelle impostazioni = 0, l'EA non può aprire una negoziazione perché lotto = 0.
- Limitazione dello spread nell'Expert Advisor, non apre posizioni.
- Non ci sono davvero segnali per aprire posizioni nel periodo di test.
E i controlli solo tu vedi, il tuo codice non è allegato.
Esempi dalle migliaia....
- per esempio - lotto di negoziazione nelle impostazioni = 0, l'EA non può aprire una negoziazione perché lotto = 0.
- Limitazione dello spread nell'Expert Advisor, non apre posizioni.
- Non ci sono davvero segnali per aprire posizioni nel periodo di test.
E i controlli solo tu vedi, il tuo codice non è allegato.
Esempi dalle migliaia....
- per esempio - lotto di negoziazione nelle impostazioni = 0, l'EA non può aprire una negoziazione perché lotto = 0.
- Limitazione dello spread nell'Expert Advisor, non apre posizioni.
- Non ci sono davvero segnali per aprire posizioni nel periodo di test.
E i controlli solo tu vedi, il tuo codice non è allegato.
Esempi dalle migliaia....
La convalida del lotto c'è, i segnali ci sono sicuramente - è un netminder, nessuna limitazione di spread...
Beh, allora ci sono 100500 opzioni in più.
il nettler sta superando tranquillamente il test di mercato.
Beh, allora ci sono 100500 opzioni in più.
il nettler sta superando tranquillamente il test di mercato.
Sono d'accordo, ma per qualche motivo non questo:)
È vietato discutere dei bot del mercato qui. E non lo pubblicherete nel pubblico dominio. E ci sono già 100500 argomenti con quel nome, così come le ragioni di un tale argomento.
Qualcuno può spiegare perché il mercato restituisce questo errore? Tutti i controlli dell'EA sono in atto...
Capisco il succo del discorso - niente scambi, ma per quale motivo?
È così difficile usare la ricerca del sito e creare 100500 copie di rami!
https://www.mql5.com/ru/search#!keyword=no%20trading%20operations&method=2&module=mql5_module_forum

- www.mql5.com
Voglio solo discutere il codice:
double CheckVolumeValue(double volume) { double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN); if(volume<min_volume) { Print("Volume is less than the minimum"); return(min_volume); } double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX); if(volume>max_volume) { Print("Volume is greater than the maximum"); return(max_volume); } double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP); int ratio=(int)MathRound(volume/volume_step); if(MathAbs(ratio*volume_step-volume)>0.0000001) { Print("Wrong lot size"); return(min_volume); } if(volume<MarketInfo(Symbol(),MODE_MINLOT)) { Print("Trade stop invalid lot size"); Comment("Trade stop invalid lot size"); return(MarketInfo(Symbol(),MODE_MINLOT)); } return(volume); }
Ho modificato il controllo standard per restituire il lotto corretto invece di un errore...
Qui chiamiamo questa funzione:
if(!OrderSend(Symbol(),cmd,CheckVolumeValue(Lot),NormalizeDouble(priceStep,Digits()),Slippage,0,0,"",magic,0))
Nel mio tester e sul mio conto reale questo robot funziona bene! Anche quando viene inserito un lotto errato, restituisce comunque quello corretto e funziona ulteriormente...
E sapete dove torna l'errore 4051! Questo è in generale...!
Voglio solo discutere il codice:
Ho modificato il controllo standard per restituire il lotto corretto invece di un errore...
Qui chiamiamo questa funzione:
Nel mio tester e sul mio conto reale questo robot funziona bene! Anche quando viene inserito un lotto errato, restituisce comunque quello corretto e funziona ulteriormente...
E sapete dove torna l'errore 4051! Questo è in generale...!
Voglio solo discutere il codice:
Ho modificato il controllo standard per restituire il lotto corretto invece di un errore...
Qui chiamiamo questa funzione:
Nel mio tester e sul mio conto reale questo robot funziona bene! Anche quando viene inserito un lotto errato, restituisce comunque quello corretto e funziona ulteriormente...
E sapete dove torna l'errore 4051! Questo è in generale...!
double CheckVolumeValue(double volume) { double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN); if(volume<min_volume) { Print("Volume is less than the minimum"); return(min_volume); } double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX); if(volume>max_volume) { Print("Volume is greater than the maximum"); return(max_volume); } double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP); int ratio=(int)MathRound(volume/volume_step); if(MathAbs(ratio*volume_step-volume)>0.0000001) { Print("Wrong lot size"); return(min_volume); } if(volume<MarketInfo(Symbol(),MODE_MINLOT)) { Print("Trade stop invalid lot size"); Comment("Trade stop invalid lot size"); return(MarketInfo(Symbol(),MODE_MINLOT)); } return(volume); }E non arriverà mai a questo punto

- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Accetti la politica del sito e le condizioni d’uso
Qualcuno può spiegare perché il mercato restituisce questo errore? Tutti i controlli dell'EA sono in atto...
Capisco il succo ovviamente - non ci sono scambi, ma qual è la ragione?