Визуализация стратегий в MQL5: раскладываем результаты оптимизации по графикам критериев
Визуализация стратегий в MQL5: раскладываем результаты оптимизации по графикам критериев
В этой статье мы напишем пример визуализации процесса оптимизации и сделаем отображение трёх лучших проходов для четырёх критериев оптимизации. А также обеспечим возможность выбора одного из трёх лучших проходов для вывода его данных в таблицы и на график.
Математика волатильности: Почему индикатор GRI достоин возвращения в ваш торговый терминал
Математика волатильности: Почему индикатор GRI достоин возвращения в ваш торговый терминал
Статья посвящена индикатору Gopalakrishnan Range Index (GRI/ROCI), который количественно оценивает "хаотичность" рынка через логарифм диапазона цен закрытия за заданный период. Показано, как реализовать GRI в MetaTrader 5, устранить проблему отрицательных значений с помощью сдвинутого логарифма и привести шкалу к удобным "пунктам" через нормировку на Point. Далее рассматриваются практические сценарии применения GRI как фильтра волатильности и рыночных фаз.
Создание и тестирование совета из 15 моделей в MetaTrader 5
Создание и тестирование совета из 15 моделей в MetaTrader 5
Статья описывает переход от дебатов четырёх голосов к Council of 15: десять аналитиков, четыре независимых риск-менеджера и Председатель с жёстким регламентом голосования. Разобраны роли участников, трёхфазная архитектура и параллельное исполнение полного цикла за 10–15 секунд. Показаны журнал работы, правила риск-гейта и обратная совместимость, чтобы вы быстро подключили систему к советнику.
Индикатор CandleCode: Формализация свечных моделей в MQL5
Индикатор CandleCode: Формализация свечных моделей в MQL5
В статье показана практическая реализация CandleCode для MetaTrader 5: расчет кодов свечей по методу Лиховидова с адаптацией порогов к волатильности (Bollinger Bands) и гистограммное отображение. Дополнительно представлен советник, который строит базу исторических паттернов по ZigZag, сравнивает их с текущим "слепком" через ATR и выдает статистику совпадений на панели.
Реализация модели таблицы в MQL5: Применение концепции MVC
Реализация модели таблицы в MQL5: Применение концепции MVC
В статье рассмотрим процесс разработки модели таблицы на языке MQL5 с использованием архитектурной концепции MVC (Model-View-Controller) для разделения логики данных, представления и управления, что помогает создавать структурированный, гибкий и масштабируемый код. Рассмотрим реализацию классов для построения модели таблицы, включая использование связанных списков для хранения данных.
Роевой оптимизатор с иерархией суброев — Flock by Leader
Роевой оптимизатор с иерархией суброев — Flock by Leader
Мы строим и реализуем в MQL5 алгоритм Flock by Leader: суброи формируются по метрике ARF, лидер определяется по лучшему личному рекорду, а не по положению центроида. Приводим формулы обновления для ролей роя и механизм separation. Класс C_AO_FBL совместим с тестовым стендом и проверен на функциях Hilly, Forest и Megacity в размерностях 10–1000 координат, что упрощает воспроизведение и сравнение.
Торговые инструменты MQL5 (Часть 12): Улучшение интерактивности панели корреляционной матрицы
Торговые инструменты MQL5 (Часть 12): Улучшение интерактивности панели корреляционной матрицы
В этой статье мы улучшаем панель корреляционной матрицы в MQL5 с помощью интерактивных признаков, таких как перетаскивание панели, сворачивание / разворачивание, эффекты при наведении курсора мыши на кнопки и таймфреймы, а также обработка событий мыши для улучшения взаимодействия с пользователем. Мы добавили сортировку символов по средней силе корреляции в восходящем/нисходящем режимах, переключение между отображением корреляции и p-значения, а также включили переключение между светлой и темной темами с динамическим обновлением цвета.
Машинное обучение и Data Science (Часть 42): Прогнозирование фондовых рынков с использованием N-BEATS в Python
Машинное обучение и Data Science (Часть 42): Прогнозирование фондовых рынков с использованием N-BEATS в Python
N-BEATS — это революционная модель глубокого обучения, разработанная для прогнозирования временных рядов. Она была выпущена в попытке превзойти возможности классических моделей прогнозирования временных рядов, таких как ARIMA, PROPHET, VAR и др. Познакомимся с данной моделью и посмотрим на возможности ее применения для прогнозирования фондового рынка.
Неопределенность как модель (Часть 3): Математическая статистика — как извлекать знания из данных
Неопределенность как модель (Часть 3): Математическая статистика — как извлекать знания из данных
В данной части цикла разбираются механизмы Закона больших чисел (ЗБЧ) и Центральной предельной теоремы (ЦПТ) как теоретической основы для понимания рыночных закономерностей. Описывается инструментарий описательной статистики и методы нахождения точечных и интервальных оценок параметров распределений. Особое внимание уделено методологии проверки статистических гипотез, позволяющей объективно отделять истинные рыночные аномалии от случайного шума. Каждое теоретическое построение сопровождено практическим примером в приложении, что позволяет закрепить материал на конкретных данных.
Нейросети в трейдинге: Сквозная многомерная модель прогнозирования временных рядов (Основные компоненты)
Нейросети в трейдинге: Сквозная многомерная модель прогнозирования временных рядов (Основные компоненты)
Предлагаем познакомиться с новой реализацией ключевых компонентов Фреймворка GinAR — адаптивного алгоритма для работы с графовыми временными рядами. В статье шаг за шагом разобраны архитектура, алгоритмы прямого прохода и обратного распространения ошибки.
Оптимизация Королевской Битвой — Battle Royale Optimizer (BRO)
Оптимизация Королевской Битвой — Battle Royale Optimizer (BRO)
Статья разбирает алгоритм Battle Royale Optimizer — метаэвристику, в которой решения конкурируют с ближайшими соседями, накапливают “повреждения”, заменяются при превышении порога и периодически сужают пространство поиска вокруг лучшего. Показаны псевдокод и реализация класса CAOBRO в MQL5, включая поиск соседей, движение к лучшему и адаптивный интервал delta. Результаты тестов на функциях Hilly, Forest и Megacity демонстрируют сильные и слабые стороны подхода. Читатель получает готовую основу для экспериментов и настройки popSize и maxDamage.
Нейросети в трейдинге: Адаптивное масштабирование представлений (Окончание)
Нейросети в трейдинге: Адаптивное масштабирование представлений (Окончание)
В статье представлена интеграция ранее реализованных компонентов фреймворка ADS в прикладную торговую модель и их проверка на исторических данных. Показано, как построение объекта верхнего уровня позволяет встроить сложную архитектуру в существующие решения, сохранив управляемость и прозрачность модели. Проведенное тестирование раскрывает как потенциал подхода в генерации прибыли, так и его ограничения, формируя основу для дальнейшей оптимизации риск-менеджмента и повышения устойчивости системы.
Автоматизация запуска терминала для выполнения сервисных задач
Автоматизация запуска терминала для выполнения сервисных задач
В статье рассмотрим возможность запуска терминала с конфигурационным файлом для выполнения автоматизированных рутинных задач, программную обработку такого запуска, и создадим полноценную систему автооптимизации советника средствами ОС Windows.
Автоматизация торговых стратегий на MQL5 (Часть 24): Система торговли на пробое лондонской сессии с риск-менеджментом и трейлинг-стопами
Автоматизация торговых стратегий на MQL5 (Часть 24): Система торговли на пробое лондонской сессии с риск-менеджментом и трейлинг-стопами
В этой статье мы разработаем систему анализа пробоев на Лондонской сессии, которая будет определять пробои диапазона перед открытием сессии и выставлять отложенные ордера с настройкой типа сделок и параметров риска. Мы реализуем в системе трейлинг-стоп, соотношение риска и прибыли, контроль максимальной просадки, а также панель управления для мониторинга в режиме реального времени.
Классы таблицы и заголовка на базе модели таблицы в MQL5: Применение концепции MVC
Классы таблицы и заголовка на базе модели таблицы в MQL5: Применение концепции MVC
Это вторая часть статьи, посвященной реализации модели таблицы в MQL5 с использованием архитектурной парадигмы MVC (Model-View-Controller). В статье рассматривается разработка классов таблицы и её заголовка, основанных на ранее созданной модели таблицы. Разработанные классы станут основой для дальнейшей реализации компонентов представления (View) и управления (Controller), которые будут рассмотрены в следующих статьях.
Компонент View для таблиц в парадигме MVC на MQL5: Базовый графический элемент
Компонент View для таблиц в парадигме MVC на MQL5: Базовый графический элемент
В статье рассматривается процесс разработки базового графического элемента для компонента View в рамках реализации таблиц в парадигме MVC (Model-View-Controller) на языке MQL5. Это первая статья, посвященная компоненту View, и третья в серии статей о создании таблиц для клиентского терминала MetaTrader 5.
Компоненты View и Controller для таблиц в парадигме MVC на MQL5: Простые элементы управления
Компоненты View и Controller для таблиц в парадигме MVC на MQL5: Простые элементы управления
В статье рассмотрены простые элементы управления как составляющие части более сложных графических элементов компонента View в рамках реализации таблиц в парадигме MVC (Model-View-Controller). Реализован базовый функционал компонента Controller для интерактивного взаимодействия элементов с пользователем и друг с другом. Это вторая статья, посвященная компоненту View, и четвёртая в серии статей о создании таблиц для клиентского терминала MetaTrader 5.
Таблицы в парадигме MVC на MQL5: Интегрируем компонент Model в компонент View
Таблицы в парадигме MVC на MQL5: Интегрируем компонент Model в компонент View
В статье создадим первую версию элемента управления TableControl (TableView). Это будет простая статичная таблица, создаваемая на основе входных данных, определяемых двумя массивами — массивом данных и массивом заголовков столбцов.
Таблицы в парадигме MVC на MQL5: настраиваемые и сортируемые столбцы таблицы
Таблицы в парадигме MVC на MQL5: настраиваемые и сортируемые столбцы таблицы
В статье сделаем изменяемую ширину столбцов таблицы при помощи курсора мышки, сортировку таблицы по данным столбцов, и добавим новый класс для упрощенного создания таблиц на основании любых наборов данных.
От начального до среднего уровня: Struct (VII)
От начального до среднего уровня: Struct (VII)
В сегодняшней статье мы покажем, как можно подходить к решению проблем по структурированию разных элементов и созданию более простых и привлекательных решений. Хотя содержание ориентировано на обучение и, следовательно, не является настоящим кодом, необходимо очень хорошо усвоить концепции и знания, которые здесь будут рассмотрены. Таким образом, в будущем мы сможем следовать кодам, которые мы покажем.
Нейросети в трейдинге: Многодоменная архитектура анализа финансовых данных (MDL)
Нейросети в трейдинге: Многодоменная архитектура анализа финансовых данных (MDL)
Статья знакомит с фреймворком MDL, который предлагает токенизацию признаков, сценариев и задач для системной организации модели и эффективного формирования контекста. В практической части реализованы CNeuronPerTokenFFN для локальной обработки токенов и CNeuronScenariosToken, генерирующий сценарные токены через 2D‑SSM и FieldPatternEmbedding. Такой подход ускоряет анализ длинных временных рядов и повышает точность интерпретации рыночных данных.
Оптимизация и форвард-анализ стратегий (Часть 1): Метод Пардо — базовая модель
Оптимизация и форвард-анализ стратегий (Часть 1): Метод Пардо — базовая модель
Статья показывает, как выстроить воспроизводимый процесс разработки и проверки торговых систем в MetaTrader 5: от формализации правил входа/выхода и риск‑менеджмента до пост‑оптимизационной валидации. В основу положен "Метод Пардо": разбиение истории на in‑sample/out‑of‑sample, форвард‑тестирование, мульти‑рынки/таймфреймы и выбор устойчивых "плато" параметров вместо единичных пиков. На примерах PardoSystem и советников PardoEA / Breakout_Bounce показан практический тест‑план для тестера стратегий MetaTrader 5.
Оптимизатор ястребов Харриса — Harris Hawks Optimization (HHO)
Оптимизатор ястребов Харриса — Harris Hawks Optimization (HHO)
Мы реализуем в MQL5 алгоритм Harris Hawks Optimization и разбираем пять режимов движения агентов, управляемых единственным параметром — убывающей энергией побега E. Представлен класс C_AO_HHO, совместимый с унифицированным тестовым стендом, с воспроизводимой реализацией полёта Леви. Алгоритм протестирован на функциях Hilly, Forest и Megacity при 5, 25 и 500 координатах — результаты указывают на аномальное поведение.
Нейросети в трейдинге: Многодоменная архитектура анализа финансовых данных (Основные компоненты)
Нейросети в трейдинге: Многодоменная архитектура анализа финансовых данных (Основные компоненты)
В статье продолжается перенос подходов фреймворка MDL в область решения задач финансовых рынков. Рассмотрены модули унифицированной токенизации разнородных данных, доменно-ориентированного внимание и Feature Self-Iteration, позволяющий эффективнее работать с историей признаков. Особое внимание уделено архитектурным решениям, снижающим вычислительную нагрузку и сохраняющим рыночный контекст в процессе анализа.
Эволюционный отбор LLM-агентов в MetaTrader 5
Эволюционный отбор LLM-агентов в MetaTrader 5
Статья описывает архитектуру торговой системы из 20 LLM-агентов на базе Grok (xAI), каждый из которых несёт уникальную торговую философию — от чистого моментума до статистического z-score. Система применяет генетический алгоритм прямо в ходе торговли: каждые 20 сделок автоматически убивает слабых агентов, клонирует сильных с мутацией промпта и публикует лидерборд на графике MetaTrader 5 — без остановки торговли и без единого SDK.
Торговые инструменты на MQL5 (Часть 14): Прокручиваемый текстовый холст с пиксельной точностью, сглаживанием и закругленной полосой прокрутки
Торговые инструменты на MQL5 (Часть 14): Прокручиваемый текстовый холст с пиксельной точностью, сглаживанием и закругленной полосой прокрутки
В этой статье мы улучшим ценовую панель на основе холста в MQL5, добавляя прокручиваемую текстовую панель с пиксельной точностью для руководств по использованию, преодолевающую собственные ограничения на прокрутку за счет настраиваемого сглаживания и округлого дизайна полосы прокрутки с функцией расширения при наведении курсора. Текстовая панель поддерживает фоны темы оформления с непрозрачностью, динамический перенос строк для содержимого, такого как инструкции и контакты, и интерактивную навигацию с помощью кнопок вверх / вниз, перетаскивания ползунка и прокрутки колесика мыши в области основного текста.
Торговые инструменты на MQL5 (Часть 15): Эффекты размытия холста, рендеринг теней и плавная прокрутка колесом мыши
Торговые инструменты на MQL5 (Часть 15): Эффекты размытия холста, рендеринг теней и плавная прокрутка колесом мыши
В этой статье мы выполняем улучшение панели холста на MQL5 с помощью новейших визуальных эффектов, включая градиенты размытия для эффекта наложения тумана, рендеринг теней для заголовков и рисование со сглаживанием для получения более плавных линий и кривых. Мы добавим плавную прокрутку колесика мыши на текстовой панели, которая не влияет на масштаб графика, что технически является улучшением.
Нейросети в трейдинге: Многодоменная архитектура анализа финансовых данных (Окончание)
Нейросети в трейдинге: Многодоменная архитектура анализа финансовых данных (Окончание)
В статье завершается построение фреймворка MDL и его интеграция в среду MQL5/OpenCL. Реализован объект верхнего уровня, объединяющий признаки, сценарии и задачи в единый вычислительный процесс. Проведено тестирование на исторических данных, показавшее устойчивую работу модели и её способность адаптироваться к изменяющимся рыночным условиям.
Моделирование рынка (Часть 19): Первые шаги на SQL (II)
Моделирование рынка (Часть 19): Первые шаги на SQL (II)
Как мы объясняли в первой статье о SQL, нет смысла тратить время на программирование процедур для выполнения того, что уже включено в SQL. Однако, если не знать самых основ, вы не сможете ничего сделать с помощью SQL, чтобы воспользоваться всеми преимуществами, которые предлагает этот инструмент. Поэтому в данной статье мы рассмотрим, как выполнять основные задачи в базах данных.
Машинное обучение и Data Science (Часть 37): Использование моделей свечных графиков и ИИ в трейдинге
Машинное обучение и Data Science (Часть 37): Использование моделей свечных графиков и ИИ в трейдинге
Свечные модели помогают трейдерам понимать психологию рынка и выявлять тренды на финансовых рынках. Они позволяют принимать более обоснованные торговые решения, которые могут привести к лучшим результатам. В этой статье мы рассмотрим, как использовать свечные паттерны в сочетании с моделями искусственного интеллекта для достижения оптимальных результатов в трейдинге.
Преодоление проблем доступности в торговых инструментах на MQL5 (Часть I): Как добавить контекстные голосовые оповещения в индикаторы MQL5
Преодоление проблем доступности в торговых инструментах на MQL5 (Часть I): Как добавить контекстные голосовые оповещения в индикаторы MQL5
В этой статье рассматривается ориентированное на доступность усовершенствование, выходящее за рамки оповещений терминала по умолчанию, путем использования управления ресурсами MQL5 для предоставления контекстной голосовой обратной связи. Вместо общих звуковых сигналов индикатор сообщает о том, что произошло и почему, позволяя трейдерам понимать рыночные события, не полагаясь исключительно на визуальное наблюдение. Такой подход особенно ценен для трейдеров с ослабленным зрением, но он также полезен занятым или многозадачным пользователям, предпочитающим взаимодействие со свободными руками.
Создание самооптимизирующихся советников на MQL5 (Часть 9): Двойное пересечение скользящих средних
Создание самооптимизирующихся советников на MQL5 (Часть 9): Двойное пересечение скользящих средних
В этой статье описывается разработка стратегии двойного пересечения скользящих средних, которая использует сигналы с более высокого таймфрейма (D1) для определения входов на более низком таймфрейме (M15), при этом уровни стоп-лосса рассчитываются на основе промежуточного таймфрейма риска (H4). Вводятся системные константы, пользовательские перечисления и логика для режимов следования за трендом и возврата к среднему, при этом особое внимание уделяется модульности и последующей оптимизации с использованием генетического алгоритма. Такой подход обеспечивает гибкие условия входа и выхода, стремясь уменьшить запаздывание сигналов и улучшить тайминг сделок за счёт согласования входов на младших таймфреймах с трендами старших таймфреймов.