Рачет среднего хода пары за указанный период

 

Коллеги,

не удаётся реализовать код в советнике

int finish,price,summ=0; 

extern int hist = 30;

extern bool W1 = TRUE; 

int start()

{

   if(W1)finish=iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_W1,0),false)+1;

   else finish=1;

   for(int i_=hist-1+finish;i_>=finish;i_--){

      summ +=(iHigh(NULL,PERIOD_D1,i_)-iLow(NULL,PERIOD_D1,i_))/Point;

     } 

    price=summ/hist;

Comment("Среднее значение ", price );

 По-идее должно отображаться значение среднего хода пары за 30 дней. Что я делаю не так ?

 
Sergey Lapshov:

Коллеги,

не удаётся реализовать код в советнике

int finish,price,summ=0; 

extern int hist = 30;

extern bool W1 = TRUE; 

int start()

{

   if(W1)finish=iBarShift(NULL,PERIOD_D1,iTime(NULL,PERIOD_W1,0),false)+1;

   else finish=1;

   for(int i_=hist-1+finish;i_>=finish;i_--){

      summ +=(iHigh(NULL,PERIOD_D1,i_)-iLow(NULL,PERIOD_D1,i_))/Point;

     } 

    price=summ/hist;

Comment("Среднее значение ", price );

 По-идее должно отображаться значение среднего хода пары за 30 дней. Что я делаю не так ?

Зачем изобретать велосипед заново. Есть индикатор ATR  http://www.metatrader5.com/ru/mobile-trading/iphone/help/chart/indicators/oscillators/average_true_range
 
Vitalii Ananev:
Зачем изобретать велосипед заново. Есть индикатор ATR  http://www.metatrader5.com/ru/mobile-trading/iphone/help/chart/indicators/oscillators/average_true_range
мне нужно включить логику расчета в свой код
 
Sergey Lapshov:
мне нужно включить логику расчета в свой код
Так посмотрите исходник Atr он есть в метаедиторе. По моему мнению, намного проще просто вызывать этот индикатор из эксперта с помощью функции iATR().
 
Vitalii Ananev:
Так посмотрите исходник Atr он есть в метаедиторе. По моему мнению, намного проще просто вызывать этот индикатор из эксперта с помощью функции iATR().

 iATR(NULL,PERIOD_D1,1,1) среднее значение за предыдущий день ?

 iATR(NULL,PERIOD_D1,20,1)  среднее значение за прошедншие 20 дней ?

 
Sergey Lapshov:

 iATR(NULL,PERIOD_D1,1,1) среднее значение за предыдущий день ?

 iATR(NULL,PERIOD_D1,20,1)  среднее значение за прошедншие 20 дней ?

Да, все верно.
 
Vitalii Ananev:
Зачем изобретать велосипед заново. Есть индикатор ATR  http://www.metatrader5.com/ru/mobile-trading/iphone/help/chart/indicators/oscillators/average_true_range
АТР - это не чистый хай-лоу. Там в случае гепа будет другая цифра.
 
Sergey Lapshov:

...

 По-идее должно отображаться значение среднего хода пары за 30 дней. Что я делаю не так ?

Имеются функции Print(), Comment(), Alert(). Узнайте, что там не так происходит.
 
Andrey Khatimlianskii:
АТР - это не чистый хай-лоу. Там в случае гепа будет другая цифра.
Это да, геп он не отфильтровывает.
Причина обращения: