Сайт находится в процессе разработки
Войти
Главная / Data science в трейдинге / Кейс: создание торгового робота в Metatrader 4 для автоматизации торговли

Кейс: создание торгового робота в Metatrader 4 для автоматизации торговли

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

Шаг 1. Как сформулировать торговую гипотезу для робота в Metatrader 4

Гипотеза — это предположение о том, как трейдеру попасть из точки А в точку Б — то есть, из момента где вы деньги теряете, к моменту, где вы закрываете сделки в плюс. Гипотезы помогают протестировать свои предположения на исторических данных. Большинство ваших гипотез не подтвердятся, но только таким образом вы сможете найти рабочие решения и создать сильную торговую стратегию. 

Вашу торговую гипотезу нужно описать в техническом задании. По этому ТЗ и будет торговать ваш робот.

Техническое задание с гипотезой для торговли

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

Шаг 2. Как написать алгоритм для торгового робота в Metatrader 4

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

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

Основные модули торгового робота

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

Рассмотрим на практике, как конкретно мы задаем эти параметры роботу при кодинге.

Как задать параметры ордеров в торговом роботе: Buy, Sell

Для модуля «Частоменяемые параметры» мы указываем название переменной — например, extern bool — и ставим роботу задачу, покупать или продавать (Buy и Sell).

Раздел «Частоменяемые параметры»

Как задать параметры ордеров в торговом роботе: стоп-лосс

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

Раздел «Параметры ордеров»

Как настроить переворот позиций и защитные ордера в роботе

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

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

Раздел «Переворот ордеров»

Настройка ордеров и параметров лотов для робота в Metatrader 4

В робота можно заложить данные по размерам лотов. В модуле «Количество лотов» мы указываем фиксированный и максимальный лот — то есть, допустимый риск, на который робот может пойти при торговле. Также можно указать количество лотов для ордеров.

Раздел для лотов

Дополнительные параметры

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

Раздел «Дополнительные параметры»

Как интегрировать индикаторы технического анализа в робота

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

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

Раздел «Сигналы на открытие/закрытие»

Как настроить уведомления для торгового робота в Metatrader 4

Еще можно прописать в коде, чтобы робот присылал вам уведомления на электронную почту при открытии/закрытии ордеров.

Раздел «Алерт на электронную почту»

Как настроить уровень безубытка

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

Как настроить трейлинг стоп

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

Разделы «Безубыток» и «Трейлинг стоп»

Настройка параметров индикаторов

Также можно дополнительно настраивать параметры самых разных индикаторов для робота — Стохастик, FOREX Day Monster «Fast Trend», Stochastic Cross Alert, полосы Боллинджера и других.

Раздел «Параметры индикаторов»

Коротко

  • Торговый робот может быть очень полезен — как для автоматизации торговли, так и для тестирования ваших торговых стратегий и гипотез. 
  • У качественного робота должны быть основные модули, без которых он не будет эффективен. 
  • Ключевая часть при написании робота — создание алгоритмов. 
  • Алгоритмы для робота можно прописать самые разные: можно настроить параметры индикаторов и уровни выставления стоп-лоссов, отправку уведомлений и многое другое. 
Высокочастотная торговля (HFT): как биржевые роботы меняют трейдинг
Высокочастотный трейдинг привлекает сегодня как частных трейдеров, так и крупные инвестиционные компании и хедж-фонды. Биржевые роботы дают возможность за считанные...
Читать далее
Как протестировать торговую стратегию: полный гайд
Торговать на очень нестабильном рынке без стратегии — не лучшая идея как для новичка, так и для опытного трейдера. Рассказываем,...
Читать далее
Уровни поддержки и сопротивления и как их определять
Уровни поддержки и сопротивления используют в большинстве торговых стратегий. Расскажем, зачем нужны эти уровни, как научиться их находить и строить...
Читать далее