Бэктестинг торговых советников MetaTrader по историческим данным - это хороший способ тестирования стратегии. Но тестирование данных по умолчанию, доступных в вашей установке MT4, дает очень низкое качество тестирования (обычно ниже 50%). Итак, как добиться качества 90 % при бэктестинге торговых советников MT4 на основании исторических данных? Это не так сложно на самом деле. Просто следуйте этому простому руководству, и вы сможете протестировать любой торговый советник MetaTrader EA с качеством моделирования не менее 90%.
Это руководство было составлено, чтобы предоставить точную информацию о качестве моделирования 90 % и 99,9 %, а также представить простой способ получения качественных исторических данных на вашей платформе MT4.
Рекомендуется использовать отдельную установку MT4, чтобы настроить там качественные данные бэктестинга и избежать их перезаписи потенциально ошибочными данными брокера.
1. Загрузите новый установщик MetaTrader 4 и установите его в отдельную папку. Имейте в виду, что хорошие исторические данные MetaTrader занимают много места на диске — ожидайте, что они будут занимать около 1 ГБ свободного места за два года данных. Чтобы загрузить установщик MT4, я рекомендую выбрать одного из Forex-брокеров MT4, поскольку вы больше не можете скачать MetaTrader 4 с официального сайта MetaQuotes.
2. Запустите только что установленный MetaTrader и войдите в демо-счет своего брокера. Теперь закройте все открытые графики.
3. Перейдите в меню Файл->Открыть папку данных. Откроется папка со всеми данными платформы. Затем закройте платформу.
![MT4 - Открыть папку данных](/img/articles/blog/2021/01/mt4-open-data-folder.png)
3. Откройте подпапку История в папке данных платформы и удалите там все (фактическое содержимое вашей папки История может отличаться от того, что вы видите на скриншоте):
![MT4 - Папка «История»](/img/articles/blog/2021/01/finding-history-folder-mql4.png)
![Удаление предыдущей истории MT4](/img/articles/blog/2021/01/clean-history-folder.png)
4. Запустите МТ4 еще раз. Настройте параметры MetaTrader, чтобы разрешить больше баров в истории графиков с помощью Инструменты->Параметры->Графики:
![Параметры истории MT4](/img/articles/blog/2021/01/mt4-tools-options-menu.png)
![Установите максимальное количество исторических баров MT4](/img/articles/blog/2021/01/mt4-max-bars-history-max-bars-chart.png)
5. Перейдите в Центр истории MT4(
![Меню «Центр истории» MT4](/img/articles/blog/2021/01/mt4-tools-history-center.png)
6.
![Меню «Центр истории» MT4](/img/articles/blog/2021/01/mt4-history-center-download.png)
7. Щелкните Загрузить — может появиться предупреждающее сообщение (нажмите OK, если оно появится):
![MT4 — Предупреждение о загрузке «Центра истории»](/img/articles/blog/2021/01/mt4-history-center-download-warning.png)
8. После того, как процесс загрузки завершится, вы увидите там некоторые данные M1:
![MT4 - «Центр истории» - Данные M1](/img/articles/blog/2021/01/mt4-history-center-m1-data.png)
9. Перейдите в Файл->Открыть в автономном режиме и откройте график M1, для которого вы только что загрузили данные:
![MT4 - Файл->Открыть меню в автономном режиме](/img/articles/blog/2021/01/mt4-open-offline-chart.png)
![MT4 - Открытие графика M1 в автономном режиме](/img/articles/blog/2021/01/mt4-open-offline-chart-m1-data.png)
10. Откроется график. Найдите сценарий PeriodConverter
в Сценарии с помощью Навигационной панели (это сценарий по умолчанию, предоставленный MetaQuotes). Запустите его на графике, установив Множитель периода в зависимости от временных рамок, необходимых для теста. Здесь вы видите, что он установлен для преобразования M30:
![MT4 — Сценарий конвертера периода работы](/img/articles/blog/2021/01/mt4-period-converter-script.png)
11. Проверьте вкладку Эксперты на панели Терминала, чтобы убедиться, что сценарий успешно завершил свою работу:
![MT4 - Проверка результата работы сценария конвертера периодов](/img/articles/blog/2021/01/mt4-period-converter-script-execution-result.png)
12. Теперь, если я протестирую какой-нибудь советник на таймфрейме M30 с моделью Каждый тик, качество моделирования будет 90%:
![MT4 — 90% качества моделирования достигнуто в отчете по ретроспективному тестированию](/img/articles/blog/2021/01/mt4-90-modelling-quality-backtest-report.png)
Начиная с 940-й сборки MetaTrader 4, 90 % — это максимальное качество моделирования, достижимое при тестировании на исторических данных без использования пользовательских взломов данных тиковых котировок. Качество моделирования 99,9% может быть достигнуто за счет использования
Создание пользовательского файла .fxt — довольно сложный процесс, и шаги процесса различаются в зависимости от инструментов, которые вы решите использовать. Я рекомендую использовать QuantDataManager от StrategyQuant, поскольку он бесплатный, позволяет загружать данные тиковых котировок Dukascopy за длительные периоды времени и преобразовывает данные тиковых котировок .csv в исторические данные .fxt и .hst, используемые MetaTrader 4. Другие подобные инструменты включают в себя Tickstory и Tick Data Suite от Birt Ltd.
Обсудить этот и другие способы получения качественных исторических данных для бэктестинга в MetaTrader 4 можно на нашем форуме, посвященном платформе MT4.
Знаете ли вы? MetaTrader 5 изначально поддерживает бэктестинг на основании реальных данных тиковых котировок. Даже если ваш брокер MT5 не предоставляет качественные реальные данные тиковых котировок за период и для валютной пары, на которой вы хотите провести бэктестинг, вы можете переключиться на брокера, который предоставляет такие данные. Использование сторонних поставщиков данных для MetaTrader 5 редко имеет смысл.