Автоматические торговые системы без программирования


Январь 25 2016 639

Создание торгового робота MT5 (советника)

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

Редактор в торговом терминале MetaTrader 5 реализован как дополнительное приложение MetaEditor. MetaEditor позволяет создавать MQL5-программы такие как: торговые советники, технические индикаторы, скрипты и библиотеки. Являясь составной частью среды разработки MQL5 IDE он тесно связан с платформой. Для разработчика имеются такие средства как: распознавание и подсветка конструкций языка, встроенная справка по MQL5, интеграция с сайтом MQL5.com и MetaTrader 5, а также мощнейший отладчик. Язык MQL5 позволяет создавать программы различной степени сложности, а редактор MetaEditor - существенно облегчает их разработку.

Весь процесс создания заключается в написании алгоритмов анализа рыночной ситуации и идентификации торговых сигналов, алгоритмов сопровождения открытых позиций, систем управления капиталом и контроля риска. По сути перенос всех правил и условий торговой системы на язык стратегий MQL5 понятный терминалу MetaTrader 5. Ключевую роль тут очень часто играет архитектура взаимодействия модулей программы. Неудачно и изначально организованное мягко говоря "с неверным подходом" приложение может стать причиной очень серьезных проблем. Вмешательство в алгоритм любого из модулей может приводить к серьезным пересмотрам и переписыванию всего кода, а значительная часть времени будет потрачена на поиск и устранение ошибок. Но даже эти казалось бы сложные задачи в процессе создания торгового робота, не могут послужить причиной каких либо сложностей при использовании средств разработки торговых систем встроенных в MetaTrader 5.

Создание эксперта без программирования

Используя Мастер MQL4/MQL5 вы можете создавать полностью работоспособных советников на основе стандартной библиотеки поставляемой вместе с клиентским терминалом даже не обладая знаниями в области программирования. Код советника будет сгенерирован автоматически на основе выбранных модулей и введенных параметров. Для вызова Мастера MQL5 необходимо нажать кнопку "Файл -> Создать" в панели инструментов MetaEditor. Далее чтобы приступить к генерации советника, необходимо выбрать в появившемся окне пункт "Советник (сгенерировать)".

Процесс создания советника состоит из нескольких этапов

Каждый из шагов заключается в обычном вводе необходимых параметров. Мастер MQL5 проведет вас по каждому из них открывая соответствующее диалоговое окно.

  1. Ввод общих параметров
  2. Определение модулей торговых сигналов
  3. Выбор модуля трейлинг стоп
  4. Выбор модуля управления капиталом
  5. Генерация и запуск советника

 

Ввод общих параметров

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

  • Имя — название советника, это же имя будет присвоено и файлу эксперта
  • Автор — необходимо ввести имя автора (можно ввести свой ник или логин на MQL5.COM)
  • Ссылка — интернет адрес сайта разработчика, домашней страницы или электронной почты

Ниже отображается поле для обязательных параметров, создаваемых по умолчанию:

  • Symbol — Символ, на котором будет работать советник (если требуется) например "EURUSD". Должно точно соответствовать названию указанному в обзоре рынка (если там "EURUSD.m" то и вы указываете "EURUSD.m"). Указав значение "current" вы допускаете что советник будет работать на любом символе.
  • TimeFrame — Период графика. Указав "current" вы допускаете что советник будет работать на любом периоде графика.

Выбор модулей для генерации торговых сигналов

Модули торговых сигналов содержат в себе правила открытия/закрытия/переворота позиций. Для трейдеров не обладающими навыками программирования стандартная библиотека MQL5 предусматривает готовые модули торговых сигналов на основе стандартных индикаторов, таких как iMACD, iMA, iStochastic и т.д. Допускается добавление в советник любой комбинации модулей сигналов (максимум 64). Можно так же добавлять и несколько одинаковых модулей с разными внутренними настройками.

