Accelerator Oscillator.... столкнулся со сложностями...

 

Друзья,  приветствую Вас.

Хочу присоединить к советнику индикатор Accelerator Oscilator, чтобы советник помимо других индикаторов (МА) анализировал и показания АС...

Для этого в методе start пытаюсь отловить ситуацию, при которой определяется разница в размерах между соседними "палочками" АС

(код аналогичен самому индикатору)

______________________________________________________________________________________________________________________________

void start() 
{
............

int limit;
  int  counted_bars=IndicatorCounted();
   double prev,current;
  //---- last counted bar will be recounted
  if(counted_bars>0) counted_bars--;
  limit=Bars-counted_bars;
 
  //---- macd counted in the 1-st additional buffer
  for(int ii=0; ii<limit; ii++)
  ExtBuffer3[ii]=iMA(NULL,0,5,0,MODE_SMA,PRICE_MEDIAN,ii)-iMA(NULL,0,34,0,MODE_SMA,PRICE_MEDIAN,ii);
  //---- signal line counted in the 2-nd additional buffer
  for(int iq=0; iq<limit; iq++)
  ExtBuffer4[iq]=iMAOnArray(ExtBuffer3,Bars,5,0,MODE_SMA,iq);
  //---- dispatch values between 2 buffers
   
  bool up=true;
  for(int iz=limit-1; iz>=0; iz--)
  {
  current=ExtBuffer3[iz]-ExtBuffer4[iz];
  prev=ExtBuffer3[iz+1]-ExtBuffer4[iz+1];
 
  if(current>prev) 
 {up=true; }
 

if(current<=prev) 
 {up=false; }
    
  if(up==true) //(!up)
  {
       ExtBuffer2[iz]=current;
       ExtBuffer1[iz]=0.0; 
       Comment("ЗЕЛЕНЫЙ"+"\n");
  }
 
  if (up==false) //else
  {
       ExtBuffer1[iz]=current;
       ExtBuffer2[iz]=0.0;
       Comment("КРАСНЫЙ"+"\n");
  }
  ExtBuffer0[iz]=current;
 }


........

}

____________________________________________________________________________________________

ОДНАКО, советник работает некорректно, и мои подсказки ("ЗЕЛЕНЫЙ", "КРАСНЫЙ") некорректно отражают направление движения котировок.

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

не совсем понимаю, как это сделать...

если у вас есть опыт работы с АС, подскажите пожалуйста.

Заранее большое спасибо.