Параметр ma_shift

 

Прошу помочь опытных программистов.

Столкнулся со следующей ситуацией.
Эксперементровал со сдвигом МА относительно графика.
Советник открывает позицию при пересечении двух МА.
Если в параметр ma_shift ставлю положителное число, например 2 - при пересечении МА советник открывает сделку.
Если ставлю отрицательное число например -3 советник не открывает сделку.
В учебнике нигде не нашел упоминания о подобной ситуации.
Заранее спасибо.
Выдержка из кода:


SMFast0=iMA( NULL, Tmfrm_work, PeriodSMFast, -3, ModeSMFast, PriceSMFast, 0 );// на текущем баре
SMFast1=iMA( NULL, Tmfrm_work, PeriodSMFast, -3, ModeSMFast, PriceSMFast, 1 );// на первом баре

SMSlow0=iMA( NULL, Tmfrm_work, PeriodSMSlow, 0, ModeSMSlow, PriceSMSlow, 0 );// на текущем баре
SMSlow1=iMA( NULL, Tmfrm_work, PeriodSMSlow, 0, ModeSMSlow, PriceSMSlow, 1 );// на первом баре


if(SMFast0>SMSlow0 && SMFast1<SMSlow1)
{
Opn_B=true; // Критерий откр. Buy
Cls_S=true; // Критерий закр. Sell
}

if(SMFast0<SMSlow0 && SMFast1>SMSlow1 )
{
Opn_S=true; // Критерий откр. Sell
Cls_B=true; // Критерий закр. Buy
}

 
наверное если у вас стоит -3 и 0, то о пересечении он узнает не ранее чем через 4 бара, после того как оно случилось. может ошибаюсь
 
KoDim:

Прошу помочь опытных программистов.


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