Как тестировать советник в тестере MT5

Перед тем, как отправлять советника на реальный счет, необходимо выяснить: а есть ли в этом смысл? Ведь множество форекс роботов предназначены исключительно для продажи доверчивым лохам. Одним из первых этапов проверки советника на профпригодность является прогон в тестере стратегий.

Во время тестирования, советник прогоняется по историческим данным, обрабатывая каждую котировку и совершая виртуальные транзакции так же, как бы это было на реальном рынке. По сути, тестер показывает то, как робот торговал бы в прошлом. Инструкция по тестированию экспертов в MT4 у нас уже есть, поэтому мы подготовили аналогичную для более нового терминала — Metatrader 5.

Торговая платформа MT5 представляет собой мощный инструмент для разработки, тестирования и отладки автоматических торговых стратегий. Главная же особенность тестера MT5 в том, что вы можете тестировать стратегии, работающие одновременно на нескольких символах.

MT5 не поддерживает роботов, написанных для МТ4, и наоборот: МТ4 не поддерживает советники для MT5.

Настройка тестера стратегий

Для запуска тестера заходим в меню Вид – Тестер Стратегий, либо вызываем окно тестера сочетанием клавиш Ctrl + R.

 

Вы также можете выбрать стратегию из окна навигатора и вызвав контекстное меню кликнуть по пункту «Тестировать» – советник будет выбран в тестере стратегий.

  1. В выпадающем списке выберите тест советника (тестер также поддерживает визуальный тест индикаторов);
  2. Дальше, выбираем советник или индикатор, который собираемся тестировать. Пользовательские советники хранятся в разделе Advisors, примеры поставляемые с терминалом в Examples, а советники, скачанные из магазина — в Market;
  3. Здесь выбираем торговый инструмент, на исторических котировках которого будем проводить тестирование. Если в списке нет нужных символов, проверьте окно обзора рынка. Для отображения всех доступных символов вызовите контекстное меню по щелчку правой кнопки мыши и выберите пункт «Показать все»;

Как тестировать советник в тестере MT5Перед началом теста, тестер автоматически загружает всю необходимую историю, так что вам не нужно беспокоится об этом самостоятельно. Загрузка истории может занять некоторое время, но на следующем запуске будут загружаться лишь недостающие данные.

Для тестера стратегий в MT4 необходимо было подгружать историю самостоятельно. В MT5 эта проблема решена. Все закачивается автоматически.

  1. Далее выбираем таймфрейм для теста. MetaTrader 5 поддерживает 21 таймфрейм: от одной минуты до месяца;
  1. После выбора таймфрейма нужно определиться с периодом тестирования. Вы можете выбрать один из предустановленных вариантов: вся доступная история, последний месяц, последний год или собственный период;
  2. Здесь вы можете вручную указать точную начальную и конечную дату теста, вплоть до сегодняшнего дня;
  3. Для исключения «подгонки» вы можете указать дополнительный форвард-период (для стандартного теста советника, без подбора настроек, вам это не понадобится)
    Допустим, вы подобрали оптимальные параметры для советника на тесте за текущий год (вплоть до сегодняшней даты). В этом случае, существует ненулевая вероятность того, что выбранные параметры будут работать только в пределах тестируемого периода, и в будущем результаты могут сильно отличаться.
    Для дополнительной проверки вы можете разбить период теста на 2 части: бэк-тест и форвард-тест. Форвард-тест представляет собой период повторного прогона советника, скажем, последнюю четверть от всего теста. В тестере MT5 можно выбрать форвард в половину, треть или четверть от длительности теста, либо выбрать собственную стартовую дату. То есть, на первом временном отрезке вы проводите оптимизацию параметров советника, а на втором проводите повторное тестирование с теми же параметрами. Если во время форвард-тестирования результаты стратегии кардинально отличаются от результатов предыдущего теста, значит выбранные параметры нестабильны и использовать такой советник на реальном счету нельзя;
  1. На текущий момент доступно два режима торговли: обычный и режим с произвольной задержкой. Обычный режим обеспечивает идеальное исполнение без реквот и проскальзываний.
    Режим произвольной задержки позволяет тестировать советника в условиях, приближенных к реальным. Для этого случайным образом задается задержка в исполнении ордеров, в 90% случаев – до 8 секунд, в остальных десяти – до 18 секунд. Небольшая ремарка: подобные задержки на рынке нереальны, но если ваш советник сможет справиться с ними, то он действительно довольно хорош.
  2. Далее вам предстоит выбрать способ генерации тиковых данных.
    • В режиме «Все тики» тиковые данные моделируются на основе минутной истории. Достаточно точный метод, особенно когда нет возможности теста на реальных тиковых данных. Если стратегия посылает высокочастотные запросы или использует сверхкороткие цели, результаты тестирования в этом режиме могут несколько отличаться от реальных. В этом режиме моделируется лишь среднее значение спреда в течении бара M1;
    • Следующий режим, «Каждый тик на основе реальных тиков«, позволяет тестировать автоматические стратегии на реальных тиковых данных, скачиваемых с сервера брокера. Вам не нужно ничего скачивать самостоятельно, тестер делает это автоматически перед началом теста. Так как в тесте используются реальные цены, пока что это наиболее точный метод для тестирования стратегий. В частности, точность тестирования обеспечивается настоящим плавающим спредом. Тиковые данные могут занимать существенный объем на диске, поэтому перед началом теста дождитесь загрузки истории;
  • Как тестировать советник в тестере MT5«OHLC на M1» – тестировании на истории M1, используя только уровень цены открытия, хая, лоу и закрытия. Во время тестирования советника в режиме «Только цены открытия» используются только цены открытия баров;
  • Последний режим, «Математические вычисления«, отключает автоматическую подкачку истории и генерацию тиков. Данный метод можно использовать для подбора параметров советника.
  1. Размер депозита стоит указывать из расчета вашего реального рискового капитала и мани-менеджмента самой стратегии. Т.е выбирать депозит 100 000$, если у вас нет депозита в 100000$ — не стоит;
  2. Выбираем размер кредитного плеча;
  3. Режим визуализации позволяет наглядно оценить работу эксперта на исторических данных – все сделки будут отображаться на графике. К этой функции мы вернемся чуть позже. Более подробно про оптимизацию в МТ5 мы поговорим в наших следующих уроках.
  4. Остается только нажать кнопку СТАРТ и тест начнется.

Как тестировать советник в тестере MT5Визуализация тестирования

Визуализацией стоит пользоваться тогда, когда обычного теста может быть недостаточно и необходима наглядная оценка работы эксперта на графике. При активации данной функции, визуализация будет открывается в отдельном приложении, в новом окне. По функционалу окно визуализации почти полностью отвечает интерфейсу торгового терминала. Перед запуском убедитесь в том, чтобы  была отключена оптимизация – визуальный тест работает только для одиночных прогонов.

На верхнем тулбаре вы можете настроить стиль отображения ценовых данных, изменить масштаб и скорость тестирования. Информация о текущих ценах доступна из окна обзора рынка, и там же отображаются все участвующие в расчете инструменты. По значениям в окне данных можно проверить работу индикатора на истории. В окне инструментов вы можете наблюдать за текущими открытыми позициями, а также изучить историю торгов и торговый журнал.

Сам график не поддается настройке, но вы можете использовать собственный шаблон. Для этого достаточно создать шаблон графика с нужной расцветкой, прикрепить нужные индикаторы или объекты, и сохранить шаблон с именем тестируемого советника. Для этого вызовите контекстное меню графика и выберите пункт «Сохранить шаблон».

Откроется стандартное окно сохранения файла. Укажите имя шаблона и нажмите «Сохранить».

Тестирование мультивалютных стратегий

