помогите новичку подкорретировать код

 

Всем привет!

Необходимо чтоб експерт находил самый волотильный бар за определенный период (к примеру 60 минут) и возвращал параметры Open, High, Low, Close, Volume.

Нужный бар находится, только параметры бара получаются не те, что нужно. Помогите подкорректировать код, плиз!

Я это представляю вот так:

#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link "https://www.metaquotes.net/"

extern int Quant_Bars=60; // размерность массива

int start()
{
//----
int i;
double Max_volume=Volume; // максимальный обьем
double Price_O; //цена открытия
double Price_H; //макс
double Price_L; //мин
double Price_C; //цена закрытия
//+------------------------------------------------------------------+

for(i=0;i<=Quant_Bars-1;i++) // цикл перебора баров
{
if(Volume[i]>Max_volume) // если больше предыдущего

Max_volume=Volume[i]; //значит оно и есть
Price_O=Open[i];

Price_H=High[i];

Price_L=Low[i];

Price_C=Close[i];
}

Alert("За последние ",Quant_Bars, "баров", " Max_volume= ", Max_volume,
"а", "Price_O=", Price_O, "Price_H=", Price_H, "Price_L=", Price_L, "Price_C=", Price_C); // Вывод на экран
//----

return;
}

 
zhuchek писал(а) >>

Всем привет!

Необходимо чтоб експерт находил самый волотильный бар за определенный период (к примеру 60 минут) и возвращал параметры Open, High, Low, Close, Volume.

Нужный бар находится, только параметры бара получаются не те, что нужно. Помогите подкорректировать код, плиз!

Я это представляю вот так:

А я представляю так

#property copyright "Copyright © 2009, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"

extern int Quant_Bars=60; // размерность массива

int start() {
   //----
   int i; 
   double Max_volume=0; // максимальный обьем 
   double Price_O; //цена открытия
   double Price_H; //макс
   double Price_L; //мин
   double Price_C; //цена закрытия
   //+------------------------------------------------------------------+

   for(i=0;i<Quant_Bars;i++) { // цикл перебора баров
      if(Volume[i]>Max_volume)  { // если больше предыдущего
          Max_volume=Volume[i]; //значит оно и есть
          Price_O=Open[i]; 
          Price_H=High[i];
          Price_L=Low[i];
          Price_C=Close[i]; 
      }
   }
   Alert("За последние ",Quant_Bars, "баров", " Max_volume= ", Max_volume, 
          "а", "Price_O=", Price_O, "Price_H=", Price_H, "Price_L=", Price_L, "Price_C=", Price_C); // Вывод на экран 
   //----
   return;
}

 
Vinin писал(а) >>

А я представляю так

Спасибо, большое, Vinin!!!!

Причина обращения: