Цикл для уровней перекупленности/перепроданности в расчетном iStochastic

 

Добрый вечер! Подскажите, как можно реализовать цикл для поиска последнего уровня перепроданности 30 или перекупленности 70 только для расчетов iStochastic, если текущее положение его относительно этих уровней допустим неизвестно. Т.е. если вышел уже из зоны, то определить из какой до того, как выйдет из противоположной. Вот такая задача. Сам решить не могу циклом. Скажите, что делаю не правильно?

double overBought = 70;
double over50 = 50;
double overSold = 30;    
double  stochValue_y = iStochastic(0,0,5,3,3,MODE_SMA,0,MODE_MAIN,y);
double  stochValue_y1 = iStochastic(0,0,KPeriod,DPeriod,Slowing,MODE_SMA,0,MODE_MAIN,y+1);
double  stochValue_y2 = iStochastic(0,0,KPeriod,DPeriod,Slowing,MODE_SMA,0,MODE_MAIN,y+2); 

 for(y=1;y<Bars;y++)
    {
     if((stochValue_y2 <= overSold && stochValue_y1 >= overSold)||(stochValue_y2>=overBought && stochValue_y1<=overBought))
     break;
     //как здесь быть? stochValue_y  всегда выдает последнее ценовое значение                      
    }

    Alert("Вышли из overSold"); // либо это
             
    Alert("Вышли из overBought"); // либо это
 
toha153:

Добрый вечер! Подскажите, как можно реализовать цикл для поиска последнего уровня перепроданности 30 или перекупленности 70 только для расчетов iStochastic, если текущее положение его относительно этих уровней допустим неизвестно. Т.е. если вышел уже из зоны, то определить из какой до того, как выйдет из противоположной. Вот такая задача. Сам решить не могу циклом. Скажите, что делаю не правильно?

Расчет значений делайте в цикле

и разделите проверку условий поскольку сработает только одно из них, то сможете распознать какое.

 

Рекомендую считать стохастик на предыдущем младшем ТФ, тогда он точнее.

Для этого К, D и S нужно умножить int _Div = MathRound(TF_Indicator/Period());

 

VladislavVG, Большое спасибо, все заработало в отдельном коде!


valenok2003 Спасибо за инфу, надеюсь пригодится! Но пока не вижу выгоды от точности в расчетах стохастика на младшем ТФ, или скорее всего не понимаю результата.