Советник на основании ZigZag почему не верно показывает движение цены, наклон канала!?!?

 

Всем, здравствуйте.

Прошу помочь, есть советник с функцией/кодом для расчета значения ZigZag:

int find_incline_ZIGZAG_D1(string Symb,int Period_Symb)

  {

   double y3=0, y2=0, y1=0, zz;    // экстремумы Зиг-Зага

   int    x3, x2, x1, sh=ShiftBars;// номера баров


                                   // Берём три экстремума Зиг-Зага

   while(y3==0)

     {

      zz=iCustom(Symb,Period_Symb,"ZigZag",ExtDepth,ExtDeviation,ExtBackstep,0,sh);

      if(zz!=0)// && zz!=EMPTY_VALUE)

        {

         if(y1==0) { x1=sh; y1=zz; }

         else if(y2==0) { x2=sh; y2=zz; }

         else if(y3==0) { x3=sh; y3=zz; }

        }

      sh++;

     }

   if(y1 > y2){return(1);} //восходящий тренд

   if(y2 > y1){return(-1);}//нисходящий тренд

  }

Сам код взял вроде у KimIv, но что то он не рабочий. Подскажите где может быть ошибка зарыта?

Суть в том, что при визуальном сопоставлении значения движения/наклона цены не совпадают.

К примеру значение цены нисходящий тренд, а визуально восходящий. Какая то ерунда получается (((((

Спасибо.



 
Научитесь для начала пользоваться инструментами
Научитесь для начала пользоваться инструментами форума...
форума...



 
int find_incline_ZIGZAG_D1(string Symb,int Period_Symb)
  {
   double y3=0, y2=0, y1=0, zz;    // экстремумы Зиг-Зага
   int    x3, x2, x1, sh=ShiftBars;// номера баров
                                   // Берём три экстремума Зиг-Зага
   while(y3==0)
     {
      zz=iCustom(Symb,Period_Symb,"ZigZag",ExtDepth,ExtDeviation,ExtBackstep,0,sh);
      if(zz!=0)// && zz!=EMPTY_VALUE)
        {
         if(y1==0) { x1=sh; y1=zz; }
         else if(y2==0) { x2=sh; y2=zz; }
         else if(y3==0) { x3=sh; y3=zz; }
        }
      sh++;
     }
   if(y1 > y2){return(1);} //восходящий тренд
   if(y2 > y1){return(-1);}//нисходящий тренд
  }
Сорри. Ок. Спасибо) Сделал.
 
rabanik:
Сорри. Ок. Спасибо) Сделал.

Ну, коллеги помогите пожалуйста? (((

 
rabanik:

Ну, коллеги помогите пожалуйста? (((

Вижу функцию, полного кода нет - на первый взгляд нет ошибок. 
Отсчет идет от переменной ShiftBars, смотрите что там.

пс. сделайте Принт точек для проверки.