Тестирование советников и оптимизация

Особенности тестирования советников в терминале MetaTrader 4

С развитием компьютерных технологий и инструментов торговли трейдеры все чаще начинают использовать в своей работе механические торговые системы (МТС), главным преимуществом которых является снижение психологического фактора во время торговли. Наиболее распространенной системой для создания торговых роботов является MetaTrader 4 (MT4). Данный терминал позволяет трейдеру создавать программы автоматической торговли (программирование советников), проводить тестирование советников и оптимизировать их параметры на исторических данных. О тестировании советников на графиках Ренко, можно прочитать в этой статье на нашем сайте т.к. порядок действий отличается от привычного тестирования.

 

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

Для качественного тестирования советника в терминале MT4 необходимо загрузить историю котировок минутного интервала для финансовых инструментов, с которыми будет производиться работа. Такая детализация позволит более точно аппроксимировать движения цены внутри бара во время тестирования торговых стратегий на более больших временных интервалах (H1,H4,D). Хочу обратить ваше внимание на то, что не все ДЦ дают возможность загрузки исторических данных, наиболее полная история есть в терминале ДЦ Альпари

Для загрузки минутных данных необходимо установить размер исторических данных терминала MT4 (пункт меню «Сервис->Настройки», Ctrl+O):

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

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

В появившемся окне требуется выбрать символ, для которого необходимо загрузить историю, а также период — 1 минута. После этого необходимо нажать на кнопку «Загрузить».  После успешной загрузки база данных должна содержать требуемое число котировок (поле «База данных»). Реальное количество загруженных исторических данных зависит от дилингового центра и может отличаться от приведенного примера. Каждый последующий период необходимо пересчитать, щелкая по возрастанию каждый пункт.

Как тестировать советник в терминале MetaTrader 4?

Тестирование советников проводится в модуле «Тестер стратегий» (пункт меню «Вид->Тестер стратегий», Ctrl+R):

В окне тестера стратегий требуется указать следующие настройки:

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

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

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

Здесь задаются начальный размер и валюта депозита, разрешенные сделки: Long and Short — все сделки; Only Long — только позиции на покупку; Only Short — только позиции на продажу. Параметры оптимизации советника будут рассмотрены ниже.

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

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

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

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

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

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

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

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

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

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

Запуск тестирования и анализ его результатов

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

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

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

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

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

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

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

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

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

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

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

Максимальная просадка — это максимальная сумма последовательных  убытков. Максимальная просадка указывает минимальный размер стартового депозита для нормального функционирования тестируемой торговой системы.

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

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

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

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

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

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

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

Второй режим визуализации позволяет просматривать график валютной пары непосредственно во время тестирования, имитируя поступление котировок в реальном времени. Данный режим активируется включением опции «Визуализация» вкладки «Настройки» тестера стратегий. При включенной опции после нажатия на кнопку «Старт» будет автоматически открыт график тестируемой валютной пары, на который будут последовательно поступать смоделированные тики. Скорость их поступления регулируется с помощью ползунка рядом с галкой «Визуализация». Нажатие на кнопку «||» временно останавливает проигрывание. С помощью кнопки «Пропустить до» можно запустить отображение только с определенного момента времени. В интерактивном режиме визуализации также отображаются символы совершаемых операций. Хочу обратить внимание, если ваш советник использует показания с разных ТФ, то его необходимо тестировать БЕЗ визуализации т.к. текущие версии тестера некорректно работают с разными ТФ. В данном режиме тестирования, вы сможете просматривать каждый ТФ на корректность обработки сигналов по окончании теста советника.

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

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

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

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

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

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

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

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

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

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

Результаты оптимизации содержат  итоги выполнения проведенных прогонов:

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

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

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

Практическое использование механических торговых систем.

Хорошо протестированная система на истории никогда не гарантирует успешных показателей в реальной торговле.  На это влияет множество факторов: скорость интернет соединения, динамика цены (загруженность торгового сервера), различные сбои в программном обеспечении и сети. Поэтому основное предназначение тестирования и оптимизации советников – это анализ рынка и помощь в выработке торговых правил трейдера. А передача управления депозитом роботу является рискованным решением не смотря на очевидные плюсы роботов, но об этом мы расскажем в следующей статье. Хотите автоматизировать свою торговую стратегию?
Заказывайте у нас советники на заказ.

Отправить заявку

Рекомендуем:

  • Я являюсь автором многих програмных решений входящих в данный комплекс, почему бы вам не обратиться непосредственно к автору данного торгового комплекса? 🙂

    Если вы приобретали данный советник, то вы можете получить всю необходимую информацию у продавца http://www.gold999a.ru/

  • Sadir

    Здравствуйте , уменя есть замечательный советник полу автомат , называется Shopping Complex GOLD999A  ,может вы знакомы с ней , она работает одновременно с 15ю валютными парами и множеством различных индикаторов которые дают сигналы на вход в рынок , Посоветуйте как его протестить ,  а если не знакомы то советую попробовать