Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 302
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
Salute! Oggi ho lanciato il mio primo EA in MT5!
La situazione giusta sul mercato è arrivata e l'Expert Advisor ha iniziato a comprare e comprare!!! Almeno sono riuscito a reagire in tempo. Puoi dirmi cosa c'è di sbagliato nel codice? Ho pensato che dovrebbe comprare solo un lotto e impostare immediatamente uno Stop Loss e un Take Profit. Non appena ha comprato qualcosa, la variabile Bye_opened dovrebbe diventare vera e non dovrebbe permettergli di fare un trade successivo fino a quando gli stop non sono scattati. Inoltre, come faccio a sapere il prezzo dell'ultimo trade per metterci degli stop?
Ma sembra che abbia fatto qualcosa di sbagliato. Per favore, fate notare il mio errore.
I tick possono arrivare più velocemente di quanto la posizione sia nella lista delle posizioni aperte. Quindi, il tuo assegno
non funzionerà per un po', e durante questo tempo passeranno diverse voci. Si presume che il pezzo di codice di cui sopra si trovi nel gestore del tick.
mettere questo script nella cartella degli script, aprire questo script in unitor, compilarlo
Quando la borsa si apre, trascinate questo script sul grafico
Buona sera a tutti, per favore condividete il codice per il trawl. Grazie.
Si prega di utilizzare la ricerca del sito - non è difficile:https://www.mql5.com/ru/search#!keyword=%D1%82%D1%80%D0%B0%D0%BB
Si prega di utilizzare la ricerca del sito - non è difficile:https://www.mql5.com/ru/search#!keyword=%D1%82%D1%80%D0%B0%D0%BB
I tick possono arrivare più velocemente di quanto la posizione sia nella lista degli aperti. Quindi, il tuo assegno
non funzionerà per un po' di tempo, e durante questo periodo ci saranno più voci. Si presume che il pezzo di codice di cui sopra si trovi nel gestore del tick.
Dima, il codice è nel blocco di elaborazione dei tick. Qual è il modo giusto per risolvere questo problema? Ho avuto lo stesso problema in QuickBooks, il robot spesso compra più di quanto dovrebbe. L'ho messo giù al suo secondo ritardo e ho semplicemente aggiunto una variabile separata che cambia quando le condizioni sono soddisfatte, ma ha avuto qualche problema anche lì. A volte l'ordine è stato rifiutato dalla borsa e la variabile aveva già il valore "deal" e il robot non ha scambiato.
Come risolvere correttamente il problema in MQL5 in modo che il robot compri un numero specificato di lotti ad una data condizione e non compri più del numero specificato di lotti finché non abbia venduto tutti i lotti che ha comprato?
Dobbiamo fare una pausa dopo l'acquisto per aspettare una risposta dallo scambio per essere sicuri?
Sleep(1000); //Ha messo in pausa?
Lo stop loss non si muove
scrive:
--Modifica ordine -> prezzo aperto:1.3111 BID :1.3121 sl 1.3109
fallito modifica ordine #3 comprare limite 1.00 a 1.31110 sl: 1.31080 tp: 0.00000 -> 1.31110, sl: 1.31090 tp: 0.00000 [fermate non valide]
--Modificare l'ordine <- risultato:10016
Perché?
Lo stop loss non si muove
scrive:
--Modifica ordine -> prezzo aperto:1.3111 BID :1.3121 sl 1.3109
fallito modifica ordine #3 comprare limite 1.00 a 1.31110 sl: 1.31080 tp: 0.00000 -> 1.31110, sl: 1.31090 tp: 0.00000 [fermate non valide]
--Modificare l'ordine <- risultato:10016
Perché?
Normalizzare non aiuta. La stessa cosa, sop-perdita non è tirata su
--Crea ordine -> ASK:1.3121 prezzo:1.3111 sl 1.3106
comprare limite 1.00 EURUSD a 1.3111 (1.3121) sl: 1.3106 (1.3118 / 1.3121 / 1.3118)
--Modifica ordine -> prezzo aperto:1.3111 BID :1.3119 sl 1.3107--Crea l'ordine <- risultato:10009
ordine modificato [#3 buy limit 1.00 EURUSD a 1.3111]
--Modificare l'ordine <- risultato:10009
--Modifica ordine -> prezzo aperto:1.3111 BID :1.312 sl 1.3108ordine modificato [#3 buy limit 1.00 EURUSD a 1.3111]
--Modificare l'ordine <- risultato:10009
--Modifica ordine -> prezzo aperto:1.3111 BID :1.3121 sl 1.3109fallito modifica ordine #3 comprare limite 1.00 a 1.31110 sl: 1.31080 tp: 0.00000 -> 1.31110, sl: 1.31090 tp: 0.00000 [fermate non valide]
--Modificare l'ordine <- risultato:10016