Ошибки, баги, вопросы - страница 2464

 
Artyom Trishkin:
Он ваш файл запускает из папки экспертов. Но ваш файл (вы не сказали) - не эксперт?

Мой файл эксперт. И в ex4 формате он запускается на его компе тоже. Но если он сам компилирует, то возникает эта ошибка.

 
Evgeny Potapov:

Мой файл эксперт. И в ex4 формате он запускается на его компе тоже. Но если он сам компилирует, то возникает эта ошибка.

Значит вопрос не по теме этой ветки.
 
Artyom Trishkin:
Значит вопрос не по теме этой ветки.

Спасибо! Вопрос решён: он компилировал в неправильной папке. Интересно, а в какую ветку писать подобные вопросы?

 
Evgeny Potapov:

Спасибо! Вопрос решён: он компилировал в неправильной папке. Интересно, а в какую ветку писать подобные вопросы?

Есть ветки по вопросам новичков. Думаю, что он новичок.
 
Sergey Dzyublik:
MT5 (build 2044)
Тестер стратегий запускает 450 750 процессов "metatester64.exe".
Немного избыточное "внимание" для для 8 логических процессоров.

Логи тестера и логи агентов (достаточно первых 24) можно посмотреть?

 
Artyom Trishkin:
Было один раз, что в обновление попала рабочая версия, даже не бета. Может вы как раз попали на такой сбой? С момента последнего обновления была лишь 2044, и работает без ошибок, вами описываемых. 
Sergey Dzyublik:
Точно. MT5 (build 2045) 16 May 2019.

У меня только сегодня этот билд приехал. Поглядим-с

 
Slava:

Логи тестера и логи агентов (достаточно первых 24) можно посмотреть?

Да, конечно. MT5 (build 2045) та же проблема.
А MT5 (build 2009) - все ОК.
Может были какие-то изменения в сравнении с MT5 (build 2009), в частности в логике определения запущен ли локальный агент (например, привели ее к логики определения сетевого агента)...

Файлы:
 

МТ5. билд 2055
Функция ChartGetDouble(0,CHART_PRICE_MAX) и ChartGetDouble(0,CHART_PRICE_MIN) выполняется неправильно (пишет нули) при смене ТФ. 
Причем первый раз при запуске индикатора пишет правильно. Далее при смете ТФ на месячном ТФ всегда нули, на других иногда вначале, потом нормализуется.

#property indicator_chart_window
#property indicator_plots   1 
#property indicator_buffers 1

int OnInit()
  {
  Print(EnumToString(_Period) +":  PriceMax="+string(ChartGetDouble(0,CHART_PRICE_MAX))+";  PriceMin="+string(ChartGetDouble(0,CHART_PRICE_MIN)));
   return(INIT_SUCCEEDED);
  }
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const int begin,
                const double &price[])
  {
   return(rates_total);
  }

результат:

2019.05.20 02:30:31.689 TestMinMax (NZDUSD,MN1) PERIOD_MN1:  PriceMax=0.8995;  PriceMin=0.3258  // первый раз нормально
2019.05.20 02:30:37.492 TestMinMax (NZDUSD,W1)  PERIOD_W1:  PriceMax=0.8995;  PriceMin=0.3258
2019.05.20 02:30:39.233 TestMinMax (NZDUSD,MN1) PERIOD_MN1:  PriceMax=0.0;  PriceMin=0.0
2019.05.20 02:30:41.838 TestMinMax (NZDUSD,H4)  PERIOD_H4:  PriceMax=0.6986;  PriceMin=0.6352
2019.05.20 02:30:43.237 TestMinMax (NZDUSD,MN1) PERIOD_MN1:  PriceMax=0.0;  PriceMin=0.0
2019.05.20 02:30:51.404 TestMinMax (NZDUSD,M1)  PERIOD_M1:  PriceMax=0.0;  PriceMin=0.0
2019.05.20 02:30:54.108 TestMinMax (NZDUSD,MN1) PERIOD_MN1:  PriceMax=0.0;  PriceMin=0.0
2019.05.20 02:30:57.420 TestMinMax (NZDUSD,M5)  PERIOD_M5:  PriceMax=0.0;  PriceMin=0.0
2019.05.20 02:31:00.537 TestMinMax (NZDUSD,M15) PERIOD_M15:  PriceMax=0.0;  PriceMin=0.0
2019.05.20 02:31:02.512 TestMinMax (NZDUSD,M30) PERIOD_M30:  PriceMax=0.679;  PriceMin=0.6477000000000001
2019.05.20 02:31:03.780 TestMinMax (NZDUSD,M15) PERIOD_M15:  PriceMax=0.6689000000000001;  PriceMin=0.649
2019.05.20 02:31:05.977 TestMinMax (NZDUSD,M5)  PERIOD_M5:  PriceMax=0.6593;  PriceMin=0.6502
2019.05.20 02:31:07.502 TestMinMax (NZDUSD,M1)  PERIOD_M1:  PriceMax=0.6541;  PriceMin=0.6508
2019.05.20 02:31:10.136 TestMinMax (NZDUSD,MN1) PERIOD_MN1:  PriceMax=0.0;  PriceMin=0.0
Файлы:
 

https://www.mql5.com/ru/docs/basis/types/classes

offsetof – это специальная команда, которая непосредственно связана в атрибутом pack. Она позволяет получить смещение члена от начала структуры.

struct Parent{ 
      char              c;    // sizeof(char)=1 
};
     
struct Children pack(2) : Parent{ 
      short             s;   // sizeof(short)=2 
};

void OnStart(){ 
//--- объявим переменную типа Children 
   Children child;   
//--- узнаем смещения от начала структуры  
   Print("offsetof(child.c)=",offsetof(child.c)); 
   Print("offsetof(child.s)=",offsetof(child.s));
}   


Вначале удивился, так как не знал о существовании  offsetof. 
Но реальность расставила все на свои места:

'offsetof' - function not defined

 
Sergey Dzyublik:

https://www.mql5.com/ru/docs/basis/types/classes

Вначале удивился, так как не знал о существовании  offsetof. 
Но реальность расставила все на свои места:

'offsetof' - function not defined

Сами же писали

#include <TypeToBytes.mqh>

Print("offsetof(child.c)=",_OFFSET(child, c)); 
Print("offsetof(child.s)=",_OFFSET(child, s));