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

icon

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

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

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

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

Нам удалось разработать способ осуществления репликации рынка достаточно реалистичным и доступным образом. Теперь давайте продолжим наш проект и добавим данные для улучшения поведения репликации.
preview
Создание советника Daily Drawdown Limiter на языке MQL5

Создание советника Daily Drawdown Limiter на языке MQL5

В статье подробно рассматриваются возможности реализации советника на основе торгового алгоритма. Это поможет автоматизировать систему на MQL5 и взять под контроль дневную просадку.
preview
Оптимизация нейробоидами — Neuroboids Optimization Algorithm 2 (NOA2)

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

Новый авторский алгоритм оптимизации NOA2 (Neuroboids Optimization Algorithm 2), объединяет принципы роевого интеллекта с нейронным управлением. NOA2 сочетает механику поведения стаи нейробоидов с адаптивной нейронной системой, позволяющей агентам самостоятельно корректировать свое поведение в процессе поиска оптимума. Алгоритм находится на стадии активной разработки и демонстрирует потенциал для решения сложных задач оптимизации.
preview
Реализация квантовой схемы Quantum Reservoir Computing (QRC)

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

Революционный подход к машинному обучению в трейдинге через квантовые вычисления. Статья демонстрирует практическую реализацию адаптивной системы QRC с постоянным дообучением для прогнозирования рыночных движений в реальном времени.
preview
Осваиваем JSON: Разработка пользовательского JSON-ридера с нуля на MQL5

Осваиваем JSON: Разработка пользовательского JSON-ридера с нуля на MQL5

В статье приведено пошаговое руководство по созданию пользовательского парсера JSON на языке MQL5, включающего обработку объектов и массивов, проверку ошибок и сериализацию. Вы сможет объединить торговую логику и структурированные данные с помощью гибкого решения для обработки JSON в MetaTrader 5.
preview
Комбинаторно-симметричная перекрестная проверка в MQL5

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

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

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

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

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

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

Двунаправленная LSTM и квантовые вычисления для предсказания направления движения

Статья представляет воспроизводимую реализацию гибридной квантово-нейросетевой модели для алгоритмической торговли на Forex без использования реального квантового оборудования. Фиксированная трёхкубитная схема в IBM Qiskit преобразует статистики скользящего окна (средняя доходность, волатильность, размах) в распределение вероятностей, из которого вычисляются 7 квантовых метрик. Эти признаки интегрируются в архитектуру двунаправленной LSTM с регуляризацией и механизмами борьбы с дисбалансом классов (в т.ч. focal loss и sampler).
preview
Переосмысливаем классические стратегии (Часть III): Прогнозирование более высоких максимумов и более низких минимумов

Переосмысливаем классические стратегии (Часть III): Прогнозирование более высоких максимумов и более низких минимумов

В статье мы эмпирически проанализируем классические торговые стратегии, чтобы увидеть, можно ли улучшить их с помощью искусственного интеллекта (ИИ). Мы попытаемся предсказать более высокие максимумы и более низкие минимумы, используя модель линейного дискриминантного анализа (Linear Discriminant Analysis).
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 48): Аллигатор Билла Вильямса

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

Аллигатор, детище Билла Вильямса, представляет собой универсальный индикатор определения тренда, который дает четкие сигналы и часто сочетается с другими индикаторами. Классы Мастера MQL5 позволяют нам тестировать различные сигналы на основе паттернов, что позволяет нам рассмотреть и этот индикатор.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 16): Метод главных компонент с собственными векторами

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

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 21): Тестирование с данными экономического календаря

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

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

В предыдущей статье мы внесли исправления в некоторые моменты и добавили тесты в нашу систему репликации для обеспечения максимально возможной стабильности. Мы также начали создавать и использовать конфигурационный файл для данной системы.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 44): Технический индикатор Average True Range (ATR)

Возможности Мастера MQL5, которые вам нужно знать (Часть 44): Технический индикатор Average True Range (ATR)

Осциллятор ATR — очень популярный индикатор, используемый в качестве индикатора волатильности, особенно на валютных рынках, где данные об объемах скудны. Как и в случае с предыдущими индикаторами, мы рассмотрим паттерны и поделимся стратегиями и отчетами о тестировании.
preview
Нейросети в трейдинге: Адаптивная периодическая сегментация (Создание токенов)

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

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

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

Приглашаем вас познакомиться с фреймворком K²VAE и вариантом интеграции предложенных подходов в торговую систему. Вы узнаете, как гибридный подход Koopman–Kalman–VAE помогает строить адаптивные и интерпретируемые модели. А в завершении статьи представлены практические результаты использования реализованных решений.
preview
Добавляем пользовательскую LLM в торгового робота (Часть 5): Разработка и тестирование торговой стратегии с помощью LLM(IV) — Тестирование торговой стратегии

Добавляем пользовательскую LLM в торгового робота (Часть 5): Разработка и тестирование торговой стратегии с помощью LLM(IV) — Тестирование торговой стратегии

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

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

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

