Как самому создать советника или индикатор — Алгоритмический трейдинг, торговые роботы — Справка по MetaTrader 5

Как самому создать советника или индикатор

Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 (MQL5), среда разработки MetaEditor и инструменты тестирования стратегий.

Любую информацию о разработке торговых стратегий на языке MQL5 можно найти на официальном сайте MQL5.community. На этом же сайте в разделе Code Base могут быть найдены примеры готовых приложений.

Встроенный язык программирования торговых стратегий MQL5 #

В торговую платформу встроен язык программирования торговых стратегий MetaQuotes Language 5. Это — пятое поколение языков MQL. Он позволяет писать советники, автоматизирующие управление торговыми процессами, и реализовывать собственные торговые стратегии. Кроме того, на MQL5 можно создавать пользовательские индикаторы, скрипты и библиотеки функций.

Особенности языка MQL5:

  • Объектная ориентированность;
  • Синтаксис MQL5 похож на синтаксис языка C++;
  • Большое количество функций, необходимых для анализа котировок, управления позициями, вызова технических индикаторов и других;
  • Высокая производительность;
  • Высокий уровень защиты от декомпиляции: новые, сложные алгоритмы шифрования, проверка целостности файлов и сложность самого языка;
  • Поддержка OpenCL, что позволяет использовать видеокарты для выполнения вычисления в MQL5-программах;
  • Интегрированная среда разработки программ MetaEditor, включающая отладчик.

Подробное описание всех конструкций языка и функций приведено в справочнике MQL5. Также всю интересующую информацию о MQL5 можно найти на сайте сообщества разработчиков https://www.mql5.com.

Редактор для разработки торговых приложений MetaEditor #

MetaEditor — это интегрированная среда разработки на языке MQL5, он является составной частью торговой платформы. MetaEditor позволяет создавать, редактировать, компилировать и отлаживать исходные тексты программ, написанных на языке MQL5.

  • Мастер MQL5 для создания шаблонов и готовых торговых роботов
    В MetaEditor встроен Мастер MQL5, который помогает быстро создавать MQL5-программы. Благодаря Мастеру MQL5, трейдер может создать советники, не обладая знаниями в области программирования. Все что нужно сделать — это выбрать торговые сигналы, которые будет использовать советник, алгоритм мани-менеджмента и трейлинг стопа. Код советника будет сгенерирован автоматически на основе выбранных параметров.
    Помимо этого, Мастер MQL5 позволяет создавать шаблоны MQL5-программ, что облегчает работу программиста.
  • Помощь при работе с исходным кодом
    MetaEditor распознает различные конструкции языка: выдает подсказки по использованию функций и подсвечивает различные элементы кода программы. Таким образом, сам редактор облегчает ориентирование в коде торговых программ и ускоряет их разработку.
  • Отладка для поиска ошибок
    MetaEditor позволяет осуществлять отладку программ, что значительно облегчает поиск ошибок. Можно пошагово выполнять исходный код и следить за значениями переменных.
  • Профилирование для оптимизации кода
    В редакторе также доступна возможность профилирования. Вы сможете выявить наиболее медленные функции в исходном коде и максимально оптимизировать работу торговых программ.
  • Статьи о программировании и библиотека исходных кодов
    Прямо в редакторе вы можете найти множество обучающий статей о программировании на MQL5. Помимо этого имеется доступ к огромной библиотеке бесплатных программ для автотрейдинга в виде исходных кодов.
  • MQL5 Storage — онлайн хранилище с поддержкой версионности
    Хранилище предоставляет множество преимуществ: безопасное хранение файлов и возможность восстановления при выходе вашего компьютера из строя, доступ к своим кода с любого компьютера при помощи аккаунта MQL5.community, возможность совместной работы над проектами.
Вам будет интересно  Сигналы на рынке Форекс: где искать, как находить, фильтровать и создавать | R Blog RU - RoboForex

Детальное описание MetaEditor дано во встроенной справке по этой программе. Описание языка MQL5 может быть найдено во встроенном справочнике, а также на официальном сайте MQL5.community.

Статьи по разработке торговых приложений #

На сайте MQL5.community доступна обширная библиотека статей по программированию на MQL4/MQL5. Статьи являются отличным справочным материалом по созданию программ, в них рассматривается множество практических задач по алготрейдингу. Новые статьи выходят каждую неделю.

Список всех доступных статей отображается прямо в MetaEditor. Чтобы найти интересующий материал, воспользуйтесь онлайн-поиском.

Статьи по программированию на MQL4/MQL5

Какие бывают типы приложений на MQL5 #

Существует три основных типа торговых приложений.

Советники

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

Все советники хранятся в папке /MQL5/Experts торговой платформы.

Пользовательские индикаторы

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

Все индикаторы хранятся в папке /MQL5/Indicators торговой платформы.

Скрипты

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

Все скрипты хранятся в папке /MQL5/Scripts торговой платформы.

Сервисы

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

В отличие от советников, индикаторов и скриптов, сервисы не привязаны к конкретному графику. Они работают в фоновом режиме и начинают работу автоматически при запуске терминала (если они не были принудительно остановлены).

Все сервисы хранятся в папке /MQL5/Services торговой платформы.

Внутри папок Experts, Indicators, Scripts и Services программы могут быть рассортированы по подпапкам, при этом в окне «Навигатор» будет отображаться структура их размещения.

Как создать и запустить торговое приложение #

