MQL4 движение буфера по High или Low

 

Здравствуйте. Написал код стрелочника, без перерисовки. Но при рисовании свечи, стрелка остается на месте и на нее заходит свеча, как сделать, что бы стрелка шла по High или Low но оставалась на том же баре где отрисовалась, прилагаю код. Можно ли двигать стрелки  в конце цикла дописав просто условия, не нарушая текущею структуру? 


int start() /                      
  {



   int i,                          
   Counted_bars;              
   Counted_bars=IndicatorCounted(); 
   i=Bars-Counted_bars-1;           
   
   while(i>=0)               
     {
     a=0;
      
      if(iRSI(NULL, 0, 3, PRICE_CLOSE, i+1)<30&&j!=1)
      {
      Buffer2[i] = Low[i]-5*Point;
      j=1;    
      }    

      if(iRSI(NULL, 0, 3, PRICE_CLOSE, i+1)>70&&j!=2)
      {
      
      Buffer[i] = High[i]+5*Point;
      j=2;
      } 


      i--;   

           
      //Можно ли здесь добавить условие которое двигает стрелку?
        
     }
     

     

   return(0);                        
  }
 

Проблема в том, что используется нулевой бар, на котором значение RSI может побывать одновременно и на 30, и на 70. Это раз.

А по сути же, если на нулевом баре зарегистрирован сигнал, то обновляться он не будет, т. к. для него нужен предыдущий противоположный сигнал. Чтобы стрелка переместилась вверх или вниз, нужно "забывать" о торговом сигнале на нулевом баре и всегда помнить о направлении предыдущего торгового сигнала.

 

Свеча залезающая на стрелку не единственная проблема этого индикатора

 
Dmitry Fedoseev:

Свеча залезающая на стрелку не единственная проблема этого индикатора


Точно!

Причина обращения: