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

Как протестировать советник в metatrader 5

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

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

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

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

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

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

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

Menyu-Vid-----Tester-Strategiy-v-MT5

 

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

Выбор стратегии из окна навигатора для тестера стратегий в MT5

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

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

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

  1. Далее выбираем таймфрейм для теста. MetaTrader 5 поддерживает 21 таймфрейм: от одной минуты до месяца;

Выбираем таймфрейм для теста стратегии в MetaTrader 5

  1. После выбора таймфрейма нужно определиться с периодом тестирования. Вы можете выбрать один из предустановленных вариантов: вся доступная история, последний месяц, последний год или собственный период;
  2. Здесь вы можете вручную указать точную начальную и конечную дату теста, вплоть до сегодняшнего дня;
  3. Для исключения «подгонки» вы можете указать дополнительный форвард-период (для стандартного теста советника, без подбора настроек, вам это не понадобится)
    Допустим, вы подобрали оптимальные параметры для советника на тесте за текущий год (вплоть до сегодняшней даты). В этом случае, существует ненулевая вероятность того, что выбранные параметры будут работать только в пределах тестируемого периода, и в будущем результаты могут сильно отличаться.
    Для дополнительной проверки вы можете разбить период теста на 2 части: бэк-тест и форвард-тест. Форвард-тест представляет собой период повторного прогона советника, скажем, последнюю четверть от всего теста. В тестере MT5 можно выбрать форвард в половину, треть или четверть от длительности теста, либо выбрать собственную стартовую дату. То есть, на первом временном отрезке вы проводите оптимизацию параметров советника, а на втором проводите повторное тестирование с теми же параметрами. Если во время форвард-тестирования результаты стратегии кардинально отличаются от результатов предыдущего теста, значит выбранные параметры нестабильны и использовать такой советник на реальном счету нельзя;

Тестер стратегий в MT5

  1. На текущий момент доступно два режима торговли: обычный и режим с произвольной задержкой. Обычный режим обеспечивает идеальное исполнение без реквот и проскальзываний.
    Режим произвольной задержки позволяет тестировать советника в условиях, приближенных к реальным. Для этого случайным образом задается задержка в исполнении ордеров, в 90% случаев – до 8 секунд, в остальных десяти – до 18 секунд. Небольшая ремарка: подобные задержки на рынке нереальны, но если ваш советник сможет справиться с ними, то он действительно довольно хорош.
  2. Далее вам предстоит выбрать способ генерации тиковых данных.
    • В режиме «Все тики» тиковые данные моделируются на основе минутной истории. Достаточно точный метод, особенно когда нет возможности теста на реальных тиковых данных. Если стратегия посылает высокочастотные запросы или использует сверхкороткие цели, результаты тестирования в этом режиме могут несколько отличаться от реальных. В этом режиме моделируется лишь среднее значение спреда в течении бара M1;
    • Следующий режим, «Каждый тик на основе реальных тиков«, позволяет тестировать автоматические стратегии на реальных тиковых данных, скачиваемых с сервера брокера. Вам не нужно ничего скачивать самостоятельно, тестер делает это автоматически перед началом теста. Так как в тесте используются реальные цены, пока что это наиболее точный метод для тестирования стратегий. В частности, точность тестирования обеспечивается настоящим плавающим спредом. Тиковые данные могут занимать существенный объем на диске, поэтому перед началом теста дождитесь загрузки истории;

Тестер стратегий в MT5 2

  • «OHLC на M1» – тестировании на истории M1, используя только уровень цены открытия, хая, лоу и закрытия. Во время тестирования советника в режиме «Только цены открытия» используются только цены открытия баров;
  • Последний режим, «Математические вычисления«, отключает автоматическую подкачку истории и генерацию тиков. Данный метод можно использовать для подбора параметров советника.

Тестер стратегий в MT5 3

  1. Размер депозита стоит указывать из расчета вашего реального рискового капитала и мани-менеджмента самой стратегии. Т.е выбирать депозит 100 000$, если у вас нет депозита в 100000$ — не стоит;
  2. Выбираем размер кредитного плеча;
  3. Режим визуализации позволяет наглядно оценить работу эксперта на исторических данных – все сделки будут отображаться на графике. К этой функции мы вернемся чуть позже. Более подробно про оптимизацию в МТ5 мы поговорим в наших следующих уроках.
  4. Остается только нажать кнопку СТАРТ и тест начнется.

Тестер стратегий в MT5 4

Визуализация тестирования

Визуализация тестирования

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

Визуализация тестирования в тестере стратегий в MT5

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

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

Sohranenie-shablona-v-testere-strategiy-v-MT5

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

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

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

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

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

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

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

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

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

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

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

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

Выбо лота в тестере стратегий MT5

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

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

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

Устанавливаем интервал тестирования в тестере стратегий MT5

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

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

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

По завершению теста во вкладке График будет показан график балансасредств за тестируемый интервал.

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

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

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

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

Тестер стратегий в MT5 Cохранить отчет в формате разметки xml

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

Отчет результатов тестирования стратегии в тестере стратегий MT5

Вывод

1_7Hp3Zg96

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

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

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

В помощь Трейдеру, Новичкам, Обучение , , , ,
  • loliss

    Здравствуйте. Знаю что не по теме пишу. Но никак не могу взять в толк. Вот допустим сегодня вышли плохие новости по США. Несельскохозяйственный сектор. 38 К вместо 159. Почему все тут же продали доллар?????? Америка рухнула что ли?? Теперь ее не будет на карте из за этой цифры??? Что происходит после таких новостей? чем руководствуются трейдеры, какими выводами, что так реагируют??? Мне кажется только внешняя торговля и чистый приход капитала в страну может говорить о делах серьезно. (Продажи на внешний рынок ноль и космический долг перед другими). Не понимаю таких бурных реакций на рынке до сих пор. Кто нибудь андестенд???

  • Psiho Nort

    Алексей Вергунов, спасибо за инструкцию.

  • Валерий

    Замечательный материал. Ну когда же на сайте появятся уроки по MQL5. Так хочется научится писать советники для МТ5.

  • Stas

    Так что, «лед недоверия сломан»? 🙂 Раньше Павел вроде бы очень негативно относился к МТ5, считая что четвертый лучше?

    • Wester

      Дык сейчас МТ5 не такой, как раньше — ордера можно выставлять как в МТ4, плюс мультивалютное тестирование на тиковой истории, как говорят разработчики. Отпадает гимор с поиском и загрузкой тиков от «Дукаса» для тестера — только из-за этого уже можно будет переходить на МТ5. Осталось дело за брокерами и изучить MQL5.

    • Потихоньку трещит лед)