Статьи об анализе данных и статистике в MQL5

icon

Статьи на темы математических моделей и законов вероятности заинтересуют многих трейдеров. Ведь математика положена в основу технических индикаторов, а знание статистики необходимо для анализа результатов торговли и разработки стратегий.

Читайте о нечеткой логике, цифровых фильтрах, рыночном профиле, картах Кохонена, нейронном газе и многих других инструментах, которые могут использованы для торговли.

Новая статья
последние | лучшие
preview
Моделирование рынка: Position View (IX)

Моделирование рынка: Position View (IX)

В данной статье, которая станет поворотным моментом, мы начнем более глубоко изучать взаимодействие между разрабатываемыми нами приложениями для обеспечения полной поддержки системы повторов и симуляции. Здесь мы проанализируем проблему, которая, с одной стороны, довольно неприятна, но с другой — очень интересна для объяснения и решения. Проблема заключается в следующем: как вернуть линии тейк-профита и стоп-лосса после того, как они были удалены, и сделать это без использования терминала путем выполнения операции прямо на графике. На первый взгляд, это кажется простым. Однако, существуют несколько препятствий, которые необходимо преодолеть.
preview
Моделирование рынка: Position View (X)

Моделирование рынка: Position View (X)

Нам необходим способ обработки создаваемых графических объектов. Предложение, представленное в предыдущей статье, отлично подходит для некоторых сценариев. В данном случае нам потребуется нечто более сложное, учитывая специфику рассматриваемой проблемы. Поэтому мы не будем пытаться заменить существующие в MetaTrader 5 механизмы управления ZOrder и, конечно же, проверять, какой объект находится на переднем плане или скрыт другим объектом. Мы сделаем нечто совершенно другое. Здесь я покажу, какие изменения необходимо внести в код, чтобы задействовать часть того, что MetaTrader 5 уже делает за нас.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 95): Использование DSU и DBN в пользовательском классе сигнала

Возможности Мастера MQL5, которые вам нужно знать (Часть 95): Использование DSU и DBN в пользовательском классе сигнала

В этой статье мы переключимся на пользовательский класс Мастер MQL5 (MQL5 Wizard), который анализирует сигналы входа. На этот раз наш пользовательский класс называется ‘CSignalDSUDBN’ и построен на сочетании алгоритма Disjoint Set Union (DSU) и сети Deep Belief Network (DBN). Как и в предыдущих статьях этой серии, нашу модель можно протестировать с использованием советников, собранных с помощью Мастера MQL5, которые можно настраивать с помощью различных трейлинг-стопов и классов управления капиталом.
preview
Алгоритм бактериальной эволюции Нумаоки для быстрой адаптации (NBE)

Алгоритм бактериальной эволюции Нумаоки для быстрой адаптации (NBE)

Рассматриваем модель Нумаоки как агентную колонию с энергией, гибелью-делением и плазмидным переносом, ориентированную на быструю адаптацию. Переносим её в каркас C_AO: энергобаланс с популяционно-относительным приходом, хемотаксис-поиск, рулетка по энергии; приводим псевдокод и MQL5-реализацию. Проводим тестирование на Hilly, Forest и Megacity, показывая поведение и ограничения модели на статике для практического использования.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 78): Стратегии на основе осцилляторов Gator и A/D для повышения устойчивости на рынке

Возможности Мастера MQL5, которые вам нужно знать (Часть 78): Стратегии на основе осцилляторов Gator и A/D для повышения устойчивости на рынке

В статье представлена вторая часть структурированного подхода к торговле с использованием осцилляторов Gator и накопления/распределения. На примере пяти новых паттернов автор показывает, как отфильтровывать ложные движения, выявлять ранние развороты и сопоставлять сигналы на разных таймфреймах. Благодаря понятным примерам кода и результатам тестирования данный материал помогает связать теорию с практикой разработки на MQL5.
preview
ARD-регрессия на MQL5: автоматический отбор признаков и случайные признаки Фурье

ARD-регрессия на MQL5: автоматический отбор признаков и случайные признаки Фурье

Статья посвящена ARD-регрессии как байесовскому методу отбора признаков и применению случайных признаков Фурье (Random Fourier Features) для учета нелинейностей в рамках линейной модели. К статье прилагаются классы ARDRegression и CRBFSampler. Проводится сравнительный анализ точности и производительности реализации на MQL5 с эталонным классом из библиотеки scikit-learn.
preview
Анализ CSV-данных (Часть 5): Потоковая передача CSV-данных в реальном времени из активных сессий MetaTrader 5

Анализ CSV-данных (Часть 5): Потоковая передача CSV-данных в реальном времени из активных сессий MetaTrader 5

В статье описывается фреймворк экспорта данных в реальном времени для MetaTrader 5, построенный на основе слабо связанной трёхуровневой архитектуры. Компонент MQL5 пакетирует записи по барам и тикам с помощью буфера записи и ежедневно выполняет ротацию CSV-файлов; демон Python читает поток дописываемых данных в режиме tail, отображает панель мониторинга в реальном времени и отмечает превышения порогов аномалий. Демонстрационный индикатор показывает точки интеграции, обеспечивая мониторинг в реальном времени, прозрачность и прослеживаемость во время торговых сессий.
preview
Кооперация бионических алгоритмов — Co-Operation of Biology Related Algorithms (COBRA)

Кооперация бионических алгоритмов — Co-Operation of Biology Related Algorithms (COBRA)

В статье реализована кооперативная метаэвристика COBRA во фреймворке C_AO: шесть популяционных методов (PSO, WPS, FFA, CSA, BA, FSS) работают в одной популяции при фиксированном бюджете обращений к целевой функции и экспериментально выясняем, на чём на самом деле держится кооперация. В комплекте — расширяемый класс для сборки собственных кооперативных портфелей из любых алгоритмов серии.
preview
Династический алгоритм — Dynastic Optimization Algorithm (DOA)

Династический алгоритм — Dynastic Optimization Algorithm (DOA)

В статье реализован и разобран Dynastic Optimization Algorithm в рамках фреймворка C_AO на MQL5. Мы воспроизводим каноническую модель, закрываем неописанные в первоисточниках места и тестируем алгоритм на стенде с фиксированным бюджетом и ростом размерности. Показана причина деградации каноники и предложена модификация оператора с разреженной мутацией. Читатель получит рабочий класс и рекомендации по настройке для задач с дискретными параметрами.
preview
Анализ CSV-данных (Часть 4): Разработка автоматизированного Python-решения для сравнительного анализа и валидации стратегий MQL5

Анализ CSV-данных (Часть 4): Разработка автоматизированного Python-решения для сравнительного анализа и валидации стратегий MQL5

В статье представлен воспроизводимый пайплайн передачи данных из MetaTrader 5 в Python для масштабного исследования индикаторов. Схема экспорта MQL5 фиксирует обязательные столбцы, включая пользовательские счётчики задержки и ложных срабатываний. Базовый модуль выполняет сопоставление результатов с одинаковыми параметрами по инструментам и таймфреймам, а модуль walk-forward-валидации жёстко фиксирует оптимум, найденный на окне InSample, и оценивает его на ранее не виденных данных OutSample OutSample. В результате читатель получает несмещённые метрики устойчивости и автоматизацию, устраняющую смещение из-за ручного отбора.
preview
Моделирование рынка: Position View (XII)

Моделирование рынка: Position View (XII)

В этой статье вы научитесь создавать визуальный сигнал на своей торговой платформе, чтобы прямо на графике определять, является ли позиция длинной или короткой, без необходимости обращаться к терминалу. Кроме того, в тексте рассматривается реализация функциональности, которая улучшает отображение при перемещении линий тейк-профита и стоп-лосса, скрывая горизонтальную линию, следующую за курсором мыши, во время перемещения этих линий во избежание путаницы. Чтение предлагает практические знания для настройки систем моделирования рынка.
preview
Анализ CSV-данных (Часть 3): Построение аналитического пайплайна на Python для CSV-экспорта из MetaTrader 5

Анализ CSV-данных (Часть 3): Построение аналитического пайплайна на Python для CSV-экспорта из MetaTrader 5

MetaTrader 5 предоставляет обширные данные о результатах, но ограниченные возможности структурного анализа. В статье показано, как экспортировать результаты из MQL5 в CSV и построить пять визуализаций на Python, раскрывающих согласованность параметров между активами, компромисс между задержкой и шумом, деградацию результатов при walk-forward-валидации, распределение глубины и длительности просадок, а также внутридневные кластеры по часам и дням недели. Единый модуль автоматизации запускает полный пайплайн для каждого нового файла экспорта и обеспечивает воспроизводимую диагностику.
preview
Моделирование рынка: Position View (XI)

Моделирование рынка: Position View (XI)

В этой статье я покажу вам, уважаемый читатель, как можновыбирать объекты, которые мы создаём на графике модифицировать индикатор позиции, чтобы он мог выполнять гораздо больше функций, чем это было предусмотрено изначально. Мы рассмотрим, как реализовать возможность перемещения цен и создания ценовых линий непосредственно на графике. Многим это покажется сложным для решения. Однако вы увидите, что мы сделаем это с минимальными усилиями. Вам нужно всего лишь немного подумать.
preview
Моделирование рынка: Position View (XIII)

Моделирование рынка: Position View (XIII)

В этой статье мы рассмотрим, как без особых усилий реализовать индикатор, который показывает, приносит ли позиция убытки или прибыль. Процедура проста и эффективна. Даже без глубоких знаний этот индикатор позволит вам легко распознавать, когда следует закрывать позицию. Так вы избежите неожиданных результатов, поскольку расчёт отражает фактический результат, который дало бы закрытие позиции.
preview
Алгоритм направления потока — Flow Direction Algorithm (FDA)

Алгоритм направления потока — Flow Direction Algorithm (FDA)

Подробно разбираем механику FDA и демонстрируем, как центровые и диагональные эффекты первоисточника завышают показатели. Честная реализация фиксирует уровень порядка 39.7% на стенде серии. Модификация FDAm с тяжелохвостым распределением зондов и покоординатным шагом повышает итог до 54.7% и доступна как готовый компонент C_AO для настройки параметров советников.
preview
Моделирование рынка: Position View (XIV)

Моделирование рынка: Position View (XIV)

Теперь мы реализуем это решение, поскольку MQL5 следует тому же принципу, что и событийно-ориентированное программирование. Разработчики часто используют эту модель при создании DLL. Я знаю, что поначалу событийно-ориентированная модель работы покажется запутанной и лишённой логики. Но в этой статье я изложу принципы событийно-ориентированного программирования более понятно, чтобы вы, если только начинаете, правильно поняли, как оно работает. Понимание того, что я начну объяснять в этой статье, поможет вам в вашей жизни как программиста.
preview
Анализ CSV-данных (Часть 6): Нормализация результатов по нескольким брокерам и сверка CSV между платформами

Анализ CSV-данных (Часть 6): Нормализация результатов по нескольким брокерам и сверка CSV между платформами

В статье представлен фреймворк нормализации CSV-данных от нескольких брокеров. Подключаемый файл MQL5 дополняет экспорт брокерскими метаданными. Модуль Python устраняет расхождения схем — различия в разрядности котирования, соглашениях о пунктах, именовании символов, смещениях часовых поясов, моделях учёта комиссии и валютах номинирования счёта и прибыли — и формирует единый канонический набор данных. Сравнительные визуализации распределений проскальзывания и результатов после учёта издержек позволяют надёжно сопоставлять результаты стратегии между разными брокерскими средами без незаметного искажения данных.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 87): Управление капиталом с масштабированием по волатильности на основе монотонной очереди в MQL5

Возможности Мастера MQL5, которые вам нужно знать (Часть 87): Управление капиталом с масштабированием по волатильности на основе монотонной очереди в MQL5

В этой статье представлен пользовательский класс управления капиталом на языке MQL5, который адаптирует размер позиции к волатильности в реальном времени. Для поиска экстремумов в скользящем окне со сложностью O(N) используется монотонная очередь. Класс применяет обратное масштабирование по волатильности и при необходимости проверяет риск с помощью RBF-сети. Рассмотрим детали реализации метода Optimize и сравним результаты со встроенным классом Size-Optimized, чтобы оценить задержку и преимущества контроля риска.
preview
Возможности Мастера MQL5, которые вам нужно знать (Часть 88): Использование фильтра Блума с пользовательским классом трейлинга

Возможности Мастера MQL5, которые вам нужно знать (Часть 88): Использование фильтра Блума с пользовательским классом трейлинга

Следующая тема в серии идей, которые можно быстро прототипировать с помощью Мастера MQL5, – пользовательский класс трейлинга, использующий фильтр Блума. Системы трейлинг-стопов – необязательная, но полезная часть любой торговой системы. В этой серии они рассматриваются наряду с традиционными сигналами входа.