Разработка инструментария для анализа Price Action (Часть 66): Создание сканера паттерна "голова и плечи" с проверкой структуры на MQL5
Стабильно выявлять паттерны "голова и плечи" в рыночных данных в реальном времени достаточно трудно из-за шума и структурной неоднозначности. В этой статье представлен структурированный индикатор на языке MQL5 на основе треугольников, который выделяет компоненты паттерна, строит линию шеи и проверяет формации с использованием ATR, симметрии и ограничений наклона. Система обнаруживает и отображает стандартные и перевернутые паттерны, присваивает им оценку качества и подтверждает пробои с возможностью генерации алертов, обеспечивая последовательный анализ графиков на основе четких правил.
Изучение стандартной библиотеки MQL5 (Часть 7): Создание интерактивных меток позиций с помощью класса CCanvas
В этой статье мы рассмотрим, как создать инструмент визуализации информации о позициях, используя класс CCanvas из стандартной библиотеки MQL5. Этот проект укрепит ваши навыки работы с библиотечными модулями и дает трейдерам практический инструмент для визуализации открытых позиций и взаимодействия с ними непосредственно на графике в реальном времени. Присоединяйтесь к обсуждению и узнайте больше.
Создание пользовательских индикаторов в MQL5 (Часть 3): Улучшение многошкальной визуализации с секторным и круговым стилями
В этой статье мы расширяем индикатор со шкальной визуализацией в MQL5, добавляя поддержку нескольких осцилляторов и выбор отдельного или комбинированного отображения через перечисление. Мы вводим секторный и круглый стили шкал с помощью производных классов от базового класса шкалы, улучшая отрисовку корпуса шкалы дугами, линиями и полигонами для более аккуратного визуального представления.
Преодоление проблем доступности в торговых инструментах на MQL5 (Часть IV): Удаленная голосовая торговля
Узнайте о практическом способе выполнения сделок в MetaTrader 5 из голосовых сообщений Telegram с помощью промежуточного ПО на Python и советника MQL5, выступающего в качестве HTTP-клиента. В статье рассматриваются архитектура, опрос WebRequest, очереди в памяти, парсинг JSON с удалением нулевых символов-терминаторов и ограниченная грамматика команд с размером лота по умолчанию 0,001. Вы настроите среду и проверите задержку передачи данных, подходящую для мобильных интернет-соединений.
Свинговые экстремумы и откаты в MQL5 (Часть 2): Автоматизация стратегии с помощью советника
Индикатор свинговых экстремумов и откатов (Swing Extremes and Pullbacks) основан на рыночной структуре младшего таймфрейма и затем согласовывается со старшим таймфреймом. Он выявляет свинговые экстремумы, в которых цена становится статистически уязвимой к развороту. Он визуализирует зоны перерастяжения и отката, позволяя заранее оценить поведение цены при возврате к среднему.
Создание индикатора профиля объёма "Спектр ликвидности" (Liquidity Spectrum) на языке MQL5
Создайте в MQL5 профиль объёма «Спектр ликвидности», который распределяет объём по равным ценовым интервалам за выбранный период анализа с использованием цен закрытия свечей. В данном руководстве рассматриваются получение данных с помощью функций копирования, разбиение по ценовым интервалам и нормализация, а также отрисовка прямоугольников объёма и линий POC с использованием объектов графика и временных смещений для выявления на графике зон ликвидности с высокой активностью.
Разработка инструментария для анализа Price Action (Часть 68): Панель RSI с привязкой к цене на языке MQL5
Мы представляем встроенную в график панель RSI, которая устраняет необходимость в отдельном окне, привязывая данные о моментуме непосредственно к текущей цене. В статье рассматриваются концепция решения и код на MQL5: получение значений RSI в реальном времени, классификация сигналов по наклону и адаптивное позиционирование. Трейдеры получают значение RSI, состояние и силу сигнала прямо в точке принятия решения, что повышает ясность анализа на разных таймфреймах.
Разработка инструментария для анализа Price Action (Часть 53): Тепловая карта плотности паттернов для выявления зон поддержки и сопротивления
В этой статье представлен советник Pattern Density Heatmap – инструмент картирования ценовой динамики, который преобразует повторяющиеся обнаружения свечных паттернов в статистически значимые зоны поддержки и сопротивления. Вместо того чтобы рассматривать каждый сигнал по отдельности, советник агрегирует обнаружения в фиксированные ценовые зоны (бины), оценивает их плотность с опциональным взвешиванием по давности и подтверждает уровни по данным старшего таймфрейма. Полученная тепловая карта показывает уровни, на которые рынок исторически реагировал, и помогает заранее выбирать момент входа, управлять риском и повышать уверенность в стратегии независимо от стиля торговли.
Изучение стандартной библиотеки MQL5 (Часть 9): Использование ALGLIB для фильтрации избыточного числа сигналов пересечения скользящих средних
Во время боковых движений цены трейдеры сталкиваются с избыточными сигналами от множественных пересечений скользящих средних. Сегодня мы обсудим, как ALGLIB предварительно обрабатывает исходные данные о ценах для формирования отфильтрованных сигнальных серий пересечений, которые также могут генерировать оповещения при их возникновении. Давайте разберёмся, как можно использовать математическую библиотеку в программах на MQL5.
Разработка индикатора Volume Bubble на MQL5 с использованием стандартного отклонения
В статье показано, как создать индикатор Volume Bubble на MQL5, который визуализирует рыночную активность с использованием статистической нормализации. В нем рассматривается работа с тиковым и реальным объемом, вычисление среднего значения и стандартного отклонения по скользящему окну, а также нормализация значений объема для определения относительной силы. Вы реализуете графические объекты для отображения пузырьков с динамическими размером и цветом, обеспечивая наглядное представление интенсивности торговой активности прямо на графике
Индикатор Sigma Score для MetaTrader 5: Простой детектор статистических аномалий
Создайте практический индикатор Sigma Score для MetaTrader 5 с нуля и изучите, что он на самом деле измеряет – z-оценку логарифмических доходностей: на сколько стандартных отклонений последнее движение отличается от недавнего среднего. В статье рассматривается каждый блок кода в OnInit(), OnCalculate() и OnDeinit(), а также интерпретация пороговых значений, например ±2. Индикатор Sigma Score применяется как простой индикатор рыночного стресса для торговли на основе возврата к среднему и моментума.
Модульная архитектура индикаторов в MQL5 (Часть 1): Хватит копировать и вставлять — начните писать масштабируемый, переиспользуемый код
В статье разработан объектно-ориентированный каркас для индикаторов MQL5 путем преобразования примитивного примера в пригодные для постоянного использования модули. В ней формализуется частичный пересчет буфера в OnCalculate, логика переносится в классы, вынесенные в заголовочные файлы (CAppliedPrice, CSma), а также вводятся CSubIndiBase, CIndicatorBase и реестр для централизации требований. В результате получаются переносимые компоненты, изолированные входные параметры и аккуратно организованные буферы при минимуме шаблонного кода, что ускоряет сборку новых индикаторов и упрощает их обслуживание.
Мастер-класс по созданию пользовательских индикаторов (Часть 2): Разработка практического советника Supertrend на MQL5
Узнайте, как с нуля создать советник на основе индикатора Supertrend на языке MQL5. В статье рассматриваются встраивание индикатора в качестве ресурса, считывание значений его буферов на закрытых барах, обнаружение подтвержденных смен направления, приведение позиций в соответствие с сигналом и переворот позиций, а также настройка режимов стоп-лосса и размера позиции. В заключение рассматриваются настройка Тестера стратегий и проведение воспроизводимых тестов. В результате получается настраиваемый советник и четкая основа для дальнейших исследований и доработок.
Встраивание торговой дисциплины в код (Часть 6): Построение единого фреймворка дисциплины на MQL5
В статье представлен унифицированный фреймворк обеспечения дисциплины на MQL5, которая объединяет модули белого списка символов, торговых часов и новостных фильтров, а также ежедневных лимитов сделок в рамках файла CDisciplineEngine.mqh. Объясняется централизованная проверка сделок и синхронизация состояний, выполняемые совместно дашбордом графиков и советником-принудителем. Читатели узнают, как авторизовывать ордера через единый шлюз, отслеживать разрешения в реальном времени и автоматически обеспечивать соблюдение правил на уровне всего терминала.
Разработка инструментария для анализа Price Action (Часть 72): Создание индикатора заполнения гэпов на MQL5
Инструмент заполнения гэпов выходного дня для MetaTrader 5, готовый к использованию советниками: он обнаруживает гэпы, подтверждает их полное заполнение и записывает детерминированные значения Buy и Sell в буферы индикатора. Он восстанавливает исторические события, отслеживает рынок в реальном времени без перерисовки и визуализирует структуру гэпов непосредственно на графике. Настраиваемые алерты и наглядные графические объекты поддерживают как ручной анализ, так и автоматическое исполнение.
Изучение стандартной библиотеки MQL5 (Часть 12): Мультитаймфреймный дашборд на основе составного показателя
В статье реализован CMultiTimeframeMatrix, переиспользуемый дашборд, который сопоставляет символы с таймфреймами и отображает числовой показатель с цветовой кодировкой. Показатель объединяет тренд и импульс с вычетом волатильности, обновляется по таймеру и учитывает ограничения производительности. Вы узнаете, как создавать пользовательский интерфейс с помощью CAppDialog/CLabel, вычислять метрики с помощью CMatrixDouble и встраивать компонент в простой советник для получения целостной картины рынка в реальном времени.
GoertzelBrain: Адаптивное спектральное обнаружение циклов с помощью ансамбля нейронных сетей в MQL5
GoertzelBrain сочетает спектральный анализ по Гертцелю с ансамблем нейронных сетей, обучаемых в режиме онлайн, чтобы преобразовывать признаки циклов в сигнал подтверждения направления. Индикатор формирует компактный вектор признаков на основе доминирующего периода, амплитуды, уровня достоверности и их динамики, а также локальной волатильности, и выдает значение +1, −1 или 0. В статье приводится полная реализация на языке MQL5, объясняются архитектура и процесс конструирования признаков, а также показано, как использовать индикатор в качестве направленного фильтра.
Адаптивный индикатор Malaysian Engulfing (Часть 2): Оптимизированный диапазон баров ретеста
В статье к индикатору Malaysian Engulfing добавляется самоадаптивный слой: диапазон баров ретеста оптимизируется с помощью ограниченного полного перебора с оценкой по MFE и MAE. В статье подробно описаны модель данных, вспомогательные процедуры и реализация на MQL5, которая собирает исторические сетапы, рассчитывает MFE/MAE и выбирает лучший параметр. Читатели узнают, как отказаться от ручной настройки и запускать индикатор с параметрами, подходящими для конкретного контекста, на разных символах и таймфреймах.
Изучение стандартной библиотеки MQL5 (Часть 11): Как создать матричный индикатор структуры рынка в MQL5
Научитесь проектировать индикатор в MQL5, который преобразует тренд, импульс и волатильность в единый сырой показатель, используя matrix.mqh (ALGLIB). В статье рассматривается осциллятор с отдельным окном для проверки основной математики, а затем индикатор для основного графика, который отображает стрелки сигналов на покупку и продажу без перерисовки, когда показатель пересекает заданные пользователем пороговые значения. Дополнительный фильтр на основе долгосрочной EMA, минимальный интервал в барах между сигналами и встроенные оповещения делают инструмент практичным для торговли в реальном времени.
Система аудита счета в MQL5 (Часть 1): Проектирование пользовательского интерфейса
В этой статье мы разработаем слой пользовательского интерфейса системы аудита счёта в MQL5 с использованием классов CChartObject. Создадим размещаемую на графике информационную панель, отображающую основные показатели: начальный и конечный баланс, чистую прибыль, общее количество сделок, число прибыльных и убыточных сделок, процент прибыльных сделок, выведенные средства и оценку эффективности в виде звёзд. Кнопка меню позволяет отображать и скрывать панель и восстанавливает торговлю в один клик. В результате получается удобная основа для дальнейшего развития системы аудита счёта.
Разработка инструментария для анализа Price Action (Часть 73): Построение системы торговых сигналов для гэпов выходного дня в MQL5
Мы расширяем инструментарий для работы с гэпами выходного дня индикатором, который преобразует структуру гэпа в торговые сигналы. Когда цена подтверждает возврат обратно в гэп, индикатор отображает стрелки Buy и Sell, устанавливает тейк-профит на противоположной границе и размещает стоп-лосс по экстремумам текущей недели. Он работает без перерисовки, восстанавливает исторические сигналы, обновляется в реальном времени и предоставляет буферы, пригодные для использования советником, с метками входа и уровнями TP/SL.
Рыночная микроструктура в MQL5 (Часть 1): Надежный базовый слой
В этой статье мы закладываем базовый слой для инструментария рыночной микроструктуры на MQL5, состоящего из двенадцати частей. В данной статье реализованы математические функции с защитными проверками (SafeDivide, SafeLog, SafeSqrt, SafeExp, SafeTanh), устойчивая к сбоям проверка данных (ValidateSymbolV2, SafeCopyClose), усеченные статистические оценки (робастные оценки среднего и дисперсии), расчет наклона линейной регрессии, общие структуры данных и БПФ. В результате компиляции вы получаете единый подключаемый файл, который защищает индикаторы и советники от скрытых численных сбоев и стандартизирует поток данных для следующих частей серии.
Разработка инструментария для анализа Price Action (Часть 71): Картирование структуры гэпов выходного дня в MQL5
В статье представлена реализация на MQL5 на основе графических объектов, которая определяет гэпы выходного дня по разрывам времени и отображает их непосредственно на графике. Она управляет графическими объектами, отслеживает переходы состояний – новый (FRESH), частично заполнен (PARTIAL), реакция (REACTION), заполнен (FILLED) – и сохраняет завершенные гэпы как исторические зоны. В результате создается воспроизводимая система для отслеживания возврата цены к структурам гэпов выходного дня и их заполнения.
Создание пользовательского тикового графика в MQL5
Узнайте, как реализовать в MQL5 тиковый график, в котором каждый бар строится из фиксированного количества тиков, а не по времени. В статье рассматриваются создание и настройка пользовательского символа, получение тиков в режиме реального времени, формирование значений OHLC и передача данных с помощью функции CustomRatesUpdate. Такой подход позволяет получить свечи, формируемые по рыночной активности, которые точнее отражают интенсивность рынка и краткосрочный импульс для точного внутридневного анализа.
Рыночная микроструктура в MQL5 (Часть 8): Оценка силы микротренда
В восьмой части добавляется побарная оценка силы микротренда для NQ M1. Функция GetMicroTrendStrength() формирует непрерывную композитную оценку в диапазоне [-1, +1] из согласованности EMA, нормализованного по ATR положения цены, согласованности наклонов и объема. Штраф за противоречие подавляет конфликты между согласованностью EMA и положением цены. Сессионно-адаптивные пороги масштабируются в зависимости от показателя достоверности из седьмой части, регулируя частоту сигналов в разных режимах. Результаты включают метку с семью состояниями, бинарный сигнал и проверку устойчивости, откалиброванные по 514 нью-йоркским сессиям (май 2024 г. - май 2026 г.).
Построение системы обнаружения дивергенций: Создание пользовательского индикатора MPO4
Представляем MPO4 — осциллятор на основе рыночного давления, который учитывает тело и направление свечей в контексте текущей волатильности. В статье подробно рассматриваются математические основы индикатора, нормирование значений в ограниченном диапазоне и сглаживание с помощью EMA. Затем создается модуль дивергенций на основе опорных точек, предназначенный для работы без перерисовки. Вы получите полную реализацию на MQL5 и практические рекомендации по интерпретации сигналов, включая сравнение с RSI как альтернативным источником.
Перекрестный рекуррентный количественный анализ (CRQA) в MQL5: Разработка полноценной библиотеки анализа
В этой статье библиотека RQA для MQL5 расширяется до перекрестного рекуррентного количественного анализа (Cross Recurrence Quantification Analysis, CRQA) для сравнения двух временных рядов. Мы реализуем вложение двух рядов, построение матрицы перекрёстной рекуррентности, адаптированные метрики (CRR, CDET, CLAM, CENTR и другие), а также анализ в скользящем окне с возможностью ускорения на графическом процессоре (GPU) через OpenCL. Готовый к использованию индикатор сравнивает два торговых инструмента (символа) в режиме реального времени, поддерживая выравнивание по временным меткам и нормализацию для практического межрыночного анализа.
Персистентная гомология в MQL5: Алгоритм приведения и диаграмма персистентности
Мы завершаем реализацию персистентной гомологии в MQL5, приводя граничную матрицу Вьеториса-Рипса к диаграмме персистентности. В статье реализованы столбцовое приведение над Z/2 (CTDAReduction), контейнер диаграммы с аналитическими методами (CTDADiagram) и фасад CTDA, запускающий шестиэтапный пайплайн одним вызовом. Результаты проверяются сравнением с Ripser до численного совпадения, что позволяет надежно вычислять метрики по диаграммам.
Рыночная микроструктура в MQL5 (Часть 3): Оценка параметра d модели ARFIMA методом GPH
В файл MicroStructure_Foundation.mqh добавлена функция оценки параметра d (ключевого параметра модели ARFIMA), основанная на методе GPH. Функция GPHEstimator() оценивает d по регрессии лог-периодограммы. Функция PopulateARFIMAAnalysis() сохраняет d с показателем достоверности R² и проверяет теоретическую связь H = d + 0,5. Исследование 72 сессий US100 на таймфрейме M1 дало объединенную оценку d = -0,006. Это согласуется с границей случайного блуждания, установленной во второй части.
Построение системы обнаружения дивергенций (Часть II): Пользовательский индикатор Adaptive SuperTrend
В статье мы усовершенствуем индикатор SuperTrend, добавив модуль обнаружения дивергенций (MPO4 или RSI), который динамически уменьшает множитель ATR при ослаблении моментума. В ней рассматриваются формула сжатия, перенос состояния без перерисовки с использованием отдельных буферов, а также пошаговая реализация индикатора на языке MQL5 с отображением на ценовом графике. Вы узнаете, как интерпретировать стрелки и переключения линии, настраивать входные параметры и применять индикатор для трейлинга по правилам и более раннего подтверждения сигналов.