Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1527
![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
usa le letture per costruire la logica del tuo indicatore
No, non funziona così.
qui . 1 indicatore mostra sempre un numero - 2147483647. non appena un segnale viene ricevuto, mostra un numero diverso su uno dei buffer. Questo l'ho capito.
Ma il secondo indicatore mostra sempre o 0 o 2147483647 su 2 buffer simultaneamente
Credo di aver capito. Dovrebbe essere così
non sono necessarie specifiche in questo caso, cioè solo se >0
in questo caso le specifiche non sono necessarie, cioè solo se >0
ma cosa c'è nei buffer quando non c'è segnale. non credo che >0 funzionerà qui. ma lo proverò ora
Ma ecco cosa c'è nei buffer quando non c'è segnale. Non credo che >0 funzionerà qui, ma lo proverò ora
il primo indicatore ha il valore EMPTY_VALUE quando non c'è nessun segnale
fare quanto segue
Per favore aiutatemi a risolvere questo problema con il tester. Sto testando l'apertura di posizioni per CME sui futures EUR/USD
Al rialzo del mercato nel tester apro una posizione lunga sul breakdown con il mio stop e il trade ottiene un ticket #2. Il mercato sale e la posizione successiva viene aperta con uno stop e il trade ottiene il ticket #3 nel tester.
Quando il mercato va contro la posizione #3 e raggiunge il suo stop, idealmente #3 dovrebbe chiudere allo stop, e #2 dovrebbe rimanere lì, aspettando che il prezzo raggiunga lo stop #2. Ma per qualche ragione, quando lo stop #3 è scattato, il tester chiude anche la posizione #2.
Il codice per mql5 è
Per favore, aiutatemi a risolvere questo problema con il tester. Sto testando l'apertura di posizioni per CME sui futures EUR/USD
Sul rialzo del mercato nel tester apro una posizione lunga sul breakout con il mio stop e il trade ottiene il numero 2. Il mercato è salito e la posizione successiva viene aperta con uno stop, il trade ottiene il numero 3 nel tester.
Quando il mercato va contro la posizione #3 e raggiunge il suo stop, l'idea è che la #3 dovrebbe chiudere allo stop e la #2 dovrebbe essere lasciata in sospeso, aspettando che il prezzo raggiunga lo stop #2. Ma per qualche ragione, quando lo stop #3 è scattato, il tester chiude anche la posizione #2.
Il codice per mql5 è
il primo indicatore ha un valore di EMPTY_VALUE quando non c'è nessun segnale
dovrebbe essere fatto così
Sì, proprio così. Questo è tutto, grazie mille.
Credo che la ragione del comportamento del tester sia diventata chiara. Il tipo di conto demo su cui il robot sta testando è Netting. Pertanto, se lo stop specificato all'apertura della posizione #3 viene attivato, chiuderà l'intero volume della posizione. Quindi, alla fermata dal #3, chiude anche il #2, anche se aveva il suo stop separato impostato per esso quando è stato aperto.
Con il tipo di conto Hedging, tutto funzionerebbe come nel buon vecchio mql4.
Per favore, aiutatemi a risolvere questo problema con il tester. Sto testando l'apertura di posizioni per CME sui futures EUR/USD
Al rialzo del mercato nel tester apro una posizione lunga sul breakdown con il mio stop e il trade ottiene un ticket #2. Il mercato sale e la posizione successiva viene aperta con uno stop e il trade ottiene il ticket #3 nel tester.
Quando il mercato va contro la posizione #3 e raggiunge il suo stop, idealmente #3 dovrebbe chiudere allo stop, e #2 dovrebbe rimanere lì, aspettando che il prezzo raggiunga lo stop #2. Ma per qualche ragione, quando lo stop #3 è scattato, il tester chiude anche la posizione #2.
Il codice per mql5 è il seguente
Non si dovrebbero usare fermate. Invece di usare gli stop, dovremmo piazzare ordini pendenti della direzione opposta.