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

icon

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

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

Новая статья
последние | лучшие
preview
Разрабатываем мультивалютный советник (Часть 30): От торговой стратегии — к запуску мультивалютного советника

Разрабатываем мультивалютный советник (Часть 30): От торговой стратегии — к запуску мультивалютного советника

Статья показывает полный цикл работы по созданию мультивалютного советника с использованием библиотеки Adwizard для MetaTrader 5: от подготовки окружения для создания проектов оптимизации до получения итоговых мультивалютных советников, объединяющих много экземпляров простой торговой стратегии. Разбираем настройку нужных входных параметров, соглашения об удобных именах файлов и запуск трёх экземпляров итоговых советников на разных торговых счетах с разными параметрами.
preview
Как создать и адаптировать RL-агент с LLM и квантовым кодированием в алгоритмическом трейдинге на MQL5

Как создать и адаптировать RL-агент с LLM и квантовым кодированием в алгоритмическом трейдинге на MQL5

В статье предложен гибридный подход к алгоритмическому трейдингу на основе квантового кодирования рыночных состояний, Double DQN с приоритетным буфером опыта и LLM в роли контекстного советника. Методология SEAL обеспечивает асинхронное дообучение агента без остановки торговли. Легковесный Q-learning фильтр (USE/SKIP/REDUCE) управляет исполнением сигналов на мета-уровне. Приводятся практические детали интеграции системы с торговой платформой MetaTrader 5 и схемы её адаптации к режимным сдвигам рынка.
preview
Создание торговой панели администратора на MQL5 (Часть X): Интерфейс из внешних ресурсов

Создание торговой панели администратора на MQL5 (Часть X): Интерфейс из внешних ресурсов

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

Переосмысливаем классические стратегии (Часть 14): Высоковероятные ситуации

В трейдерском сообществе хорошо известны торговые стратегии с высокой вероятностью успеха, но, к сожалению, они недостаточно четко определены. В этой статье мы попытаемся найти эмпирический и алгоритмический способы точного определения того, что представляет собой ситуация с высокой вероятностью успеха (high probability setup), а также выявить и использовать такие ситуации. Применяя деревья градиентного бустинга (Gradient Boosting Trees), мы продемонстрируем, как читатель может улучшить производительность произвольной торговой стратегии и более четко и понятно донести до компьютера точную задачу, которую необходимо выполнить.
preview
Нейросети в трейдинге: Потоковые модели с остаточной высокочастотной адаптацией (Окончание)

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

Мы завершаем практическую интеграцию ResFlow в MQL5 через объект верхнего уровня CNeuronResFlow. Он объединяет LTR на базе EVA-Flow и HTR, формирует контекст и карты признаков, синхронизирует временные масштабы и реализует прямой и обратный проход с OpenCL. Тестирование на исторических данных EURUSD H1 показало согласованность потоков и выявило риски внутрисделочных просадок. Материал поможет собрать, обучить и проверить модель в MetaTrader 5.
preview
Трейдинг с экономическим календарем MQL5 (Часть 7): Подготовка к тестированию стратегий с анализом новостей

Трейдинг с экономическим календарем MQL5 (Часть 7): Подготовка к тестированию стратегий с анализом новостей

В этой статье мы подготовим нашу торговую систему на MQL5 для тестирования стратегий, используя данные экономического календаря в качестве ресурса для анализа вне реального времени. Мы реализуем загрузку и фильтрацию событий по времени, валюте и значимости, а затем проверим все в тестере стратегий. Так мы сможем тестировать на истории стратегии, работающие по экономическим новостям.
preview
Знакомство с языком MQL5 (Часть 28): Освоение API и функции WebRequest в языке MQL5 (II)

Знакомство с языком MQL5 (Часть 28): Освоение API и функции WebRequest в языке MQL5 (II)

В этой статье вы научитесь получать ценовые данные с внешних платформ с помощью API и функции WebRequest на языке MQL5. Вы узнаете, как структурируются URL, как форматируются ответы API, как преобразовать серверные данные в читаемые строки, а также как находить конкретные значения в ответах JSON и получать их оттуда.
preview
Разработка инструментария для анализа движения цен (Часть 20): Внешние библиотеки (IV) — Correlation Pathfinder

Разработка инструментария для анализа движения цен (Часть 20): Внешние библиотеки (IV) — Correlation Pathfinder

Correlation Pathfinder предлагает новый подход к пониманию динамики валютных пар в рамках серии инструментов для анализа ценового действия. Этот инструмент автоматизирует сбор и анализ данных, предоставляя информацию о взаимодействии таких валютных пар, как EURUSD и GBPUSD. Практическая информация в реальном времени поможет вам более эффективно управлять рисками и выявлять торговые возможности.
preview
Интеграция AI-модели в существующую торговую стратегию на MQL5

Интеграция AI-модели в существующую торговую стратегию на MQL5

Данная статья посвящена интеграции обученной модели искусственного интеллекта (например, модели обучения с подкреплением LSTM или прогностической модели на основе машинного обучения) в существующую торговую стратегию на MQL5.
preview
Нейросети в трейдинге: Потоковые модели с остаточной высокочастотной адаптацией (модуль HTR)

Нейросети в трейдинге: Потоковые модели с остаточной высокочастотной адаптацией (модуль HTR)

Продолжаем работу над реализацией подходов, предложенных авторами фреймворка ResFlow. В статье представлена реализация высокочастотного модуля HTR. В нем контекст и локальная динамика приводятся к сопоставимому виду, проходят рекуррентный блок, а затем формируют согласованное внутреннее представление потока.
preview
Создание торговой панели администратора на MQL5 (Часть IX): Организация кода (V). Класс AnalyticsPanel

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

В этой статье мы рассмотрим, как получать рыночные данные в реальном времени и информацию о торговом счете, выполнять различные вычисления и отображать результаты на настраиваемой панели. Для достижения этой цели мы углубимся в разработку класса AnalyticsPanel, который будет включать в себя все эти функции, в том числе создание панелей. Эта работа является частью нашего продолжающегося расширения советника новой панели администратора (New Admin Panel EA), внедряющей расширенные функции с использованием принципов модульного проектирования и лучших практик организации кода.
preview
Улучшенная оптимизация сталкивающихся тел — Enhanced Colliding Bodies Optimization (ECBO)

Улучшенная оптимизация сталкивающихся тел — Enhanced Colliding Bodies Optimization (ECBO)

В статье рассматривается алгоритм Colliding Bodies Optimization (CBO), основанный на физике одномерных столкновений тел. Базовая версия алгоритма не содержит настраиваемых параметров, что делает её простой. Поэтому за основу реализации была взята расширенная версия ECBO, дополненная памятью столкновений и механизмом кроссовера, что позволило алгоритму показать достойные результаты и занять место в рейтинговой таблице.
preview
Инженерия признаков с Python и MQL5 (Часть IV): Распознавание свечных паттернов с помощью UMAP-регрессии

Инженерия признаков с Python и MQL5 (Часть IV): Распознавание свечных паттернов с помощью UMAP-регрессии

Методы уменьшения размерности широко используются для повышения производительности моделей машинного обучения. Мы рассмотрим относительно новый метод UMAP (Uniform Manifold Approximation and Projection) — приближение и проекция на равномерном многообразии. Эта новая методика разработана специально для решения проблемы артефактов и искажений в данных, которые присущи традиционным методам. UMAP — это эффективный метод уменьшения размерности, который позволяет группировать похожие свечные графики новым способом, снижая вероятность ошибок на данных, не входящих в выборку, и улучшая результаты торговли.
preview
Разработка инструментария для анализа движения цен (Часть 19): ZigZag Analyzer

Разработка инструментария для анализа движения цен (Часть 19): ZigZag Analyzer

Для анализа движения цены вручную трейдры используют линии тренда для подтверждения направления и определения потенциальных уровней разворота или продолжения тренда. В этой серии, где мы разрабатываем инструментарий для анализа движения цен, мы представляем инструмент который строит наклонные трендовые линий для удобного анализа рынка. Он четко обозначает ключевые тренды и уровни, необходимые для эффективной оценки ценового движения.
preview
Искусство ведения логов (Часть 6): Сохранение логов в базу данных

Искусство ведения логов (Часть 6): Сохранение логов в базу данных

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

Нейросети в трейдинге: Потоковые модели с остаточной высокочастотной адаптацией (ResFlow)

Статья знакомит с фреймворком ResFlow, созданным для анализа временной динамики событийных потоков. Фреймворк сочетает низкочастотное моделирование трендов с высокочастотной корректировкой локальных колебаний. Ключевые достоинства — модульность, гибкость интеграции с разными алгоритмами и эффективное повышение временного разрешения без лишней нагрузки на модель.
preview
Создание торговой панели администратора на MQL5 (Часть IX): Организация кода (IV). Класс для панели управления торговлей

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

Обновляем панель управления торговлей (TradeManagementPanel), используемую в нашем советнике New_Admin_Panel. В новой версии будем использовать встроенные классы и получим более удобный интерфейс управления сделками. В частности, добавим кнопки для открытия позиций, а также элементы для управления открытыми сделками и отложенными ордерами. Кроме того, в панели будет встроенная система управления рисками, чтобы устанавливать значения стоп-лосса и тейк-профита непосредственно через ее интерфейс. В целом обновление улучшает организацию самого кода, что важно для таких больших программ, а также упрощает доступ к инструментам управления ордерами — в определенных моментах это будет сделать проще, чем через интерфейс терминала.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 59): Обучение с подкреплением (DDPG) совместно с паттернами скользящей средней и стохастика

Возможности Мастера MQL5, которые вам нужно знать (Часть 59): Обучение с подкреплением (DDPG) совместно с паттернами скользящей средней и стохастика

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

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

В статье реализован событийный фреймворк EVA-Flow на MQL5 с объектом верхнего уровня CNeuronEVAFlow, встроенным в иерархию потоковых нейронов. Показаны подготовка, кодирование, первичное приближение потока и декодирование в режиме реального времени. Тесты на исторических и независимых данных MetaTrader 5 подтвердили контролируемые риски и положительное матожидание, что делает архитектуру пригодной для практического использования в стратегиях.
preview
Нейросети в трейдинге: Асинхронная обработка событий в потоковых моделях (Основные компоненты)

Нейросети в трейдинге: Асинхронная обработка событий в потоковых моделях (Основные компоненты)

В статье рассматривается архитектура фреймворка EVA-Flow, ориентированного на обработку пространственно-временных данных и прогнозирование динамики потоков. Основное внимание уделено SMR-модулю, обеспечивающему устойчивое формирование скрытых состояний, и механизму адаптивной инициализации начального состояния через обучаемые кандидаты.
preview
Алгоритм сверчков — Cricket Algorithm (CA)

Алгоритм сверчков — Cricket Algorithm (CA)

В статье рассматривается алгоритм сверчков (Cricket Algorithm) - метаэвристический метод оптимизации, объединяющий элементы алгоритмов летучих мышей и светлячков с физическими законами распространения звука в атмосфере. Алгоритм моделирует поведение сверчков, ориентирующихся на стрекотание сородичей, используя закон Долбира и формулы акустики для управления поиском оптимальных решений.
preview
Нейросети в трейдинге: Асинхронная обработка событий в потоковых моделях (EVA-Flow)

Нейросети в трейдинге: Асинхронная обработка событий в потоковых моделях (EVA-Flow)

В статье знакомимся с фреймворком EVA-Flow для низколатентной и высокочастотной оценки оптического потока на основе событийных данных. Модель сочетает адаптивное представление потока через Unified Voxel Grid с пространственно-временной рекуррентной архитектурой SMR, обеспечивая стабильное и точное прогнозирование движения в режиме реального времени.
preview
Забытая классика объёма: индикатор "Finite Volume Elements" для современных рынков

Забытая классика объёма: индикатор "Finite Volume Elements" для современных рынков

В статье рассмотрим индикатор Finite Volume Elements (FVE), позволяющий выявлять истинные потоки капитала на рынке. Реализуем FVE для MetaTrader 5 и рассмотрим рекомендации по его использованию в торговле.
preview
Внедряем систему непрерывной адаптации LLM для алгоритмического трейдинга

Внедряем систему непрерывной адаптации LLM для алгоритмического трейдинга

SEAL (Self-Evolving Adaptive Learning) — система непрерывной адаптации LLM для алгоритмического трейдинга, решающая проблему быстрой деградации моделей на меняющихся рынках. Вместо периодического переобучения, которое занимает часы и стирает старые паттерны, SEAL учится на каждой закрытой сделке, сохраняя приоритетную память важных примеров и автоматически запуская инкрементальный файнтьюнинг при падении точности или смене рыночного режима.
preview
Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (Окончание)

Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (Окончание)

В статье представлена адаптация фреймворка P-SSE для задач анализа финансовых рынков. Реализованные решения обеспечивают последовательную обработку локальных событий, аккумулируя их в согласованное представление рыночной динамики. Подход позволяет прогнозировать изменения рынка на заданный горизонт планирования, сохраняя высокую чувствительность к микроимпульсам и минимизируя вычислительные затраты.
preview
Эко-эволюционный алгоритм — Eco-inspired Evolutionary Algorithm (ECO)

Эко-эволюционный алгоритм — Eco-inspired Evolutionary Algorithm (ECO)

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 58): Обучение с подкреплением (DDPG) совместно с паттернами скользящей средней и стохастика

Скользящая средняя и стохастический осциллятор — очень распространенные индикаторы, совместные паттерны которых мы исследовали в предыдущей статье с помощью сети обучения с учителем, чтобы понять, какие из них работают. В этой статье мы сделаем следующий шаг, рассмотрев влияние обучения с подкреплением, используемого с обученной нейронной сетью, на производительность. Наши испытания проводились в течение очень ограниченного промежутка времени. Тем не менее, мы продолжим использовать возможности, предоставляемые Мастером MQL5.
preview
Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (модуль E-TROF)

Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (модуль E-TROF)

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

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

В статье рассматривается оптимизация уровней и периодов RSI для получения более эффективных торговых сигналов. Будут представлены методы оценки оптимальных значений RSI и автоматизации выбора периода с использованием поиска по сетке и статистических моделей. Наконец, мы реализуем решение на языке MQL5, используя Python для анализа. Наш подход прагматичен, прост и направлен на то, чтобы с легкостью решать потенциально сложные проблемы.
preview
Знакомство с языком MQL5 (Часть 27): Освоение API и функции WebRequest в языке MQL5

Знакомство с языком MQL5 (Часть 27): Освоение API и функции WebRequest в языке MQL5

В этой статье рассматривается, как использовать функцию WebRequest() и API в языке MQL5 для взаимодействия с внешними платформами. Вы узнаете, как создать Telegram-бота, получать идентификаторы чатов и групп, а также отправлять, редактировать и удалять сообщения непосредственно из MetaTrader 5, и тем самым заложите прочный фундамент для интеграции API в ваши будущие проекты на языке MQL5.
preview
От новичка до эксперта: Алгоритмическая дисциплина трейдера — советник Risk Enforcer вместо эмоций

От новичка до эксперта: Алгоритмическая дисциплина трейдера — советник Risk Enforcer вместо эмоций

Для многих трейдеров разрыв между знанием правил управления рисками и последовательным их соблюдением приводит к гибели счетов. Эмоциональное подавление, торговля с целью отыграться и простая оплошность могут разрушить даже самую лучшую стратегию. Сегодня мы превратим платформу MetaTrader 5 в надежного исполнителя ваших торговых правил, разработав советник по управлению рисками под названием Risk Enforcement Expert Advisor. Присоединяйтесь к этой дискуссии, чтобы узнать больше.
preview
Реализация механизма безубыточности в MQL5 (Часть 2): Безубыток на основе ATR и RRR

Реализация механизма безубыточности в MQL5 (Часть 2): Безубыток на основе ATR и RRR

В данной статье завершается реализация механизмов безубыточности на основе ATR и RRR в MQL5, а также с нуля разрабатывается класс, позволяющий легко изменять режим безубытка без необходимости повторного ввода параметров. Для оценки эффективности каждого типа безубытка выполняется несколько бэктестов, в рамках которых анализируются их преимущества и недостатки в контексте алгоритмического трейдинга.
preview
Как торговать Fair Value Gaps: правила формирования, сценарии отработки и автоторговля с помощью прерывателей и сдвигов структуры рынка

Как торговать Fair Value Gaps: правила формирования, сценарии отработки и автоторговля с помощью прерывателей и сдвигов структуры рынка

Это статья, написанная мной с целью объяснить разрывы реальной стоимости (Fair Value Gaps), логику их формирования и повяления, а также автоматическую торговлю с помощью прерывателей и сдвигов структуры рынка.
preview
Математика волатильности: Почему индикатор GRI достоин возвращения в ваш торговый терминал

Математика волатильности: Почему индикатор GRI достоин возвращения в ваш торговый терминал

Статья посвящена индикатору Gopalakrishnan Range Index (GRI/ROCI), который количественно оценивает "хаотичность" рынка через логарифм диапазона цен закрытия за заданный период. Показано, как реализовать GRI в MetaTrader 5, устранить проблему отрицательных значений с помощью сдвинутого логарифма и привести шкалу к удобным "пунктам" через нормировку на Point. Далее рассматриваются практические сценарии применения GRI как фильтра волатильности и рыночных фаз.
preview
Алгоритм поисковой оптимизации Эбола — Ebola Optimization Search Algorithm (EOSA)

Алгоритм поисковой оптимизации Эбола — Ebola Optimization Search Algorithm (EOSA)

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

Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (Основные компоненты)

В данной статье представлен практический подход к адаптации современного фреймворка для анализа финансовых потоков средствами MQL5. Рассмотрены ключевые компоненты модели — Depth-Wise свёртки с остаточными связями, конусные Super Kernel Block и модуль глобальной агрегации движения (GMA).
preview
Машинное обучение и Data Science (Часть 35): NumPy в MQL5 – искусство создания сложных алгоритмов с меньшим объемом кода

Машинное обучение и Data Science (Часть 35): NumPy в MQL5 – искусство создания сложных алгоритмов с меньшим объемом кода

Библиотека NumPy лежит в основе практически всех алгоритмов машинного обучения на языке программирования Python. В этой статье мы собираемся реализовать аналогичный модуль, содержащий набор всего сложного кода, который поможет нам создавать сложные модели и алгоритмы любого типа.
preview
Знакомство с языком MQL5 (Часть 26): Советник по зонам поддержки/сопротивления — выявление, проверка пробоя и вход

Знакомство с языком MQL5 (Часть 26): Советник по зонам поддержки/сопротивления — выявление, проверка пробоя и вход

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

От новичка до эксперта: Торговля по RSI с учетом структуры рынка

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

Нейросети в трейдинге: Возмущённые модели пространства состояний для анализа рыночной динамики (Энкодер)

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