Cos'è order_id?

 

Non so cosa sia"order_id" in orderclose.

Per favore aiutatemi!

 
toi10005doi:

Non so cosa sia"order_id" in orderclose.

Per favore aiutatemi!

Non c'è "order_id" in OrderClose()
 
Nell'esempio di OrderClose() è il numero del ticket che volete chiudere. Se volete chiudere l'ordine che è già stato selezionato da OrderSelect(), allora usate semplicemente OrderTicket().
 

Grazie a tutti! :))

Puoi mostrarmi un esempio, per favore.

 
toi10005doi:

Grazie a tutti! :))

Puoi mostrarmi un esempio, per favore.

Troverai degli esempi in questo thread:Loop e Chiusura o cancellazione di ordini
 

Il mio EA fa solo 1 ordine per volta. Quindi, per favore mostratemi il codice per chiuderlo quando la condizione è terminata.

Grazie!

 
toi10005doi:

Il mio EA fa solo 1 ordine per volta. Quindi, per favore mostratemi il codice per chiuderlo quando la condizione è terminata.

Grazie!


Non c'è nessun EA che chiude più trade nello stesso momento..... Viene sempre fatto uno per uno

Come chiudere correttamente i trade selezionati leggere iloop e chiudere o cancellare gli ordini

 
<SNIP>

Per favore, ditemi cosa c'è di sbagliato nel mio codice! Grazie.

 
toi10005doi:

<SNIP>

Per favore, ditemi cosa c'è di sbagliato nel mio codice! Grazie.

Si prega di modificare il tuo post ...


Si prega di utilizzare questo per postare il codice . . rende più facile la lettura.

 
RaptorUK:
Troverete degli esempi in questo thread:loop e chiusura o cancellazione di ordini


toi10005doi:

for(i=1; i<=OrdersTotal(); i++)

Per favore ditemi cosa c'è di sbagliato nel mio codice! Grazie.


Ti sei preso la briga di leggere il thread di cui ho dato il link ?
 

@Raptor:

Sì, ma ho capito male perché ho appena iniziato a scrivere EA. Sr per il disturbo.

int start()
{
   int i ,times;
   double DIPlus1;
   double DIPlus0;
 
   double DIMinus1;
   double DIMinus0;
   
   double Main1;
   double Main0;
   
   double MACD_main;
   double MACD_signal;
   double Rsi;
   
   double err = 25;
   
   int MagicNumber1=220101,MagicNumber2=220102;
//----

//---
 
DIPlus1=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,1);
DIPlus0=iADX(NULL,0,14,PRICE_CLOSE,MODE_PLUSDI,0);
 
DIMinus1=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,1);
DIMinus0=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,0);

Main1=iADX(NULL,0,14,PRICE_CLOSE,MODE_MAIN,1);
Main0=iADX(NULL,0,14,PRICE_CLOSE,MODE_MAIN,0);

Rsi = iRSI(NULL,0,14,PRICE_CLOSE,0);

times = Minute() % 15 ==0 && Seconds() ==0;

//MACD_main = iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0); 
//MACD_signal = iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);
   
//----
if(Minute() % 15 ==0 && Seconds() ==0)
{
  if( Main0 > err && Main1 < err && DIPlus0 > DIMinus0 && Rsi < 70 )

    
       OrderSend(Symbol(),OP_BUY,0.03,Ask,5,Ask-300*Point,Ask+300*Point,"","",1,Blue);
          
   

   if (Main0 > err && Main1 < err && DIPlus0 < DIMinus0  && Rsi > 30)
     
       OrderSend(Symbol(),OP_SELL,0.03,Bid,5,Bid+300*Point ,Bid-300*Point,"","",2,Red);
     
  //---
  if(OrdersTotal()>0)
      {
      for(i=1; i<=OrdersTotal(); i++)
      
         {        
            if (OrderSelect(i-1,SELECT_BY_POS)==true)
                  
             {
               if(Rsi >=70 )  
                  OrderClose(OrderTicket(),OrderLots(),Bid,2,Green); 
              if( DIPlus1 > DIMinus1 )
                   OrderClose(OrderTicket(),OrderLots(),Bid,2,Green); 
               
                if(Rsi <=30  )
                  OrderClose(OrderTicket(),OrderLots(),Ask,1,Green); 
              if( DIPlus1 < DIMinus1  )
                   OrderClose(OrderTicket(),OrderLots(),Ask,1,Green); 
            
                   
             }       
         }
       }  
   }
 return(0);
 }
   

Non capisco perché il mio ordine si chiude istantaneamente dopo che è partito.