Where wrong with time hold to cointinute SendOrder on my code

 

Hi All!

I need ea continute send Order() when signal resend and me config: Last Ordersend < timeframe*barhold.  Any wrong on my code.

void CMRUN(string symbol, int tframe)
   {
      if (OrderToTal(symbol,tframe)==0) SendOrder(symbol,tframe);// Opend NewOrder if not have any position
      else 
      {            
            OrderModifyProfit(symbol,tframe); //Modify Profit
            OrderSendClose(symbol,tframe); //Close Order if loss signal
	//------------------Check time to cointinute SendOrder
            datetime OpenTime=EMPTY_VALUE;
               for (int i = OrdersTotal(); i>=0; i--)
               {
               OrderSelect(i,SELECT_BY_POS ,MODE_TRADES); 
               if (OrderMagicNumber() == MagicNumber && OrderSymbol() == symbol && OrderComment() == OrderTiming)//OrderTiming= String of Timeframe
               if (OpenTime==EMPTY_VALUE) OpenTime=OrderOpenTime();
               else if (OpenTime < OrderOpenTime()) OpenTime=OrderOpenTime();
               }
            if (OpenTime!=EMPTY_VALUE)
                  if ((OpenTime+60*BarHold*tframe) < TimeCurrent()) //Delay: 60seconds*bars_need_hold*time_frame (BarHold==5)
                  {
                     SendOrder(symbol,tframe); //Continute Open NewOrder when have position
                  } 
        // End Check: not error but not work?    
       }  
   }
 
Nguyễn Thanh Sang:

Hi All!

I need ea continute send Order() when signal resend and me config: Last Ordersend < timeframe*barhold.  Any wrong on my code.

What?