Статьи по программированию на языке MQL5

icon

Изучайте язык программирования торговых стратегий MQL5 по опубликованным здесь статьям, большая часть которых написана вами - членами сообщества. Все статьи разделены на категории для быстрого поиска ответа по тому или иному аспекту программирования: "Интеграция", "Тестер", "Торговые стратегии" и многое другое.

Следите за новыми публикациями и участвуйте в их обсуждении на форуме!

Новая статья
последние | лучшие
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXXIII): Отложенные торговые запросы - закрытие позиций по условиям
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXXIII): Отложенные торговые запросы - закрытие позиций по условиям

Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXXIII): Отложенные торговые запросы - закрытие позиций по условиям

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

Интервью с Сергеем Абрамовым (ATC 2012)

Торговый робот Сергея Абрамова (26405) со второй недели Чемпионата держится в TOP-10, и тем не менее немало побеспокоил своего разработчика. Как выяснилось, в нем оказалась небольшая ошибка в блоке закрытия позиций.
Тестирование паттернов, возникающих при торговле корзинами валютных пар. Часть III
Тестирование паттернов, возникающих при торговле корзинами валютных пар. Часть III

Тестирование паттернов, возникающих при торговле корзинами валютных пар. Часть III

Мы заканчиваем тестирование паттернов, которые можно увидеть при торговле корзинами пар. В статье представлены результаты тестирования паттернов, отслеживающих движение валют пары по отношению друг к другу.
preview
Непрерывная скользящая оптимизация (Часть 5): Обзор проекта автооптимизатора, а также создание графического интерфейса

Непрерывная скользящая оптимизация (Часть 5): Обзор проекта автооптимизатора, а также создание графического интерфейса

Продолжаем описание скользящей оптимизации в терминале MetaTrader 5. Рассмотрев в прошлых статьях методы формирования отчета оптимизации и способ его фильтрации, мы перешли к описанию внутренней структуры приложения, отвечающего за сам процесс оптимизации. Автооптимизатор, выполненный как приложение на C#, имеет собственный графический интерфейс. Именно созданию данного графического интерфейса и посвящена текущая статья.
preview
Непрерывная скользящая оптимизация (Часть 4): Программа для управления оптимизацией (автооптимизатор)

Непрерывная скользящая оптимизация (Часть 4): Программа для управления оптимизацией (автооптимизатор)

Основная цель данной статьи - описание механизма работы с получившимся приложением и его возможностей. Таким образом, статья фактически является инструкцией по использованию данного приложения, в которой рассказывается обо всех возможных подводных камнях и нюансах его настройки.
preview
Комбинаторика и теория вероятностей для трейдинга (Часть V): Анализ кривых

Комбинаторика и теория вероятностей для трейдинга (Часть V): Анализ кривых

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

Интервью с Рожериу Фигурелли (ATC 2012)

Сегодня мы поговорим о постоянном участнике из Бразилии Рожериу Фигурелли (figurelli), который с 2007 года не пропустил ни один Чемпионат. В этом году он также выставил своего конкурсного советника на продажу в Маркете наряду с другими своими продуктами. Рожериу считает, что сертификация платформы MetaTrader 5 на крупнейшей бразильской бирже BM&FBOVESPA приведет к появлению новых профессиональных разработчиков и трейдеров, которые пока не знают весь потенциал роботов-инвесторов.
Визуализация истории мультивалютной торговли по отчетам в форматах HTML и CSV
Визуализация истории мультивалютной торговли по отчетам в форматах HTML и CSV

Визуализация истории мультивалютной торговли по отчетам в форматах HTML и CSV

Как известно, MetaTrader 5 с момента своего появления предоставляет возможность мультивалютного тестирования. Эта функция востребована у большинства трейдеров, но, к сожалению, не столь универсальна, как того хотелось бы. В статье представлено несколько программ для разметки графиков с помощью графических объектов на основе торговой истории из отчетов форматов HTML и CSV. Торговля несколькими инструментами может анализироваться параллельно в нескольких подокнах, или в одном окне с помощью динамического переключения по команде пользователя.
Паттерны, доступные при торговле корзинами валют. Часть II
Паттерны, доступные при торговле корзинами валют. Часть II

Паттерны, доступные при торговле корзинами валют. Часть II

Продолжение разговора о паттернах, которые может обнаружить трейдер при торговле корзинами валютных пар. В этой части рассмотрены паттерны, образующиеся при использовании объединенных трендовых индикаторов. В качестве инструмента анализа применены индикаторы, построенные на основе индекса валюты.
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXVIII): Отложенные торговые запросы - закрытие, удаление, модификации
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXVIII): Отложенные торговые запросы - закрытие, удаление, модификации

Библиотека для простого и быстрого создания программ для MetaTrader (Часть XXVIII): Отложенные торговые запросы - закрытие, удаление, модификации

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

Рецепты MQL5 – Экономический календарь

В статье освещаются программные возможности по работе с Экономическим календарём. Для этих целей создаётся класс для упрощенного доступа к свойствам календаря и получения значений событий. В качестве практического примера предлагается запрограммировать индикатор, использующий данные по чистому объёму спекулятивных позиций от CFTC.
Кроссплатформенный торговый советник: повторное использование компонентов из Стандартной библиотеки MQL5
Кроссплатформенный торговый советник: повторное использование компонентов из Стандартной библиотеки MQL5

Кроссплатформенный торговый советник: повторное использование компонентов из Стандартной библиотеки MQL5

В Стандартной библиотеке MQL5 есть некоторые компоненты, которые могут оказаться полезными в версиях кроссплатформенных торговых экспертов для MQL4. В этой статье рассматривается метод создания некоторых компонентов Стандартной библиотеки MQL5, совместимых с компилятором MQL4.
Графические интерфейсы IV: Многооконный режим и система приоритетов (Глава 2)
Графические интерфейсы IV: Многооконный режим и система приоритетов (Глава 2)

Графические интерфейсы IV: Многооконный режим и система приоритетов (Глава 2)

В этой статье мы расширим реализацию библиотеки до возможности создавать многооконные интерфейсы для своих MQL-приложений. Кроме этого, разработаем систему приоритетов на нажатие левой кнопкой мыши на графических объектах. Это нужно, чтобы не столкнуться с проблемами, когда элементы управления неожиданно не отвечают на действия пользователя.
preview
Работаем со временем (Часть 1): Основные принципы

Работаем со временем (Часть 1): Основные принципы

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

Веб-скрапинг данных о доходности облигаций

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

Новые возможности с MetaTrader 5

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

Как добавить новые языки интерфейса в платформу MetaTrader 5

Пользовательский интерфейс платформы MetaTrader 5 переведен на большинство самых распространенных языков. Не беда, если вашего родного языка не окажется в списке поддерживаемых. В MetaTrader 5 изначально была заложена полная поддержка Unicode, а для перевода пользовательского интерфейса была создана специальная утилита MultiLanguage Pack. С ее помощью любой пользователь по своему желанию может перевести интерфейс клиентских компонентов платформы MetaTrader 5 на любой язык мира. В этой статье мы детально рассмотрим весь процесс добавления новых языков интерфейса.
Используйте EX5-библиотеки для продвижения своих разработок
Используйте EX5-библиотеки для продвижения своих разработок

Используйте EX5-библиотеки для продвижения своих разработок

С помощью сокрытия реализации функций/классов в ex5-файл вы сможете делиться своими ноу-хау алгоритмами с другими программистами, создавать общие проекты и продвигать их в сети. И пока команда MetaQuotes всеми силами приближает возможность прямого наследования классов из ex5‑библиотек, мы реализуем данную возможность уже сейчас.
Графические интерфейсы X: Обновления для библиотеки Easy And Fast (build 3)
Графические интерфейсы X: Обновления для библиотеки Easy And Fast (build 3)

Графические интерфейсы X: Обновления для библиотеки Easy And Fast (build 3)

В этой статье представлена следующая версия библиотеки Easy And Fast (версия 3). Исправлены некоторые недоработки и добавлены новые возможности. Подробнее читайте далее в статье.
Интервью с Ахмадом Хидаятом (ATC 2012)
Интервью с Ахмадом Хидаятом (ATC 2012)

Интервью с Ахмадом Хидаятом (ATC 2012)

На всем протяжении Automated Trading Championship 2012 мы будем вести прямые трансляции с места событий - горячие репортажи и отчеты каждую неделю. Героем сегодняшнего репортажа стал участник из Индонезии по имени Ахмад Хидаят (achidayat). В первый день его советник закрепился в третьей десятке. Вполне неплохое начало. Ахмад заинтересовал нас своим активным участием в жизни MQL5 Market. На сегодняшний день он опубликовал уже более 20 продуктов.
Интервью с Андреем Бобряшовым (ATC 2011)
Интервью с Андреем Бобряшовым (ATC 2011)

Интервью с Андреем Бобряшовым (ATC 2011)

За 5 лет проведения Чемпионата по автоматической торговле в TOP-10 мы видели торговые роботы, построенные на самых разнообразных подходах. Успешные результаты показывали советники как на основе классических индикаторов, так и сложные аналитические комплексы с автоматической еженедельной оптимизацией собственных параметров.
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XVIII): Интерактивность объекта-аккаунт и любых других объектов библиотеки
Библиотека для простого и быстрого создания программ для MetaTrader (Часть XVIII): Интерактивность объекта-аккаунт и любых других объектов библиотеки

Библиотека для простого и быстрого создания программ для MetaTrader (Часть XVIII): Интерактивность объекта-аккаунт и любых других объектов библиотеки

В статье организована работа объекта-аккаунт на новом базовом объекте всех объектов библиотеки, доработан базовый объект CBaseObj и протестирована установка отслеживаемых параметров, а также получение событий для любых объектов библиотеки.
Комбинаторика и теория вероятностей для трейдинга (Часть IV): Логика Бернулли
Комбинаторика и теория вероятностей для трейдинга (Часть IV): Логика Бернулли

Комбинаторика и теория вероятностей для трейдинга (Часть IV): Логика Бернулли

В данной статье я решил осветить всем известную схему Бернулли и показать как можно ее использовать в рамках описания массивов данных связанных с торговлей, для дальнейшего использования на пути создания самостоятельно адаптирующейся торговой системы. Также будем искать более общий алгоритм, частным случаем которой является формула Бернулли и найдем ему применение.
Графические интерфейсы VI: Элементы "Чекбокс", "Поле ввода" и их смешанные типы (Глава 1)
Графические интерфейсы VI: Элементы "Чекбокс", "Поле ввода" и их смешанные типы (Глава 1)

Графические интерфейсы VI: Элементы "Чекбокс", "Поле ввода" и их смешанные типы (Глава 1)

С этой статьи начинается шестая часть серии о разработке библиотеки для создания графических интерфейсов в терминалах MetaTrader. В первой главе речь пойдёт о таких элементах управления, как «чекбокс», «поле ввода», а также о смешанных типах этих элементов.
Интервью с Эгидиюсом Бочкусом (ATC 2012)
Интервью с Эгидиюсом Бочкусом (ATC 2012)

Интервью с Эгидиюсом Бочкусом (ATC 2012)

"Пришлось проанализировать работу многих индикаторов, чтобы понять, что вообще-то они для зарабатывания на Forex не нужны" - смело заявил нам герой сегодняшнего интервью Эгидиюс Бочкус (Egidijus). И у нас есть повод задуматься о смысле этих слов, ведь на третьей неделе Automated Trading Championship 2012 его советник укрепился на третьем месте с результатом более $32 000 по балансу.
preview
Брутфорс-подход к поиску закономерностей (Часть II): Погружение

Брутфорс-подход к поиску закономерностей (Часть II): Погружение

В данной статье я продолжу тему брутфорс-подхода. Постараюсь более качественно осветить закономерности с помощью новой улучшенной версии своей программы и постараюсь найти разницу в стабильности используя разные временные отрезки и разные таймфреймы котировок.
Мультивалютный мониторинг торговых сигналов (Часть 1): Разработка структуры приложения
Мультивалютный мониторинг торговых сигналов (Часть 1): Разработка структуры приложения

Мультивалютный мониторинг торговых сигналов (Часть 1): Разработка структуры приложения

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

Графические интерфейсы IV: Информационные элементы интерфейса (Глава 1)

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

Как и зачем разрабатывать собственную систему для алгоритмической торговли

В этой статье мы рассмотрим основы языка программирования MQL. Цель статьи — помочь начинающим программистам разработать собственную систему алгоритмической торговли (торгового советника).
Разработка торговых роботов при помощи визуального программирования
Разработка торговых роботов при помощи визуального программирования

Разработка торговых роботов при помощи визуального программирования

В статье демонстрируется возможности редактора botbrains.app — no-code платформы для разработки торговых роботов. Чтобы создать торгового робота не нужно программировать — просто перетащите нужные блоки на схему, задайте их параметры и установите связи между ними.
Управление оптимизацией (Часть 2): Создание ключевых объектов и логики приложения
Управление оптимизацией (Часть 2): Создание ключевых объектов и логики приложения

Управление оптимизацией (Часть 2): Создание ключевых объектов и логики приложения

Данная статья является продолжением предыдущей публикации на тему создания графического интерфейса для управления оптимизациями. В ней будет рассмотрена логика работы создаваемого дополнения. Создадим обертку для терминала MetaTrader 5 для его запуска как управляемый процесс через C#. А также будет рассмотрена работа с конфигурационными файлами и файлами настроек. Логика программы же будет поделена на две части: в первой описаны методы, вызываемые после нажатия на ту или иную клавишу, а вторая часть — запуск и управление оптимизациями.
Интервью с Ли Фаном (ATC 2011)
Интервью с Ли Фаном (ATC 2011)

Интервью с Ли Фаном (ATC 2011)

На седьмой неделе Чемпионата советник Ли Фана (lf8749) установил рекорд - за 10 трейдов он заработал более $100 000. Именно эта удачная серия сделок обеспечила экспертописателю двухнедельное пребывание на первой строчке рейтинга. Каким образом удалось совершить такой подвиг, мы решили выяснить у самого Ли Фана.
Интервью с Валерием Мазуренко (ATC 2011)
Интервью с Валерием Мазуренко (ATC 2011)

Интервью с Валерием Мазуренко (ATC 2011)

Задача написания эксперта, торгующего по нескольким валютным парам, является сложной как с точки зрения поиска подходящих стратегий, так и с технологической стороны. Но если поставить перед собой такую цель, то ничего невозможного нет. Четыре раза из года в год выставлял на Чемпионат мультивалютного торгового робота Валерий Мазуренко (notused), и на этот раз оказался как никогда близок к идеалу.
Лига Чемпионов ATC: Интервью с Александром Топчило (ATC 2011)
Лига Чемпионов ATC: Интервью с Александром Топчило (ATC 2011)

Лига Чемпионов ATC: Интервью с Александром Топчило (ATC 2011)

Вторым в рамках проекта "Лига Чемпионов ATC" мы публикуем интервью с Александром Топчило (Better). Победив в Automated Trading Championship 2007, этот профессиональный трейдер привлек внимание инвесторов. По признанию Александра, эта победа стала одним из знаменательных событий его трейдерской карьере. Однако впоследствии обретенная слава открыла и наибольшее разочарование - так легко потерять инвесторов после первых же просадок на счете.
Как разработать торговую систему на основе Bollinger Bands
Как разработать торговую систему на основе Bollinger Bands

Как разработать торговую систему на основе Bollinger Bands

В этой статье мы поговорим о полосах Боллинджера (Bollinger Bands) — одном из самых популярных индикаторов в мире трейдинга. Мы обсудим технический анализ, а также научимся разрабатывать системы алгоритмической торговли на основе индикатора Bollinger Bands.
Удивите ваших MQL5-клиентов эффективным коктейлем технологий!
Удивите ваших MQL5-клиентов эффективным коктейлем технологий!

Удивите ваших MQL5-клиентов эффективным коктейлем технологий!

MQL5 предоставляет программистам полный набор функций и объектно-ориентированный API, благодаря которым они могут делать в среде MetaTrader все что угодно. Тем не менее, веб-технологии – это очень универсальный инструмент, который может помочь в ситуациях, когда вам нужно создать нечто совершенно особое, вы хотите удивить ваших клиентов или у вас просто нет времени на изучение определенной части стандартной библиотеки MQL5. В данной статье вы узнаете, как можно управлять временем разработки при создании вашего уникального коктейля технологий.
Интервью с Александром Арашкевичем (ATC 2011)
Интервью с Александром Арашкевичем (ATC 2011)

Интервью с Александром Арашкевичем (ATC 2011)

Наконец улеглись страсти, мы можем перевести дух и начинать переосмысливать еще раз его результаты. И у нас есть еще один победитель Александр Арашкевич (AAA777) из Белоруссии, который получил специальный приз от Главного спонсора Automated Trading Championship 2011 - бесплатную поездку на соревнование Формулы-1 в 2012 году. Мы не могли упустить такой возможности пообщаться с ним.
Вычисление математических выражений (Часть 2). Парсеры Пратта и сортировочной станции
Вычисление математических выражений (Часть 2). Парсеры Пратта и сортировочной станции

Вычисление математических выражений (Часть 2). Парсеры Пратта и сортировочной станции

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

Универсальная регрессионная модель для прогнозирования рыночной цены (Часть 2): Функции природных, техногенных и общественных переходных процессов

Настоящая статья является логическим продолжением предыдущей и написана для освещения выявленных фактов подтверждения ее выводов в течении последующих десяти лет после ее выхода, по части выявленных трех функций динамических переходных процессов, описывающих закономерности изменения рыночной цены.
Мультивалютный мониторинг торговых сигналов (Часть 4): Улучшаем функциональность  и систему поиска сигналов
Мультивалютный мониторинг торговых сигналов (Часть 4): Улучшаем функциональность  и систему поиска сигналов

Мультивалютный мониторинг торговых сигналов (Часть 4): Улучшаем функциональность и систему поиска сигналов

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