for(int i=0; i< OrdersTotal(); i++) // For market and pending orders
{
if((OrderSelect(i,SELECT_BY_POS)==true) //If there is the next one
&& (OrderSymbol()==Symbol()) && OrderMagicNumber() == Magic_A )
{
Questo è il ciclo dato nel libro mql4 per creare l'array per l'ordine.
OrdersTotal() diminuirà da solo ogni volta che un ordine viene chiuso?
Ho appena dato un'occhiata nel libro, sotto è il ciclo dato per chiudere un ordine, quindi la risposta è sì: ( https://book.mql4.com/trading/orderclose )
for(int i=1; i<=OrdersTotal(); i++) // Order searching cycle
{
if (OrderSelect(i-1,SELECT_BY_POS)==true) // If the next is available
{ // Order analysis://----------------------------------------------------------------------- 3 --if (OrderSymbol()!= Symb) continue;
int TotalNumberOfOrders; // <-- this variable will hold the number of orders currently in the Trade pool
TotalNumberOfOrders = OrdersTotal(); // <-- we store the number of Orders in the variablefor(PositionIndex = TotalNumberOfOrders - 1; PositionIndex >= 0 ; PositionIndex --) // <-- for loop to loop through all Orders . . COUNT DOWN TO ZERO !
Va bene non dichiarare TotalNumberOfOrders = OrdersTotal() ;
Attualmente sto usando questo, ma non sono sicuro dell'output anche se è lo stesso. Dato che OrdersTotal() è nel ciclo for, la chiusura di 1 ordine influenzerà il OrdersTotal ancora e ancora?
juniorlcq: Attualmente sto usando questo, ma non sono sicuro dell'output anche se è lo stesso. Dato che OrdersTotal() è nel ciclo for, la chiusura di 1 ordine influenzerà il OrdersTotal ancora e ancora?
No, perché non stai controllando OrdersTotal, stai controllando PositionIndex come condizione per continuare il ciclo
Jimdandy: L'unica volta che sono stato costretto a usare il metodo del conto alla rovescia è stato su un broker che era molto anale riguardo al FIFO e non mi lasciava chiudere il trade più recente prima.... che stupido.
In quel caso, cattura tutti i numeri di ticket rilevanti (in un array) e poi chiudi. Non contare e chiudere.
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
Cosa succede se facciamo un ciclo come questo
Questo è il ciclo dato nel libro mql4 per creare l'array per l'ordine.
OrdersTotal() diminuirà da solo ogni volta che un ordine viene chiuso?
//***************************************************************************
Ho appena dato un'occhiata nel libro, sotto è il ciclo dato per chiudere un ordine, quindi la risposta è sì: ( https://book.mql4.com/trading/orderclose )
Cosa succede se facciamo un ciclo come questo
Questo è il ciclo dato nel libro mql4 per creare l'array per l'ordine.
OrdersTotal() diminuirà da solo ogni volta che un ordine viene chiuso?
Va bene non dichiarare TotalNumberOfOrders = OrdersTotal() ;
Quello che intendo è usare subito OrdersTotal()
for ( x = OrdersTotal() - 1 ...... )
Attualmente sto usando questo, ma non sono sicuro dell'output anche se è lo stesso. Dato che OrdersTotal() è nel ciclo for, la chiusura di 1 ordine influenzerà il OrdersTotal ancora e ancora?
No, perché non stai controllando OrdersTotal, stai controllando PositionIndex come condizione per continuare il ciclo
Eccellente lavoro di spiegazione di questo argomento! Senza la grafica è proprio impossibile da spiegare... Ben fatto.
L'unica volta che sono stato costretto ad usare il metodo del conto alla rovescia invece del metodo del count up è stato su un broker
che era davvero xxx sul FIFO e non mi lasciava chiudere l'ultimo trade prima.... che stupido.
Ancora una volta dico...ben fatto...
Ciao esperti, qual è la vostra opinione su questa soluzione?