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

icon

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

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

Новая статья
последние | лучшие
preview
Разрабатываем менеджер терминалов (Часть 2): Запуск нескольких экземпляров

Разрабатываем менеджер терминалов (Часть 2): Запуск нескольких экземпляров

Переходим к использованию сразу нескольких экземпляров терминала на сервере, организовав простую панель управления запуском и остановкой. Теперь пришло время расширять функциональность и переходить к следующим этапам — реализации более сложных возможностей, таких как управление несколькими экземплярами, хранение состояния, интеграция с MetaTrader5 API и веб-интерфейс с полной информацией о терминалах.
preview
От начального до среднего уровня: Struct (II)

От начального до среднего уровня: Struct (II)

В данной статье мы попытаемся разобраться в том, почему структуры были созданы на таких языках программирования, как MQL5, а также почему в некоторых случаях структуры являются идеальным способом передачи значений между функциями и процедурами, а в других случаях они могут быть не самым лучшим способом сделать это.
preview
Нейросети в трейдинге: Единый взгляд на пространство и время (Global-Local Attention)

Нейросети в трейдинге: Единый взгляд на пространство и время (Global-Local Attention)

Продолжаем работу по реализации подходов, предложенных авторами фреймворка Extralonger. На этот раз сосредоточимся на построении модуля Global-Local Spatial Attention средствами MQL5, рассматривая как его структуру, так и практическую интеграцию в общий вычислительный процесс.
preview
Детерминированный алгоритм дендритных клеток — Deterministic Dendritic Cell Algorithm (dDCA)

Детерминированный алгоритм дендритных клеток — Deterministic Dendritic Cell Algorithm (dDCA)

Представлена адаптация детерминированного алгоритма дендритных клеток (dDCA) для задач непрерывной оптимизации. Алгоритм, вдохновлённый Теорией Опасности иммунной системы, использует механизм накопления сигналов для автоматического баланса между исследованием и эксплуатацией пространства поиска.
preview
Алгоритм циклического партеногенеза — Cyclic Parthenogenesis Algorithm (CPA)

Алгоритм циклического партеногенеза — Cyclic Parthenogenesis Algorithm (CPA)

В данной статье рассмотрим новый популяционный алгоритм оптимизации CPA (Cyclic Parthenogenesis Algorithm), вдохновленный уникальной репродуктивной стратегией тлей. Алгоритм сочетает два механизма размножения — партеногенез и половое, а также использует колониальную структуру популяции с возможностью миграции между колониями. Ключевыми особенностями алгоритма являются адаптивное переключение между различными стратегиями размножения и система обмена информацией между колониями через механизм перелета.
preview
Переосмысливаем классические стратегии в MQL5 (Часть III): Прогнозирование индекса FTSE 100

Переосмысливаем классические стратегии в MQL5 (Часть III): Прогнозирование индекса FTSE 100

В данной серии статей мы вернемся к хорошо известным торговым стратегиям, чтобы узнать, можно ли улучшить их с помощью искусственного интеллекта. В сегодняшней статье мы рассмотрим индекс FTSE 100 и попытаемся спрогнозировать его, используя часть отдельных акций, входящих в состав индекса.
preview
Автоматизация торговых стратегий на MQL5 (Часть 12): Реализация стратегии смягчения ордер-блоков (MOB)

Автоматизация торговых стратегий на MQL5 (Часть 12): Реализация стратегии смягчения ордер-блоков (MOB)

В настоящей статье нами будет создана торговая система на MQL5, которая автоматизирует обнаружение ордер-блоков для для торговли по концепции Smart Money. Мы опишем правила стратегии, реализуем логику средствами MQL5 и интегрируем управление рисками для эффективного совершения сделок. Наконец, проведём тестирование системы на истории, чтобы оценить ее эффективность и доработать для получения оптимальных результатов.
preview
Загрузка данных Международного валютного фонда на Python

Загрузка данных Международного валютного фонда на Python

Загрузка данных Международного валютного фонда на Python: добываем данные IMF для применения в макроэкономических валютных стратегиях. Как макроэкономика может помочь трейдеру и алготрейдеру?
preview
От начального до среднего уровня: Операторы WHILE и DO WHILE

От начального до среднего уровня: Операторы WHILE и DO WHILE

В этой статье мы практически и весьма наглядно рассмотрим первый оператор цикла. Несмотря на то, что многие новички испытывают страх, сталкиваясь с необходимостью создания циклов, знание того, как это делать правильно и безопасно, может прийти только с опытом и практикой. Но кто знает, возможно, я смогу уменьшить ваши трудности и страдания, показав основные проблемы и меры предосторожности, которые следует соблюдать при использовании циклов в коде.
preview
Разработка системы репликации (Часть 46): Проект Chart Trade (V)

Разработка системы репликации (Часть 46): Проект Chart Trade (V)

Устали тратить время на поиск того самого файла, который необходим для работы вашего приложения? Как насчет того, чтобы включить все в исполняемый файл? Так вы больше не будете тратить время на поиск необходимого. Знаю, что многие пользуются именно такой формой распространения и хранения вещей, но есть гораздо более подходящий способ. По крайней мере, что касается распространения исполняемых файлов и их хранения. Метод, который будет здесь представлен, может оказаться очень полезным, так как в качестве отличного помощника вы сможете использовать сам MetaTrader 5, а также MQL5. И это не так уж трудно и сложно для понимания.
preview
Нейросети в трейдинге: Пространственно-управляемая агрегация рыночных событий (Основные модули)

Нейросети в трейдинге: Пространственно-управляемая агрегация рыночных событий (Основные модули)

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

Механизмы гейтинга в ансамблевом обучении

В настоящей статье мы продолжаем наше исследование ансамблевых моделей, обсуждая концепцию ворот (gates), в частности, как они могут быть полезны при объединении выходных данных модели для повышения точности прогнозирования или обобщения модели.
preview
Разработка инструментария для анализа Price Action (Часть 27): Инструмент выявления снятия ликвидности с MA-фильтром

Разработка инструментария для анализа Price Action (Часть 27): Инструмент выявления снятия ликвидности с MA-фильтром

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

Криптография в MQL5: Шифрование, хеширование и защита данных

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

Передача тиковых данных из MetaTrader в Python через сокеты с помощью MQL5-сервисов

Иногда не все можно запрограммировать на языке MQL5. И даже если возможно конвертировать существующие современные библиотеки в MQL5, на это уйдет много времени. В данной статье мы попытаемся обойти зависимость от Windows с помощью MQL5-сервисов — будем передавать тиковые данные (bid, ask и time) в приложение Python с помощью сокетов.
preview
От новичка до эксперта: Создание анимированного советника для новостей в MQL5 (V) — Система напоминаний о событиях

От новичка до эксперта: Создание анимированного советника для новостей в MQL5 (V) — Система напоминаний о событиях

В этом обсуждении мы рассмотрим дополнительные усовершенствования, поскольку интегрируем усовершенствованную логику оповещения о событиях в экономическом календаре, отображаемых советником «Заголовки новостей». Это усовершенствование имеет решающее значение — оно гарантирует, что пользователи будут получать своевременные уведомления за короткое время до ключевых предстоящих событий. Присоединяйтесь к этой дискуссии, чтобы узнать больше.
preview
Нейросети в трейдинге: Рекуррентное моделирование микродвижений рынка (Энкодер)

Нейросети в трейдинге: Рекуррентное моделирование микродвижений рынка (Энкодер)

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

Нейросети в трейдинге: Спайково-семантический подход к пространственно-временной идентификации (Окончание)

S3CE-Net в нашей интерпретации ловко переводит рынок в язык событий и фиксирует ранние импульсы, которые традиционные индикаторы просто усредняют. STFS гарантирует устойчивость обучения — модель видит данные под разными углами и не переобучается на локальных аномалиях. SSAM-блоки и OpenCL-реализация дают практическую скорость и точность, а разделение режимов обучение/эксплуатация сохраняет ресурсы в продакшене.
preview
Разработка системы репликации (Часть 54): Появление первого модуля

Разработка системы репликации (Часть 54): Появление первого модуля

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

Создание торговой панели администратора на MQL5 (Часть IX): Организация кода (I)

В этом обсуждении рассматриваются проблемы, возникающие при работе с большими базами кодов. Мы рассмотрим лучшие практики организации кода в MQL5 и реализуем практический подход для повышения читаемости и масштабируемости исходного кода нашей панели торгового администратора. Кроме того, мы начнем разработку повторно используемых компонентов кода, которые потенциально могут принести пользу другим разработчикам при создании алгоритмов. Присоединяйтесь к обсуждению.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 73): Использование паттернов Ишимоку и ADX-Wilder

Возможности Мастера MQL5, которые вам нужно знать (Часть 73): Использование паттернов Ишимоку и ADX-Wilder

Индикатор Ишимоку (Ichimoku-Kinko-Hyo) и осциллятор ADX-Wilder — это взаимодополняющая пара, которую можно использовать в составе MQL5-советника. Индикатор Ишимоку многогранен, однако в данной статье мы будем использовать его в первую очередь для определения уровней поддержки и сопротивления. Мы также применим ADX для определения тренда. Как обычно, мы используем Мастер MQL5 для построения паттернов и тестирования потенциала, который может иметь эта пара индикаторов.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 75): Использование Awesome Oscillator и конвертов

Возможности Мастера MQL5, которые вам нужно знать (Часть 75): Использование Awesome Oscillator и конвертов

Инструмент Awesome Oscillator от Билла Уильямса и канал конвертов (Envelopes Channel) — это сочетание, которое можно использовать взаимодополняющим образом в составе советника MQL5. Мы используем Awesome Oscillator за его способность выявлять тренды, а канал конвертов используется для определения уровней поддержки/сопротивления. Как обычно, мы используем Мастер MQL5 для построения паттернов и тестирования потенциала, который может иметь эта пара индикаторов.
preview
Автоматизация торговых стратегий на MQL5 (Часть 4): Построение многоуровневой системы зонального восстановления

Автоматизация торговых стратегий на MQL5 (Часть 4): Построение многоуровневой системы зонального восстановления

В этой статье мы разработаем многоуровневую систему зонального восстановления в MQL5, которая использует RSI для генерации торговых сигналов. Каждый сигнал динамически добавляется в массив, что позволяет системе одновременно управлять несколькими сигналами в рамках логики зонального восстановления. Данный подход демонстрирует эффективную обработку сложных сценариев управления торговлей, сохраняя при этом масштабируемый и надежный дизайн кода.
preview
Машинное обучение и Data Science (Часть 41): YOLOv8v для поиска паттернов на рынках Forex и акций

Машинное обучение и Data Science (Часть 41): YOLOv8v для поиска паттернов на рынках Forex и акций

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

Нейросети в трейдинге: Унифицированное смешивание признаков для торговых решений (UniMixer)

Статья разбирает архитектуру UniMixer и интерпретирует её принципы для задач финансовых рынков, акцентируя моделирование взаимодействий признаков вместо простого прогноза цен. Показано, как организовать входные данные и семантические домены. Реализован базовый токенизатор для MQL5, формирующий токены с независимыми проекциями и подготавливающий корректное входное представление для последующего построения торговой модели.
preview
Моделирование рынка (Часть 02): Кросс-ордера (II)

Моделирование рынка (Часть 02): Кросс-ордера (II)

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

Генеративно-состязательные сети (GAN) для синтетических данных в сфере финансового моделирования (Часть 1): Введение в GAN и синтетические данные в сфере финансового моделирования

