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

icon

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

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

Новая статья
последние | лучшие
preview
Нейросети в трейдинге: Иерархический векторный Transformer (Окончание)

Нейросети в трейдинге: Иерархический векторный Transformer (Окончание)

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

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

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

Упрощаем торговлю на новостях (Часть 4): Повышаем производительность

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

Создание пользовательской системы определения рыночного режима на языке MQL5 (Часть 1): Индикатор

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

Теория категорий в MQL5 (Часть 21): Естественные преобразования с помощью LDA

Эта статья, 21-я в нашей серии, продолжает рассмотрение естественных преобразований и того, как их можно реализовать с помощью линейного дискриминантного анализа. Как и в предыдущей статье, реализация представлена в формате класса сигнала.
preview
От новичка до эксперта: Индикатор Market Periods Synchronizer

От новичка до эксперта: Индикатор Market Periods Synchronizer

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

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

Предлагаем погрузиться в захватывающий мир LightGTS — лёгкого, но мощного фреймворка для прогноза временных рядов, где адаптивная свёртка и RoPE‑кодирование сочетаются с инновационным методами внимания. В нашей статье вы найдёте детальное описание всех компонентов — от создания патчей до сложной смеси экспертов в декодере, готовых к интеграции в MQL5‑проекты. Откройте для себя, как LightGTS выводит автоматическую торговлю на новый уровень!
preview
Тенденции и традиции: Использование функций Радемахера в трейдинге

Тенденции и традиции: Использование функций Радемахера в трейдинге

Несмотря на то, что функции, о которых пойдет речь, известны уже довольно давно, их применение в области трейдинга до сих пор остается terra incognita. В этой статье мы рассмотрим некоторые возможности, которые эти новые старые функции открывают для разработки торговых стратегий, и оценим их потенциал.
preview
Алгоритм хаотической оптимизации — Chaos optimization algorithm (COA): Продолжение

Алгоритм хаотической оптимизации — Chaos optimization algorithm (COA): Продолжение

Продолжение исследования алгоритма хаотической оптимизации. Вторая часть статьи посвящена практическим аспектам реализации алгоритма, его тестированию и выводам.
preview
Разработка системы репликации (Часть 36): Внесение корректировок (II)

Разработка системы репликации (Часть 36): Внесение корректировок (II)

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

Теория графов: Алгоритм Дейкстры в трейдинге

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

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

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

Создание торговой панели администратора на MQL5 (Часть V): Двухфакторная аутентификация (2FA)

В статье рассмотрено повышение безопасности панели торгового администратора, которая в настоящее время находится в разработке. Мы рассмотрим, как внедрить MQL5 в новую стратегию безопасности, интегрировав API Telegram для двухфакторной аутентификации (2FA). Статья предоставит ценную информацию о применении MQL5 для усиления мер безопасности. Кроме того, мы рассмотрим функцию MathRand, сосредоточившись на ее функциональности и на том, как ее можно эффективно использовать в нашей системе безопасности.
preview
WebSocket для MetaTrader 5 — Асинхронные клиентские соединения с помощью Windows API

WebSocket для MetaTrader 5 — Асинхронные клиентские соединения с помощью Windows API

В данной статье подробно описывается разработка пользовательской динамически подключаемой библиотеки, предназначенной для упрощения асинхронных клиентских соединений по протоколу WebSocket для программ MetaTrader.
preview
Алгоритм эволюционного путешествия во времени — Time Evolution Travel Algorithm (TETA)

Алгоритм эволюционного путешествия во времени — Time Evolution Travel Algorithm (TETA)

Мой авторский алгоритм. В этой статье представлен Алгоритм Эволюционного Путешествия во Времени (TETA), вдохновлённый концепцией параллельных вселенных и потоков времени. Основная идея алгоритма заключается в том, что, хотя путешествие во времени в привычном понимании невозможно, мы можем выбирать последовательность событий, которые приводят к различным реальностям.
preview
Автоматизация торговых стратегий на MQL5 (Часть 11): Разработка многоуровневой системы сеточной торговли

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

В настоящей статье мы разрабатываем советник многоуровневой системы сеточной торговли с использованием MQL5, уделяя особое внимание архитектуре и алгоритмам, лежащим в основе стратегий сеточной торговли. Мы изучим внедрение многоуровневой сетевой логики и методов управления рисками для работы в изменяющихся рыночных условиях. Наконец, приведём подробные объяснения и практические советы, которые помогут вам в создании, тестировании и совершенствовании автоматической торговой системы.
preview
Машинное обучение и Data Science (Часть 35): NumPy в MQL5 – искусство создания сложных алгоритмов с меньшим объемом кода

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

Библиотека NumPy лежит в основе практически всех алгоритмов машинного обучения на языке программирования Python. В этой статье мы собираемся реализовать аналогичный модуль, содержащий набор всего сложного кода, который поможет нам создавать сложные модели и алгоритмы любого типа.
preview
Алгоритм оптимизации одуванчика — Dandelion Optimizer (DO)

Алгоритм оптимизации одуванчика — Dandelion Optimizer (DO)

Алгоритм оптимизации одуванчика DO превращает простой полёт семени по ветру в стратегию математического поиска. Три фазы - вихревой подъём, дрейф к центру популяции и приземление по траектории Леви - формируют изящную метафору, которая на практике показывает интересные результаты.
preview
Майнинг данных CFTC на Python и ИИ модель на их основе

Майнинг данных CFTC на Python и ИИ модель на их основе

Попробуем смайнить даные CFTC, загрузить отчеты COT и TFF через Python, соединить это с котировками MetaTrader 5 и моделью ИИ и получить прогнозы. Что такое отчеты COT на рынке Форекс? Как использовать отчеты COT и TFF для прогнозирования?
preview
Нейросети в трейдинге: Интеллектуальный конвейер прогнозов (Разреженная смесь экспертов)

Нейросети в трейдинге: Интеллектуальный конвейер прогнозов (Разреженная смесь экспертов)

Предлагаем познакомиться с практической реализацией блока разреженной смеси экспертов для временных рядов в вычислительной среде OpenCL. В статье шаг за шагом разбирается работа маскированной многооконной свёртки, а также организация градиентного обучения в условиях множественных информационных потоков.
preview
Разработка системы репликации (Часть 29): Проект советника — класс C_Mouse (III)

Разработка системы репликации (Часть 29): Проект советника — класс C_Mouse (III)

После улучшения класса C_Mouse, мы можем сосредоточиться на создании класса, призванного создать совершенно новую основу для обучения. Как уже упоминалось в начале статьи, мы не будем использовать наследование или полиморфизм для создания этого нового класса. Вместо этого мы изменим, а точнее, добавим новые объекты в ценовую линию. Именно этим мы и займемся в данный момент, а в следующей статье мы рассмотрим, как изменить исследования. Но мы сделаем всё это, не меняя код класса C_Mouse. Признаюсь, на практике было бы легче достичь этого с помощью наследования или полиморфизма. однако существуют и другие методы достижения такого же результата.
preview
Моделирование рынка (Часть 06): Перенос данных из MetaTrader 5 в Excel

Моделирование рынка (Часть 06): Перенос данных из MetaTrader 5 в Excel

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

Торговый инструментарий MQL5 (Часть 8): Внедрение и использование EX5-библиотеки для управления историей в коде

В заключительной статье этой серии вы узнаете, как легко импортировать и применять EX5-библиотеку для управления историей (History Manager) в исходном коде MQL5 для обработки истории сделок в вашем аккаунте MetaTrader 5. С помощью простых вызовов функций в MQL5, занимающих всего одну строку кода, вы сможете эффективно управлять своими торговыми данными и анализировать их. Кроме того, вы научитесь создавать различные скрипты для анализа истории сделок и разрабатывать советник на основе ценовых показателей в качестве практических примеров использования. Используемый в качестве примера советник применяет данные о ценах и библиотеку History Manager EX5 для принятия обоснованных торговых решений, корректировки объемов сделок и реализации стратегий восстановления на основе ранее закрытых сделок.
preview
Алгоритм биржевого рынка — Exchange Market Algorithm (EMA)

Алгоритм биржевого рынка — Exchange Market Algorithm (EMA)

Статья посвящена подробному анализу алгоритма Exchange Market Algorithm (EMA), который вдохновлен поведением трейдеров на фондовом рынке. Алгоритм моделирует процесс торговли акциями, где участники рынка с разным уровнем успеха применяют различные стратегии для максимизации прибыли.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 52): Осциллятор Accelerator

Возможности Мастера MQL5, которые вам нужно знать (Часть 52): Осциллятор Accelerator

Осциллятор ускорения (Accelerator Oscillator) — еще один индикатор Билла Вильямса, который отслеживает ускорение ценового импульса, а не только его темп. Хотя он во многом похож на осциллятор Awesome, который мы рассматривали в недавней статье, он стремится избежать эффектов запаздывания, концентрируясь на ускорении, а не только на скорости. Мы, как обычно, рассмотрим паттерны индикатора, а также их значение в торговле с помощью советника, собранного в Мастере.
preview
Нейросети в трейдинге: Двухмерные модели пространства связей (Chimera)

Нейросети в трейдинге: Двухмерные модели пространства связей (Chimera)

Откройте для себя инновационный фреймворк Chimera — двухмерную модель пространства состояний, использующую нейросети для анализа многомерных временных рядов. Этот метод предлагает высокую точность с низкими вычислительными затратами, превосходя традиционные подходы и архитектуры Transformer.
preview
Как подключить LLM к советнику MQL5 через Python-сервер

Как подключить LLM к советнику MQL5 через Python-сервер

В статье разобраны три ключевые преграды интеграции LLM с MetaTrader 5: отсутствие прямого доступа, жёсткие rate limits и безопасность API‑ключей при архитектурных ограничениях MQL5. Предложена схема с локальным Python‑сервером как мостом между советником и OpenRouter. Рассматриваются WebSocket и fallback на TCP, хранение ключа на сервере, пакетная обработка нескольких символов и формирование технического промпта. Читатель получит готовую архитектуру, снижающую задержки и издержки.
preview
Алгоритм оптимизации сновидениями — Dream Optimization Algorithm (DOA)

Алгоритм оптимизации сновидениями — Dream Optimization Algorithm (DOA)

Популяционный алгоритм оптимизации, вдохновленный спорным и малоизученным феноменом — механизмом человеческих сновидений. Группы агентов с разной "памятью", косинусоидальная модуляция движения и необычное распределение фаз 99/1 — узнайте, как эти особенности влияют на эффективность оптимизации ваших торговых стратегий.
preview
Нейронная сеть на практике: Псевдообратная (I)

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

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

Разработка советника для анализа новостных событий о пробоях на основе календаря на MQL5

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

Событийная архитектура в MQL5: как превратить советник в полноценную торговую систему

Статья посвящена событийной архитектуре в MQL5 и описывает переход от монолитной модели OnTick к распределённой обработке. Разбираются предопределённые и пользовательские события, сервисы и обмен сообщениями между программами, а также типовые архитектурные ошибки. На практическом примере показано, как организовать взаимодействие индикаторов и советника, чтобы снизить нагрузку, повысить читаемость и упростить сопровождение.
preview
Оптимизация и тонкая настройка исходного кода для улучшения результатов тестирования на истории

Оптимизация и тонкая настройка исходного кода для улучшения результатов тестирования на истории

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

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

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

Автоматизация торговых стратегий на MQL5 (Часть 24): Система торговли на пробое лондонской сессии с риск-менеджментом и трейлинг-стопами

В этой статье мы разработаем систему анализа пробоев на Лондонской сессии, которая будет определять пробои диапазона перед открытием сессии и выставлять отложенные ордера с настройкой типа сделок и параметров риска. Мы реализуем в системе трейлинг-стоп, соотношение риска и прибыли, контроль максимальной просадки, а также панель управления для мониторинга в режиме реального времени.
preview
Торговые инструменты на MQL5 (Часть 15): Эффекты размытия canvas, рендеринг теней и плавная прокрутка колесом мыши

Торговые инструменты на MQL5 (Часть 15): Эффекты размытия canvas, рендеринг теней и плавная прокрутка колесом мыши

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

Нейросети в трейдинге: Иерархический двухбашенный трансформер (Hidformer)

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

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

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

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

Представляем вашему вниманию завершающий этап реализации и тестирования фреймворка TQNet, в котором теория встречается с реальной торговой практикой. Мы пройдём путь от исторического обучения до стресс-теста на свежих рыночных данных, оценивая устойчивость и точность модели. Итоговые результаты — это не только сухие цифры, но и наглядная демонстрация прикладной ценности предложенного подхода.
preview
Пример сетевого анализа причинно-следственных связей (CNA) и модели векторной авторегресси для прогнозирования рыночных событий

Пример сетевого анализа причинно-следственных связей (CNA) и модели векторной авторегресси для прогнозирования рыночных событий

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

Нейросимвольные системы в алготрейдинге: Объединение символьных правил и нейронных сетей

Статья рассказывает об опыте разработки гибридной торговой системы, объединяющей классический технический анализ с нейронными сетями. Автор подробно разбирает архитектуру системы — от базового анализа паттернов и структуры нейросети до механизмов принятия торговых решений, делясь реальным кодом и практическими наблюдениями.