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

icon

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

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

Новая статья
последние | лучшие
preview
Разработка системы репликации - Моделирование рынка (Часть 18):  Тики и еще больше тиков (II)

Разработка системы репликации - Моделирование рынка (Часть 18): Тики и еще больше тиков (II)

В данном случае предельно ясно, что метрики очень далеки от идеального времени создания 1-минутного бара. Так что это первое, что мы действительно исправим. Исправить проблему синхронизации не сложно. Каким бы невероятным это ни казалось, на самом деле всё довольно просто. Однако мы не внесли исправление в предыдущую статью, потому что целью было объяснить, как перенести в окно Обзора рынка тиковые данные, которые использовались для создания 1-минутных баров на графике.
preview
Как построить советник, работающий автоматически (Часть 11): Автоматизация (III)

Как построить советник, работающий автоматически (Часть 11): Автоматизация (III)

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

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

Предлагаем вниманию читателя реализацию подходов фреймворка SpikingBrain на основе рекуррентного линейного внимания с гейтами, подробно разобранного в этой статье. Алгоритмы прямого прохода, распределения градиентов и обновления весов обеспечивают эффективную обработку финансовых временных рядов и позволяют воплотить ключевые идеи фреймворка на практике.
preview
Алгоритм атомарного орбитального поиска — Atomic Orbital Search (AOS)

Алгоритм атомарного орбитального поиска — Atomic Orbital Search (AOS)

В статье рассматривается алгоритм AOS (Atomic Orbital Search), который использует концепции атомной орбитальной модели для моделирования поиска решений. Алгоритм основывается на вероятностных распределениях и динамике взаимодействий в атоме. В статье подробно обсуждаются математические аспекты AOS, включая обновление положений кандидатов решений и механизмы поглощения и выброса энергии. AOS открывает новые горизонты для применения квантовых принципов в вычислительных задачах, предлагая инновационный подход к оптимизации.
preview
Нейросети в трейдинге: Снижение потребления памяти методом оптимизации Adam (Adam-mini)

Нейросети в трейдинге: Снижение потребления памяти методом оптимизации Adam (Adam-mini)

Одним из направлений повышения эффективности процесса обучения и сходимости моделей является улучшение методов оптимизации. Adam-mini представляет собой адаптивный метод оптимизации, разработанный для улучшения базового алгоритма Adam.
preview
Нейросети в трейдинге: От трансформеров к спайковым нейронам (Основные компоненты)

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

Предлагаем вниманию читателя реализацию подходов фреймворка SpikingBrain на основе рекуррентного линейного внимания с гейтами, подробно разобранного в этой статье. Алгоритмы прямого прохода, распределения градиентов и обновления весов обеспечивают эффективную обработку финансовых временных рядов и позволяют воплотить ключевые идеи фреймворка на практике.
preview
Нейросети в трейдинге: Мультимодальный агент, дополненный инструментами (FinAgent)

Нейросети в трейдинге: Мультимодальный агент, дополненный инструментами (FinAgent)

Предлагаем познакомиться с фреймворком мультимодального агента для финансовой торговли FinAgent, который предназначен для анализа данных разных типов, отражающих рыночную динамику и исторические торговые паттерны.
preview
От Python к MQL5: Путешествие в квантовые торговые системы

От Python к MQL5: Путешествие в квантовые торговые системы

В статье рассматривается разработка квантовой торговой системы - от прототипа на Python к реализации на MQL5 для реальной торговли. Система использует принципы квантовых вычислений, такие как суперпозиция и запутанность, для анализа состояний рынка, хотя она работает на классических компьютерах с использованием квантовых симуляторов. Ключевые особенности включают трехкубитную систему для одновременного анализа восьми состояний рынка, 24-часовые периоды ретроспективного анализа и семь технических индикаторов для анализа рынка. Хотя показатели точности могут показаться скромными, они обеспечивают существенное преимущество в сочетании с правильными стратегиями управления рисками.
preview
Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть II)

Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть II)

Продолжение эксперимента, цель которого - исследовать поведение популяционных алгоритмов оптимизации в контексте их способности эффективно покидать локальные минимумы при низком разнообразии в популяции и достигать глобальных максимумов. Результаты исследования.
preview
Нейросети — это просто (Часть 96): Многоуровневое извлечение признаков (MSFformer)

Нейросети — это просто (Часть 96): Многоуровневое извлечение признаков (MSFformer)

Эффективное извлечение и объединение долгосрочных зависимостей и краткосрочных характеристик остаются важной задачей в анализе временных рядов. Правильное их понимание и интеграция необходимы для создания точных и надежных предсказательных моделей.
preview
Переосмысливаем классические стратегии (Часть II): Пробои индикатора Bollinger Bands

Переосмысливаем классические стратегии (Часть II): Пробои индикатора Bollinger Bands

В статье рассматривается торговая стратегия, объединяющая линейный дискриминантный анализ (Linear Discriminant Analysis, LDA) с полосами Боллинджера с использованием прогнозов категориальных зон для стратегических сигналов входа в рынок.
preview
Как мы построили самую мощную торговую платформу с Machine Learning: хроника развития MQL и MetaTrader по архивам, форумам и релизам

Как мы построили самую мощную торговую платформу с Machine Learning: хроника развития MQL и MetaTrader по архивам, форумам и релизам

Техническая хроника развития MQL: от ограниченного MQL/MQL II через процедурный MQL4 к объектному MQL5 с нативной компиляцией, богатыми API и полноценной инженерной средой. Показаны ключевые возможности языка и интеграции Python, OpenCL, ONNX, OpenBLAS, базы данных, DirectX, агентный AI Assistant и Model Context Protocol (MCP), который связывает ИИ с терминалом, MetaEditor, рыночными данными, торговлей и инструментами разработки. Рассматриваются архивные источники о становлении MetaQuotes/MetaTrader, запуск MQL4.COM и MQL5.COM, чемпионаты, Algo Forge и их влияние на экосистему.
preview
Популяционные алгоритмы оптимизации: Искусственные мультисоциальные поисковые объекты (artificial Multi-Social search Objects, MSO)

Популяционные алгоритмы оптимизации: Искусственные мультисоциальные поисковые объекты (artificial Multi-Social search Objects, MSO)

Продолжение предыдущей статьи как развитие идеи социальных групп. В новой статье исследуется эволюция социальных групп с использованием алгоритмов перемещения и памяти. Результаты помогут понять эволюцию социальных систем и применить их в оптимизации и поиске решений.
preview
Методы дискретизации ценовых движений на Python

Методы дискретизации ценовых движений на Python

Мы рассмотрим методы дискретизации цен на Python + MQL5. В этой статье я поделюсь практическим опытом разработки библиотеки на Python, которая реализует целый спектр подходов к формированию баров — от классических Volume и Range bars до более экзотических методов вроде Renko и Kagi.ары, свечи трехлинейного прорыва, рэйндж бары — какова их статистика, как еще можно представить цены дискретно?
preview
Нейросети в трейдинге: Ансамбль агентов с использованием механизмов внимания (MASAAT)

Нейросети в трейдинге: Ансамбль агентов с использованием механизмов внимания (MASAAT)

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

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

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

Разработка системы репликации - Моделирование рынка (Часть 02): Первые эксперименты (II)

В этот раз попробуем другой подход для достижения цели в 1 минуту. Однако эта задача не так проста, как можно подумать.
preview
Нейронная сеть на практике: Метод наименьших квадратов

Нейронная сеть на практике: Метод наименьших квадратов

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

Торгуем опционы без опционов (Часть 2): Использование в реальной торговле

В статье рассматриваются простые опционные стратегии и их реализация на MQL5. Пишем базовый эксперт, который будет модернизироваться и усложняться.
preview
Реализация квантовой схемы Quantum Reservoir Computing (QRC)

Реализация квантовой схемы Quantum Reservoir Computing (QRC)

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

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

Настоящий проект направлен на использование алгоритма MQL5 для разработки комплексного набора инструментов анализа для MetaTrader 5. Эти инструменты — от скриптов и индикаторов до моделей искусственного интеллекта и советников — позволят автоматизировать процесс анализа рынка. Иногда такая разработка позволяет создавать инструменты, способные выполнять углубленный анализ без участия человека и прогнозировать результаты на соответствующих платформах. Ни одна возможность не будет упущена. Присоединяйтесь ко мне в рамках исследования процесса создания надежного набора пользовательских инструментов для анализа рынка. Начнем с разработки простой программы на MQL5, которую я назвал Chart Projector (Проектор графиков).
preview
Теория категорий в MQL5 (Часть 10): Моноидные группы

Теория категорий в MQL5 (Часть 10): Моноидные группы

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

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

Мы применим простую цепь Маркова к индикатору RSI, чтобы наблюдать за поведением цены после того, как индикатор проходит через ключевые уровни. Мы пришли к выводу, что самые сильные сигналы на покупку и продажу по паре NZDJPY генерируются, когда RSI находится в диапазоне 11–20 и 71–80 соответственно. Мы покажем, как можно манипулировать данными, чтобы создавать оптимальные торговые стратегии, основанные непосредственно на имеющихся данных. Кроме того, мы продемонстрируем, как обучить глубокую нейронную сеть оптимальному использованию матрицы перехода.
preview
Изучение передовых методов машинного обучения в стратегии пробоя «коридора Дарваса» (Darvas Box Breakout)

Изучение передовых методов машинного обучения в стратегии пробоя «коридора Дарваса» (Darvas Box Breakout)

Стратегия Darvas Box Breakout, созданная Николасом Дарвасом, представляет собой подход в технической торговле, который выявляет потенциальные сигналы на покупку, когда цена акций поднимается выше установленного диапазона «коридора», что указывает на сильный восходящий импульс. В этой статье мы применим эту стратегическую концепцию в качестве примера для изучения трех передовых методов машинного обучения. К ним относятся использование модели машинного обучения для генерации сигналов вместо фильтрации сделок, применение непрерывных сигналов вместо дискретных и использование для подтверждения сделок моделей, обученных на разных таймфреймах.
preview
Перестановка ценовых баров в MQL5

Перестановка ценовых баров в MQL5

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

Расширенные переменные и типы данных в MQL5

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

Нейросети в трейдинге: Transformer для облака точек (Pointformer)

В данной статье мы поговорим об алгоритмах использования методов внимания при решении задач обнаружения объектов в облаке точек. Обнаружение объектов в облаках точек имеет важное значение для многих реальных приложений.
preview
Нейросети в трейдинге: Актер—Режиссёр—Критик (Actor—Director—Critic)

Нейросети в трейдинге: Актер—Режиссёр—Критик (Actor—Director—Critic)

Предлагаем познакомиться с фреймворком Actor-Director-Critic, который сочетает в себе иерархическое обучение и многокомпонентную архитектуру для создания адаптивных торговых стратегий. В этой статье мы подробно рассмотрим, как использование Режиссера для классификации действий Актера помогает эффективно оптимизировать торговые решения и повышать устойчивость моделей в условиях финансовых рынков.
preview
Реализация LLM-агента с SQL-памятью в MetaTrader 5

Реализация LLM-агента с SQL-памятью в MetaTrader 5

LLM-агент с SQL-памятью в MetaTrader 5 — архитектура, которая устраняет главное ограничение классических LLM-советников: потерю контекста между запросами. Каждое решение агента записывается в SQLite с рыночными условиями в момент сигнала — RSI, выравнивание MA, волатильность — и после закрытия позиции база получает исход. При следующем запросе агент читает собственную историю: похожие условия RSI из прошлого и последние три решения — и только затем анализирует текущий рынок. Результат: система, которая помнит свои ошибки между перезапусками и адаптирует поведение на основе накопленной статистики, а не начинает с чистого листа при каждом новом баре.
preview
Изучение MQL5 — от новичка до профи (Часть VII): Принципы отладки приложений MQL

Изучение MQL5 — от новичка до профи (Часть VII): Принципы отладки приложений MQL

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

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

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

Анализ нескольких символов с помощью Python и MQL5 (Часть 3): Треугольные курсы валют

Трейдеры часто сталкиваются с просадками из-за ложных сигналов, а ожидание подтверждения может привести к упущенным возможностям. В этой статье представлена треугольная торговая стратегия, использующая цену серебра в долларах (XAGUSD) и евро (XAGEUR), а также обменный курс EURUSD для фильтрации шума. Используя межрыночные связи, трейдеры могут выявлять скрытые настроения и совершенствовать свои позиции в реальном времени.
preview
Знакомство с MQL5 (Часть 19): Автоматизация обнаружения волн Вульфа

Знакомство с MQL5 (Часть 19): Автоматизация обнаружения волн Вульфа

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 10): Нетрадиционная RBM

Ограниченные машины Больцмана (Restrictive Boltzmann Machines, RBM) представляют собой на базовом уровне двухслойную нейронную сеть, способную выполнять неконтролируемую классификацию посредством уменьшения размерности. Мы используем ее основные принципы и посмотрим что случится, если мы перепроектируем и обучим ее нестандартно. Сможем ли мы получить полезный фильтр сигналов?
preview
Алгоритм Большого взрыва и Большого сжатия — BBBC (Big Bang - Big Crunch)

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

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

Биологический нейрон для прогнозирования финансовых временных рядов

Выстраиваем биологически верную систему нейронов для прогнозирования временных рядов. Внедрение плазмоподобной среды в архитектуру нейронной сети создало своеобразный "коллективный разум", где каждый нейрон влияет на работу системы не только через прямые связи, но и посредством дальнодействующих электромагнитных взаимодействий. Как покажет себя нейронная система моделирования мозга на рынке?
preview
Разрабатываем мультивалютный советник (Часть 26): Информер для торговых инструментов

Разрабатываем мультивалютный советник (Часть 26): Информер для торговых инструментов

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

Теория категорий в MQL5 (Часть 22): Другой взгляд на скользящие средние

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

Разработка системы репликации - Моделирование рынка (Часть 25): Подготовка к следующему этапу

В этой статье мы завершаем первый этап разработки системы репликации и моделирования. Дорогой читатель, этим достижением я подтверждаю, что система достигла продвинутого уровня, открывая путь для внедрения новой функциональности. Цель состоит в том, чтобы обогатить систему еще больше, превратив ее в мощный инструмент для исследований и развития анализа рынка.
preview
Совместное использование PSAR, Хейкин-Аши и глубокого обучения для трейдинга

Совместное использование PSAR, Хейкин-Аши и глубокого обучения для трейдинга

В настоящем проекте исследуется сочетание глубокого обучения и технического анализа для тестирования торговых стратегий на рынке Форекс. Для быстрого экспериментирования используется скрипт на Python, использующий модель ONNX наряду с традиционными индикаторами, такими как PSAR, SMA и RSI, для прогнозирования движения пары EUR/USD. Затем скрипт MetaTrader 5 переносит эту стратегию в реальную среду, используя исторические данные и технический анализ для принятия обоснованных торговых решений. Результаты тестирования на исторических данных свидетельствуют об осторожном, но последовательном подходе, направленном на управление рисками и устойчивый рост, а не на агрессивную погоню за прибылью.