Новая версия платформы MetaTrader 5 build 2340: Управление настройками счета в тестере и расширение интеграции с Python - страница 15
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вот модификация OnTimer
Вот результат оптимизации от 0 до 10 000
ExpertRemove работает
Похоже, никто не читал, как работает ExpertRemove
Остановка эксперта не происходит немедленно при вызове функции ExpertRemove(), производится лишь взвод флага для прекращения работы эксперта. Т.е., любое следующее событие эксперт обрабатывать уже не будет, произойдет вызов OnDeinit() и выгрузка с удалением с графика.
...
При вызове ExpertRemove() в тестере стратегий после успешной инициализации советника тестирование завершится штатным образом с вызовом OnDeinit() и OnTester(). В этом случае будет получена вся торговая статистика и значение критерия оптимизации
Вот модификация OnTimer
Вот результат оптимизации от 0 до 10 000
ExpertRemove работает
Похоже, никто не читал, как работает ExpertRemove
ExpertRemote был задействован, чтобы хоть как-то показать - при оптимизации (после одиночного теста) OnTimer не работает.
Тема обсуждение в en форуме: #4
Вот модификация OnTimer
Вот результат оптимизации от 0 до 10 000
ExpertRemove работает
Похоже, никто не читал, как работает ExpertRemove
Вот код без ExpertRemote - здесь просто деление на ноль в OnTimer.
Запускаем одиночный тест, затем оптимизацию. Результат - эксперт не заходит в OnTimer (в журнале нет ошибки)
Уточните пожалуйста, будет ли разбор проблемы?
Вот код без ExpertRemote - здесь просто деление на ноль в OnTimer.
Запускаем одиночный тест, затем оптимизацию. Результат - эксперт не заходит в OnTimer (в журнале нет ошибки)
И не должно быть.
При оптимизации в журнал тестера выводятся принты только в OnInit.
Из OnTick, OnTimer, OnTrade, OnDeinit, OnTester - нет. Даже ошибки.
Сделано специально, чтобы не забивать логи на диске. Всегда так было.
PS Вижу на скриншоте, что все результаты пришли без ошибок. Разберёмся
И не должно быть.
При оптимизации в журнал тестера выводятся принты только в OnInit.
Из OnTick, OnTimer, OnTrade, OnDeinit, OnTester - нет. Даже ошибки.
Сделано специально, чтобы не забивать логи на диске. Всегда так было.
Хорошо - теперь деление на ноль я поставил, кроме OnTimer, в OnTick()
Результат оптимизации:
сразу в журнале видны ошибки:
то есть в OnTick эксперт заходит и конечно видит деление на ноль.
Если же из OnTick убрать деление на ноль и оставить деление на ноль в OnTimer - то никаких ошибок при оптимизации нет - так как эксперт при оптимизации не заходит в Ontimer.
Вот код без ExpertRemote - здесь просто деление на ноль в OnTimer.
Запускаем одиночный тест, затем оптимизацию. Результат - эксперт не заходит в OnTimer (в журнале нет ошибки)
У меня в билде 2345 вот такой вывод в лог
Хорошо - теперь деление на ноль я поставил, кроме OnTimer, в OnTick()
Результат оптимизации:
сразу в журнале видны ошибки:
то есть в OnTick эксперт заходит и конечно видит деление на ноль.
Если же из OnTick убрать деление на ноль и оставить деление на ноль в OnTimer - то никаких ошибок при оптимизации нет - так как эксперт при оптимизации не заходит в Ontimer.
Понятно, что есть проблема.
Пытаемся воспроизвести у себя
I have actually problems to ad a post:
Is I press Add the Comment nothing happens ?
It seems to be only the German forum - as here it works.
Профилировщик работает не со всеми индикаторами. Исходный код "проблемного" индикатора прислал в ЛС.
После нажатие кнопки стоп ничего не происходит.И это всё описание проблемы? Где детали? Как можно воспроизвести?
Профилировщик работает и с Вашим индикатором тоже. После нажатия кнопки стоп кое-что происходит