Перед тем, как применить торговую стратегию на реальном счете трейдеры обязательно должны протестировать систему вручную или применить торговый советник на тестере стратегий. Это необходимо для того, чтобы определить: совпадают ли основные показатели торговой стратегии с требованиями трейдера (ТЗ для программиста), то есть в первую очередь — насколько она безопасна и результативна.
В данной статье мы разберем как тестировать торговый советник через тестер популярнейшего торгового терминала МТ4 (MetaTrader 4). Предположим, что Вы уже скачали и установили МТ4 и торговый советник по интересующей Вас торговой стратегии, так что останавливаться на описании установки данного процесса.
Для тестирования торгового советника необходимо использовать исторические данные, на основании которых будет проводиться анализ. Тестировать ТС необходимо на графике от полугода до 2 лет, чтобы была возможность анализировать и прогнозировать работу стратегии в долгосрочной перспективе. Некоторые брокеры, предоставляя демо-счет, ограничивают доступную историю котировок. Если Вы столкнулись с такой проблемой, то необходимо загрузить историю котировок в терминал.
Историю котировок для терминала МТ4 по умолчанию предоставляет разработчик данной торговой платформы – компания MetaQuotes. Для загрузки необходимо выполнить следующие действия:
1. В терминале в меню «Сервис» необходимо войти «Настройки» (горячие клавиши Ctrl+O).
2. В «Настройках» необходимо выбрать вкладку «Графики» и установить максимальное количество символов, как указано на картинке ниже.
3. Для загрузки истории котировок Вам необходимо выбрать в меню «Сервис» — «Архив котировок» (горячая клавиша F2).
В открывшемся окне необходимо выбрать интересующую Вас валютную пару, выделить минимальный таймфрейм (M1), и нажать «Загрузить». После загрузки снова щелкаем по таймфрейму несколько раз, пока серый значок не превратится в желто-зеленый. После этого необходимо прощелкать остальные таймфреймы, пока все значки не станут желто-зеленого цвета.
Если Вам необходимо для анализа несколько торговых инструментов, то для каждого последующего необходимо проводить такие же операции.
Если в данном списке нет интересующего Вас торгового инструмента, но Вы уверены, что доступ к нему предоставляется брокером, то необходимо войти в «Обзор рынка» (соответствующая кнопка на панели инструментов), либо нажать горячие клавиши Ctrl+M. В «Обзоре рынка» необходимо щелкнуть правой кнопкой мыши на котировках, и, в появившемся контекстном меню нажать «показать все символы». Это позволит Вам получить доступ ко всем доступным торговым инструментам брокера.
Теперь переходим непосредственно к тестированию советника в терминале МТ4.
Тестер торгового терминала МТ4.
Для того, чтобы открыть тестер советников в МТ4 необходимо выбрать соответствующую иконку на панели инструментов, либо нажать комбинацию горячих клавиш Ctrl+R.
Тестер открывается в нижней части окна МТ4 и имеет следующий вид:
Далее рассмотрим подробнее каждую функцию тестера МТ4.
Тестер позволяет анализировать работу, как торговых советников, так и индикаторов. Выбрать тип программы можно в левом верхнем углу окна тестера. Для примера мы будем рассматривать советник.
Настройка тестируемого советника
- Список загруженных торговых советников (индикаторов). Необходимо выбрать интересующий советник, который был заблаговременно загружен в папку с программами торгового терминала.
- Список торговых инструментов, на которых планируется тест советника (необходимо заблаговременно загрузить историю котировок).
- Тип модели обработки — очень важный фактор в тестировании советника. Существует 3 типа модели обработки:
- По цене открытия;
- По контрольным точкам;
- По всем тикам.
Тест по цене открытия
Наиболее быстрый способ тестирования, что и является главным преимуществом данного способа. В данном случае, для тестирования советника учитывается только цена открытия (O, Open) каждого элемента графика. Однако данный тип идеально подходит только тех торговых советников, которые контролируют открытие свечей, и производят открытие и закрытие ордеров при открытии новой японской свечи. Тест по цене открытия не подойдет для тех торговых советников, которые применяют трейлинг стоп, Stop loss и Take Profit.
Тест по контрольным точкам
Контрольными точками для тестирования в данном случае выступают данные цены ближайшего меньшего таймфрейма. Данный метод дает грубые результаты тестирования, так как исходные данные меньшего таймфрейма не всегда способны перекрыть диапазон текущего таймфрейма. В таких случаях недостающие данные генерируются автоматически на основании шаблонов. Тестовые данные, рассчитанные на основании контрольных точек, рекомендуется рассматривать как общие, промежуточные, а не как конечный результат.
Тест по всем тикам
Является наиболее точным методом тестирования торгового советника. Тест по всем тикам подразумевает что в процессе учитываются абсолютно все исходные данные, с текущего и всех меньших таймфреймов. При этом крайне важно, чтобы была загружена история котировок за весь тестируемый период, особенно на минутном таймфрейме (M1). Тестирование по всем тикам может занимать достаточно много времени и ресурсов, однако точность тестирования максимально приближена к работе на реальном рынке.
Таким образом, для качественного тестирования необходимо выбирать тестирование по всем тикам.
4. Временной промежуток для тестирования. Необходимо установить «галочку» и указать начало и конец интересующего срока. Если «галочка» не установлена, то тестер будет обрабатывать всю доступную в терминале историю котировок. Для корректного теста торгового советника (стратегии) необходимо брать период от 1 до 3 лет.
5. Настройки визуализации. В новых версиях МТ4 данная функция включена автоматически. Визуализация позволяет наглядно видеть процесс работы советника на графике, что дает возможность глубже понимать алгоритм работы программы и стратегии в целом.
В правой части окна тестера терминала МТ4 расположены следующие кнопки:
Период
Под периодом подразумевается таймфрейм на котором будет тестироваться торговый советник. Тестирование доступно на таймфреймах от одной минуты (M1) до дня (D1).
Спред
Можно установить либо текущий спред валютной пары, либо установить фиксированный спред от 2 до 100 пунктов. Размер спреда может значительно повлиять на результаты тестирования, следовательно, и на оценку торговой стратегии.
Изменить эксперта
Данная функция позволяет вносить изменения в программный код торгового эксперта напрямик в файле с разрешением «.mq4». При нажатии кнопки «Изменить эксперта» открывается редактор программного кода для внесения необходимых коррективов. Следует помнить, что не стоит вносить изменения в программный код советника, если Вы не имеете специальных знаний и навыков. Кроме того, самостоятельно корректируя программу, Вы принимаете риски на себя, так как в данном случае советник уже будет отличаться от оригинальной версии программы.
Открыть график
Открывается график торгового инструмента с произведенными советником сделками при тестировании для визуального анализа торговой стратегии.
Свойства символа
Информация о свойствах торгового инструмента, где отображаются все необходимые параметры.
Свойства эксперта
Настройки непосредственно торгового советника. В окне находятся три вкладки: «Тестирование», «Входные параметры» и «Оптимизация».
Свойства эксперта: Тестирование
В данной вкладке выставляется условный размер и валюта депозита для тестирования. В списке «Позиции» можно выбрать направления сделок, которые будут производиться: либо только на покупку (Long), либо только на продажу (Short), либо и на покупку и на продажу одновременно (Long&Short). Эти параметры существенно влияют на результаты тестирования советника.
«Оптимизируемый параметр» предполагает выбор основного выходного параметра для оценки тестирования. Параметры следующие:
- Balance — учитывается конечный размер баланса на депозите;
- Profit Factor — учитывается конечное соотношение сумм всех убыточных и прибыльных сделок (прибыльность советника должна быть > 1);
- Expected Payoff —учитывается конечное математическое ожидание, иными словами, средний показатель прибыли на 1 сделку (показатель должен быть больше размера спреда);
- Maximal Drawdown — учитываются величины просадок депозита. Данный показатель демонстрирует реальные риски для депозита. Если при тестировании выявлены значительные просадки, которые могут достигать размера первоначального депозита, то стоит пересмотреть торговую стратегию.
- Drawdown Percent — учитывается процент максимальной просадки по отношению к текущему депозиту. Данный параметр полезен при тестировании торговых советников, в торговой стратегии которых лежит торговля нефиксированными объемами торгового лота.
Генетический алгоритм позволяет тестировать советник только по указанным параметрам. Если убрать галочку «Генетический алгоритм», то тестер будет обрабатывать абсолютно все варианты работы советника, что может занять долгое время.
Свойства эксперта: Входные параметры
В данной вкладке находятся настройки всех переменных торгового советника. Настраивать советник можно как вручную, так и при помощи файла с готовыми настройками (расширение файла «.set»), который обычно предоставляется вместе с советником.
Для того чтобы установить настройки необходимо нажать кнопку «Загрузить», и выбрать файл «название советника.set», который должен находится в той же папке, что и установленный советник. После этого параметры должны автоматически настроиться. Единственное за чем следует проследить – параметр «фиксированный лот» (FixLot), который должен быть равен 0.1 лота. Это означает, что 1 торговый пункт будет равен 1 базовой валюты депозита.
Свойства эксперта: Оптимизация
Сама по себе оптимизация означает подстройку советника под текущие особенности рынка. Вкладка «Оптимизация» в свойствах эксперта предназначена для упрощения и ускорения оптимизации советника. Здесь можно выставить различные ограничения, такие как размер минимального баланса, максимальная просадка, непрерывный выигрыш/проигрыш и так далее.
Тестирование торгового советника
После того, как Вы убедитесь в правильности всех настроек и параметров, следует начинать непосредственное тестирование советника. После нажатия кнопки «Старт» начинается тест, который может занять достаточно продолжительное время (чем больше параметров, больше период тестирования, таймфрейм, тем дольше будет производиться тест советника). О завершении тестирования оповещает звуковой сигнал и полностью загруженная зеленая полоса в нижней части панели тестера. После этого появляются новые вкладки в левом нижнем углу окна тестера: Настройки, Результаты, График, Отчет, Журнал.
Вкладка «Результаты»
В данной вкладке находится полный список всех ордеров, которые были исполнены советником за период тестирования.
Вкладка «График»
Данная вкладка открывает график кривой доходности торговли при тестировании.
Вкладка «Журнал»
В «Журнале» отображаются абсолютно все процессы, которые были во время тестирования: торговые сигналы, открытие и закрытие ордеров, ошибки и так далее. Коды ошибок при тестировании советника имеют расшифровку, с которой Вы можете ознакомиться в отдельной статье на нашем сайте.
Вкладка «Отчет»
Важнейший раздел при тестировании торгового советника, так как в данной вкладке представляется отчет о работе эксперта за тестируемый период.
Баров в истории — отображает общее количество элементов графика за тестируемый период, что отображает глубину истории котировок.
Смоделировано тиков — общее количество тиков, которые были смоделированы, что демонстрирует размер последовательности. Записи последовательности являет собой состояние элемента графика (OHCLV) на каждый момент времени. В зависимости от многих факторов в одном элементе графика может быть множество состояний. Допустим, за время формирования часовой японской свечи цена двигалась от точки максимальной (H) до минимальной точки (L), и соответственно каждое положение является смоделированным тиком.
Качество моделирования — дает общую качественную оценку построенной модели для тестирования. Шкала ниже наглядно отображает качество котировок. На примере шкала полностью зеленая, так как имеет место высокое качество моделирования. Поэтому рассмотрим отдельный пример шкалы качества моделирования из другого теста советника.
Серый цвет – котировки отсутствуют;
Красный (розовый) цвет – доступны котировки только текущего таймфрейма;
Зеленый (салатовый) – доступны котировки меньших таймфреймов. Чем меньше таймфрейм доступен, тем ярче зеленая шкала. Если доступны котировки минимального таймфрейма M1, то шкала становится ярко салатовой (как в нашем примере).
Ошибки рассогласования графиков — количество ошибок, которые возникают в случаях, когда графики разных таймфреймов не совпали. Если при тестировании была зафиксирована хоть одна такая ошибка, то следует удалить всю историю котировок и загрузить её заново. Это можно сделать, нажав в меню «Файл» терминала кнопку «Открыть каталог данных». В нем будет открыто окно с папками торгового терминала, где следует найти папку «History», далее папка с названием текущего счета. После этого следует закрыть терминал и удалить все файлы имеющие расширение «.hst». После всех этих манипуляций необходимо заново загрузить историю котировок, запустить терминал и тестирование советника.
Начальный депозит — сумма средств для тестирования.
Спред — размер спреда, используемого в тестировании.
Общая прибыль — общая сумма прибыли за время тестирования.
Общий убыток — общая сумма убытков за время тестирования.
Чистая прибыль — разница между суммой прибыли и суммой убытков при тестировании.
Прибыльность — соотношение общей прибыли к общему убытку.
Матожидание выигрыша — математическое ожидание выигрыша, иными словами, средний показатель прибыли на 1 сделку.
Абсолютная просадка — показатель разницы между первоначальным депозитом и минимальным значением баланса счета за период теста.
Максимальная просадка — показатель наибольшей разницы между локальным верхним экстремумом графика цены и последующего нижнего экстремума баланса. На рисунке ниже отображены просадки баланса депозита, где последняя является максимальной просадкой.
Относительная просадка — демонстрация отношения между наибольшей просадкой к соответствующему локальному верхнему экстремуму.
Последующие графы отчета тестирования торгового советника не требуют описания, в силу своей простоты.
Отчет о тестировании торгового советника можно сохранить в html-формате, щелкнув по нему правой кнопкой мыши и выбрав «Сохранить как отчет».
Заключение
Сегодня мы описали как тестировать торговый советник на МТ4. Данный процесс абсолютно не сложный, если однажды в нем разобраться. Благодаря тестеру торгового терминала MetaTrader 4 Вы сможете внедрять в свою торговлю всё новые и новые стратегии и программы для торговли. Скачать торговые советники под МТ4 вы сможете на нашем сайте. Заказать торговый советник для МТ4 Вы можете у опытных программистов в разделе «Автоматизация трейдинга».