Помогите доработать индикатор - страница 2

 

Думаю Mx1 и Mx2 тоже следует обнулять перед каждым циклом.

Не не правильно, надо добавить ограничение не дальше Timemax1:

if (Timemax1== iTime(NULL,"PERIOD", i)) 
    {
     max1=Mx1;
    }  
Файлы:
indps_3.mq4  5 kb
 
mInvIn:

Думаю Mx1 и Mx2 тоже следует обнулять перед каждым циклом.

Не не правильно, надо добавить ограничение не дальше Timemax1:



Вставляя это,

if (Timemax1== iTime(NULL,"PERIOD", i)) 
    {
     max1=Mx1;
    }  
Вы предыдущую строчку внимательно смотрели?
 
Angela:


Вставляя это,

Вы предыдущую строчку внимательно смотрели?


Какую именно? Если эту { max1=iOpen(NULL,"PERIOD", i);Mx1=iOpen(NULL,"PERIOD", i); Timemax1= iTime(NULL,"PERIOD", i); }

то она исполнится только если {MathAbs(iOpen(NULL,"PERIOD", i)-Mx1)>15*Point}, а у вас с прошлой итерации осталось значение Mx1=iOpen(NULL,"PERIOD", i),

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

имеет смысл только на барах, появившихся позже последней имеющейся если же там нет - оставить старую. Может путанно изъясняюсь,

посмотрите на тестере нормально вроде работает.

Простите за невнимательность, конструкцию конечно же нужно перенести в старт. И что-то решать со второй точкой.

Файлы:
indps_4.mq4  5 kb
 
Еще предложил бы удалить цикл из инета, или исправить там Mx1=iClose(NULL,"PERIOD", i) на Mx1=iHigh(NULL,"PERIOD", i)
 
mInvIn:


Какую именно? Если эту { max1=iOpen(NULL,"PERIOD", i);Mx1=iOpen(NULL,"PERIOD", i); Timemax1= iTime(NULL,"PERIOD", i); }

то она исполнится только если {MathAbs(iOpen(NULL,"PERIOD", i)-Mx1)>15*Point}, а у вас с прошлой итерации осталось значение Mx1=iOpen(NULL,"PERIOD", i),

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

имеет смысл только на барах, появившихся позже последней имеющейся если же там нет - оставить старую. Может путанно изъясняюсь,

посмотрите на тестере нормально вроде работает.

Простите за невнимательность, конструкцию конечно же нужно перенести в старт. И что-то решать со второй точкой.

Спасибо, этот вариант решает проблему, но не понятно, почему, по аналогии, не устанавливается вторая координата.
Причина обращения: