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

icon

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

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

Новая статья
последние | лучшие
Рисование стрелочных индикаторов с использованием класса CCanvas
Рисование стрелочных индикаторов с использованием класса CCanvas

Рисование стрелочных индикаторов с использованием класса CCanvas

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

Как обезопасить себя и своего эксперта при торговле на Московской бирже

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

Как правильно выбрать торговый сигнал для подписки. Пошаговое руководство

В данном пошаговом руководстве рассматривается сервис Cигналы, изучение торговых сигналов, системный подход к поиску нужного сигнала, который удовлетворял бы критериям доходности, риска, активности торговли, работы на различных типах счетов и финансовых инструментах.
Статистическая проверка системы управления капиталом Лябушера
Статистическая проверка системы управления капиталом Лябушера

Статистическая проверка системы управления капиталом Лябушера

В статье приводится проверка статистических свойств системы управления капиталом Лябушера, являющейся менее агрессивной разновидностью Мартингейла и предполагающей повышение ставок не в 2 раза, а на определенную величину.
Как правильно выбрать продукт в Маркете для покупки. Пошаговое руководство
Как правильно выбрать продукт в Маркете для покупки. Пошаговое руководство

Как правильно выбрать продукт в Маркете для покупки. Пошаговое руководство

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

Трендовые линии на основе фракталов посредством MQL4 и MQL5

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

Создание интерактивного приложения для отображения RSS-каналов в MetaTrader 5

В данной статье рассматривается создание приложения, отображающего RSS-каналы. Мы также рассмотрим аспекты применения Стандартной библиотеки при создании интерактивных программ для MetaTrader 5.
Торговые идеи на основе направления и скорости движения цен
Торговые идеи на основе направления и скорости движения цен

Торговые идеи на основе направления и скорости движения цен

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

Рецепты MQL5 - Реализуем ассоциативный массив или словарь для быстрого доступа к данным

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

Изучаем класс CCanvas. Реализация прозрачности графических объектов

Надоела угловатая графика скользящих средних? Вы хотите рисовать в терминале что-то более красивое, чем простой прямоугольник с заливкой? Рисовать красиво в терминале можно. Для этого есть класс для создания пользовательской графики - CCanvas. С помощью этого класса можно реализовать прозрачность, смешивать цвета и получать иллюзию прозрачности при помощи наложения и смешивания цвета.
Рецепты MQL5 - ОСО-ордера
Рецепты MQL5 - ОСО-ордера

Рецепты MQL5 - ОСО-ордера

В торговле трейдер использует различные механизмы и взаимосвязи, в том числе и между ордерами. В данной статье предлагается решение по обработке ОСО-ордеров. При этом широко задействованы классы Стандартной библиотеки, а также создаются новые типы данных.
Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью API HedgeTerminal, часть 2
Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью API HedgeTerminal, часть 2

Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью API HedgeTerminal, часть 2

Статья описывает новый подход в вопросах хеджирования позиций и ставит точку в спорах между пользователями платформ MetaTrader 4 и MetaTrader 5 в этом вопросе. Она является продолжением первой части: "Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью панели API HedgeTerminal". Во второй части описывается интеграция пользовательских экспертов с HedgeTerminalAPI - специальной библиотекой виртуализации, позволяющей торговать разнонаправлено, находясь в комфортном программном окружении, позволяющем легко и просто управлять своими позициями.
Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью панели HedgeTerminal, часть 1
Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью панели HedgeTerminal, часть 1

Разнонаправленная торговля и хеджирование позиций в MetaTrader 5 с помощью панели HedgeTerminal, часть 1

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

Программируем режимы работы советника с помощью ООП

В статье рассматривается идея мультирежимного программирования торговых роботов на MQL5. Используется объектно-ориентированный подход для реализации каждого из режимов. Приводится пример иерархии режимных классов и пример классов для тестирования. Предполагается, что мультирежимное программирование торговых роботов полностью учитывает особенности каждого режима работы MQL5-советника. Для идентификации режимов создаются функции и перечисление.
Основы биржевого ценообразования на примере срочной секции Московской биржи
Основы биржевого ценообразования на примере срочной секции Московской биржи

Основы биржевого ценообразования на примере срочной секции Московской биржи

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

Статистические рецепты для трейдера - Гипотезы

В данной статье рассматривается базовое понятие математической статистики "гипотеза". На примерах, с применением методов математической статистики, исследуются и проверяются различные гипотезы. Реальные данные обобщаются с помощью непараметрических методов. При обработке данных используются пакет Statistica и портированная библиотека численного анализа ALGLIB MQL5.
Оптимизировать оптимизацию: несколько простых идей
Оптимизировать оптимизацию: несколько простых идей

Оптимизировать оптимизацию: несколько простых идей

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

Третье поколение нейросетей: "Глубокие нейросети"

Статья посвящена новому и очень перспективному направлению в машинном обучении — так называемому "глубокому обучению" и конкретней "глубоким нейросетям". Сделан краткий обзор нейросетей 2 поколения, их архитектуры связей и основных видов, методов и правил обучения и их основных недостатков. Далее рассмотрена история появления и развития нейросетей 3 поколения, их основные виды, особенности и методы обучения. Проведены практические эксперименты по построению и обучению на реальных данных глубокой нейросети, инициируемой весами накапливающего автоэнкодера. Рассмотрены все этапы от выбора исходных данных до получения метрик. В последней части статьи приведена программная реализация глубокой нейросети в виде индикатора-эксперта на MQL4/R.
Нейросети бесплатно и сердито - соединяем NeuroPro и MetaTrader 5
Нейросети бесплатно и сердито - соединяем NeuroPro и MetaTrader 5

Нейросети бесплатно и сердито - соединяем NeuroPro и MetaTrader 5

Если специализированные нейросетевые программы для трейдинга вам кажутся дорогими и сложными (или наоборот - примитивными), то попробуйте NeuroPro - она на русском языке, бесплатна и содержит оптимальный набор возможностей для любителей. О том, как использовать ее с MetaTrader 5, вы узнаете из этой статьи.
Жидкий график
Жидкий график

Жидкий график

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

Почему виртуальный хостинг в платформах MetaTrader 4 и MetaTrader 5 лучше обычных VPS

Сеть Virtual Hosting Cloud разработана специально для MetaTrader 4 и MetaTrader 5 и обладает всеми преимуществами родного решения. Арендуйте виртуальный сервер прямо сейчас и протестируйте его работу - мы даем 24 бесплатных часа!
Основы  программирования на MQL5 - Глобальные переменные терминала
Основы  программирования на MQL5 - Глобальные переменные терминала

Основы программирования на MQL5 - Глобальные переменные терминала

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

Рецепты MQL5 - обработка события BookEvent

В статье рассматриваются событие стакана BookEvent и принцип его обработки. В качестве примера создается MQL5-программа, обрабатывающая состояния стакана. Используется объектно-ориентированный подход. Результаты обработки выводятся на экран в виде панели и уровней стакана.
Работа с СУБД MySQL из MQL5 (MQL4)
Работа с СУБД MySQL из MQL5 (MQL4)

Работа с СУБД MySQL из MQL5 (MQL4)

Статья посвящена разработке интерфейса между MQL и СУБД MySQL. В ней рассматриваются существующие на данный момент практические решения и предлагается более удобный вариант исполнения библиотеки для работы с СУБД. В статье дано подробное описание функций, структуры интерфейса, приведены примеры и описаны некоторые тонкости при работе с MySQL. В плане программного решения, к статье прикреплены архивы с динамическими библиотеками, документацией и примерами-скриптами для языков MQL4 и MQL5.
Рецепты MQL5 - обработка пользовательских событий графика
Рецепты MQL5 - обработка пользовательских событий графика

Рецепты MQL5 - обработка пользовательских событий графика

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

Подготовка торгового счета к миграции на виртуальный хостинг

Клиентский терминал MetaTrader идеально подходит для автоматизации торговых стратегий. Для разработчиков торговых роботов в нем есть всё ‒ мощный язык программирования MQL4/MQL5 на основе C++, удобная среда разработки MetaEditor, многопоточный тестер стратегий с поддержкой распределенных вычислений в MQL5 Cloud Network. В этой статье вы узнаете, как перенести свой клиентский терминал со всеми разработками в виртуальную среду.
Случайные леса предсказывают тренды
Случайные леса предсказывают тренды

Случайные леса предсказывают тренды

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

Рецепты MQL5 - обработка типичных событий графика

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

Рецепты MQL5 - обработка события TradeTransaction

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

Регрессионный анализ влияния макроэкономических данных на изменение цен валют

В статье рассмотрен вопрос применения множественного регрессионного анализа к данным макроэкономической статистики и анализ влияния этих данных на изменение курса валют на примере пары EURUSD. Применение такого анализа позволяет автоматизировать проведение фундаментального анализа, который становится доступным практически каждому, даже начинающим трейдерам.
Разработка социального технологического стартапа, часть II: Программируем клиент MQL5 REST
Разработка социального технологического стартапа, часть II: Программируем клиент MQL5 REST

Разработка социального технологического стартапа, часть II: Программируем клиент MQL5 REST

Сегодня мы окончательно оформим идею публикации торговых сигналов эксперта в Твиттере на основе PHP. Об этом мы начали говорить в первой части статьи. Мы соберем вместе отдельные части SDSS. Что касается клиентской стороны архитектуры системы, мы будем использовать новую функцию MQL5 WebRequest() для отправки торговых сигналов через HTTP.
Как мы развивали сервис торговых сигналов MetaTrader и социальный трейдинг в целом
Как мы развивали сервис торговых сигналов MetaTrader и социальный трейдинг в целом

Как мы развивали сервис торговых сигналов MetaTrader и социальный трейдинг в целом