Нажмите » Создать в редакторе» в контекстном меню окна «Навигатор» в разделе «Советники», «Индикаторы» или «Скрипты». Также для запуска MetaEditor можно нажать F4.

Приступить к созданию торгового приложения

После этого будет запущен MetaEditor, и в нем автоматически откроется «Мастер MQL5». Он позволит сгенерировать шаблон нужной программы, что быстро приступить к разработке. Для примера создадим простой скрипт, который будет выводить в журнал надпись «Hello world».

Мастер MQL5 сгенерирует шаблон приложения

В полученном шаблоне напишем код Print ( «Hello World» ); и произведем компиляцию клавишей F7, чтобы получить исполняемый файл. Исполняемый файл имеет расширение EX5, именно такой файл может быть запущен в торговой платформе.

Компиляция и ее результаты

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

Вам будет интересно  Метод Пуриа - стратегия форекс-торговли на таймфреймах M30 и H1

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

Запуск скрипта в торговой платформе

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

Как изменить торговое приложение #

Чтобы приступить к редактированию торгового робота или пользовательского индикатора, нажмите » Изменить» в его контекстном меню в окне «Навигатор» или выделите его и нажмите «Enter». При этом будет открыт MetaEditor, в который уже будет загружен исходный код выбранного индикатора. После изменения индикатора скомпилируйте его повторно (F7), иначе в платформе будет использоваться предыдущая, неизмененная версия.

Как завершить работу торгового приложения #

Существует множество способов завершить работу торгового приложения в платформе.

Конструктор советников и роботов Visual JForex

Время на чтение: 7 минут

Визуальный конструктор Visual JForex

Содержание

  1. Советники и роботы улучшают производительность трейдера.
  2. Как написать советника форекс.
  3. Конструктор советников форекс Visual JForex.
  4. Преимущества торговых роботов.
    • Дисциплина в исполнении торговой логики
    • Работа 24/5
    • Закономерности рынка форекс становятся доступными
    • Масштабируемость
    • Проверка торгового алгоритма без вложений

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

Компания Apple вряд ли стала бы гигантом, если бы iPhone производили ремесленники.

Конструкторы форекс

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

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

Как же трейдер может повысить свою эффективность?

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

Статистика алгоритмического трейдинга + новые статьи и новости финансовых рынков в нашем Telegram канале

Как написать советника форекс

Торговать вручную считается признаком мастерства и всегда в почете. Однако необходимо признать:

Для трейдера-бизнесмена, воспринимающего свое дело серьезно, переход на торговые роботы является ЖИЗНЕННО НЕОБХОДИМЫМ.

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

Перед тем, как продолжить, нужно отметить важный аспект — для поиска закономерностей рынка форекс потребуются знания и некоторое время. Все “прибыльные” советники форекс, которые находятся в открытом доступе в интернете не могут гарантировать успеха. Стоит относиться к ним с большим скепсисом. Рынок уважает тех, у кого есть свои собственные идеи и свой собственный стиль.

Конструктор советников форекс Visual JForex

Почему трейдеры боятся переходить на торговых роботов? Вот примерные отговорки:

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

С одной стороны, доступно программирование под Метатрейдер — на языках MQL4 и MQL5. Однако в программировании не хватает визуальности — глядя на код, сложно представить всю архитектуру торгового алгоритма.

Вниманию трейдеров —конструктор советников Visual JForex на русском. Это визуальная среда разработки торговых советников.

150 минут видео о создании торговых роботов доступно бесплатно и без регистрации

Для работы в конструкторе не нужно ничего скачивать, потому что Visual JForex — это веб-сервис. Вся работа в конструкторе, а также хранение торговых роботов производится на удаленном сервере.

Вам будет интересно  Лучшие советники Форекс и применение их в трейдинге

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

Для создания советника в VJF не нужно изучать программирование. Потребуется человеческая логика, а также понимание того, что требуется от робота.

Преимущества торговых роботов

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

1. Дисциплина в исполнении торговой логики

  • Желание отомстить рынку,
  • овертрейдинг,
  • эмоциональные сделки,
  • усреднение,
  • превышение рисков — продолжайте список…

Все это знакомо каждому трейдеру, но советник никогда такого не допустит!

Есть торговый план — есть железная дисциплина советника.

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

2. Работа 24/5

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

Советник на форексе — это идеальный сотрудник, даже раб. Он не станет сопротивляться, если уже 19.45 и у всех давно закончился рабочий день. Он честно отработает положенные 24 рабочих часа и 5 дней в неделю.

3. Закономерности рынка форекс становятся доступными

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

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

Конечно же, с советником! Он отработает все пробои даже если они происходят одновременно на 25-ти валютных парах! Трейдеру даже не придется подходить к монитору.

4. Масштабируемость

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

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

5. Проверка торгового алгоритма без вложений

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

Поскольку форекс ничем не отличается от любого другого бизнеса, то и здесь нужна идея — торговая идея или торговый алгоритм, и его тоже надо проверять на прочность!

Здесь и пригодится тестирование форекс робота на исторических котировках. Протестировав разные торговые подходы на истории, можно понять, стоит ли вкладывать в них деньги. Но обычно трейдер спешит сразу торговать, не убедившись, что стратегия работает. Поэтому перед запуском советника в работу необходимы тесты, которые способен провести любой трейдер, освоивший Visual JForex или другие подобные инструменты автоматизации.

https://www.metatrader5.com/ru/terminal/help/algotrading/autotrading
https://vsatrader.ru/videokurs-o-sozdanii-torgovyx-robotov-v-visual-jforex/