Возможности Мастера MQL5, которые вам нужно знать (Часть 41): Сети Deep-Q

Сеть Deep-Q (Deep-Q-Network) — это алгоритм обучения с подкреплением, который вовлекает нейронные сети в прогнозирование следующего значения Q и идеального действия в процессе обучения модуля машинного обучения. Мы уже рассматривали альтернативный алгоритм обучения с подкреплением — Q-обучение. Таким образом, в данной статье представлен еще один пример того, как многослойный перцептрон (multi-layer perceptron, MLP), обученный с помощью обучения с подкреплением, может использоваться в пользовательском классе сигналов.
preview
Построение модели для ограничения диапазона сигналов по тренду (Часть 5): Система уведомлений (Часть III)

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

Эта часть серии посвящена интеграции WhatsApp с MetaTrader 5 для получения уведомлений. Мы рассмотрим блок-схему для упрощения понимания и обсудим важность мер безопасности при интеграции. Основная цель индикаторов — упростить анализ за счет автоматизации. Они должны включать методы уведомления для оповещения пользователей при выполнении определенных условий.
preview
Нейросети в трейдинге: Фреймворк кросс-доменного прогнозирования временных рядов (TimeFound)

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

В этой статье мы шаг за шагом собираем ядро интеллектуальной модели TimeFound, адаптированной под реальные задачи прогнозирования временных рядов. Если вас интересует практическая реализация нейросетевых патчинг-алгоритмов в MQL5 — вы точно по адресу.
preview
Изучение передовых методов машинного обучения в стратегии пробоя «коридора Дарваса» (Darvas Box Breakout)

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

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

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

Продолжаем знакомство с фреймворком Mamba4Cast. И сегодня мы погрузимся в практическую реализацию предложенных подходов. Mamba4Cast создавался не для долгого прогрева на каждом новом временном ряде, а для мгновенного включения в работу. Благодаря идее Zero‑Shot Forecasting модель способна сразу выдавать качественные прогнозы на реальных данных без дообучения и тонкой настройки гиперпараметров.
preview
Матричная факторизация: моделирование, которое более практично

Матричная факторизация: моделирование, которое более практично

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

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

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

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

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

Переходим на MQL5 Algo Forge (Часть 3): Использование чужих репозиториев в собственном проекте

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

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

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

Переосмысление индикаторов MQL5 и MetaTrader 5

Инновационный подход к сбору информации с индикаторов на MQL5 обеспечивает более гибкий и оптимизированный анализ данных, позволяя разработчикам вводить пользовательские данные в индикаторы для осуществления немедленных расчетов. Этот подход особенно полезен для алгоритмической торговли, поскольку он обеспечивает повышенный контроль над информацией, обрабатываемой индикаторами, выходя за рамки традиционных ограничений.
preview
Разработка системы репликации (Часть 73): Неожиданный способ оповещений (II)

Разработка системы репликации (Часть 73): Неожиданный способ оповещений (II)

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

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

Основанная на плотности пространственная кластеризация для приложений с шумами (Density Based Spatial Clustering for Applications with Noise, DBSCAN) - это неконтролируемая форма группировки данных, которая практически не требует каких-либо входных параметров, за исключением всего двух, что по сравнению с другими подходами, такими как k-средние, является преимуществом. Разберемся в том, как это может быть полезно в тестировании и торговле с применением советников, собранных в Мастере.
preview
Анализ влияния погоды на валюты аграрных стран с использованием Python

Анализ влияния погоды на валюты аграрных стран с использованием Python

Как связана погода и валютный рынок? В классической экономической теории долгое время не признавали влияние таких факторов на поведение рынка. Но все изменилось. Давайте попробуем найти связи в состоянии погоды и положения аграрных валют на рынке.
preview
Передовые методы управления и оптимизации памяти в MQL5

Передовые методы управления и оптимизации памяти в MQL5

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

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

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

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

Генеративно-состязательные сети — это пара нейронных сетей, которые обучаются друг на друге для получения более точных результатов. Мы рассмотрим условный тип этих сетей в контексте их возможного применения в прогнозировании финансовых временных рядов в рамках класса сигналов советника.
preview
Построение модели для ограничения диапазона сигналов по тренду (Часть 9): Советник с несколькими стратегиями (III)

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

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

Анализируем двоичный код цен на бирже (Часть II): Преобразуем в BIP39 и пишем GPT модель

Продолжаем попытки дешифровать движения цен... Как насчет лингвистического анализа "словаря рынка", который мы получим, преобразовав бинарный код цены в BIP39? В этой статье мы углубимся в инновационный подход к анализу биржевых данных и рассмотрим, как современные методы обработки естественного языка могут быть применены к языку рынка.
preview
Нейросети в трейдинге: Двусторонняя адаптивная временная корреляция (BAT)

Нейросети в трейдинге: Двусторонняя адаптивная временная корреляция (BAT)

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

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

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