Создание торговых систем с искусственным интеллектом на MQL5 (Часть 1): Реализация обработки JSON для API ИИ
В этой статье разрабатывается модуль разбора JSON на языке MQL5 для обмена данными при интеграции с API ИИ. Основное внимание уделяется классу JsonValue для обработки JSON-структур. Реализуются методы сериализации и десериализации JSON-данных с поддержкой различных типов данных, таких как строки, числа и объекты. Это необходимо для взаимодействия с ИИ-сервисами, такими как ChatGPT, и служит основой для будущих торговых систем на базе ИИ, обеспечивая точную обработку данных.
Торговые инструменты MQL5 (Часть 25): Расширяем поддержку нескольких распределений с интерактивным переключением
В этой статье мы расширим инструмент построения графиков на MQL5 для поддержки семнадцати статистических распределений с циклическим перебором распределений с помощью значка переключения в заголовке. Мы добавим загрузку данных для каждого типа, дискретное и непрерывное вычисление гистограмм и теоретические функции распределения вероятностей/плотности для каждой модели, а также динамические заголовки, метки осей и панели параметров, которые автоматически адаптируются. Результат позволяет накладывать кривые разных распределений на данные одной и той же выборки и сравнивать качество соответствия моделей из разных семейств распределений.
Создание торговых систем с искусственным интеллектом на MQL5 (Часть 9): Создание диспетчера сигналов ИИ
Мы превращаем торгового помощника на языке MQL5 с ИИ в систему с диспетчеризацией, которая осуществляет маршрутизацию семи торговых действий через единый центральный диспетчер. Построчный протокол "ключ:значение" ограничивает формат ответа ИИ, а каждому действию сопоставляются рыночные или отложенные ордера и стоп-уровни, адаптированные к конкретному инструменту. Интерфейс на основе канваса (canvas) с редактором промптов и попиксельной подгонкой текста делает сигналы единообразными, проверяемыми и готовыми к отображению на графике.
Автоматизация торговых стратегий на MQL5 (Часть 38): Торговля по скрытым дивергенциям RSI с фильтрами угла наклона
В этой статье мы создадим советник на MQL5, который определяет скрытые дивергенции RSI по свинговым точкам с заданным параметром силы, ограничением по количеству баров между свинговыми точками, допуском и фильтрами угла наклона ценовой линии и линии RSI. Советник открывает позиции на покупку и продажу по подтверждённым сигналам с фиксированным размером лота, уровнями Stop Loss и Take Profit, заданными в пипсах (в исходной статье — pips; в коде расчёт выполняется через _Point), а также опциональным трейлинг-стопом для управления рисками.
Изучение стандартной библиотеки MQL5 (Часть 9): Использование ALGLIB для фильтрации избыточного числа сигналов пересечения скользящих средних
Во время боковых движений цены трейдеры сталкиваются с избыточными сигналами от множественных пересечений скользящих средних. Сегодня мы обсудим, как ALGLIB предварительно обрабатывает исходные данные о ценах для формирования отфильтрованных сигнальных серий пересечений, которые также могут генерировать оповещения при их возникновении. Давайте разберёмся, как можно использовать математическую библиотеку в программах на MQL5.
Торговые инструменты на MQL5 (Часть 30): Боковая панель палитры инструментов с архитектурой на основе классов
Мы переработали палитру инструментов, превратив её из простой функциональной панели в модульную боковую панель, управляемую классами, на языке MQL5. В новом дизайне реализована суперсэмплинговая отрисовка холста (canvas) для сглаживания фигур, управление темами оформления, реестр категорий, выравнивание по привязке и выборочное скругление углов. В результате получилась масштабируемая основа боковой панели многократного использования, которую на последующих этапах можно расширить за счёт выбора инструментов, перетаскивания и выпадающих панелей.
Нейросети в трейдинге: Двухуровневая адаптация торговой политики (Банк навыков)
Статья описывает переход от одного навыка к управляемому банку, где опыт хранится как векторные латентные коррекции и извлекается по контексту. Разбираем фильтры сходства, подтверждение Candidate, правила вытеснения с учётом Utility и защитные периоды. Реализация на MQL5 и OpenCL выполняет ключевые вычисления на GPU, что даёт воспроизводимый pipeline retrieval–update без смешения конфликтующих режимов рынка.
Преодоление проблем доступности в торговых инструментах на MQL5 (Часть III): Двунаправленное голосовое взаимодействие между трейдером и советником
Создадим локальный двунаправленный голосовой интерфейс для MetaTrader 5 с помощью WebRequest в MQL5 и двух сервисов Python. В статье реализовано автономное распознавание речи с помощью Vosk, обнаружение фразы активации, HTTP‑endpoint для получения команд и сервер преобразования текста в речь на локальном хосте. Вы подключите советника, который будет получать команды, открывать сделки и возвращать голосовые подтверждения для возможности работать без помощи рук.
Разработка индикатора Volume Bubble на MQL5 с использованием стандартного отклонения
В статье показано, как создать индикатор Volume Bubble на MQL5, который визуализирует рыночную активность с использованием статистической нормализации. В нем рассматривается работа с тиковым и реальным объемом, вычисление среднего значения и стандартного отклонения по скользящему окну, а также нормализация значений объема для определения относительной силы. Вы реализуете графические объекты для отображения пузырьков с динамическими размером и цветом, обеспечивая наглядное представление интенсивности торговой активности прямо на графике
Торговые инструменты на MQL5 (Часть 29): Пошаговая анимация кривой-бабочки на Canvas
В этой статье мы расширим нашу программу анимации кривой-бабочки, включив в нее четырехэтапный конвейер анимации: последовательное рисование кривых, плавное проявление заливки крыльев, детализированный рендеринг тела и непрерывный полет. Мы реализуем управляемую таймером машину состояний, четыре осциллятора для взмахов крыльев, вертикального покачивания, горизонтального раскачивания и наклона, а также неоновое свечение по контурам крыльев и циклическую смену цвета в зависимости от оттенка. Вы узнаете, как структурировать эти эффекты на холсте (canvas) MetaTrader 5 для обеспечения четкого и контролируемого воспроизведения.
Автоматизация торговых стратегий в MQL5 (Часть 33): Создание системы распознавания гармонического паттерна "Shark" с использованием Price Action
В этой статье мы разрабатываем систему распознавания паттернов "Shark" (акула) на языке MQL5, которая определяет бычьи и медвежьи гармонические паттерны "Shark" с использованием точек разворота и коэффициентов Фибоначчи, совершая сделки с настраиваемыми уровнями входа, стоп-лосса и тейк-профита на основе выбранных пользователем параметров. Мы улучшим работу трейдеров с помощью визуальной обратной связи, используя графические объекты, такие как треугольники, линии тренда и подписи, для наглядного отображения структуры паттерна X-A-B-C-D.
Торговые инструменты MQL5 (Часть 24): Улучшение восприятия глубины с помощью 3D-кривых, режима панорамирования и навигации через виджет ViewCube
В этой статье мы улучшим инструмент построения 3D-графиков биномиального распределения в MQL5, добавим сегментированную 3D-кривую для улучшения восприятия глубины функции массы вероятности. Также интегрируем режим панорамирования для смещения целевой точки камеры и реализуем интерактивный куб обзора (ViewCube) с зонами наведения курсора и анимацией для обеспечения быстрой смены ориентации. Мы добавим кликабельные подзоны на кубе обзора для граней, ребер и углов, чтобы анимировать переходы камеры к стандартным видам, сохраняя при этом переключаемые 2D/3D режимы, обновления в реальном времени и настраиваемые параметры для иммерсивного вероятностного анализа в торговле.
Нейросети в трейдинге: Долговременная память торговых сценариев (RAG-память)
Статья продолжает адаптацию фреймворка VLADriver-RAG к задачам алгоритмической торговли и описывает переход от отдельной сценарной ячейки к ограниченной двухуровневой памяти. Рассматриваются добавление и консолидация завершённого опыта, многоэтапный GPU-поиск глобального Top-K и формирование RAG-токенов с параметрами действия, релевантностью и средним результатом. Память сохраняет опыт вне весов сети и возвращает Актёру компактный исторический контекст при предсказуемом времени чтения.
Автоматизация торговых стратегий на MQL5 (Часть 37): Поиск дивергенций и конвергенций RSI с визуализацией на графике
В этой статье мы создадим советник на MQL5, который определяет обычные дивергенции RSI по свинговым точкам с заданным параметром силы, ограничениями по числу баров и допуском. Он открывает позиции по бычьим и медвежьим сигналам с фиксированным объёмом позиции, уровнями Stop Loss и Take Profit в пунктах (pips) и опциональным трейлинг-стопом. На графике отображаются цветные линии и подписи свинговых точек, чтобы лучше видеть логику работы стратегии.
Изучение Стандартной библиотеки MQL5 (Часть 2): Интеграция и связывание компонентов
Сегодня мы делаем важный шаг к тому, чтобы помочь каждому разработчику понять, как читать структуры классов и быстро создавать советники с помощью стандартной библиотеки MQL5. Библиотека богата и расширяема, но при этом может показаться, что вам вручили сложный набор инструментов без руководства. Здесь мы делимся и обсуждаем альтернативный алгоритм интеграции — краткий, повторяемый рабочий сценарий, демонстрирующий, как надежно связывать классы в реальных проектах.
Создание торговых систем с искусственным интеллектом на MQL5 (Часть 8): Доработка интерфейса с анимацией, метриками времени и инструментами управления ответами
В этой статье мы дорабатываем торговую систему с ИИ на языке MQL5: добавляем в интерфейс анимацию загрузки для этапов подготовки запроса и ожидания ответа (или "размышления"), а также выводим в ответах метрики времени для более наглядной обратной связи. Добавляются инструменты управления ответами: кнопки повторной генерации для повторного обращения к ИИ и возможность экспортировать последний ответ в файл, что делает взаимодействие с системой проще и удобнее.
Нейросети в трейдинге: Долговременная память торговых сценариев (Объект верхнего уровня)
В статье показано, как двухуровневая RAG-память включается в процесс выбора торгового действия через объект CNeuronVLADriverRAGMPI. Механизм сопоставляет текущие предпочтения Актёра с историческими действиями и их результативностью, ограничивает влияние слабых аналогий с помощью Null Scenario и формирует остаточную контекстную поправку. Такой подход позволяет учитывать положительный и отрицательный опыт, сохраняя приоритет текущего состояния рынка.
Автоматизация торговых стратегий на MQL5 (Часть 34): Система пробоя линии тренда с оценкой качества аппроксимации по коэффициенту R2
В этой статье мы разработаем на MQL5 систему пробоя линии тренда, которая определяет линии поддержки и сопротивления по свинговым точкам (локальным экстремумам). Надежность линий будет оцениваться по коэффициенту детерминации R², а также по ограничениям на угол наклона. После проверки система сможет автоматически открывать сделки на пробое. Мы будем находить локальные максимумы и минимумы в пределах заданной глубины анализа, строить линии тренда с минимально допустимым количеством касаний и оценивать их надежность по коэффициенту детерминации R² и углу наклона.
Знакомство с языком MQL5 (Часть 43): Руководство для начинающих по работе с файлами в MQL5 (V)
В статье объясняется, как использовать структуры MQL5 вместе с бинарными файлами, чтобы сохранять параметры советника между запусками. В статье рассматриваются определение структур, доступ к их членам и различие между простыми и сложными структурами, а затем запись и чтение структур целиком с помощью FileWriteStruct и FileReadStruct в режиме FILE_BIN. Вы узнаете о безопасных подходах к работе с данными фиксированного размера и о том, как общее хранилище (FILE_COMMON) позволяет использовать одни и те же данные между сеансами и терминалами.
Встраивание торговой дисциплины в код (Часть 7): Автоматизация защиты эквити с помощью логики управления
Автоматизированные торговые системы часто уделяют большое внимание генерации сигналов, пренебрегая механизмами, необходимыми для защиты капитала в периоды стресса. В данной статье представлен фреймворк управления эквити в MQL5, который отслеживает условия просадки, оценивает нагрузку на эквити и динамически управляет торговой активностью с помощью модели управления рисками, основанной на состояниях. Объединяя анализ просадки, логику охлаждения, авторизацию сделок и ограничения на исполнение, эта структура демонстрирует, как торговая дисциплина может быть непосредственно встроена в код с использованием модульной и расширяемой архитектуры.
Создание торговых систем с искусственным интеллектом на MQL5 (Часть 7): Дальнейшая модульная реорганизация и автоматизация торговли
В этой статье мы повышаем модульность торговой системы с ИИ, выделяя компоненты интерфейса в отдельный подключаемый файл. Система автоматизирует исполнение сделок по сигналам, сгенерированным ИИ. Она разбирает JSON-ответы с директивами BUY/SELL/NONE и уровнями входа, SL и TP, отображает на графике паттерны, такие как поглощение или дивергенции, с помощью стрелок, линий и меток, а также при необходимости автоматически проверяет сигналы на новых барах.
Мастер-класс по созданию пользовательских индикаторов (Часть 2): Разработка практического советника Supertrend на MQL5
Узнайте, как с нуля создать советник на основе индикатора Supertrend на языке MQL5. В статье рассматриваются встраивание индикатора в качестве ресурса, считывание значений его буферов на закрытых барах, обнаружение подтвержденных смен направления, приведение позиций в соответствие с сигналом и переворот позиций, а также настройка режимов стоп-лосса и размера позиции. В заключение рассматриваются настройка Тестера стратегий и проведение воспроизводимых тестов. В результате получается настраиваемый советник и четкая основа для дальнейших исследований и доработок.
Создание торговых систем с искусственным интеллектом на MQL5 (Часть 5): Сворачиваемая боковая панель и всплывающие окна истории чатов
В части 5 серии о торговых системах с ИИ в MQL5 мы дополняем советник с интеграцией ChatGPT сворачиваемой боковой панелью. Малое и большое всплывающие окна истории упрощают и делают более плавным выбор чатов, при этом сохраняются обработка многострочного ввода, постоянное зашифрованное хранение чатов между сеансами и генерация ИИ торговых сигналов по данным графика.
Создание торговых систем с искусственным интеллектом на MQL5 (Часть 6): Реализация поиска и удаления чатов
В части 6 серии о торговых системах с ИИ на MQL5 мы добавляем в советник с интеграцией ChatGPT функции удаления чатов. Интерактивные кнопки удаления появятся на боковой панели, в малом и большом окнах истории, а также в новом окне поиска. Это поможет эффективно упорядочивать и управлять чатами, которые сохраняются между сеансами в зашифрованном виде, при этом поддерживая генерацию ИИ торговых сигналов по данным графика.
Разработка инструментария для анализа Price Action (Часть 74): Создание советника MQL5 на основе буферов индикатора
В этой статье реализован советник MQL5, который подключается к индикатору гэпов выходного дня через iCustom() и CopyBuffer() и считывает шесть буферов с сигналами на покупку и продажу, а также уровнями SL/TP. Он проверяет требования брокера к минимальному расстоянию до стоп-уровней, обрабатывает подтверждение закрытым баром и контролирует дублирование сигналов, а также исполняет ордера с настраиваемым магическим числом. Советник также включает механику переноса стоп-лосса при достижении срединного уровня между входом и тейк-профитом, а также процедуру тестирования на исторических данных, позволяющую проверить поведение и адаптировать параметры под вашу конфигурацию.
Изучение Стандартной библиотеки MQL5 (Часть 4): Создание библиотеки пользовательских сигналов
Сегодня мы используем стандартную библиотеку MQL5 для создания пользовательских классов сигналов и позволяем мастеру MQL5 собрать для нас профессиональный советник. Такой подход упрощает разработку, позволяя даже начинающим программистам создавать надежные советники без глубоких знаний в области программирования, сосредоточившись на настройке параметров и оптимизации стратегии. Давайте шаг за шагом разберем этот процесс.
Нейросети в трейдинге: Адаптация прогноза при смене рыночного режима (Окончание)
Завершаем адаптацию фреймворка OMPB к торговой модели средствами MQL5. Новый слой встраивается в энкодер состояния рынка между RankTCM и ScenarioForecast. Мы рассматриваем двухэтапное обучение Forecast, разделение истории на Reference и Calibration, фиксацию базовой модели и последующую калибровку OMPB. В практической части показано переключение режимов слоя, контроль неизменности замороженных компонентов и итоговое тестирование системы на данных 2026 года.
Изучение стандартной библиотеки MQL5 (Часть 12): Мультитаймфреймный дашборд на основе составного показателя
В статье реализован CMultiTimeframeMatrix, переиспользуемый дашборд, который сопоставляет символы с таймфреймами и отображает числовой показатель с цветовой кодировкой. Показатель объединяет тренд и импульс с вычетом волатильности, обновляется по таймеру и учитывает ограничения производительности. Вы узнаете, как создавать пользовательский интерфейс с помощью CAppDialog/CLabel, вычислять метрики с помощью CMatrixDouble и встраивать компонент в простой советник для получения целостной картины рынка в реальном времени.
Нейросети в трейдинге: Адаптация прогноза при смене рыночного режима (OpenCL примитивы)
Статья продолжает практическую реализацию фреймворка OMPB для адаптации прогнозных моделей к смене рыночного режима. Рассматриваем вычислительную декомпозицию фреймворка и реализуем недостающие OpenCL-примитивы: ограниченный Disagreement, распространение градиента Mismatch и поэлементный расчёт KL-дивергенции для байесовского слоя. Полученные компоненты образуют параллельную GPU-основу без переноса больших промежуточных тензоров на CPU и подготавливают сборку полноценного OMPB-слоя в библиотеке нейронных сетей MQL5.
Изучение стандартной библиотеки MQL5 (Часть 13): Применение библиотеки математических решателей в торговле
Мы представляем полный рабочий процесс для адаптивной фильтрации в MQL5 с использованием решателя CNlEq, подобного алгоритму Левенберга — Марквардта. Советник подбирает параметры модели VAMAC — две экспоненциальные скользящие средние (EWMA) с масштабированием на основе ATR — путем передачи остатков и Якобиана через цикл механизма обратного обмена с решателем CNlEq, с возможностью использования численных или аналитических производных. Код, инструкции по настройке и тесты по паре GBPUSD на таймфрейме H1 показывают, как заменить статические пороги динамической переоценкой на закрытии каждого бара.
Нейросети в трейдинге: Адаптация прогноза при смене рыночного режима (Объект верхнего уровня)
Представлен объект верхнего уровня CNeuronOMPBOCL для адаптации рыночного представления внутри энкодера. Он объединяет байесовскую остаточную поправку, групповой затвор, раздельные истории Source и Target, оценку Mismatch и KL-ограничение. Разобраны инициализация, режимы работы, числовые проверки, прямой и обратный проходы в MQL5/OpenCL. Реализация разделяет прогноз и последующее обновление параметров и даёт готовый слой для дальнейшей интеграции в модель.
Разработка самовосстанавливающегося советника в MQL5 (Часть 2): Виртуальная защита сделок, устойчивая к перезапуску
Постройте уровень виртуальной защиты, устойчивый к перезапускам, поверх механизма персистентности SQLite из Части 1. Советник восстанавливает скрытые стоп-лосс и тейк-профит после перезапуска, сверяет текущую цену с восстановленными уровнями выхода и в зависимости от результата либо закрывает позиции, либо продолжает ими управлять. В результате формируется согласованный сценарий восстановления, который обнаруживает управляемые позиции и обеспечивает безопасное управление во время выполнения.
Нейросети в трейдинге: Двухуровневая адаптация торговой политики (Объект верхнего уровня)
Продолжаем адаптацию фреймворка D2Skill и переходим к построению объекта верхнего уровня CD2Skill для двухуровневой коррекции торговой политики. Механизм интегрируется в архитектуру ORION и дополняет существующий Актёр банками Task Skills и Step Skills. Показаны принципы их инициализации, включения в прямой проход и обучения по псевдоостаткам. Особое внимание уделяется сохранению исходного вычислительного конвейера, причинного порядка и независимости Критика.
Нейросети в трейдинге: Адаптация прогноза при смене рыночного режима (OMPB)
В статье разбирается фреймворк OMPB для онлайн-калибровки прогнозов при сдвиге распределения временных рядов. Рассматриваются архитектура, PAC-Bayes сертификат с учётом временной зависимости и измерение расхождения Mismatch между исходной и целевой областями. На практике начинается адаптация под MQL5: реализован байесовский линейный слой, который станет основой корректирующего модуля и позволит настраивать модель без полного переобучения.
Изучение стандартной библиотеки MQL5 (Часть 14): Создание советника для динамического хеджирования с использованием ALGLIB (ap.mqh)
В этой статье представлен ap.mqh, порт ALGLIB для MQL5, и продемонстрировано его использование в многоактивных сценариях работы, требующих надежной линейной алгебры. Рассматривается почему встроенных индикаторов недостаточно, а затем реализуются полиномиальная регрессия, индикатор скользящей корреляционной матрицы и адаптивный оценщик коэффициента хеджа с использованием гребневой регрессии с разложением Холецкого. Практический код показывает, как вычислять z-показатели спреда и согласованно исполнять парные сделки полностью в MetaTrader 5.
Нейросети в трейдинге: Управление риском через распределение результатов (AC-SRM)
Средняя доходность не показывает, как распределены возможные прибыли и убытки, а значит, скрывает часть риска торговой стратегии. AC-SRM переносит этот риск в сам процесс обучения: политика оценивается по распределению результатов через спектральную меру риска, а не только по среднему значению. Практическую реализацию начинаем с OpenCL-кернела FQF_DistributionTargetGradient, который выбирает ближайшего к цели представителя распределения и формирует градиенты его значения и вероятности, подготавливая распределительный Критик для дальнейшей риск-ориентированной оптимизации.
Использование Экономического календаря MQL5 для фильтрации новостей (Часть 1): Реализация временных окон до и после новостей в MQL5
Мы разработаем новостной фильтр на основе календаря на языке MQL5 без веб-запросов и внешних DLL. В части 1 рассматриваются загрузка и кэширование событий, сопоставление символов с валютами, фильтрация по уровню важности, определение окон до и после новостей, блокировка открытия новых сделок во время активного новостного периода и опциональное закрытие позиций перед новостью. В результате получается настраиваемый защитный механизм, совместимый с требованиями проп-фирм, который сокращает число ошибочных пауз в торговле и защищает входы в сделки в периоды волатильности.
Как реализовать прогнозирование с помощью AutoARIMA в MQL5
В статье представлена реализация алгоритма AutoARIMA на языке MQL5, позволяющего строить модели ARIMA без ручной настройки. Метод оценивает d с помощью эвристики на основе дисперсии, подгоняет модель ARMA(p,q) посредством градиентной оптимизации с Adam и выбирает p и q по AICc. Код возвращает одношаговый прогноз цены, полученный путем дифференцирования, оценки модели и восстановления ряда до уровня цены, и может быть сразу вызван для ряда Close.
Нейросети в трейдинге: Управление риском через распределение результатов (Объект верхнего уровня)
Продолжаем адаптацию AC-SRM для задач финансовых рынков и вводим нейронный слой для риск-чувствительной оценки распределения возможных результатов. CNeuronACSRM упорядочивает прогнозируемые исходы, корректно выделяет нижний хвост распределения и возвращает градиенты в исходную индексацию FQF. В статье разбираются архитектура слоя, прямой и обратный проходы, а также влияние вероятностей на итоговую спектральную оценку риска.
Освоение массивов премии и дисконта: Оптимизация торговли по дисбалансам в PD-массивах
В этой статье рассматривается специализированный трендовый советник, а также подробно объясняется, как формировать и использовать торговые сетапы, возникающие на основе дисбалансов, обнаруженных в PD-массивах. В этой статье будет подробно рассмотрен советник, специально разработанный для трейдеров, которые стремятся оптимизировать и использовать PD-массивы и дисбалансы в качестве критериев входа в сделки и принятия торговых решений. Кроме того, в статье будет рассмотрено, как правильно размечать и оценивать премиальные и дисконтные массивы, как подтверждать их валидность и использовать каждый из них в соответствующих рыночных условиях, чтобы по максимуму использовать возникающие в таких сценариях возможности.