Торговые инструменты на MQL5 (Часть 17): Изучение векторных скругленных прямоугольников и треугольников
В этой статье мы рассматриваем векторные методы для рисования скругленных прямоугольников и треугольников в MQL5 с использованием canvas и суперсэмплирования для сглаживания изображения. Мы реализуем заливку методом сканирования строк, геометрические предварительные вычисления для дуг и касательных, а также рисование границ для создания плавных, настраиваемых фигур. Такой подход закладывает основу для современных элементов пользовательского интерфейса в будущих торговых инструментах, поддерживающего входные параметры для установки размеров, радиусов, рамок и прозрачности.
Создание самооптимизирующихся советников на MQL5 (Часть 7): Одновременная торговля на нескольких периодах
В этой серии статей мы рассмотрели несколько различных способов определения наилучшего периода для использования наших технических индикаторов. Сегодня мы покажем, как применить противоположную логику, то есть, вместо выбора единственного наиболее подходящего периода, мы покажем, как эффективно использовать все доступные периоды. Такой подход сокращает объем отбрасываемых данных и предлагает альтернативные варианты использования алгоритмов машинного обучения, выходящие за рамки обычного прогнозирования цен.
Автоматизация торговых стратегий в MQL5 (Часть 25): Советник для торговли по линиям тренда с аппроксимацией методом наименьших квадратов и динамической генерацией сигналов
В данной статье мы разрабатываем программу для торговли по линиям тренда, которая использует аппроксимацию методом наименьших квадратов (least squares fit) для определения линий поддержки и сопротивления, генерируя динамические сигналы на покупку и продажу при касании ценой этих линий и открывая позиции по полученным сигналам.
Повторное использование нарушенных ордер-блоков в качестве блоков смягчения (SMC)
В этой статье мы рассмотрим, как ранее ставшие недействительными ордер-блоки можно повторно использовать в качестве блоков смягчения последствий в рамках «Концепции умных денег» (Smart Money Concepts, SMC). Эти зоны показывают, где институциональные трейдеры повторно входят на рынок после неудачного ордер-блока, предоставляя зоны высокой вероятности продолжения торговли в рамках доминирующего тренда.
Улучшенная оптимизация сталкивающихся тел — Enhanced Colliding Bodies Optimization (ECBO)
В статье рассматривается алгоритм Colliding Bodies Optimization (CBO), основанный на физике одномерных столкновений тел. Базовая версия алгоритма не содержит настраиваемых параметров, что делает её простой. Поэтому за основу реализации была взята расширенная версия ECBO, дополненная памятью столкновений и механизмом кроссовера, что позволило алгоритму показать достойные результаты и занять место в рейтинговой таблице.
Нейросети в трейдинге: Многодоменная архитектура анализа финансовых данных (Основные компоненты)
В статье продолжается перенос подходов фреймворка MDL в область решения задач финансовых рынков. Рассмотрены модули унифицированной токенизации разнородных данных, доменно-ориентированного внимание и Feature Self-Iteration, позволяющий эффективнее работать с историей признаков. Особое внимание уделено архитектурным решениям, снижающим вычислительную нагрузку и сохраняющим рыночный контекст в процессе анализа.
Разработка инструментария для анализа Price Action (Часть 34): Построение прогнозных моделей на основе необработанных рыночных данных с помощью усовершенствованного пайплайна загрузки данных
Случалось ли вам пропустить внезапный рыночный всплеск или оказаться застигнутым врасплох, когда такой всплеск происходил? Лучший способ заранее распознавать события в реальном времени – учиться на исторических паттернах. Если вы хотите обучить модель машинного обучения, в этой статье сначала показано, как создать скрипт для MetaTrader 5, который собирает исторические данные и отправляет их в Python для хранения, закладывая основу системы обнаружения всплесков. Читайте дальше, чтобы увидеть каждый шаг на практике.
Возможности Мастера MQL5, которые вам нужно знать (Часть 64): Использование паттернов каналов Демарка и конвертов с ядром белого шума
Осциллятор Демарка (DeMarker Oscillator) и конверты (Envelopes) — это инструменты, определяющие импульс и уровни поддержки/сопротивления, которые можно использовать в паре при разработке советника. В предыдущей статье были представлены эти два индикатора. Здесь же мы добавим к ним машинное обучение. Мы используем рекуррентную нейронную сеть, которая применяет ядро белого шума (white-noise kernel) для обработки векторизованных сигналов от этих двух индикаторов. Это делается в пользовательском файле класса сигналов (signal class), который взаимодействует с Мастером MQL5 для создания советника.
Роевой оптимизатор с иерархией суброев — Flock by Leader
Мы строим и реализуем в MQL5 алгоритм Flock by Leader: суброи формируются по метрике ARF, лидер определяется по лучшему личному рекорду, а не по положению центроида. Приводим формулы обновления для ролей роя и механизм separation. Класс C_AO_FBL совместим с тестовым стендом и проверен на функциях Hilly, Forest и Megacity в размерностях 10–1000 координат, что упрощает воспроизведение и сравнение.
Создание торговой панели администратора на MQL5 (Часть XII): Интеграция форекс-калькулятора
Точный расчет ключевых торговых показателей — неотъемлемая часть рабочего процесса каждого трейдера. В этой статье мы рассмотрим интеграцию мощного инструмента — форекс-калькулятора — в панель управления торговлей, что еще больше расширит функциональность нашей многопанельной системы администратора трейдера. Эффективное определение риска, размера позиции и потенциальной прибыли имеет важное значение при совершении сделок, и эта новая функция призвана сделать этот процесс более быстрым и интуитивно понятным прямо в панели. Присоединяйтесь к нам, чтобы изучить практическое применение MQL5 при создании продвинутых торговых панелей.
Моделирование рынка (Часть 12): Сокеты (VI)
В данной статье мы рассмотрим, как решить некоторые проблемы и вопросы, возникающие при использовании кода, написанного на Python внутри других программ. А если говорить более конкретно, то мы покажем распространенную проблему, возникающую при использовании Excel в связке с MetaTrader 5, хотя для этого общения мы будем использовать Python. Однако у данной реализации есть небольшой недостаток. Это происходит не во всех, а только в некоторых конкретных случаях. Когда это происходит, необходимо понять причину. В сегодняшней статье мы начнем объяснять, как решить эту проблему.
MetaTrader 5: конструируйте рынок под стратегию — Renko/Range/Volume, синтетика и стресс-тесты на пользовательских символах
Показываем, как с помощью API пользовательских символов MetaTrader 5 превратить терминал в конструктор данных: генерировать вне‑временные графики Renko, Range и Equal‑Volume и собирать синтетические инструменты. Разбираем агрегацию тиков и модификацию истории для стресс‑тестов (расширение спреда, изменение стоп‑уровней) с учетом ограничений платформы. Даем практику работы с CiCustomSymbol и маршрутизацией приказов на реальный символ через обертку CustomOrder, с готовыми фрагментами кода.
Нейросети в трейдинге: Внимание, память и рыночные паттерны в GDformer
Статья разбирает архитектуру GDformer применительно к алгоритмическому трейдингу. Показано, как обучаемая память, Dictionary-based Cross-Attention и Similarity Branch помогают сопоставлять текущее состояние рынка с выученными режимами и оценивать степень надёжности интерпретации. Дана реализация прямого прохода механизма внимания в OpenCL с использование разреженных коэффициентов без повторного перенормирования, что повышает устойчивость модели и эффективность на длинных последовательностях.
Разработка инструментария для анализа Price Action (Часть 28): Инструмент для торговли пробоя диапазона открытия
В начале каждой торговой сессии направление рынка часто становится понятным только после того, как цена выходит за пределы диапазона открытия. В этой статье мы разберем, как создать советник на MQL5, который автоматически обнаруживает и анализирует пробои диапазона открытия, предоставляя своевременные сигналы на основе данных для более уверенных внутридневных входов.
Архитектура системы машинного обучения в MetaTrader5 (Часть 5): Последовательный бутстреппинг— устранение смещения меток и повышение доходности
Последовательный бутстреппинг меняет подход к бутстреп-выборке в финансовом машинном обучении, активно избегая временных перекрытий в метках. Это обеспечивает более независимые обучающие выборки, более точные оценки неопределенности и более надежные торговые модели. В этом практическом руководстве объясняется интуитивная основа метода, пошагово разбирается алгоритм, приводятся оптимизированные паттерны кода для работы с большими массивами данных, а также демонстрируется измеримый прирост эффективности с помощью симуляций и реальных бэктестов.
Возможности Мастера MQL5, которые вам нужно знать (Часть 61): Использование паттернов ADX и CCI с обучением с учителем
Осцилляторы ADX и CCI — это индикаторы следования за трендом и импульса, которые можно использовать в паре при разработке советника. Мы рассмотрим, как их можно систематизировать, используя все 3 основных режима машинного обучения. Созданные с помощью Мастера советники позволяют нам оценить паттерны, представленные этими двумя индикаторами. Начнем с рассмотрения того, как к этим паттернам можно применить обучение с учителем.
Создание самооптимизирующихся советников на MQL5 (Часть 13): Введение в теорию управления с использованием факторизации матриц
Финансовые рынки непредсказуемы, и торговые стратегии, которые в прошлом казались прибыльными, зачастую терпят крах в реальных рыночных условиях. Это происходит потому, что большинство стратегий после внедрения остаются неизменными и не могут адаптироваться или извлекать уроки из своих ошибок. Заимствуя идеи из теории управления, мы можем использовать контроллеры с обратной связью, чтобы наблюдать за тем, как наши стратегии взаимодействуют с рынками, и корректировать их поведение с целью обеспечения прибыльности. Наши результаты показывают, что добавление контроллера с обратной связью к простой стратегии скользящего среднего позволило увеличить прибыль, снизить риск и повысить эффективность, что свидетельствует о значительном потенциале данного подхода для применения в торговле.
Генеративно-состязательные сети (GAN) для синтетических данных в сфере финансового моделирования (Часть 2): Создание синтетического символа для тестирования
В этой статье мы создаем синтетический символ с использованием генеративно-состязательной сети (GAN), которая включает в себя генерацию реалистичных финансовых данных, имитирующих поведение реальных рыночных инструментов, таких как EURUSD. Модель GAN изучает закономерности и волатильность на основе исторических рыночных данных и создает синтетические ценовые данные с аналогичными характеристиками.
Создание самооптимизирующихся советников на MQL5 (Часть 8): Анализ нескольких стратегий (3) — Политика взвешенного голосования
В этой статье исследуется, как определение оптимального количества стратегий в ансамбле может стать сложной задачей, которую проще решить с помощью генетического оптимизатора MetaTrader 5. Сеть MQL5 Cloud также используется как ключевой ресурс для ускорения бэктестинга и оптимизации. В целом, наше обсуждение здесь подготавливает почву для разработки статистических моделей, позволяющих оценивать и улучшать торговые стратегии на основе результатов работы нашего первоначального ансамбля.
Нейросети в трейдинге: Потоковые модели с остаточной высокочастотной адаптацией (модуль HTR)
Продолжаем работу над реализацией подходов, предложенных авторами фреймворка ResFlow. В статье представлена реализация высокочастотного модуля HTR. В нем контекст и локальная динамика приводятся к сопоставимому виду, проходят рекуррентный блок, а затем формируют согласованное внутреннее представление потока.
Архитектура машинного обучения в MetaTrader 5 (Часть 6): Проектирование системы кэширования промышленного уровня
Устали смотреть на индикаторы выполнения вместо того, чтобы тестировать торговые стратегии? Традиционное кэширование не подходит для финансового машинного обучения, что приводит к потере результатов вычислений и вынуждает вас к повторному запуску, что вызывает раздражение. Мы разработали сложную архитектуру кэширования, учитывающую специфику финансовых данных — временные зависимости, сложные структуры данных и постоянную угрозу смещения look-ahead. Наша трёхслойная система обеспечивает значительное повышение скорости, автоматически отбрасывая устаревшие результаты и предотвращая утечку ценных данных. Хватит ждать результатов расчетов — начинайте действовать в темпе, которого требуют рынки.
Нейросети в трейдинге: Адаптивная факторная токенизация (MTmixAtt)
Статья разбирает архитектуру MTmixAtt для адаптивной структуризации признаков и показывает первый шаг практической реализации в MQL5 — модуль AutoToken. Описаны выравнивание эмбеддингов, матрица выбора, механизм Top‑K и разреженная селекция. Приведен класс CNeuronAutoToken на базе OpenCL. Читатель получает работающий блок компрессии признакового пространства и основу для дальнейшего смешивания токенов и MoE.
Нейросети в трейдинге: Оценка риска по несогласованности представлений (Основные компоненты)
В статье реализована адаптация ReGEN-TAD под MQL5: риск трактуется как согласованность двух путей анализа — трансформера (контекст) и рекуррентной сети (динамика). Введён модуль токенизации разности, который формирует токен риска в общем пространстве признаков и передаёт его в последующие решения. Практический итог — готовые блоки для интеграции оценки уверенности в советники и для последующего обучения и тестирования.
Неопределенность как модель (Часть 3): Математическая статистика — как извлекать знания из данных
В данной части цикла разбираются механизмы Закона больших чисел (ЗБЧ) и Центральной предельной теоремы (ЦПТ) как теоретической основы для понимания рыночных закономерностей. Описывается инструментарий описательной статистики и методы нахождения точечных и интервальных оценок параметров распределений. Особое внимание уделено методологии проверки статистических гипотез, позволяющей объективно отделять истинные рыночные аномалии от случайного шума. Каждое теоретическое построение сопровождено практическим примером в приложении, что позволяет закрепить материал на конкретных данных.
Разработка системы репликации (Часть 61): Нажатие кнопки воспроизведения в сервисе (II)
В данной статье мы рассмотрим изменения, которые позволят системе репликации/моделирования работать более эффективно и безопасно. Также я не оставлю без внимания тех, кто хочет извлечь максимум пользы из использования классов. Кроме того, рассмотрим специфическую проблему в MQL5, которая снижает производительность кода при работе с классами, и объясним, как ее решить.
Нейронные сети на практике: Практика ведет к совершенству
В сегодняшней статье мы рассмотрим, как простое изменение кода, позволяющее сделать нейрон немного более специализированным, может значительно ускорить этап обучения. Ведь, как только нейрон или нейронная сеть (как мы увидим позже) будет обучена, работа, которую она выполняет, станет намного быстрее. Мы также расскажем о проблеме, которая существует, но о которой мало кто говорит.
Возможности Мастера MQL5, которые вам нужно знать (Часть 63): Использование паттернов каналов Демарка и конвертов
Осциллятор Демарка (DeMarker Oscillator) и конверты (Envelopes) — это инструменты, определяющие импульс и уровни поддержки/сопротивления, которые можно использовать в паре при разработке советника. Поэтому мы рассматриваем каждый паттерн отдельно, чтобы определить, что может быть полезным, а чего потенциально следует избегать. Как всегда, мы используем советник, собранный в Мастере, вместе с функциями паттернов, встроенными в класс сигналов советника (Expert Signal).
Алгоритм Цветовой Гармонии — Color Harmony Algorithm (CHA)
Разбираем алгоритм цветовой гармонии (CHA) — метаэвристику оптимизации, опирающуюся на теорию цветовой гармонии Манселла. Показываем устройство круга тонов, шаблоны гармонии, чередование фаз концентрации и рассеивания, а также роль памяти решений. От теоретического каркаса до рабочей реализации на MQL5 и честного тестирования на стандартном бенчмарке.
3D-визуализация без внешних библиотек: как MetaTrader 5 раскрывает результаты оптимизации через MQL5 + DX11
Описывается практическое применение DirectX 11 и встроенных средств MQL5 для создания 3D-визуализаций и интерактивных интерфейсов в MetaTrader 5. В центре внимания — когнитивная эффективность: как объемные графики и управляемые сцены помогают понять данные оптимизации, кластеры ликвидности и многомерные торговые сценарии. Последовательно разбираются основы DX-конвейера, работа с шейдерами, привязка событий мыши и клавиатуры, а также объективные технологические ограничения. Материал адресован MQL5-разработчикам и алготрейдерам, готовым превратить метрики стратегий в понятные аналитические 3D-ландшафты, где визуальный слой работает на ускорение принятия решений.
Моделирование рынка (Часть 05): Создание класса C_Orders (II)
В данной статье я расскажу, как Chart Trade вместе с советником будет обрабатывать запрос на закрытие всех открытых позиций пользователя. Звучит просто, но есть несколько осложняющих моментов, и нужно знать, как управлять ими.
Преодоление ограничений машинного обучения (Часть 8): Непараметрический выбор стратегии
В этой статье показано, как настроить модель "черного ящика" для автоматического выявления сильных торговых стратегий, используя подход, основанный на данных. Используя взаимную информацию для определения приоритетов наиболее удобных для изучения сигналов, мы можем создавать более интеллектуальные и адаптивные модели, превосходящие традиционные методы. Читатели также научатся избегать распространенные подводные камни, такие как чрезмерное доверие к показателям поверхностного уровня, а вместо этого разрабатывать стратегии, основанные на значимой статистической информации.
Как обучить MLP на признаках марковской цепи в MQL5
Статья описывает двухуровневый индикатор MarkovMLPOscillator: трехсостоянная марковская цепь на истории строит матрицу переходов и формирует 15 вероятностных признаков для каждого бара, а MLP обучается на них и прогнозирует направление через заданный горизонт. Рассмотрены генерация признаков, схема валидации на отложенной выборке и настройки параметров. Результат — интерпретируемый осциллятор с цветовой гистограммой, сглаженным сигналом и отображением текущей матрицы переходов.
От матриц к модели: Как запустить ML-пайплайн в MQL5 и довести его до ONNX
Показано, как организовать согласованный ML-конвейер в MetaTrader 5 с разделением ролей: Python обучает и экспортирует модель в ONNX, MQL5 воспроизводит нормализацию и PCA через matrix/vector и выполняет инференс. Такой подход делает входы модели стабильными и проверяемыми, а тестер стратегий MetaTrader 5 даёт метрики для анализа поведения системы.
Разработка системы репликации (Часть 58): Возвращаемся к работе над сервисом
После перерыва в разработке и улучшении сервиса, используемого для репликации/моделирования, сегодня мы возобновляем над ним работу. Теперь, когда мы отказались от использования таких ресурсов, как глобальные переменные терминала, нам придется полностью реструктурировать некоторые его части. Не волнуйтесь, этот процесс будет подробно объяснен, чтобы каждый мог следить за разработкой нашего сервиса.
Моделирование рынка (Часть 18): Первые шаги на SQL (I)
Неважно, какую программу SQL мы будем использовать: MySQL, SQL Server, SQLite, OpenSQL или другую. У всех есть что-то общее, а этот общий элемент — язык SQL. Даже если мы не собираемся использовать WorkBench, можно манипулировать или работать с базой данных непосредственно в MetaEditor или через MQL5 для выполнения действий в MetaTrader 5, но для этого вам понадобятся знания SQL. Итак, здесь мы выучим, как минимум, основы.
Разработка инструментария для анализа Price Action (Часть 40): ДНК-профиль рынка
В этой статье рассматривается уникальный профиль каждой валютной пары через призму исторической динамики ее цены. Вдохновляясь концепцией генетической ДНК, которая задает уникальный генетический код каждого живого существа, мы применяем аналогичный подход к рынкам, рассматривая динамику цены как "ДНК" каждой валютной пары. Анализируя такие структурные характеристики, как волатильность, свинги, откаты, всплески и особенности сессий, инструмент выявляет базовый профиль, который отличает одну пару от другой. Этот подход дает более глубокое понимание поведения рынка и помогает трейдерам системно соотносить стратегии с естественными склонностями каждого инструмента.
Алгоритм оптимизации быков — Bull Optimization Algorithm (BOA)
Представляем эволюционный алгоритм без оператора селекции: лучшая особь становится единственным партнёром по скрещиванию для всей популяции, а классическая мутация заменена мультипликативной с самонастраивающимся шагом. В статье разбираем три ключевые идеи, реализуем алгоритм на MQL5 во фреймворке C_AO и проверяем его на стандартном стенде и античитер-тесте — где BOA вплотную приближается к порогу топ-45, но не входит в рейтинг.
Преодоление ограничений машинного обучения (Часть 6): Эффективная кросс-валидация исторической памяти рынка
В этом обсуждении мы противопоставим классический подход к кросс-валидации временных рядов современным альтернативам, бросающим вызов его основным допущениям. Мы выявляем ключевые «слепые зоны» традиционной кросс-валидации, особенно её неспособность учитывать меняющиеся рыночные условия. Для устранения этих пробелов мы внедряем эффективную кросс-валидацию исторической памяти рынка (Effective Memory Cross-Validation, EMCV) - подход, ориентированный на предметную область, ставящий под сомнение устоявшееся мнение о том, что увеличение объема исторических данных всегда повышает показатели результатов.
Архитектура системы машинного обучения в MetaTrader 5 (Часть 2): Маркировка финансовых данных для машинного обучения
Во второй части серии «MetaTrader 5 и машинное обучение: практическое руководство» вы узнаете, почему простые метки могут сбивать ваши модели с толку — и как применять продвинутые техники, такие как метод тройных барьеров и сканирование тренда, для создания надежных и учитывающих риски целевых показателей. Наполненное практическими примерами на Python, оптимизирующими эти вычислительно сложные методы, это практическое руководство показывает, как преобразовать зашумленные рыночные данные в достоверные метки, отражающие реальные условия торговли.
Торговые инструменты на MQL5 (Часть 16): Улучшенное сглаживание методом суперсэмплинга (SSAA) и рендеринг в высоком разрешении
Мы добавляем сглаживание на основе суперсэмплинга и рендеринг высокого разрешения на панель Canvas на MQL5, а затем понижаем дискретизацию до целевого размера. В статье реализованы закругленные прямоугольные заливки и границы, закругленные треугольные стрелки и пользовательская полоса прокрутки с темой оформления для статистических и текстовых панелей. Эти инструменты помогут вам создать более плавные и разборчивые компоненты пользовательского интерфейса в MetaTrader 5.