Возможности MetaTrader 4 для тестирования и оптимизации советников

Особенности тестирования советников в MT4

Механические торговые системы все чаще используются в работе трейдера. Одним из преимуществ является уменьшение неблагоприятного влияния психологических факторов на процесс торговли. Торговая платформа MetaTrader 4, являясь наиболее распространенным и популярным торговым терминалом, позволяет создавать и использовать разнообразные торговые автоматические и механические торговые системы, а так же проводить их тестирование и оптимизацию, как на исторических данных, так и в режиме «демо» работы.

Подготовка советника к тестированию в MetaTrader 4. Загрузка истории котировок

Для тестирования советника в торговом терминале MetaTrader 4 необходимо, прежде всего, загрузить историю котировок тех финансовых инструментов, с которыми планируете работать. При этом загружаются котировки минутного интервала. Это позволяет точнее аппроксимировать ценовые движения внутри бара в режиме тестирования торговых стратегий на больших тайм фреймах (H1, H4, D).

Что бы загрузить минутные данные, следует установить в терминале MetaTrader 4 размер исторических данных (меню «Сервис ->Настройки):

тестирование советников в mt4

В поле «Макс. баров истории» во вкладке «Графики» следует установить вручную число, согласно следующих расчетов: минутные данные одного года содержат 525600 баров. Соответственно, понадобится более 5 млн. баров для 10-летней истории. Для вступления в силу значения новых параметров, необходим перезапуск программы.

Данные истории загружаются в модуле программы «Архив котировок» (пункт «Сервис ->Архив котировок»).

тестирование советников в mt4

В появившемся окне необходимо выбрать период — 1 минута, а так же символ торгового инструмента, для которого требуется загрузить историю. Затем нажать на кнопку «Загрузить». Теперь, после загрузки, база данных содержит требуемое количество котировок. Следует помнить, что количество загруженных данных может у различных брокеров различаться.

Также необходимо провести согласованность котировок на различных временных интервалах, что достигается пересчетом данных минутного интервала в данные более крупных тайм фреймов. Выполняется такая операция с помощью скрипта «period_converter», который следует перетащить на минутный график финансового инструмента:

тестирование советников в mt4

При этом в окне входных параметров следует указать длительность пересчитываемого временного в минутах (M15-15; H1-60; …). Согласование необходимо повторить для всех временных интервалов.

Алгоритм тестирования советника в торговом терминале MT4

Для тестирования советников используется модуль «Тестер стратегий» (пункт «Вид ->Тестер стратегий»):

тестирование советника в mt4

Необходимо указать в окне тестера стратегий следующие настройки:

  • валютная пара и временной период, на котором планируется тестирование
  • анализируемый советник, а так же свойства
  • способ аппроксимации движений цены (рекомендуется «все тики»)
  • необходимость визуализации процесса тестирования
  • (в случае неустановленной опции «Использовать дату» тестирование будет проведено на всех исторических данных)
  • необходимость проведения оптимизации параметров советника

Выбор советника и параметров тестирования в тестере стратегий

Необходимо в списке «Советники» выбрать советник для тестирования. В списке торгового терминала в папке «experts» находятся все скомпилированные эксперты. Кнопка «Свойства эксперта» позволяет открыть список дополнительных настроек советника. В графе «Тестирование» можно посмотреть и задать общие параметры советника:

тестирование советника в mt4

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

Ниже приведена вкладка «Входные параметры», которая содержит основные переменные, оказывающие влияние на алгоритм работы эксперта:

тестирование советника в mt4

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

Настройки «Период» и «Символ» тестера стратегий

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

Метод моделирования тестера

В выпадающем списке «Модель» необходимо выбрать пункт «Все тики». Этот способ обеспечивает точную эмуляцию ценовой динамики внутри бара и делает процесс тестирования более достоверным.

Временной диапазон тестирования

Если вам необходимо использовать не все исторические данные, а лишь часть, необходимо включить опцию тестера «Использовать дату» и ввести необходимые вам значения даты в полях окна «От» и «До».

Эффект визуализации тестирования

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

Запуск процесса тестирования и анализ полученных результатов

Запускается процесс тестирования нажатием кнопки «Старт» тестера стратегий. По индикатору хода выполнения можно оценить время выполнения операции:

тестирование советника в mt4

После завершения процесса тестирования на экране появятся окна новых вкладок: «Результаты», «График», «Журнал» и «Отчет».

Во вкладке «Результаты» можно просмотреть все события и их последовательность во время тестирования стратегии:

тестирование советников в mt4

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

Во вкладке «Журнал» находится отладочная информация непосредственно самого процесса тестирования эксперта. Здесь содержатся успешно выполненные операции, а также ошибки, возникшие во время работы советника:

тестирование советников в mt4

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

тестирование советников в mt4

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

тестирование советника mt4

Принято считать, что результаты тестирования достаточно точные, если индикатор моделирования равен и более 90%, а показатель ошибок рассогласования соответствует нулю. Если результаты худшие этих показателей, необходимо историю для минутного временного интервала перезагрузить.

Наиболее важные показатели системы – максимальная просадка, чистая прибыль, количество сделок.

Количество сделок отражает частоту входов в рынок, то есть, примерное количество времени, необходимое для проведения в рынке трейдером при торговле по этой тестируемой системе.

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

Чистая прибыль означает разница между начальным и конечным состоянием баланса счета.

Фактор восстановления (соотношение прибыли к максимальной просадке) – это важный показатель работы советника и его эффективности. При эффективной работе фактор восстановления должен быть более трех.

Так же, важными характеристиками советника являются средняя прибыльная/убыточная сделка. Оптимальным вариантом является соотношение средней прибыли к средним убыткам 1:3, а также превышение числа убыточных сделок над прибыльными на уровне 1:2. То есть, должна расти прибыль, а убытки быстро фиксироваться.

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

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

Тестер стратегий позволяет трейдеру просмотреть торговые события непосредственно на графике, которые возникали в период анализа советника. Имеется два способа визуализации: во время теста советника и после проведения теста.

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

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

тестирование советника в mt4

Открытие позиции обозначается стрелками красного и синего цветов. Золотые стрелки показывают момент закрытия торговой сделки, а наклонные линии отображают время ее существования на рынке.

Оптимизация советника в терминале MT4

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

Параметры оптимизации советника настраиваются в свойствах эксперта:

тестирование советника mt4

Для этого надо выбрать критерий выбора стратегии в списке «Оптимизируемый параметр». Чаще всего, выбирается значение «Баланс». При этом, включение опции «Генетический алгоритм» время процесса оптимизации ускоряет, используя для этого полученные данные отработанных проходов ранее. Это вносит некоторую погрешность в вычисления, поэтому окончательную оптимизацию следует проводить с отключенным генетическим алгоритмом.

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

Вкладка «Оптимизация» позволяет трейдеру отвергнуть любой из результатов оптимизации, если достигается одно из перечисленных условий во время прогона:

тестирование советников в mt4

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

Для выполнения оптимизации следует установить в тестере стратегий во вкладке «Настройки» опцию «Оптимизация» и нажать кнопку «Старт»:

тестирование советников в mt4

Процесс оптимизации займет определенное время:

тестирование советников в mt4

После его завершения появятся вкладки: «График оптимизации», а так же «Результаты оптимизации». Полученные результаты оптимизации включают все итоги проведенных прогонов:

тестирование советников в mt4

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

График оптимизации демонстрирует область возможных прибыльных настроек:

тестирование советников в mt4

По осям показаны оптимизируемые параметры, а более яркий цвет отображает максимальный баланс.

Практическое использование МТС

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

Смотрите также по теме: