Возможности Мастера MQL5, которые вам нужно знать (Часть 79): Использование осцилляторов Gator и A/D в обучении с учителем
В предыдущей статье мы завершили рассмотрение сочетания осцилляторов Gator и накопления/распределения при их обычном использовании на основе генерируемых ими необработанных сигналов. Эти индикаторы дополняют друг друга: Gator служит индикатором тренда, а осциллятор накопления/распределения – индикатором объема. Теперь мы продолжим эту тему и рассмотрим, как обучение с учителем может улучшить некоторые из ранее изученных сигнальных паттернов. В нашем подходе к обучению с учителем используется сверточная нейронная сеть (CNN), в которой ядерная регрессия и сходство по скалярному произведению применяются для выбора размеров ядер и количества каналов. Как всегда, мы реализуем это в пользовательском файле класса сигнала, который взаимодействует с Мастером MQL5 при сборке советника.
Возможности Мастера MQL5, которые вам нужно знать (Часть 80): Использование паттернов Ишимоку и ADX Уайлдера в обучении с подкреплением TD3
Эта статья продолжает тему части 74, где мы рассматривали сочетание Ишимоку и ADX в рамках обучения с учителем, перенося фокус на обучение с подкреплением. Индикаторы Ишимоку и ADX дополняют друг друга: первый помогает строить карту уровней поддержки и сопротивления, а второй – определять силу тренда. В этой статье мы рассмотрим, как можно использовать алгоритм Twin Delayed Deep Deterministic Policy Gradient (TD3) с этим набором индикаторов. Как и в предыдущих частях серии, реализация выполняется в пользовательском классе сигнала, предназначенном для интеграции с Мастером MQL5, что упрощает сборку советника.
Изучение Стандартной библиотеки MQL5 (Часть 3): Советник на основе канала стандартного отклонения
В этом обсуждении мы будем разрабатывать советник, используя классы CTrade и CChartObjectStdDevChannel, и применим несколько фильтров для повышения потенциальной прибыльности. На этом этапе мы применим на практике то, что обсуждали ранее. Кроме того, я представлю еще один простой подход, который поможет вам лучше понять стандартную библиотеку MQL5 и лежащую в ее основе кодовую базу. Присоединяйтесь, чтобы посмотреть, как эти идеи работают на практике.
Анализ CSV-данных (Часть 5): Потоковая передача CSV-данных в реальном времени из активных сессий MetaTrader 5
В статье описывается фреймворк экспорта данных в реальном времени для MetaTrader 5, построенный на основе слабо связанной трёхуровневой архитектуры. Компонент MQL5 пакетирует записи по барам и тикам с помощью буфера записи и ежедневно выполняет ротацию CSV-файлов; демон Python читает поток дописываемых данных в режиме tail, отображает панель мониторинга в реальном времени и отмечает превышения порогов аномалий. Демонстрационный индикатор показывает точки интеграции, обеспечивая мониторинг в реальном времени, прозрачность и прослеживаемость во время торговых сессий.
Автоматизация торговых стратегий на MQL5 (Часть 37): Поиск дивергенций и конвергенций RSI с визуализацией на графике
В этой статье мы создадим советник на MQL5, который определяет обычные дивергенции RSI по свинговым точкам с заданным параметром силы, ограничениями по числу баров и допуском. Он открывает позиции по бычьим и медвежьим сигналам с фиксированным объёмом позиции, уровнями Stop Loss и Take Profit в пунктах (pips) и опциональным трейлинг-стопом. На графике отображаются цветные линии и подписи свинговых точек, чтобы лучше видеть логику работы стратегии.
Династический алгоритм — Dynastic Optimization Algorithm (DOA)
В статье реализован и разобран Dynastic Optimization Algorithm в рамках фреймворка C_AO на MQL5. Мы воспроизводим каноническую модель, закрываем неописанные в первоисточниках места и тестируем алгоритм на стенде с фиксированным бюджетом и ростом размерности. Показана причина деградации каноники и предложена модификация оператора с разреженной мутацией. Читатель получит рабочий класс и рекомендации по настройке для задач с дискретными параметрами.
Встраивание торговой дисциплины в код (Часть 7): Автоматизация защиты эквити с помощью логики управления
Автоматизированные торговые системы часто уделяют большое внимание генерации сигналов, пренебрегая механизмами, необходимыми для защиты капитала в периоды стресса. В данной статье представлен фреймворк управления эквити в MQL5, который отслеживает условия просадки, оценивает нагрузку на эквити и динамически управляет торговой активностью с помощью модели управления рисками, основанной на состояниях. Объединяя анализ просадки, логику охлаждения, авторизацию сделок и ограничения на исполнение, эта структура демонстрирует, как торговая дисциплина может быть непосредственно встроена в код с использованием модульной и расширяемой архитектуры.
Кооперация бионических алгоритмов — Co-Operation of Biology Related Algorithms (COBRA)
В статье реализована кооперативная метаэвристика COBRA во фреймворке C_AO: шесть популяционных методов (PSO, WPS, FFA, CSA, BA, FSS) работают в одной популяции при фиксированном бюджете обращений к целевой функции и экспериментально выясняем, на чём на самом деле держится кооперация. В комплекте — расширяемый класс для сборки собственных кооперативных портфелей из любых алгоритмов серии.
ARD-регрессия на MQL5: автоматический отбор признаков и случайные признаки Фурье
Статья посвящена ARD-регрессии как байесовскому методу отбора признаков и применению случайных признаков Фурье (Random Fourier Features) для учета нелинейностей в рамках линейной модели. К статье прилагаются классы ARDRegression и CRBFSampler. Проводится сравнительный анализ точности и производительности реализации на MQL5 с эталонным классом из библиотеки scikit-learn.
Возможности Мастера MQL5, которые вам нужно знать (Часть 81): Использование паттернов Ишимоку и ADX Уайлдера в обучении на основе β-VAE-инференса
Эта статья продолжает часть 80, в которой мы рассмотрели сочетание индикаторов Ишимоку и ADX в рамках обучения с подкреплением. Теперь перейдем к обучению на основе инференса. Как уже отмечалось, Ишимоку и ADX дополняют друг друга. Однако мы вновь обратимся к выводам предыдущей статьи об использовании пайплайнов. Для обучения на основе инференса применяем β-вариант вариационного автокодировщика (Variational Auto Encoder, VAE). Также используем пользовательский класс сигнала, предназначенный для интеграции с Мастером MQL5.
Анализ CSV-данных (Часть 4): Разработка автоматизированного Python-решения для сравнительного анализа и валидации стратегий MQL5
В статье представлен воспроизводимый пайплайн передачи данных из MetaTrader 5 в Python для масштабного исследования индикаторов. Схема экспорта MQL5 фиксирует обязательные столбцы, включая пользовательские счётчики задержки и ложных срабатываний. Базовый модуль выполняет сопоставление результатов с одинаковыми параметрами по инструментам и таймфреймам, а модуль walk-forward-валидации жёстко фиксирует оптимум, найденный на окне InSample, и оценивает его на ранее не виденных данных OutSample OutSample. В результате читатель получает несмещённые метрики устойчивости и автоматизацию, устраняющую смещение из-за ручного отбора.
От начального до среднего уровня: Очереди, списки и деревья (I)
В данной статье мы начнем изучать небольшую серию концепций, имеющих огромное значение для тех, кто действительно хочет научиться программировать правильно. Поскольку вначале это может показаться очень сложным, несмотря на то что в основе лежат простые элементы, мы будем разбирать материал постепенно. Итак, давайте начнём разбираться, что такое очереди данных.
Автоматизация торговых стратегий на MQL5 (Часть 34): Система пробоя линии тренда с оценкой качества аппроксимации по коэффициенту R2
В этой статье мы разработаем на MQL5 систему пробоя линии тренда, которая определяет линии поддержки и сопротивления по свинговым точкам (локальным экстремумам). Надежность линий будет оцениваться по коэффициенту детерминации R², а также по ограничениям на угол наклона. После проверки система сможет автоматически открывать сделки на пробое. Мы будем находить локальные максимумы и минимумы в пределах заданной глубины анализа, строить линии тренда с минимально допустимым количеством касаний и оценивать их надежность по коэффициенту детерминации R² и углу наклона.
Анализ CSV-данных (Часть 3): Построение аналитического пайплайна на Python для CSV-экспорта из MetaTrader 5
MetaTrader 5 предоставляет обширные данные о результатах, но ограниченные возможности структурного анализа. В статье показано, как экспортировать результаты из MQL5 в CSV и построить пять визуализаций на Python, раскрывающих согласованность параметров между активами, компромисс между задержкой и шумом, деградацию результатов при walk-forward-валидации, распределение глубины и длительности просадок, а также внутридневные кластеры по часам и дням недели. Единый модуль автоматизации запускает полный пайплайн для каждого нового файла экспорта и обеспечивает воспроизводимую диагностику.
Изучение Стандартной библиотеки MQL5 (Часть 2): Интеграция и связывание компонентов
Сегодня мы делаем важный шаг к тому, чтобы помочь каждому разработчику понять, как читать структуры классов и быстро создавать советники с помощью стандартной библиотеки MQL5. Библиотека богата и расширяема, но при этом может показаться, что вам вручили сложный набор инструментов без руководства. Здесь мы делимся и обсуждаем альтернативный алгоритм интеграции — краткий, повторяемый рабочий сценарий, демонстрирующий, как надежно связывать классы в реальных проектах.
Моделирование рынка: Position View (XII)
В этой статье вы научитесь создавать визуальный сигнал на своей торговой платформе, чтобы прямо на графике определять, является ли позиция длинной или короткой, без необходимости обращаться к терминалу. Кроме того, в тексте рассматривается реализация функциональности, которая улучшает отображение при перемещении линий тейк-профита и стоп-лосса, скрывая горизонтальную линию, следующую за курсором мыши, во время перемещения этих линий во избежание путаницы. Чтение предлагает практические знания для настройки систем моделирования рынка.
От начального до среднего уровня: Очереди, списки и деревья (III)
В этой статье мы сделаем следующий шаг в понимании того, что такое связный список и как он работает. Хотя содержание данной статьи может показаться довольно сложным и запутанным для новичков, я постараюсь объяснить его максимально доступным языком. Это поможет вам понять, почему и когда следует использовать связные списки.
Нейросети в трейдинге: Долговременная память торговых сценариев (VLADriver-RAG)
Описан перенос идей фреймворка VLADriver-RAG в торговые задачи: добавляется внешняя память завершённых эпизодов поверх нейросетевой политики. Формируется ячейка памяти с эмбеддингом рыночной сцены, нормированным действием и результатом, а близкие случаи группируются в центроиды сценария и действия. Реализованы ядра для косинусного скоринга и поиска ближайшей пары, позволяющие искать и уплотнять опыт.
Разработка самовосстанавливающегося советника в MQL5 (Часть 2): Виртуальная защита сделок, устойчивая к перезапуску
Постройте уровень виртуальной защиты, устойчивый к перезапускам, поверх механизма персистентности SQLite из Части 1. Советник восстанавливает скрытые стоп-лосс и тейк-профит после перезапуска, сверяет текущую цену с восстановленными уровнями выхода и в зависимости от результата либо закрывает позиции, либо продолжает ими управлять. В результате формируется согласованный сценарий восстановления, который обнаруживает управляемые позиции и обеспечивает безопасное управление во время выполнения.
Моделирование рынка: Position View (XI)
В этой статье я покажу вам, уважаемый читатель, как можновыбирать объекты, которые мы создаём на графике модифицировать индикатор позиции, чтобы он мог выполнять гораздо больше функций, чем это было предусмотрено изначально. Мы рассмотрим, как реализовать возможность перемещения цен и создания ценовых линий непосредственно на графике. Многим это покажется сложным для решения. Однако вы увидите, что мы сделаем это с минимальными усилиями. Вам нужно всего лишь немного подумать.
Возможности Мастера MQL5, которые вам нужно знать (Часть 83): Использование паттернов стохастического осциллятора и FrAMA — поведенческие архетипы
Стохастический осциллятор и фрактальная адаптивная скользящая средняя образуют еще одну пару взаимодополняющих индикаторов, которую можно использовать в советнике MQL5. Стохастический осциллятор позволяет точно выявлять изменения моментума, а FrAMA подтверждает преобладающие тренды. Как и прежде, для изучения этой пары индикаторов используем Мастер MQL5, чтобы создать советник и проверить ее потенциал.
От начального до среднего уровня: Очереди, списки и деревья (IV)
В данной статье мы завершим раздел, посвященный реализации и объяснению связного списка. Однако представленная здесь реализация не включает в себя одну деталь, которую можно реализовать в связном списке. Обсудим это позже, в другой статье.
Возможности Мастера MQL5, которые вам нужно знать (Часть 82): Использование паттернов TRIX и WPR в обучении с подкреплением DQN
В предыдущей статье мы рассмотрели сочетание Ишимоку и ADX в рамках обучения на основе инференса. В этой статье мы вновь обращаемся к обучению с подкреплением применительно к паре индикаторов, которую уже рассматривали в части 68: TRIX и Williams Percent Range. В этой статье используем алгоритм алгоритм DQN с квантильной регрессией. Как обычно, представляем его в виде пользовательского класса сигнала, предназначенного для использования с Мастером MQL5.
Система аудита счета в MQL5 (Часть 1): Проектирование пользовательского интерфейса
В этой статье мы разработаем слой пользовательского интерфейса системы аудита счёта в MQL5 с использованием классов CChartObject. Создадим размещаемую на графике информационную панель, отображающую основные показатели: начальный и конечный баланс, чистую прибыль, общее количество сделок, число прибыльных и убыточных сделок, процент прибыльных сделок, выведенные средства и оценку эффективности в виде звёзд. Кнопка меню позволяет отображать и скрывать панель и восстанавливает торговлю в один клик. В результате получается удобная основа для дальнейшего развития системы аудита счёта.
Нейросети в трейдинге: Долговременная память торговых сценариев (RAG-память)
Статья продолжает адаптацию фреймворка VLADriver-RAG к задачам алгоритмической торговли и описывает переход от отдельной сценарной ячейки к ограниченной двухуровневой памяти. Рассматриваются добавление и консолидация завершённого опыта, многоэтапный GPU-поиск глобального Top-K и формирование RAG-токенов с параметрами действия, релевантностью и средним результатом. Память сохраняет опыт вне весов сети и возвращает Актёру компактный исторический контекст при предсказуемом времени чтения.
Изучение Стандартной библиотеки MQL5 (Часть 4): Создание библиотеки пользовательских сигналов
Сегодня мы используем стандартную библиотеку MQL5 для создания пользовательских классов сигналов и позволяем мастеру MQL5 собрать для нас профессиональный советник. Такой подход упрощает разработку, позволяя даже начинающим программистам создавать надежные советники без глубоких знаний в области программирования, сосредоточившись на настройке параметров и оптимизации стратегии. Давайте шаг за шагом разберем этот процесс.
Возможности Мастера MQL5, которые вам нужно знать (Часть 84): Использование паттернов стохастического осциллятора и FrAMA – Окончание
Стохастический осциллятор и фрактальная адаптивная скользящая средняя образуют пару взаимодополняющих индикаторов, которую можно использовать в советнике MQL5. Эту пару индикаторов мы представили в предыдущей статье, а теперь завершим ее рассмотрение, разобрав оставшиеся пять сигнальных паттернов. Как и прежде, для создания советника и проверки потенциала этой пары индикаторов используем Мастер MQL5.
Анализ CSV-данных (Часть 6): Нормализация результатов по нескольким брокерам и сверка CSV между платформами
В статье представлен фреймворк нормализации CSV-данных от нескольких брокеров. Подключаемый файл MQL5 дополняет экспорт брокерскими метаданными. Модуль Python устраняет расхождения схем — различия в разрядности котирования, соглашениях о пунктах, именовании символов, смещениях часовых поясов, моделях учёта комиссии и валютах номинирования счёта и прибыли — и формирует единый канонический набор данных. Сравнительные визуализации распределений проскальзывания и результатов после учёта издержек позволяют надёжно сопоставлять результаты стратегии между разными брокерскими средами без незаметного искажения данных.
Управление позициями: Пирамидальное наращивание прибыльных позиций при снижающемся риске
Представляем CPyramidBridge, тонкий слой на MQL5, который сопоставляет результаты определения размера ставки с CPyramidEngine. Этот мост применяет вероятностный подход к расчету начального объема позиции, обеспечивает входной контроль с учетом доступных лимитов, активирует добавления к позиции на основе динамической дивергенции, адаптирует трейлинг-стоп к оценкам резерва и синхронизирует сигналы на закрытии пирамиды, что позволяет советнику преобразовывать уверенность модели и текущую параллельную активность сигналов в структурированную пирамиду с уменьшающимся риском.
Алгоритм направления потока — Flow Direction Algorithm (FDA)
Подробно разбираем механику FDA и демонстрируем, как центровые и диагональные эффекты первоисточника завышают показатели. Честная реализация фиксирует уровень порядка 39.7% на стенде серии. Модификация FDAm с тяжелохвостым распределением зондов и покоординатным шагом повышает итог до 54.7% и доступна как готовый компонент C_AO для настройки параметров советников.
Автоматизация торговых стратегий в MQL5 (Часть 46): Снятие ликвидности после пробоя структуры (BoS)
В статье мы создадим на MQL5 систему снятия ликвидности после пробоя структуры (BoS). Она обнаруживает свинговые максимумы и минимумы на заданном количестве баров, присваивает им метки HH/HL/LH/LL для определения BoS и выявляет снятие ликвидности, когда тень свечи выходит за уровень соответствующего свинга, а бычья или медвежья свеча закрывается обратно в пределах этого уровня.
Автоматизация торговых стратегий в MQL5 (Часть 49): Разворотный паттерн "Квазимодо" (QM)
В статье мы создаём автоматическую программу MQL5, которая обнаруживает разворотный паттерн Квазимодо по зигзагу подтверждённых свинговых точек. Рассмотрим поиск свингов, активацию сетапа, вход на возврате к линии QM, структурный Stop Loss и расчёт объёма по риску. Также добавим перенос в безубыток, трейлинг-стоп и частичная фиксация прибыли для сопровождения открытых позиций.
От начального до среднего уровня: Классы (I)
В этой статье мы рассказываем, что такое класс и почему возникла эта концепция. Хотя тема интересна, здесь мы сосредоточимся на принципах, лежащих в основе программирования на MQL5. Эта статья — лишь введение.
Моделирование рынка: Position View (XIII)
В этой статье мы рассмотрим, как без особых усилий реализовать индикатор, который показывает, приносит ли позиция убытки или прибыль. Процедура проста и эффективна. Даже без глубоких знаний этот индикатор позволит вам легко распознавать, когда следует закрывать позицию. Так вы избежите неожиданных результатов, поскольку расчёт отражает фактический результат, который дало бы закрытие позиции.
Автоматизация торговых стратегий в MQL5 (Часть 50): Стратегия Turtle Soup на снятии ликвидности
В статье создаётся автоматическая программа MQL5 для торговли по стратегии Turtle Soup против ложных пробоев N-барных максимумов и минимумов. Реализуются обнаружение снятия ликвидности, подтверждающие закрытия обратно внутрь уровня, фильтры глубины и возраста экстремума, необязательная проверка тела разворотной свечи, динамические и статические стоп-лоссы, два режима тейк-профита, трейлинг по пунктам и наглядная разметка графика.
Создание торговых систем с искусственным интеллектом на MQL5 (Часть 5): Сворачиваемая боковая панель и всплывающие окна истории чатов
В части 5 серии о торговых системах с ИИ в MQL5 мы дополняем советник с интеграцией ChatGPT сворачиваемой боковой панелью. Малое и большое всплывающие окна истории упрощают и делают более плавным выбор чатов, при этом сохраняются обработка многострочного ввода, постоянное зашифрованное хранение чатов между сеансами и генерация ИИ торговых сигналов по данным графика.
Нейросети в трейдинге: Долговременная память торговых сценариев (Объект верхнего уровня)
В статье показано, как двухуровневая RAG-память включается в процесс выбора торгового действия через объект CNeuronVLADriverRAGMPI. Механизм сопоставляет текущие предпочтения Актёра с историческими действиями и их результативностью, ограничивает влияние слабых аналогий с помощью Null Scenario и формирует остаточную контекстную поправку. Такой подход позволяет учитывать положительный и отрицательный опыт, сохраняя приоритет текущего состояния рынка.
Моделирование рынка: Position View (XIV)
Теперь мы реализуем это решение, поскольку MQL5 следует тому же принципу, что и событийно-ориентированное программирование. Разработчики часто используют эту модель при создании DLL. Я знаю, что поначалу событийно-ориентированная модель работы покажется запутанной и лишённой логики. Но в этой статье я изложу принципы событийно-ориентированного программирования более понятно, чтобы вы, если только начинаете, правильно поняли, как оно работает. Понимание того, что я начну объяснять в этой статье, поможет вам в вашей жизни как программиста.
Создание и использование Скиллов для создания артефактов MQL
В статье показано, как использовать концепцию Скиллов в MetaTrader 5 для генерации MQL5‑скриптов с помощью встроенного AI Assistant и Model Context Protocol. Разбираем структуру файла Скилла SKILL.md, условие активации по тегу Artifact, проверку ТЗ, входных параметров и выбор шаблона. Результат — воспроизводимый процесс и единый стиль артефактов при меньших трудозатратах.