Тестер стратегий MetaTrader 5: ошибки, баги, предложения по улучшению работы - страница 34
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Тоже никогда не гляжу на него. Но полезное место занимает...
Однако, пригодилось.
Тоже никогда не гляжу на него. Но полезное место занимает...
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Тестер стратегий MetaTrader 5: ошибки, баги, предложения по улучшению работы
fxsaber, 2019.12.11 04:50
Во втором столбце так же не хватает миллисекунд.
Никого не будет шокировать когда сначала идут сообщения тестера о синхронизации, загрузке эксперта etc с локальным временем, а потом пойдут сообщения от эксперта и тестового торгового сервера с тестовым временем, иногда перемежаясь с сообщениями тестера с локальным временем?
Слава, сидел обдумывал как лучше организовать сиё. Хотел предложить именно чтобы сначала шли сообщения о времени запуска, синхронизации, etc, а уже далее - остальное - от эксперта и тестера с важными сообщениями.
По моему - это то же самое, что ты предложил :)
Нашел одно из мест, где Тестер можно ускорить. Оказывается, каждый раз, когда Тестер сравнивает две цены (например, BuyLimit и Tick.ask), он это делает через дорогую нормализацию. Не нужно этого делать!
Цены в истории Терминала не нормализованы!
Результат (EURUSD, MQ-Beta)
Это как так получается? Ошибка на стороне торгового сервера?
Как следствие, Тестер гонит советники по кривым ценам даже на реальных символах.
ЗЫ Похоже, проблема в применении разработчиками иного алгоритма нормализации.
Воспроизвел баг с пустым значением в инпут-параметрах.
1. Собираем советника:
2. Оптимизируем на чем угодно оба параметра:
3. Снимаем галку с энама и оптимизируем только х:
4. Загружаем 1-й кэш оптимизации, потом 2-й, из результатов запускаем одиночный прогон. Вместо -1 получаем INT_MAX:
Актуально для всех enum-ов, начинающихся с -1.
Есть подозрение, когда снимаете галку с t, input полностью отключается
и переменная t содержит неинициализированное значение INT_MAX, а не пустое.
Цены в истории Терминала не нормализованы!
Результат (EURUSD, MQ-Beta)
Это как так получается? Ошибка на стороне торгового сервера?
Как следствие, Тестер гонит советники по кривым ценам даже на реальных символах.
ЗЫ Похоже, проблема в применении разработчиками иного алгоритма нормализации.
Это - не кривые цены! Вполне себе нормализованные. Это очень хорошо видно из вашего принта
В торговом сервере при торговых операциях всегда используется эпсилон для сравнения пришедшей цены и текущей цены.
Вы в курсе, что результат <some_real_number>*0.5 может отличаться от результата <the_same_real_number>/2.0?
Вы в курсе, что некоторые компиляторы при оптимизации кода могут заменить одну операцию на другую? При чём, в одном случае заменить, а в другом случае - нет, в пределах одного проекта. Без объявления войны.
Есть подозрение, когда снимаете галку с t, input полностью отключается
и переменная t содержит неинициализированное значение INT_MAX, а не пустое.
Какая там внутри причина — не важно.
Важно, чтобы воспроизвели и исправили. Баг давний.
Это - не кривые цены! Вполне себе нормализованные. Это очень хорошо видно из вашего принта
Цена является нормализованной только в том случае, если проходит это условие.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Тестер стратегий MetaTrader 5: ошибки, баги, предложения по улучшению работы
fxsaber, 2019.12.11 07:47
В торговом сервере при торговых операциях всегда используется эпсилон для сравнения пришедшей цены и текущей цены.
Это правильно, что торговый сервер делает именно так.
Вы в курсе, что результат <some_real_number>*0.5 может отличаться от результата <the_same_real_number>/2.0?
Вы в курсе, что некоторые компиляторы при оптимизации кода могут заменить одну операцию на другую? При чём, в одном случае заменить, а в другом случае - нет, в пределах одного проекта. Без объявления войны.
На оба вопрос ответ утвердительный - в курсе.
Еще раз, исходные цены в Терминале не нормализованы. Отсюда легко возникает эта ситуация.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ненормализованные цены в MT4
fxsaber, 2019.02.20 23:03
А вот ситуация гораздо хуже, и при этом на MQ-DemoЦена открытия текущей позиции не равна цене своих ордера/сделки.