Каждый модуль сигналов обладает своим набором рыночных моделей (определенное сочетание цен, значений индикаторов и т.д.). Каждой рыночной модели установлена значимость, измеряемая от 1 до 100. Чем больше это значение, тем сильнее сигнал модели. Прогноз каждого модуля отправляется на голосование c весовым коэффициентом от 0 до 1.0, указанным в его настройках (Weight). Окончательные решения о совершении торговых операций в вашем роботе, будут приниматься на основе совокупного анализа сигналов всех включенных модулей. Программисты могут создавать свои торговые модули, как на основе имеющихся в стандартной поставке, так и разрабатывая кардинально новые решения. Файлы исходных кодов модулей сигналов расположены в директории /MQL5/Include/Expert/Signal/.

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

  • Имя — настраиваемый или добавляемый модуль.
  • Символ — рабочий символ (TimeFrame). Галочка "Использовать текущий" — при включении опции рабочим символом модуля будет выбран рабочий символ самого советника
  • Период — рабочий период модуля. При выборе "current", периодом модуля будет выбран рабочий период самого советника

В каждом модуле сигналов определен свой набор параметров поэтому их количество может быть разным. Параметр вес или значимость (Weight) присутствует во всех модулях, а все остальное это обычные внешние настройки такие как: PeriodMA (Период усреднения индикатора типа iMA) Shift (Смещение индикатора по оси времени (в барах)) или Method (Метод усреднения). После добавления модуля он появляется в общем списке.

Выбор алгоритма сопровождения открытых позиций (Trailing Stop)

Использование данного модуля позволяет воздействовать на процесс сопровождения открытых позиций перемещая защитный стоп на более выгодные ценовые уровни. Тем самым позволяя сохранить дополнительную прибыль путем увеличения профитных пунктов. В стандартной библиотеке MQL5 имеется несколько способов сопровождения открытых позиций. Каждый тип трейлинга подразумевает свои входные параметры которые будут использоваться в процессе сопровождения открытых позиций. Зачастую, как и в модулях сигналов это обычные расстояния в пунктах или параметры встроенных индикаторов например таких как iSAR. Файлы исходных кодов модулей сопровождения позиций расположены в папке терминала /MQL5/include/expert/trailing/.

Выбор модуля управления капиталом

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

  • Trading with fixed trade volume — фиксированное количество лотов
  • Trading with fixed margin — объем операций с фиксированным уровнем использования свободной маржи
  • Trading with fixed risk — вход в рынок с фиксированным уровнем риска
  • Trading with minimal allowed trade volume — торговые операции с минимальным количеством лотов
  • Trading with optimized trade volume — оптимизация торгового объема по результатам предыдущих сделок

Для каждого типа управления капиталом существует свой набор параметров. Такие как: Lots - (торговый объем в лотах) или Percent - (максимально допустимый процент риска). Файлы исходных кодов для модулей управления капиталом хранятся в папке терминала /MQL5/include/expert/money/.

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

В результате нажатия кнопки "Готово", произойдет генерация MQ5-файла (исходника). Его имя будет соответствовать названию заданному при создании советника, а расширение ".mq5". В исходнике и будет содержаться весь алгоритм включающий в себя все правила и условия торговой системы. Чтобы приступить к его использованию необходимо провести компиляцию файла при помощи кнопки "Компилировать" в редакторе MetaEditor. Проверив вкладку "Инструменты -> Ошибки" и не обнаружив там серьезных ошибок и предупреждений, вы сразу можете найти своего уже готового советника в торговом терминале и перейти к его непосредственному использованию либо тестированию в тестере стратегий.

Изучайте язык MQL5, пишите собственные модули, классы, библиотеки, торговые сигналы, способы трейлинга, управления капиталом, все они будут автоматически загружены "Мастером MQL4/MQL5" и доступны для генерации еще более совершенных автоматических торговых систем с еще более богатым функционалом.

Всего доброго и удачи!


Система Orphus - Если вы заметили ошибку в тексте, выделете её мышкой и нажмите [Ctrl + Inter]
Использование материалов сайта допустимо только при указании активной ссылки на источник © 2015 - 2018 MT5Trade.RU | Svds75.RU