Бета-версия платформы MetaTrader 5 build 1910: Свободное перетаскивание графиков и .Net библиотеки в MQL5 - страница 13

 
Renat Fatkhullin:

Код в данном случае - это не просто исполнимый код, но и масса блоков данных и различных кешей, которые явно не в консистентном состоянии после принудительной остановки.

Понял, спасибо. Практическая задача такова, чтобы, например, если в Тестере достигается определенная просадка, завершать проход, как ненужный. И делать это, естественно, через ExpertRemove+IsStopped и абсолютно корректно. Возможно ли это делать не дорого? Сейчас самый дешевый вариант - это закрыть все позиции, отключить торговую логику и выгрузить используемые индикаторы, потом дождавшись конца прохода.

Но при таков варианте невозможно передать флаг в Тестер, что проход был завершен принудительно. Да и гнать миллионы тиков вхолостую - некрасиво совсем.

 
Slava:
Полный лог тестерного агента покажите пожалуйста

Обратите внимание, создал скрипт для совместного тестирования.

Скрипт создает кастомный инструмент с рандомной историей.

Выявленные баги:

1. Тестер не запускается при начальной дате истории 1970.01.01, начальная дата тестирования - любая, в логах только одна запись: no history data from 1970.01.01 00:00

2. Тестер начинает писать больше в логах если сгенерить историю с 1970.01.03 но тестирование все равно не идет.

3. Если сгенерить историю например с 2020.01.01 то ошибка в тестере: set mode to math calculations or adjust testing dates

4. Графические объекты не создаются на графике с начальной историей превышающей текущий день, например с 2020.01.01.


Файлы:
 
fxsaber:

Понял, спасибо. Практическая задача такова, чтобы, например, если в Тестере достигается определенная просадка, завершать проход, как ненужный. И делать это, естественно, через ExpertRemove+IsStopped и абсолютно корректно. Возможно ли это делать не дорого? Сейчас самый дешевый вариант - это закрыть все позиции, отключить торговую логику и выгрузить используемые индикаторы, потом дождавшись конца прохода.

Но при таков варианте невозможно передать флаг в Тестер, что проход был завершен принудительно. Да и гнать миллионы тиков вхолостую - некрасиво совсем.

Фактически нужна функция TesterStop(), которая выставляет некий флаг. Тестерный агент по наличию этого флага нормально завершает тестирование с теми результатами, которые уже получены.
 
Andrey Voytenko:

Обратите внимание, создал скрипт для совместного тестирования.

Скрипт создает кастомный инструмент с рандомной историей.

Выявленные баги:

1. Тестер не запускается при начальной дате истории 1970.01.01, начальная дата тестирования - любая, в логах только одна запись: no history data from 1970.01.01 00:00

2. Тестер начинает писать больше в логах если сгенерить историю с 1970.01.03 но тестирование все равно не идет.

3. Если сгенерить историю например с 2020.01.01 то ошибка в тестере: set mode to math calculations or adjust testing dates

4. Графические объекты не создаются на графике с начальной историей превышающей текущий день, например с 2020.01.01.


Теперь более понятно

1. Нулевое время имеет особое значение. Как правило получение времени 0 (1970.01.01 0:00:00) из какой-либо нашей внутренней функции мы трактуем как ошибку

2. Покажите эти логи.

3. Время "до" насильно переводится на начало текущего дня, если оно больше. Время "от" не должно быть больше времени "до"

4. Такое использование просто не предполагалось

 
Slava:
Фактически нужна функция TesterStop(), которая выставляет некий флаг. Тестерный агент по наличию этого флага нормально завершает тестирование с теми результатами, которые уже получены.

Да, все так.

 

А у меня такая проблема на последнем билде 1912. Из терминала не запускается редактор кода (F4/клик по иконке). Версия редактора тоже 1912.

Пишет в Журнале "MetaEditor not found". 


Попробовал запустить файл вручную из корневой папки. Он запускается, но при этом сначала сильно подвешивает процессор и забирает оперативки более 2 Гигов. Секунд через 10 всё нормализуется.

 

Slava:

2. Покажите эти логи.

Я прошу вас запустить этот скрипт у себя и все увидеть собственными глазами.

Главное то, что я ни при каких начальных датах истории не могу заставить тестер работать.

Возможно нужно выработать свод правил и ограничений для построения кастомной истории.

 
Denis Kirichenko:

А у меня такая проблема на последнем билде 1912. Из терминала не запускается редактор кода (F4/клик по иконке). Версия редактора тоже 1912.

Пишет в Журнале "MetaEditor not found". 

Из-за долгой проверки антивирусом редактора, терминал не успевает дождаться запуска редактора и поэтому сообщает "запустил редактор, но не нашел".


Попробовал запустить файл вручную из корневой папки. Он запускается, но при этом сначала сильно подвешивает процессор и забирает оперативки более 2 Гигов. Секунд через 10 всё нормализуется.

Это его антивирус проверяет так долго.

 
threat:
На открепленном графике при сохранении изображения (активный график как есть) внизу png остается черная полоса. build 1911
Спасибо за сообщение, сохранение изображения откреплённого графика будет исправлено в следующем обновлении.
 

По поводу N/A

получил такой ответ от поддержки брокера:

В ответ на Ваше обращение, сообщаем, что Версия сервера актуальная. Build 1881

Источник данных не передает направление сделки в потоке котировок.

Тем не менее, History Server MT5 по своим алгоритмам может сам определить направление сделок, но это происходит не всегда – именно в этих случаях и проставляется N/A

Спасибо за обращение!


Выделенное правда или всё-таки сервер брокера старый?