[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 408

 

Professionisti, aiuto. Ho inserito una funzione nell'indicatore per inviare messaggi alla posta elettronica.

Non si può compilare. Per favore, ditemi cosa ho fatto di sbagliato. Sto appena iniziando a capire il codice.

File:
vininmail.mq4  5 kb
 

Potete dirmi perché lo script non cancella tutti gli ordini, 3 ordini buylimit sono aperti e un ordine buy market.

for(i = 0; i < OrdersTotal(); i++)
                {
                if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == FALSE) break;
                if(OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
                        {
                        Print(i);
                        if(OrderType() == OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,Slippage);
                        if(OrderType() == OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,Slippage);
                        if(OrderType() == OP_BUYSTOP) OrderDelete(OrderTicket());
                        if(OrderType() == OP_SELLSTOP) OrderDelete(OrderTicket());
                        }
                }
 
sss2019:

Potete dirmi perché lo script non cancella tutti gli ordini, 3 ordini buylimit sono aperti e un ordine buy market.

Perché in MT4 c'è un solo flusso commerciale e solo un ordine commerciale può essere dato alla volta. Dopo ogni ordine è necessario assicurarsi che il flusso commerciale non sia occupato.
 
sss2019:

Potete dirmi perché lo script non cancella tutti gli ordini, 3 ordini buylimit sono aperti e un ordine buy market.


Reshetov:
Perché in MT4 il flusso commerciale è uno e solo un ordine commerciale può essere dato alla volta. Dopo ogni ordine, è necessario assicurarsi che il flusso commerciale non sia occupato.

no


Il problema qui è semplicemente nel ciclo. i passa attraverso i da 0 a 2. Avete bisogno di 2 a 0.

 
Ciao, per favore consigliate come si possono far aprire gli ordini a turno, per esempio all'inizio OP_BUY quando sarà chiuso e ci sarà un segnale per aprire OP_SELL e si chiude con un segnale di acquisto si apre OP_BUY, ecc...!
 
lowech:
Ciao, dimmi come puoi far aprire gli ordini uno per uno, per esempio, all'inizio di OP_BUY, quando è chiuso e c'è un segnale per aprire OP_SELL, e viene chiuso con un segnale di acquisto apre OP_BUY, ecc...!

È molto facile da risolvere con i semafori (bool).

Potete pensarci e funzionerà.

 
sss2019:

Potete dirmi perché lo script non cancella tutti gli ordini, 3 ordini buylimit sono aperti e un ordine buy market.

buylimit che vuoi eliminare ma non selezionare (questo tipo)
 
DhP:

È molto facile da risolvere con i semafori (bool).

Pensateci e lo capirete.

Grazie per avermi indicato questa direzione!
 
Skydiver:
Per favore, spiegate con un esempio.
Non può esistere un sistema che faccia trade redditizi al 100%. Sistemi con la lunghezza massima della serie di mestieri perdenti sarebbe uguale a 1, anche non può essere. In un martin puro i lotti sono variati dal principio: 1-2-4-8-16-, ecc. La perdita, in questo caso, aumenta secondo il principio: 1-3-7-15- ecc.

Prendiamo un sistema qualsiasi, supponiamo che il sistema con lotti fissi = 1, dia una serie di PPUUUUUPU. Dove P è il profitto e U è la perdita. Come risultato, si ottiene un aumento della perdita secondo il principio: 1-2-3-4-5-. In che modo è meglio della martingala? Solo che la perdita non aumenta così tanto come nel caso della martingala. Per il resto, è lo stesso di Natasha, solo con pantaloncini diversi.
 
Quanto è accurato il test sul tester di strategia integrato in MT4? Come si può aumentare?