Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2352

 
Golden Ratio #:

Не понятно .

сложить сто последних значений и поделить на 100.)))

 
Tretyakov Rostyslav #:

А таk

я такого плана функцию написал . правильно?

double  SredniVolume()

  {

  double avarage=0;

for(int g=0;g<100;g++)

{

avarage=avarage+iVolume(Symbol(),0,g);


avarage=avarage/100;

}

return (avarage);

printf("SredniVolume", " ",avarage);

  }

 
Tretyakov Rostyslav #:
iMAOnArray

вот честно,для такого вопроса это слишком сложно. Да и сам редко использую. Либо вручную, либо из MovingAverages.mqh машку, а так это машка с периодом сто на нулевом баре и там вроде объем тоже можно пользовать.)

 
Golden Ratio #:

я такого плана функцию написал . правильно?

double  SredniVolume()

  {

  double avarage=0;

for(int g=0;g<100;g++)

{

avarage=avarage+iVolume(Symbol(),0,g);


avarage=avarage/100;

}

return (avarage);

printf("SredniVolume", " ",avarage);

  }

код правильно вставляйте, контрл К

вроде норм но деление на 100 лучше из тела цикла вынуть и делить после получения суммы 100 значений.

 
Valeriy Yastremskiy #:

код правильно вставляйте, контрл К

вроде норм но деление на 100 лучше из тела цикла вынуть и делить после получения суммы 100 значений.

double  SredniVolume_M1()

  {

   double avarage = 0;

   double sredvolum = 0;

   for(int g = 0; g < 100; g++)

     {

      avarage = avarage + iVolume(Symbol(), 0, g);

     }

   sredvolum = avarage / 100;

   return (sredvolum);

   printf("SredniVolume", " ", sredvolum);

  }

 
Golden Ratio #:

double  SredniVolume_M1()

 

   

double  SredniVolume()
{
double avarage=0;

for(int g=0;g<100;g++)
avarage=avarage+iVolume(Symbol(),0,g);
avarage=avarage/100;

printf("SredniVolume", " ",avarage);

return (avarage);
}
 
Yuriy Bykov #:
Таким образом, если вы задали total=15, то shift может быть, по-видимому, от 0 до 5. И функция не будет рассчитывать остальные возможные окна на массиве из 100 элементов: array[6:16], array[7:17], ... array[90:100].
Спасибо! Вроде понял, попробую на коде
 
Tretyakov Rostysla
Tretyakov Rostyslav #:

   

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

 
Volodymyr Zubov #:

В этой функцие достаточно символа, магик можно и любой использовать:

Огонь, спасибо большое. 
 
Tretyakov Rostyslav #:

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

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