Тестирование и оценка
Почему бэктест советника MT5 работает медленно: контрольный список исходного кода
Быстрое тестирование начинается с выявления дорогостоящих работ. Невизуальный запуск может по-прежнему тратить время на повторные вычисления, вывод журнала и события таймера, даже если анимированная диаграмма не отображается.
Отделить запуск от установившейся работы
Запишите время загрузки истории, время инициализации и скорость короткого повторяемого интервала. Первый запуск может ожидать данных, в то время как последующие запуски выполняют фактическое моделирование. Сравнивайте прогоны с использованием одного и того же скомпилированного файла, входных данных, модели и дат, прежде чем приписывать изменение скорости коду.
Проверка повторяющихся операций
Ищите дескрипторы ссылок индикаторов, создаваемые неоднократно, неоправданно большие копии истории, сканирование каждой прошлой сделки на каждом тике и подробные вызовы Print внутри тесных циклов. Рассмотрите возможность кэширования стабильной информации и запроса только тех данных, которые действительно необходимы. Обновляйте кэшированные значения, когда их базовая среда может измениться.
Отделите работу по отображению информации от торговых решений
Панель дисплея может обновляться по подходящему таймеру или только при изменении ее содержимого. Перерисовка графика не обязательно должна быть связана с каждым решением. Однако не перемещайте трейлинг-стопы, защиту торговой позиции или чувствительные к тикам входы за воротами свечи новой цены просто для того, чтобы ускорить тестирование. Это меняет стратегию.
Докажите, что предполагаемое поведение сохранилось
- Держите базовый уровень в течение фиксированного интервала.
- Измените одно измеренное узкое место.
- Сравните входы, выходы, объемы и сводные показатели.
- Проверьте любые различия, прежде чем принять улучшение скорости.
- Повторите с более продолжительным интервалом.
Сделайте это своим с MQLume
Именно здесь редактируемый исходный код становится особенно ценным. Проекты MQLume позволяют проверять работу советника и вносить целенаправленные улучшения. ИсследуйтеThe Gold Reaper MT5как стартовый проект.