C приходом тестера MT5 у трейдеров появилась возможность тестирования стратегий, торгующих на нескольких инструментах. Стоит учитывать, что во время мультивалютного тестирования история по символам берется из торговой платформы, поэтому перед тестированием включите отображение нужных инструментов в обзоре рынка, откройте их графики и установите месячный таймфрейм. Прокручивая график влево терминал будет автоматически закачивать историю с торгового сервера в виде минутных данных, пока не будет достигнут максимум. В отличие от MT4, предшественника MT5, новый терминал не поддерживает ручную загрузку, и берет на себя всю работу по закачке и синхронизации исторических котировок.

Для теста мы скачаем мультивалютный советник из Маркета MQL5. Скачать демо советника из магазина можно не выходя из терминала. Для этого пройдите в «Инструменты» – «Маркет», и выберите понравившийся продукт.

На странице описания советника нажмите «Скачать демо».

После закачки советника появится кнопка «Протестировать».

В тестере, в разделе «Параметры» выбираем лот 0.1, чтобы число долларов/евро было примерно равно количеству заработанных пунктов.

Как настроить тестер стратегий для тестирования на нескольких валютных парах?

Никак! Все настройки для тестирования на нескольких валютных парах находятся внутри советника. Именно там их можно включать и выключать, если это было доступно изначально в этих настройках. Главное, чтобы мы отметили эти валютные пары в «Обзоре рынка» и подгрузили по ним историю, как было сказано ранее. Все остальное советник выполнит сам.

Устанавливаем интервал тестирования (в данном случае, последний год), таймфрейм, параметры депозита, выбираем визуализацию (если она вам нужна) и жмем «Старт».

В обзоре рынка будут показаны все инструменты, к которым обращается советник. На графиках отображаются используемые индикаторы и торговые входы.

По завершению теста во вкладке «График» будет показан график баланса/средств за тестируемый интервал. В большинстве случаев, работу стратегии можно оценить по графику ее доходности. Чем стабильнее и «ровнее» график, тем лучше. Не стоит гнаться за максимальной прибыльностью, лот можно увеличить всегда. Хорошая же стратегия должна, в первую очередь, иметь высокое отношение прибыли к риску (просадке) и плавную кривую доходности.

Судя по графику доходности — перед нами не советник, а мусор. К слову, как и большинство роботов в маркете.

За более детальным отчетом перейдите на вкладку «Бэктест».

Через контекстное меню вы можете сохранить отчет в формате разметки xml, если вы собираетесь изучать отчет через пакет офисных программ, либо в html, для просмотра отчета через браузер.

В отчете отображены подробные графики распределения сделок по времени. Основываясь на данных детального отчета, можно подобрать более подходящие входные параметры для советника. Например, на графиках видно, что наибольшие убытки стратегия получает в понедельник вечером, значит, можно ограничить время работы эксперта таким образом, чтобы тот не торговал в периоды низкой прибыльности.

Вывод

Несмотря на то, что тестер MT5 прошел громадный путь развития и, на данный момент, является по истине одним из самых мощных инструментов подобного плана на рынке, все же он не учитывает многие факторы, проявляющиеся только при тестировании на реальном счету. Результаты теста стоит воспринимать как некий ориентир, и точно не как истину в последней инстанции.

Главные же преимущества тестера MT5 – это мультивалютная торговля, тестирование на реальных тиковых данных и облачная оптимизация (об этом в другой раз). Все это позволяет быстро проверить торговую систему, перед тем как ставить советник на реальный счет.

С уважением, Алексей Вергунов
TradeLikeaPro.ru

A PHP Error was encountered

Severity: Notice

Message: Undefined offset: 1

Filename: main/v_footer.php

Line Number: 25

Backtrace:

File: /home/infoption.ru/www/infoption.ru/application/views/main/v_footer.php
Line: 25
Function: _error_handler

File: /home/infoption.ru/www/infoption.ru/application/controllers/Base.php
Line: 38
Function: view

File: /home/infoption.ru/www/infoption.ru/application/controllers/Blog.php
Line: 229
Function: render_single

File: /home/infoption.ru/www/infoption.ru/index.php
Line: 300
Function: require_once