Мы активно совершенствуем сервис Сигналы, последовательно избавляемся от прежних недоработок и вносим изменения в существующие механизмы. MetaTrader Signals двухлетней давности и MetaTrader Signals на текущий момент - это словно два различных сервиса. Прямо сейчас ведутся работы по реализации виртуального хостинга Virtual Hosting Cloud - сети серверов для поддержки специальных версий клиентского терминала MetaTrader. За пять шагов из MetaTrader станет возможно взять в аренду виртуальную копию терминала с минимальной сетевой задержкой до торгового сервера брокера.
Как мы развивали сервис торговых сигналов MetaTrader и социальный трейдинг в целом
Как мы развивали сервис торговых сигналов MetaTrader и социальный трейдинг в целом

Как мы развивали сервис торговых сигналов MetaTrader и социальный трейдинг в целом

Мы активно совершенствуем сервис Сигналы, последовательно избавляемся от прежних недоработок и вносим изменения в существующие механизмы. MetaTrader Signals двухлетней давности и MetaTrader Signals на текущий момент - это словно два различных сервиса.
Разработка социального технологического стартапа, часть I: Публикуем сигналы MetaTrader 5 в Твиттере
Разработка социального технологического стартапа, часть I: Публикуем сигналы MetaTrader 5 в Твиттере

Разработка социального технологического стартапа, часть I: Публикуем сигналы MetaTrader 5 в Твиттере

Сегодня мы поговорим о том, как привязать терминал MetaTrader 5 к аккаунту в Твиттере для того, чтобы публиковать сигналы вашего эксперта. Мы разрабатываем Social Decision Support System (Социальную систему поддержки принятия решений), далее SDSS, в PHP на основе веб-сервиса RESTful. В основе этой идеи лежит концепция автоматической торговли или, так называемая торговля при помощи компьютеров. Мы хотим, чтобы автоматические торговые сигналы эксперта проходили через фильтры когнитивных способностей разума человека.
Как правильно подать Продукт для продажи в Маркете?
Как правильно подать Продукт для продажи в Маркете?

Как правильно подать Продукт для продажи в Маркете?

Для того чтобы продавать свои программы трейдерам, недостаточно просто создать удобную и полезную программу и опубликовать ее на Маркете — необходимо свой Продукт снабдить отличным описанием и хорошими иллюстрациями. Качественный логотип и правильно сделанные скриншоты не менее важны, чем "true coding". Запомните: нет скачиваний == нет продаж.
Фриланс на MQL5.com - лучшее место для разработчика
Фриланс на MQL5.com - лучшее место для разработчика

Фриланс на MQL5.com - лучшее место для разработчика

Разработчикам торговых советников больше не надо искать трейдеров, которым нужны эксперты, - заказчики сами найдут вас. Более того, они уже находят разработчиков, выставляют заказы и оплачивают проделанную работу в сервисе Фриланс на MQL5.com. За 4 года существования сервиса три тысячи трейдеров оплатило свыше 10 000 выполненных работ! Причем активность трейдеров и разработчиков постоянно возрастает.
Инфографика "Что представляет собой MetaTrader Market"
Инфографика "Что представляет собой MetaTrader Market"

Инфографика "Что представляет собой MetaTrader Market"

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

Мастер MQL5: Расширение стандартной библиотеки для установки ордеров, стопов и целей по вычисляемым ценам

В статье описывается расширение стандартной библиотеки MQL5, позволяющее с помощью Мастера создавать советники, размещающие ордера, стоп-лоссы и тейк-профиты по ценам, получаемым от подключенных модулей. Данный подход не накладывает дополнительных ограничений на количество модулей и не вызывает конфликтов в их совместной работе.
Поставщики сигнала Johnpaul77: "Наша стратегия более трех лет дает отличный результат, с какой стати нам ее менять?"
Поставщики сигнала Johnpaul77: "Наша стратегия более трех лет дает отличный результат, с какой стати нам ее менять?"

Поставщики сигнала Johnpaul77: "Наша стратегия более трех лет дает отличный результат, с какой стати нам ее менять?"

Раскроем небольшой секрет: посетители сайта MQL5.com больше всего времени проводят на странице сигнала Johnpaul77. Это лидер нашего рейтинга, на него подписаны около 900 трейдеров с $5.7 млн совокупных средств на реальных счетах. Мы взяли интервью с провайдерами этого сигнала - их оказалось четверо! Каким образом простые индонезийские геймеры стали поставщиками топового сигнала, какими инструмента теханализа они пользуются и как распределяются роли в их коллективе — читайте здесь.
Индикатор для построения графика "трехлинейного прорыва"
Индикатор для построения графика "трехлинейного прорыва"

Индикатор для построения графика "трехлинейного прорыва"

Статья посвящена графику "трёхлинейного прорыва" (Three Line Break), предложенного Стивом Нисоном в книге «За гранью японских свечей». Преимущество данного графика состоит в том, что с его помощью можно фильтровать незначительные колебания цен относительно предыдущего движения. Рассмотрен принцип построения графика, код индикатора, а также примеры торговых стратегий на его основе.