Новая версия платформы MetaTrader 5 build 5370: улучшения в веб-версии - страница 7

 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Новая версия платформы MetaTrader 5 build 5370: улучшения в веб-версии

fxsaber, 2025.10.30 12:35

b5370, столкнулся с такой ситуацией в Тестере.
CUSTOM_EURGBP,M1: 38983568 ticks, 0 bars generated. Environment synchronized in 0:00:01.867. Test passed in 0:00:07.441 (including ticks preprocessing 0:00:03.000).
CUSTOM_EURGBP,M1: total time from login to stop testing 0:00:09.308 (including 0:00:01.867 for history data synchronization)
1116 Mb memory used including 38 Mb of history data, 832 Mb of tick data

Реальные символы - OK, кастомные - нет баров в Тестере. Сама история есть. И в Тестере все работало. Но после запуска дебага стало так. Перезагрузки терминала не помогают. Не помогает и удаление Tester\bases.

b5370, воспроизведение бага с отсутствием баров в Тестере.

void OnStart()
{
  MqlTick Ticks[];

  for (uint i = CopyTicksRange(_Symbol, Ticks, COPY_TICKS_ALL, D'2025.10.01' * 1000, D'2025.11.01' * 1000 - 1); (bool)i--;)
    Ticks[i].flags = 0; // Обнуление флагов для воспроизведения бага с отсутствием баров в Тестере.
  
  const string Name = "CUSTOM11";
  
  CustomSymbolCreate(Name, NULL, _Symbol);
  CustomTicksReplace(Name, 0, LONG_MAX, Ticks);
  
  if (SymbolSelect(Name, true))
    ChartOpen(Name, PERIOD_CURRENT);    
}  


Запуск одиночного прохода на этом символе в режиме по реальным тикам (и пипсам).

OnTester result 0
CUSTOM11,M1: 122344 ticks, 0 bars generated. Environment synchronized in 0:00:00.054. Test passed in 0:00:00.073 (including ticks preprocessing 0:00:00.015).
CUSTOM11,M1: total time from login to stop testing 0:00:00.127 (including 0:00:00.054 for history data synchronization)
83 Mb memory used including 1.88 Mb of history data, 64 Mb of tick data

Снова тиковые флаги.

Строка для поиска: Oshibka 150.

 
Если отсутствие генерации баров ускоряет оптимизацию, то, возможно, стоит оставить эту баго-фичу для тех, кому бары не нужны.
 

Я не могу наследоваться от класса из global scope?


C++ вроде не возражает (рандомный online compiler):


[edit] Я прикрепил код
Файлы:
test.mq5  1 kb
 

Запустил оптимизацию на 16 агентов. В папку каждого агента скопировалось по 2+ ГБ файлов и продолжает копироваться. Продолжается это уже 20 минут...

MQ решило "убивать" SSD диски пользователей?

Неужели нельзя из одного места читать историю, а не делать 16 копий? А агентов у меня 36 - решил пока не все загружать, чтобы памяти хватало.
 

Наконец то дождался остановки 100%-ной записи на SSD для 30 агентов. Для первых 16ти потребовалось 22 минуты. Потом запустил остальные 20 (но 6-ти агентам не хватило места на SSD, 30 только смогли запуститься). Итоговое время на запуск оптимизации 1 час 20 минут.
Вот поймал момент окончания записи


Всего было записано временных файлов в папку тестера на 282 Гб (на 30 агентов в среднем почти по 9,4 Гб):


Отдельные папки:



Ужас...

 
Forester #:

Ужас...

Какие причины неиспользования мат. режима?

 

В окне "Навигатор" иконки для раскрытия разделов стали очень некрасивыми и неудобными. Вместо плюсиков теперь стрелочки, по которым ещё надо исхитриться попасть.

Предлагаю вернуть всё как было и сделать плюсики, как раньше. Чтобы было красиво и удобно.



 
Vladislav Boyko # :

Я не могу наследоваться от класса из global scope?


C++ вроде не возражает (рандомный online compiler):


Хорошая находка. В следующий раз, пожалуйста, укажите код, а не его изображение.

Спасибо.

 
fxsaber #:

Какие причины неиспользования мат. режима?

https://www.mql5.com/ru/code/61283 имеете в виду?
Завтра попробую. Заодно будет с чем сравнить.
EAToMath
EAToMath
  • 2025.07.09
  • www.mql5.com
Тестирование на истории в математическом режиме MT5-тестера.
 
Опция расчета прибыли в пипсах в тестере что-нибудь дает в плане скорости? Есть показатели времени для сравнения в режимах вкл/выкл? У себя пробую - как были тормоза без неё, так и остаются с ней. Подход с самодельными тестерами и кастом-символами известен, но хотелось бы и от стандартного тестера скорость выжать.