il mio ea fa l'errore 4756
potete aiutarmi grazie

- www.mql5.com
CopyHigh(_Symbol,_Period,TimeCurrent(),5,hg);
Top = NormalizeDouble(rates[ArrayMaximum(hg,0,WHOLE_ARRAY)].high,_Digits);
- designincompreso .
Scegliere tra i valori del doppio massimo e usare quello al posto dell' indice intero
il mio ea fa l'errore 4756
potete aiutarmi grazie
L'errore 4756 è "L'invio della richiesta di trading non è riuscito". Se hai un errore durante l'invio dell'ordine, controlla il codice di ritorno di MqlTradeResult
//--- send order OrderSend(mrequest,mresult); // get the result code if(mresult.retcode==10009 || mresult.retcode==10008) //Request is completed or order placed { Alert("An order has been successfully placed with Ticket#:",mresult.order,"!!"); } else { Alert("The order request could not be completed -error:",GetLastError()," with trade return code ",mresult.retcode); ResetLastError(); return; }
SecondoKonstantin83sopra, hai un errore di stop non valido, il che significa che devi piazzare un ordine pendente al di fuori diSymbolInfoIntegerSYMBOL_TRADE_STOPS_LEVEL eSYMBOL_TRADE_FREEZE_LEVEL.
L'errore 4756 è "L'invio della richiesta di trading non è riuscito". Se hai un errore durante l'invio dell'ordine, controlla il codice di ritorno di MqlTradeResult
SecondoKonstantin83sopra, hai un errore di stop non valido, il che significa che devi piazzare un ordine pendente al di fuori diSymbolInfoIntegerSYMBOL_TRADE_STOPS_LEVEL eSYMBOL_TRADE_FREEZE_LEVEL.
Gli stop non validi vengono restituiti anche per un Broker di tipo ECN?
Naturalmente sapete che la risposta è no. Ma perché me lo chiedi?

- www.mql5.com
Perché supponi che io sappia che la risposta è no? Gli stop non validi(errore 130) sono restituiti su mql4 quando SL o TP sono inviati con OrderSend() a un broker ECN, quindi stavo chiedendo se lo stesso è vero con mql5. Quale errore viene restituito?
Davvero? È interessante. Devo controllare più tardi ;D.
Ho indagato un po' cercando di trovare la mia strada con mql5. Se il comportamento dello Strategy Tester è simile a quello che verrebbe restituito da un Broker allora sembra che SL & TP siano ignorati quando vengono inviati per un Symbol il cuiENUM_SYMBOL_TRADE_EXECUTION èExchange execution oMarket execution e nessun errore viene restituito. Quindi le cose sono abbastanza diverse rispetto a mql4.
Ho un semplice EA che piazza un trade con SL & TP a meno che il Symbol sia Exchange o Market execution, quindi invia il trade con SL & TP non impostato e poi invia una seconda richiesta a (TRADE_ACTION_SLTP) per impostare lo SL & TP.
Funziona bene nello Strategy tester, così oggi l'ho provato su un conto Demo e continuavo a ricevere Invalid Stops (errore 10016). Così ho controllato il livello di Stops e Freeze Level, sono entrambi 0, ho provato vari livelli di SL & TP, niente ha funzionato. Potevo impostare manualmente gli stessi SL & TP per una posizione esistente senza problemi. . . quindi ho aggiunto un test per posizionare lo SL & TP solo se la posizione poteva essere selezionata. . . e niente più Invalid Stops, niente più richiesta di trade TRADE_ACTION_SLTP :-(
Così ho aggiunto questo codice tra il completamento della richiesta iniziale di trade inviata senza TP & SL e la successiva richiesta di trade che invia il TP & SL . .
SelectRetryCount = 1; if(SetTPandSL) { while(!PositionSelect(_Symbol) && SelectRetryCount < 10) { Sleep(SelectRetryCount * 100); // sleep for SelectRetryCount * 100 mS SelectRetryCount++; } }
SetTPandSL è impostato su true se la richiesta di trading iniziale ha successo, non ha senso cercare di impostare un TP & SL se non lo è. La posizione viene selezionata e se fallisce avviene uno sleep di 100 mS, poi la selezione viene ritentata, se fallisce avviene uno sleep di 200 mS, ecc per un massimo di 9 tentativi (4,5 secondi in totale).
Non so ancora bene cosa sto facendo con mql5, sto solo cercando di far funzionare alcune cose e spero di imparare man mano che vado avanti... è un comportamento normale quello che ho trovato qui? Avrei pensato che una volta che la richiesta iniziale di trading restituisse 10009 - TRADE_RETCODE_DONE sarei stato a posto per inviare la richiesta di impostare il TP & SL, non è questo il caso? Qualcuno lo sa?
Ho un semplice EA che piazza un trade con SL & TP a meno che il Symbol sia Exchange o Market execution, quindi invia il trade con SL & TP non impostato e poi invia una seconda richiesta a (TRADE_ACTION_SLTP) per impostare lo SL & TP.
Funziona bene nello Strategy tester, così oggi l'ho provato su un conto Demo e continuavo a ricevere Invalid Stops (errore 10016). Così ho controllato il livello di Stops e Freeze Level, sono entrambi 0, ho provato vari livelli di SL & TP, niente ha funzionato. Potevo impostare manualmente gli stessi SL & TP per una posizione esistente senza problemi. . . quindi ho aggiunto un test per posizionare lo SL & TP solo se la posizione poteva essere selezionata. . . e niente più Invalid Stops, niente più richiesta di trade TRADE_ACTION_SLTP :-(
Così ho aggiunto questo codice tra il completamento della richiesta iniziale di trade inviata senza TP & SL e la successiva richiesta di trade che invia il TP & SL . .
SetTPandSL è impostato su true se la richiesta di trading iniziale ha successo, non ha senso cercare di impostare un TP & SL se non lo è. La posizione viene selezionata e se fallisce avviene uno sleep di 100 mS, poi la selezione viene ritentata, se fallisce avviene uno sleep di 200 mS, ecc per un massimo di 9 tentativi (4,5 secondi in totale).
Non so ancora bene cosa sto facendo con mql5, sto solo cercando di far funzionare alcune cose, sperando di imparare man mano... è normale quello che ho trovato qui? Avrei pensato che una volta che la richiesta iniziale di trading restituisse 10009 - TRADE_RETCODE_DONE sarei stato a posto per inviare la richiesta di impostare il TP & SL, non è questo il caso? Qualcuno lo sa?

- 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
il mio errore fa 4756
potete aiutarmi grazie