Настоящая статья знакомит трейдеров с Генеративно-состязательными сетями (GAN) для генерации Синтетических финансовых данных, устраняя ограничения данных в процессе обучения модели. В ней рассматриваются основы GAN, реализация кода на python и MQL5, а также практическое применение в финансовой сфере, позволяющее трейдерам повысить точность и надежность моделей с помощью синтетических данных.
preview
Оптимизация нейробоидами — Neuroboids Optimization Algorithm (NOA)

Оптимизация нейробоидами — Neuroboids Optimization Algorithm (NOA)

Новая авторская биоинспирированная метаэвристика оптимизации — NOA (Neuroboids Optimization Algorithm), объединяющая принципы коллективного интеллекта и нейронных сетей. В отличие от классических методов, алгоритм использует популяцию самообучающихся "нейробоидов", каждый с собственной нейросетью, адаптирующей стратегию поиска в реальном времени. Статья раскрывает архитектуру алгоритма, механизмы самообучения агентов и перспективы применения этого гибридного подхода в сложных задачах оптимизации.
preview
Внедрение в MQL5 практических модулей из других языков (Часть 02): Создание библиотеки REQUESTS, как в Python

Внедрение в MQL5 практических модулей из других языков (Часть 02): Создание библиотеки REQUESTS, как в Python

В этой статье опишем реализацию модуля, аналогичного модулю requests в Python, чтобы упростить отправку и получение веб-запросов в MetaTrader 5 с использованием MQL5.
preview
От CPU к GPU в MQL5: практическая схема OpenCL для ускорения исследований, оптимизаций и паттернов

От CPU к GPU в MQL5: практическая схема OpenCL для ускорения исследований, оптимизаций и паттернов

Узнайте, как выстроить практическую схему перехода от CPU к GPU в MQL5 с использованием OpenCL. Подробно рассматриваются инициализация контекста, организация буферов, крупные батчи, запуск kernel и минимизация обменов данными. Приведены типовые ошибки и способы их устранения. Пример со свечными паттернами иллюстрирует практическую пользу подхода.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 31): Выбор функции потерь

Возможности Мастера MQL5, которые вам нужно знать (Часть 31): Выбор функции потерь

Функция потерь (Loss Function) — это ключевая метрика алгоритмов машинного обучения, которая обеспечивает обратную связь для процесса обучения, количественно определяя, насколько хорошо данный набор параметров работает по сравнению с предполагаемым целевым значением. Мы рассмотрим различные форматы этой функции в пользовательском классе Мастера MQL5.
preview
Переосмысливаем классические стратегии (Часть VIII): Валютные рынки и драгоценные металлы в валютной паре USDCAD

Переосмысливаем классические стратегии (Часть VIII): Валютные рынки и драгоценные металлы в валютной паре USDCAD

В данной серии статей мы вновь рассматриваем хорошо известные стратегии, чтобы выяснить, можно ли улучшить их с помощью ИИ. Присоединяйтесь к нам в сегодняшней дискуссии, и мы проверим, существует ли надежная взаимосвязь между драгоценными металлами и валютами.
preview
Создание самооптимизирующихся советников на MQL5 (Часть 8): Анализ нескольких стратегий (2)

Создание самооптимизирующихся советников на MQL5 (Часть 8): Анализ нескольких стратегий (2)

Присоединяйтесь к нашему продолжению обсуждения, в котором мы объединим наши первые две торговые стратегии в ансамблевую торговую стратегию. Мы продемонстрируем различные возможные схемы комбинирования нескольких стратегий, а также способы управления пространством параметров, чтобы обеспечить возможность эффективной оптимизации даже при увеличении количества параметров.
preview
Нейросети в трейдинге: Оптимизация Cross-Attention для анализа длинных последовательностей рынка (STCA)

Нейросети в трейдинге: Оптимизация Cross-Attention для анализа длинных последовательностей рынка (STCA)

Статья показывает, как применить STCA к рынку: цель формируется сценарием, история задаётся эмбеддингами, а внимание вычисляется через Single-query Target-to-history Cross-Attention. Интеграция с FlashAttention на OpenCL переносит проекции на запросы и избегает формирования K/V для всей истории. Практический эффект — линейная сложность, экономия памяти и ускорение при анализе тысяч баров.
preview
Создание интеллектуального торгового менеджера в MQL5: Автоматизация перевода в безубыток, трейлинг-стопа и частичного закрытия позиции

Создание интеллектуального торгового менеджера в MQL5: Автоматизация перевода в безубыток, трейлинг-стопа и частичного закрытия позиции

Узнайте, как создать советник для интеллектуальной торговли Smart Trade Manager на языке MQL5, который автоматизирует управление сделками с функциями перевода в безубыток, трейлинг-стопа и частичного закрытия позиций. Практическое пошаговое руководство для трейдеров, желающих сэкономить время и повысить стабильность сделок за счет автоматизации.
preview
Алгоритм извлечения торговых правил из паттернов в MQL5

Алгоритм извлечения торговых правил из паттернов в MQL5

Статья показывает, как формализовать интуитивно замеченные ценовые паттерны и превратить их в статистически проверенные торговые сигналы. Советник кодирует последовательности баров в бинарные строки U/D и для каждого паттерна вычисляет пять независимых метрик: поддержку, уверенность, лифт, хи-квадрат и байесовскую вероятность. Позиция открывается только тогда, когда текущий паттерн совпадает с историческим правилом и все фильтры пройдены — динамический лот масштабируется по силе сигнала, стоп и тейк рассчитываются через дневной ATR.
preview
От начального до среднего уровня: Операторы

От начального до среднего уровня: Операторы

В этой статье мы рассмотрим основных операторов. Хотя тема проста для понимания, есть определенные моменты, которые имеют большое значение, когда речь идет о включении математических выражений в формат кода. Без адекватного понимания этих деталей, программисты с небольшим опытом или вообще без него в итоге отказываются от попыток создать собственных решений.
preview
Автоматизация торговых стратегий на MQL5 (Часть 5): Разработка стратегии Adaptive Crossover RSI Trading Suite

Автоматизация торговых стратегий на MQL5 (Часть 5): Разработка стратегии Adaptive Crossover RSI Trading Suite

В этой статье мы разработаем систему Adaptive Crossover RSI Trading Suite, которая использует пересечения скользящих средних с периодами 14 и 50 в качестве сигналов, подтверждаемых фильтром RSI с периодом 14. Система включает в себя фильтр торговых дней, стрелки сигналов с пояснениями и дашборд для мониторинга в реальном времени. Такой подход обеспечивает точность и адаптивность автоматической торговли.
preview
Создание торговой панели администратора на MQL5 (Часть IX): Организация кода (III): Модуль коммуникации

Создание торговой панели администратора на MQL5 (Часть IX): Организация кода (III): Модуль коммуникации

В этой статье мы представим обновленную панель связи и продолжим нашу серию статей о создании новой панели администратора с использованием принципов модуляризации. Мы шаг за шагом разработаем класс CommunicationsDialog, подробно объяснив, как наследовать его от класса Dialog. Кроме того, в процессе разработки мы будем использовать массивы и класс ListView. Присоединяйтесь к обсуждению в комментариях!
preview
Нейросети в трейдинге: Оценка риска по несогласованности представлений (ReGEN-TAD)

Нейросети в трейдинге: Оценка риска по несогласованности представлений (ReGEN-TAD)

Статья раскрывает фреймворк ReGEN-TAD для оценки рыночного риска через несогласованность представлений, объединяющий генеративную проверку (реконструкция и прогноз) и ансамблевый Anomaly Score с факторной интерпретацией. Показана логика согласования параллельных представлений и их расхождений. На практике реализован первый шаг в MQL5 — свёрточный токенизатор, формирующий компактный эмбеддинг окна рынка для последующей диагностики режимов.