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

18 февраля 2022
Торговый робот мониторит рынок и заключает сделки в режиме 24/7. Такая нагрузка недоступна человеку. Поэтому для многих трейдеров идея торговли с помощью специального программного обеспечения кажется наиболее привлекательной перспективой.

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

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

Пошаговый алгоритм тестирования и оптимизации торгового робота

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

Настройки для тестирования робота на истории

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

финансового инструмента, к графику которого будет привязан робот;

временного интервала, на котором будет проводиться тест (если даты не установлены, тестирование проводится на всей истории котировок, загруженной в терминал);

режима генерации тиков.

Последний пункт задает модель развития ценовых баров. По этой модели робот учится вычленять паттерны в поведении цены и прогнозировать последующие изменения ее динамики. Чаще используются 3 режима:

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

Цены открытия – самый быстрый способ проверки, который дает достаточно грубую оценку стратегии.

Контрольные точки – грубый метод, в котором моделируются цены Open, High, Low и Close (OHLC) на ближайшем меньшем таймфрейме.

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

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

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

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

Быстрая оптимизация проходит по генетическому алгоритму, построенному на основе биологической модели. Механика такова:

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

2. Эти выборки тестируются. По результатам формируется группа, имеющая лучшие показатели.

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

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

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

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

Визуализация при тестировании торгового эксперта

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

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

  • на графике цен;
  • в обзоре генерируемых котировок;
  • в сводке по ценам OHLC, барам, спреду, используемым индикаторам технического анализа;
  • в списке торговых операций, проводимых роботом.

Визуализация помогает точно отследить моменты слива или профитные периоды. Эта информация особенно полезна для разработчиков и оптимизаторов.
Установка параметров для тестирования и оптимизации советника

Установка свойств эксперта

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

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

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

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

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

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

Таким образом, чем выше полученное в результате теста значение критерия оптимизации, тем лучше работает советник с данным набором параметров.

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

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

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

Следующий важный момент – моделирование условий рынка. Чем выше качество моделирования, тем больше вероятность того, что результаты тестов будут соответствовать реальной торговле. В идеале этот показатель должен достигать не менее 99%.

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

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

В учебно-аналитическом центре «Паритет» самым продаваемым нейроботом за последние 12 месяцев стал торговый робот «Diver». Искусственный интеллект показывает хороший результат – до 23% в месяц! Подробнее: https://paritet.group/diver

18 февраля 2022