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

icon

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

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

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

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

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

Нейросети в трейдинге: Модели многократного уточнения прогнозов (RAFT)

Фреймворк RAFT предлагает принципиально иной подход к прогнозированию динамики рынка — не как разовый снимок, а как итеративное уточнение состояния в реальном времени. Он одновременно учитывает локальные и глобальные изменения, сохраняя высокую точность даже при сложных ценовых структурах.
preview
Нейронная сеть на практике: Псевдообратная (I)

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

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

Гауссовcкие процессы в машинном обучении: регрессионная модель в MQL5

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

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

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

Теория категорий в MQL5 (Часть 6): Мономорфные расслоенные произведения и эпиморфные кодекартовы квадраты

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

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

Инновационный подход к сбору информации с индикаторов на MQL5 обеспечивает более гибкий и оптимизированный анализ данных, позволяя разработчикам вводить пользовательские данные в индикаторы для осуществления немедленных расчетов. Этот подход особенно полезен для алгоритмической торговли, поскольку он обеспечивает повышенный контроль над информацией, обрабатываемой индикаторами, выходя за рамки традиционных ограничений.
preview
Добавляем пользовательскую LLM в торгового робота (Часть 5): Разработка и тестирование торговой стратегии с помощью LLM(IV) — Тестирование торговой стратегии

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

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

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

В этой статье мы познакомимся с фреймворком ST-Expert, который обеспечивает устойчивость прогнозов к рыночной неопределённости, позволяя учитывать локальные и глобальные зависимости во временных рядах. Его гибкая архитектура способствует адаптивности моделей и повышает точность предсказаний.
preview
Алгоритм Большого взрыва и Большого сжатия — BBBC (Big Bang - Big Crunch)

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

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

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

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

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

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

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

Исправление ошибок — неотъемлемая часть цикла программирования. В этой статье рассмотрены типовые приемы исправления ошибок (отладки) любого приложения, работающего в среде MetaTrader 5.
preview
Прогнозирование в трейдинге и Grey-модели

Прогнозирование в трейдинге и Grey-модели

В этой статье рассматривается применение Grey-моделей для прогнозирования финансовых временных рядов. Мы рассмотрим принципы работы Grey-моделей и особенности их применения к финансовым рядам. Обсудим преимущества и ограничения использования этих моделей в трейдинге.
preview
Построение модели для ограничения диапазона сигналов по тренду (Часть 8): Разработка советника (II)

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

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

От начального до среднего уровня: Переменные (I)

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

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

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

Алгоритм оптимизации центральной силы — Central Force Optimization (CFO)

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

Знакомство с языком MQL5 (Часть 18): Введение в паттерн "Волны Вульфа"

В этой статье подробно объясняется паттерн волн Вульфа – как медвежьи, так и бычьи его вариации. В статье также проводится пошаговый разбор логики, используемой для выявления действительных сетапов на покупку и продажу на основе этого продвинутого графического паттерна.
preview
Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 3)

Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 3)

Статья является третьей частью серии, описывающей этапы разработки нативного MQL5-клиента для протокола MQTT. В этой части мы подробно описываем применение принципа разработки через тестирование для реализации обмена пакетами CONNECT/CONNACK. В конце этого шага наш клиент ДОЛЖЕН уметь вести себя соответствующим образом при работе с любыми возможными результатами сервера при попытке подключения.
preview
Нейросети в трейдинге: Модель темпоральных запросов (TQNet)

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

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

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

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

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

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

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

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

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

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

MQL5-советник, интегрированный в Telegram (Часть 4): Модуляризация функций кода для улучшенного повторного использования

В этой статье мы реорганизуем существующий код отправки сообщений и скриншотов из MQL5 в Telegram, преобразовав его в многоразовые модульные функции. Это оптимизирует процесс, обеспечивая более эффективное выполнение и более простое управление кодом в нескольких экземплярах.
preview
Компонент View для таблиц в парадигме MVC на MQL5: Базовый графический элемент

Компонент View для таблиц в парадигме MVC на MQL5: Базовый графический элемент

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

Разработка системы репликации (Часть 51): Все усложняется (III)

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

Создание самооптимизирующихся советников на MQL5 (Часть 4): Динамическое изменение размера позиции

Успешное применение алгоритмической торговли требует непрерывного междисциплинарного обучения. Однако бесконечный спектр возможностей может потребовать многолетних усилий, не принося ощутимых результатов. Чтобы решить эту проблему, мы предлагаем структуру, которая постепенно усложняется, позволяя трейдерам постепенно совершенствовать свои стратегии, а не тратить неопределенное время на неопределенные результаты.
preview
Оценка качества торговли спредами по факторам сезонности на рынке Форекс в терминале MetaTrader 5

Оценка качества торговли спредами по факторам сезонности на рынке Форекс в терминале MetaTrader 5

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

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

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

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

Сегодня мы продолжим разработку системы и управления. Без возможности управления сервисом сложно двигаться вперед и совершенствовать систему.
preview
Разработка системы репликации (Часть 30): Проект советника — класс C_Mouse (IV)

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

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

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

ADX — еще один относительно популярный технический индикатор, используемый некоторыми трейдерами для оценки силы преобладающего тренда. Действуя как комбинация двух других индикаторов, он представляет собой осциллятор, паттерны которого мы исследуем в этой статье с помощью Мастера MQL5 и его вспомогательных классов.
preview
Объединяем 3D-бары, квантовые вычисления и машинное обучение в единую торговую систему

Объединяем 3D-бары, квантовые вычисления и машинное обучение в единую торговую систему

Представлена полная интеграция модуля 3D-баров в квантово-усиленную торговую систему для прогнозирования движения валютных пар. Система объединяет стационарные четырёхмерные признаки, квантовый энкодер на 8 кубитах и градиентный бустинг CatBoost с 52+ признаками. Система реализована на Python с использованием MetaTrader 5, Qiskit, CatBoost и опциональной интеграцией LLM Llama 3.2 для интерпретации прогнозов.
preview
Метод группового учета аргументов: реализация комбинаторного алгоритма на MQL5

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

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

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

Продолжаем изучение гибридных моделей последовательностей графов (GSM++), которые интегрируют преимущества различных архитектур, обеспечивая высокую точность анализа и эффективное распределение вычислительных ресурсов. Эти модели эффективно выявляют скрытые закономерности, снижая влияние рыночного шума и повышая качество прогнозирования.
preview
Переосмысливаем классические стратегии (Часть V): Анализ нескольких инструментов в валютной паре USDZAR

Переосмысливаем классические стратегии (Часть V): Анализ нескольких инструментов в валютной паре USDZAR

В данной серии статей мы вновь рассматриваем классические стратегии, чтобы выяснить, можно ли улучшить стратегию с помощью ИИ. В сегодняшней статье мы рассмотрим популярную стратегию анализа нескольких инструментов с использованием корзины коррелированных ценных бумаг. Сосредоточимся на экзотической валютной паре USDZAR.
preview
Индикатор CAPM модели на рынке Forex

Индикатор CAPM модели на рынке Forex

Адаптация классической модели CAPM для валютного рынка Forex в MQL5. Индикатор рассчитывает ожидаемую доходность и премию за риск на основе исторической волатильности. Показатели возрастают на пиках и впадинах, отражая фундаментальные принципы ценообразования. Практическое применение для контртрендовых и трендовых стратегий с учетом динамики соотношения риска и доходности в реальном времени. Включает математический аппарат и техническую реализацию.
preview
Добавляем пользовательскую LLM в торгового робота (Часть 5): Разработка и тестирование торговой стратегии с помощью LLM (II) - Настройка LoRA

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

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