Adding variable Barcount to check for consecutive up or down bars

 

I want to add a for loop to check for consecutive up or down bars before entry.  Please help.

 if(iOpen(Symbol(),timeframe1,4)<iClose(Symbol(),timeframe1,4) && iOpen(Symbol(),timeframe1,3)<iClose(Symbol(),timeframe1,3) && iOpen(Symbol(),timeframe1,2)<iClose(Symbol(),timeframe1,2) && iOpen(Symbol(),timeframe1,1)<iClose(Symbol(),timeframe1,1) && order_count == 0)//Check for UpBar

      {

              int ticket = OrderSend(Symbol(),OP_BUY,lotsize,NormalizeDouble(Ask,Digits),5,STOPLOSS,TAKEPROFT,NULL,magic_number,0,clrBlue)   

      }

      

      if(iOpen(Symbol(),timeframe1,4)>iClose(Symbol(),timeframe1,4) && iOpen(Symbol(),timeframe1,3)>iClose(Symbol(),timeframe1,3) && iOpen(Symbol(),timeframe1,2)>iClose(Symbol(),timeframe1,2) && iOpen(Symbol(),timeframe1,1)>iClose(Symbol(),timeframe1,1) && order_count == 0)//Check for DownBar

      {

             int ticket = OrderSend(Symbol(),OP_SELL,lotsize,NormalizeDouble(Bid,Digits),5,STOPLOSS,TAKEPROFT,NULL,magic_number,0,clrRed);

      }

 
xiqat:

I want to add a for loop to check for consecutive up or down bars before entry.  Please help.

Hint:

bool ConsecutiveUps(string symb, int tf, int bar)
{
   const int barCnt = 4;
   
   for (int i=bar; i<bar+barCnt; i++)
   {
      if (iOpen(symb,tf,i)>=iClose(symb,tf,i))
         return(false);
   }
   
   return(true);
}
Reason: