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

icon

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

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

Новая статья
последние | лучшие
preview
Разработка инструментария для анализа Price Action (Часть 26): Инструмент для работы с несколькими паттернами – пин-баром, паттернами поглощения и дивергенцией RSI

Разработка инструментария для анализа Price Action (Часть 26): Инструмент для работы с несколькими паттернами – пин-баром, паттернами поглощения и дивергенцией RSI

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

Нейросети в трейдинге: Инъекция глобальной информации в независимые каналы (InjectTST)

Большинство современных методов прогнозирования мультимодальных временных рядов используют подход независимых каналов. Тем самым игнорируется природная зависимость различных каналов одного временного ряда. Разумное использование 2 подходов (независимых и смешанных каналов) является ключом к повышению эффективности моделей.
preview
Алгоритм Большого взрыва и Большого сжатия — BBBC (Big Bang - Big Crunch)

Алгоритм Большого взрыва и Большого сжатия — BBBC (Big Bang - Big Crunch)

В статье представлен метод Big Bang - Big Crunch, который имеет две ключевые фазы: циклическое создание случайных точек и их сжатие к оптимальному решению. Этот подход сочетает исследование и уточнение, позволяя постепенно находить лучшие решения и открывая новые возможности в области оптимизации.
preview
Теория категорий в MQL5 (Часть 20): Самовнимание и трансформер

Теория категорий в MQL5 (Часть 20): Самовнимание и трансформер

Немного отвлечемся от наших постоянных тем и рассмотрим часть алгоритма ChatGPT. Есть ли у него какие-то сходства или понятия, заимствованные из естественных преобразований? Попытаемся ответить на эти и другие вопросы, используя наш код в формате класса сигнала.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 38): Полосы Боллинджера

Возможности Мастера MQL5, которые вам нужно знать (Часть 38): Полосы Боллинджера

Полосы Боллинджера — очень распространенный индикатор конвертов, используемый многими трейдерами для ручного размещения и закрытия сделок. Мы изучим этот индикатор, рассмотрев как можно больше различных сигналов, которые он генерирует, и посмотрим, как их можно использовать в советнике, собранном с помощью Мастера.
preview
Алгоритм искусственных водорослей — Artificial Algae Algorithm (AAA)

Алгоритм искусственных водорослей — Artificial Algae Algorithm (AAA)

В данной статье рассматривается алгоритм искусственных водорослей (AAA), разработанный на основе биологических процессов, характерных для микроводорослей. Алгоритм включает спиральное движение, эволюционный процесс и адаптацию, что позволяет ему решать задачи оптимизации. Статья предлагает глубокий анализ принципов работы AAA и его потенциала в математическом моделировании, подчеркивая связь между природой и алгоритмическими решениями.
preview
Компоненты View и Controller для таблиц в парадигме MVC на MQL5: Простые элементы управления

Компоненты View и Controller для таблиц в парадигме MVC на MQL5: Простые элементы управления

В статье рассмотрены простые элементы управления как составляющие части более сложных графических элементов компонента View в рамках реализации таблиц в парадигме MVC (Model-View-Controller). Реализован базовый функционал компонента Controller для интерактивного взаимодействия элементов с пользователем и друг с другом. Это вторая статья, посвященная компоненту View, и четвёртая в серии статей о создании таблиц для клиентского терминала MetaTrader 5.
preview
Компоненты View и Controller для таблиц в парадигме MVC на MQL5: Контейнеры

Компоненты View и Controller для таблиц в парадигме MVC на MQL5: Контейнеры

В статье рассмотрим создание элемента управления "Контейнер" с возможностью прокрутки его содержимого. В процессе будут доработаны уже готовые классы элементов управления графической библиотеки.
preview
Знакомство с языком MQL5 (Часть 23): Автоматизация торговли на пробое диапазона открытия рынка

Знакомство с языком MQL5 (Часть 23): Автоматизация торговли на пробое диапазона открытия рынка

В этой статье рассматривается, как создать советник для торговли по стратегии пробоя диапазона открытия (Opening Range Breakout, ORB) на языке MQL5. В статье объясняется, как советник идентифицирует пробои из диапазона открытия рынка и открывает соответствующие сделки. Вы также научитесь контролировать количество открытых позиций и устанавливать конкретное время прекращения для автоматической остановки торговли.
preview
Наиболее известные модификации алгоритма искусственного кооперативного поиска (Artificial Cooperative Search, ACSm)

Наиболее известные модификации алгоритма искусственного кооперативного поиска (Artificial Cooperative Search, ACSm)

В данной статье рассмотрим эволюцию алгоритма ACS: три модификации в направлении улучшения характеристик сходимости и результативности алгоритма. Трансформация одного из ведущих алгоритмов оптимизации. От модификаций матриц до революционных подходов к формированию популяций.
preview
Алгоритм анархической социальной оптимизации — Anarchic Society Optimization (ASO)

Алгоритм анархической социальной оптимизации — Anarchic Society Optimization (ASO)

В очередной статье мы познакомимся с алгоритмом Anarchic Society Optimization (ASO) и обсудим, как алгоритм, основанный на иррациональном и авантюрном поведении участников анархического общества - аномальной системы социального взаимодействия, свободной от централизованной власти и различного рода иерархий способен исследовать пространство решений и избегать ловушек локального оптимума. В статье будет представлена унифицированная структура ASO, применимая как к непрерывным, так и к дискретным задачам.
preview
Применение L1-фильтрации тренда в MetaTrader 5

Применение L1-фильтрации тренда в MetaTrader 5

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

Разработка советника для мониторинга точек входа в свинг-сделки

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

Нейросети в трейдинге: Сквозная многомерная модель прогнозирования временных рядов (GinAR)

Предлагаем познакомиться с инновационным подходом к прогнозированию временных рядов с пропущенными данными на базе фреймворка GinAR. В статье показана реализация ключевых компонентов на OpenCL, что обеспечивает высокую производительность. В следующей публикации мы подробно рассмотрим интеграцию этих решений в MQL5. Это позволит понять, как применять метод на практике в трейдинге.
preview
Разработка системы репликации (Часть 33): Система ордеров (II)

Разработка системы репликации (Часть 33): Система ордеров (II)

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 36): Q-обучение с цепями Маркова

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

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

Приглашаем вас познакомиться с фреймворком K²VAE и вариантом интеграции предложенных подходов в торговую систему. Вы узнаете, как гибридный подход Koopman–Kalman–VAE помогает строить адаптивные и интерпретируемые модели. А в завершении статьи представлены практические результаты использования реализованных решений.
preview
Нейросети в трейдинге: Устойчивые торговые сигналы в любых режимах рынка (Окончание)

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

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

Разработка пробойной торговой системы на основе волатильности

Пробойная система на основе волатильности определяет рыночные диапазоны, а затем совершает сделки, когда цена пробивает эти уровни вверх или вниз, с учетом таких показателей волатильности, как ATR. Такой подход помогает выявлять сильные направленные движения.
preview
Построение модели для ограничения диапазона сигналов по тренду (Часть 9): Советник с несколькими стратегиями (III)

Построение модели для ограничения диапазона сигналов по тренду (Часть 9): Советник с несколькими стратегиями (III)

Добро пожаловать в третью часть серии статьей о трендах! Сегодня мы углубимся в использование дивергенции как стратегии определения оптимальных точек входа в рамках преобладающего дневного тренда. Мы также представим специальный механизм фиксации прибыли, аналогичный скользящему стоп-лоссу, но с уникальными усовершенствованиями. Кроме того, мы обновим советник Trend Constraint до более продвинутой версии, включив в него новое условие исполнения сделки в дополнение к существующим. Также мы продолжим изучать практическое применение MQL5 в разработке алгоритмов.
preview
Нейросети в трейдинге: Эффективное извлечение признаков для точной классификации (Mantis)

Нейросети в трейдинге: Эффективное извлечение признаков для точной классификации (Mantis)

Познакомьтесь с Mantis — лёгкой фундаментальной моделью для классификации временных рядов на базе Transformer с контрастным предварительным обучением и гибридным вниманием, обеспечивающими рекордную точность и масштабируемость.
preview
Нейросети в трейдинге: Эффективное извлечение признаков для точной классификации (Построение объектов)

Нейросети в трейдинге: Эффективное извлечение признаков для точной классификации (Построение объектов)

Mantis — универсальный инструмент для глубокого анализа временных рядов, гибко масштабируемый под любые финансовые сценарии. Узнайте, как сочетание патчинга, локальных свёрток и кросс-внимания позволяет получить высокоточную интерпретацию рыночных паттернов.
preview
Знакомство с языком MQL5 (Часть 21): Автоматическое обнаружение паттернов Гартли

Знакомство с языком MQL5 (Часть 21): Автоматическое обнаружение паттернов Гартли

Узнайте, как обнаружить и отобразить гармонический паттерн Гартли в MetaTrader 5 с использованием языка MQL5. В этой статье объясняется каждый шаг данного процесса: от выявления точек свинга до применения коэффициентов Фибоначчи и графического построения паттерна на графике целиком для четкого визуального подтверждения.
preview
Комбинаторно-симметричная перекрестная проверка в MQL5

Комбинаторно-симметричная перекрестная проверка в MQL5

В статье показана реализация комбинаторно-симметричной перекрестной проверки на чистом MQL5 для измерения степени подгонки после оптимизации стратегии с использованием медленного полного алгоритма тестера стратегий.
preview
Построение модели для ограничения диапазона сигналов по тренду (Часть 8): Разработка советника (I)

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

В этой статье мы разработаем наш первый советник на MQL5 на основе индикатора, который мы создали в предыдущей статье. Мы рассмотрим все функции, необходимые для автоматизации процесса, включая управление рисками. Это позволит перейти от ручного выполнения сделок к автоматизированным системам.
preview
Критерий независимости Гильберта-Шмидта (HSIC)

Критерий независимости Гильберта-Шмидта (HSIC)

В статье рассматривается непараметрический статистический тест HSIC (Hilbert-Schmidt Independence Criterion) предназначенный для выявления линейных и нелинейных зависимостей в данных. Предложены реализации двух алгоритмов вычисления HSIC на языке MQL5: точного перестановочного теста и гамма-аппроксимации. Эффективность метода демонстрируется на синтетических данных, моделирующих нелинейную связь признаков и целевой переменной.
preview
Форекс советник на нейросети N-BEATS Network

Форекс советник на нейросети N-BEATS Network

Реализация архитектуры N-BEATS для форекс-трейдинга в MetaTrader 5 с квантильным прогнозированием и адаптивным риск-менеджментом. Архитектура адаптирована через билинейную нормализацию и специализированные функции потерь для финансовых данных. Тестирование на данных 2025 года показало неспособность генерировать прибыль, подтверждая разрыв между теоретическими достижениями и практической торговой эффективностью.
preview
Алгоритм искусственного орошения — Artificial Showering Algorithm (ASHA)

Алгоритм искусственного орошения — Artificial Showering Algorithm (ASHA)

В статье представлен Алгоритм Искусственного Орошения (ASHA) – новый метаэвристический метод, разработанный для решения общих задач оптимизации. Основанный на моделировании процессов потоков и накопления воды, этот алгоритм выстраивает концепцию идеального поля, в котором каждая единица ресурса (вода) вызывается для поиска оптимального решения. Узнайте, как ASHA адаптирует принципы потока и накопления для эффективного распределения ресурсов в условиях поискового пространства, а также познакомьтесь с его реализацией и итогами тестирования.
preview
Пользовательские символы MQL5: Создаем символ 3D-баров

Пользовательские символы MQL5: Создаем символ 3D-баров

В данной статье представлено детальное руководство по созданию инновационного индикатора 3DBarCustomSymbol.mq5, который генерирует пользовательские символы в MetaTrader 5, объединяющие цену, время, объем и волатильность в единое трехмерное представление. Рассматриваются математические основы, архитектура системы, практические аспекты реализации и применения в торговых стратегиях.
preview
Нейронная сеть на практике: Псевдообратная (II)

Нейронная сеть на практике: Псевдообратная (II)

Поскольку эти статьи имеют образовательную цель и не направлены на то, чтобы показать реализацию конкретной функциональности, в данной статье мы поступим немного иначе. Вместо того, чтобы показывать, как применять факторизацию для получения обратной матрицы, мы сосредоточимся на факторизации псевдообратной. Причина заключается в том, что нет смысла показывать, как можно получить общий коэффициент, если мы можем сделать это особым способом. А еще лучше, если читатель сможет глубже понять, почему всё происходит именно так. Давайте теперь разберемся, почему со временем аппаратное обеспечение приходит на смену программному.
preview
Алгоритм арифметической оптимизации (AOA): Путь от AOA к SOA (Simple Optimization Algorithm)

Алгоритм арифметической оптимизации (AOA): Путь от AOA к SOA (Simple Optimization Algorithm)

В данной статье мы представляем алгоритм арифметической оптимизации (Arithmetic Optimization Algorithm, AOA), который основывается на простых арифметических операциях: сложении, вычитании, умножении и делении. Эти базовые математические действия служат основой для поиска оптимальных решений в различных задачах.
preview
Алгоритм оптимизации Ройял Флеш —  Royal Flush Optimization (RFO)

Алгоритм оптимизации Ройял Флеш — Royal Flush Optimization (RFO)

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

Нейросети в трейдинге: Прогнозирование временных рядов при помощи адаптивного модального разложения (ACEFormer)

Предлагаем познакомиться с архитектурой ACEFormer — современным решением, сочетающим эффективность вероятностного внимания и адаптивное разложение временных рядов. Материал будет полезен тем, кто ищет баланс между вычислительной производительностью и точностью прогноза на финансовых рынках.
preview
Разработка системы репликации - Моделирование рынка (Часть 13): Появление СИМУЛЯТОРА (III)

Разработка системы репликации - Моделирование рынка (Часть 13): Появление СИМУЛЯТОРА (III)

Здесь мы немного упростим несколько элементов, связанных с работой в следующей статье. Я также объясню, как можно визуализировать то, что генерирует симулятор с точки зрения случайности.
preview
Самооптимизирующийся советник на языках MQL5 и Python (Часть IV): Стекинг моделей

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

В статье мы продемонстрируем, как можно создавать торговые приложения на базе ИИ, способные учиться на собственных ошибках. Мы рассмотрим технику, известную как стекинг (stacking), при которой мы используем 2 модели для создания 1 прогноза. Первая модель, как правило, является более слабым обучающимся алгоритмом, а вторая - более мощной моделью, которая обучается на результатах более слабого алгоритма. Наша цель — создать ансамбль моделей, чтобы достичь более высокой точности.
preview
Символьное уравнение прогнозирования цены с использованием SymPy

Символьное уравнение прогнозирования цены с использованием SymPy

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 16): Метод главных компонент с собственными векторами

В статье рассматривается метод главных компонент — метод снижения размерности при анализе данных, а также то, как его можно реализовать с использованием собственных значений и векторов. Как всегда, мы попытаемся разработать прототип класса сигналов советника, который можно будет использовать в Мастере MQL5.
preview
Нейросети в трейдинге: Фреймворк кросс-доменного прогнозирования временных рядов (TimeFound)

Нейросети в трейдинге: Фреймворк кросс-доменного прогнозирования временных рядов (TimeFound)

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

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

В этой статье мы подробно рассматриваем алгоритмы реализации ключевых компонентов фреймворка HimNet. Демонстрируем, как при минимальном числе обучаемых компонентов достигается высокая согласованность и управляемость всей системы. Представленная реализация отличается компактностью и прозрачностью, что облегчает её адаптацию к реальным рыночным задачам.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 17): Мультивалютная торговля

Возможности Мастера MQL5, которые вам нужно знать (Часть 17): Мультивалютная торговля

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