Возможности Мастера MQL5, которые вам нужно знать (Часть 16): Метод главных компонент с собственными векторами
В статье рассматривается метод главных компонент — метод снижения размерности при анализе данных, а также то, как его можно реализовать с использованием собственных значений и векторов. Как всегда, мы попытаемся разработать прототип класса сигналов советника, который можно будет использовать в Мастере MQL5.
Реализация квантовой схемы Quantum Reservoir Computing (QRC)
Революционный подход к машинному обучению в трейдинге через квантовые вычисления. Статья демонстрирует практическую реализацию адаптивной системы QRC с постоянным дообучением для прогнозирования рыночных движений в реальном времени.
Разработка системы репликации (Часть 73): Неожиданный способ оповещений (II)
В этой статье мы рассмотрим, как передавать информацию в режиме реального времени между индикатором и сервисом, а также разберемся, почему могут возникнуть проблемы при изменении таймфрейма и как их решать. В качестве бонуса вы получите доступ к последней версии приложения репликации/моделирования.
Алгоритм выбора признаков с использованием энергетического обучения на чистом MQL5
Статья представляет реализацию алгоритма выбора признаков, описанного в научной работе "FREL: Стабильный алгоритм выбора признаков" (FREL: A stable feature selection algorithm). Сам алгоритм называется "Взвешивание признаков как регуляризованное обучение на основе энергии" (Feature weighting as regularized energy based learning).
Нейросети в трейдинге: Ансамбль агентов с использованием механизмов внимания (Окончание)
В предыдущей статье мы познакомились с мультиагентным адаптивным фреймворком MASAAT, который использует ансамбль агентов для перекрестного анализа мультимодального временного ряда в разных масштабах представления данных. И сегодня мы доведем до логического завершения начатую ранее работу по реализации подходов данного фреймворка средствами MQL5.
Анализируем двоичный код цен на бирже (Часть II): Преобразуем в BIP39 и пишем GPT модель
Продолжаем попытки дешифровать движения цен... Как насчет лингвистического анализа "словаря рынка", который мы получим, преобразовав бинарный код цены в BIP39? В этой статье мы углубимся в инновационный подход к анализу биржевых данных и рассмотрим, как современные методы обработки естественного языка могут быть применены к языку рынка.
Применение модели машинного обучения CatBoost в качестве фильтра для трендовых стратегий
CatBoost – это эффективная модель машинного обучения на основе деревьев, которая специализируется на принятии решений на основе статических признаков. Другие модели на основе деревьев, такие как XGBoost и Random Forest, обладают схожими характеристиками в плане надежности, интерпретируемости и способности работать со сложными паттернами. Эти модели имеют широкий спектр применения: от анализа признаков до управления рисками. В данной статье мы пройдемся по процедуре использования обученной модели CatBoost в качестве фильтра для классической трендовой стратегии на основе пересечения скользящих средних.
Разработка системы репликации - Моделирование рынка (Часть 24): FOREX (V)
Сегодня мы снимем ограничение, которое препятствовало выполнению моделирований, основанных на построении LAST, и введем новую точку входа специально для этого типа моделирования. Обратите внимание на то, что весь механизм работы будет основан на принципах валютного рынка. Основное различие в данной процедуре заключается в разделении моделирований BID и LAST. Однако важно отметить, что методология, используемая при рандомизации времени и его корректировке для совместимости с классом C_Replay, остается идентичной в обоих видах моделирования. Это хорошо, поскольку изменения в одном режиме приводят к автоматическим улучшениям в другом, особенно если это касается обработки времени между тиками.
Возможности Мастера MQL5, которые вам нужно знать (Часть 13): DBSCAN для класса сигналов советника
Основанная на плотности пространственная кластеризация для приложений с шумами (Density Based Spatial Clustering for Applications with Noise, DBSCAN) - это неконтролируемая форма группировки данных, которая практически не требует каких-либо входных параметров, за исключением всего двух, что по сравнению с другими подходами, такими как k-средние, является преимуществом. Разберемся в том, как это может быть полезно в тестировании и торговле с применением советников, собранных в Мастере.
Возможности Мастера MQL5, которые вам нужно знать (Часть 33): Ядра гауссовского процесса
Ядра гауссовского процесса (Gaussian Process Kernels) — это ковариационная функция нормального распределения, которая может быть использована в прогнозировании. Мы исследуем этот уникальный алгоритм в пользовательском классе сигналов MQL5, чтобы увидеть, можно ли использовать его в качестве основного сигнала входа и выхода.
Возможности Мастера MQL5, которые вам нужно знать (Часть 36): Q-обучение с цепями Маркова
Обучение с подкреплением — один из трех основных принципов машинного обучения, наряду с обучением с учителем и без учителя. Поэтому возникает необходимость в оптимальном управлении или изучении наилучшей долгосрочной политики, которая наилучшим образом соответствует целевой функции. Именно на этом фоне мы исследуем его возможную роль в информировании процесса обучения MLP советника, собранного в Мастере.
Разработка системы репликации (Часть 31): Проект советника — класс C_Mouse (V)
Разрабатывать способ установки таймера необходимо таким образом, чтобы во время репликации/моделирования он мог сообщить нам, сколько времени осталось, что может показаться на первый взгляд простым и быстрым решением. Многие просто пытаются приспособиться и использовать ту же систему, что и в случае с торговым сервером. Но есть один момент, который многие не учитывают, когда думают о таком решении: при репликации, и это не говоря уже о моделировании, часы работают по-другому. Всё это усложняет создание подобной системы.
Возможности Мастера MQL5, которые вам нужно знать (Часть 44): Технический индикатор Average True Range (ATR)
Осциллятор ATR — очень популярный индикатор, используемый в качестве индикатора волатильности, особенно на валютных рынках, где данные об объемах скудны. Как и в случае с предыдущими индикаторами, мы рассмотрим паттерны и поделимся стратегиями и отчетами о тестировании.
Разработка системы репликации - Моделирование рынка (Часть 03): Внесение корректировок (I)
Начнем с прояснения нынешней ситуации, потому что мы начали не самым лучшим образом. Если не сделать этого сейчас, то вскоре мы окажемся в беде.
Разработка системы репликации (Часть 40): Начало второй фазы (I)
Сегодня поговорим о новой фазе системы репликации/моделирования. На данном этапе разговор станет поистине интересным, а содержанием довольно насыщенным. Я настоятельно рекомендую вам внимательно прочитать статью и пользоваться приведенными в ней ссылками. Это поможет вам лучше понять содержание.
Разработка системы репликации (Часть 39): Прокладываем путь (III)
Прежде, чем приступить ко второму этапу разработки, необходимо закрепить несколько идей. Знаете ли вы, как заставить MQL5 делать то, что вам необходимо? Пытались ли когда-нибудь выйти за рамки того, что содержится в документации? Если нет, то приготовьтесь. Потому что прямо сейчас мы будем делать то, чем большинство людей обычно не занимается.
Возможности Мастера MQL5, которые вам нужно знать (Часть 24): Скользящие средние
Скользящие средние — очень распространенный индикатор, который используют и понимают большинство трейдеров. Мы рассмотрим возможные варианты их использования, которые относительно редко используются в советниках, собранных с помощью Мастера MQL5.
Анализ влияния погоды на валюты аграрных стран с использованием Python
Как связана погода и валютный рынок? В классической экономической теории долгое время не признавали влияние таких факторов на поведение рынка. Но все изменилось. Давайте попробуем найти связи в состоянии погоды и положения аграрных валют на рынке.
Разработка системы репликации - Моделирование рынка (Часть 09): Пользовательские события
Здесь мы увидим, как активировать пользовательские события и проработать вопрос о том, как индикатор сообщает о состоянии сервиса репликации/моделирования.
Разработка системы репликации (Часть 43): Проект Chart Trade (II)
Большинство людей, которые хотят или мечтают научиться программировать, на самом деле не имеют представления о том, что делают. Их деятельность заключается в попытках создавать вещи определенным образом. Однако программирование – это вовсе не подгонка под ответ подходящих решений. Если действовать таким образом, можно создать больше проблем, чем решений. Здесь мы будем делать нечто более продвинутое и, следовательно, другое.
Форекс советник на нейросети N-BEATS Network
Реализация архитектуры N-BEATS для форекс-трейдинга в MetaTrader 5 с квантильным прогнозированием и адаптивным риск-менеджментом. Архитектура адаптирована через билинейную нормализацию и специализированные функции потерь для финансовых данных. Тестирование на данных 2025 года показало неспособность генерировать прибыль, подтверждая разрыв между теоретическими достижениями и практической торговой эффективностью.
Разработка системы репликации - Моделирование рынка (Часть 08): Блокировка индикатора
В этой статье мы рассмотрим, как заблокировать индикатор при простом использовании языка MQL5, и сделаем это очень интересным и удивительным способом.
Алгоритм анархической социальной оптимизации — Anarchic Society Optimization (ASO)
В очередной статье мы познакомимся с алгоритмом Anarchic Society Optimization (ASO) и обсудим, как алгоритм, основанный на иррациональном и авантюрном поведении участников анархического общества - аномальной системы социального взаимодействия, свободной от централизованной власти и различного рода иерархий способен исследовать пространство решений и избегать ловушек локального оптимума. В статье будет представлена унифицированная структура ASO, применимая как к непрерывным, так и к дискретным задачам.
Разработка системы репликации (Часть 36): Внесение корректировок (II)
Одна из вещей, которая может усложнить нашу жизнь как программистов, - это предположения. В этой статье я покажу вам, как опасно делать предположения: как в части программирования на MQL5, где принимается, что у курса будет определенная величина, так и при использовании MetaTrader 5, где принимается, что разные серверы работают одинаково.
Упрощаем торговлю на новостях (Часть 4): Повышаем производительность
В этой статье будут рассмотрены методы улучшения работы советника в тестере стратегий, будет написан код для разделения времени новостных событий на почасовые категории. Доступ к этим новостным событиям будет осуществляться в течение указанного для них часа. Это гарантирует, что советник может эффективно управлять сделками на основе событий как в условиях высокой, так и низкой волатильности.
Разработка системы репликации (Часть 49): Все усложняется (I)
В этой статье мы немного усложним ситуацию. Используя то, что было показано в предыдущих статьях, мы начнем открывать доступ к файлу шаблона, чтобы пользователь мог использовать свой собственный шаблон. Однако я буду вносить изменения постепенно, так как также буду дорабатывать индикатор, чтобы снизить нагрузку на MetaTrader 5.
Удаленный профессиональный риск-менеджер Forex на Python
Делаем удаленный профессиональный риск-менеджер Для Forex на Python, разворачиваем его на сервере по шагам. В процессе статьи поймем, как программно управлять рисками на Форекс, и как больше не слить депозит на Форекс.
Майнинг данных балансов центробанков и получение картины мировой ликвидности
Майнинг данных балансов центробанков позволяет получить картину мировой ликвидности рынка Форекс и ключевых валют. Мы объединяем данные ФРС, ЕЦБ, BOJ и PBoC в композитный индекс и применяем машинное обучение для выявления скрытых закономерностей. Такой подход превращает сырой поток данных в реальные торговые сигналы, соединяя фундаментальный и технический анализ.
Возможности Мастера MQL5, которые вам нужно знать (Часть 25): Тестирование и торговля на нескольких таймфреймах
Стратегии, основанные на нескольких таймфреймах, по умолчанию не могут быть протестированы в советниках, собранных с помощью Мастера, из-за архитектуры кода MQL5, используемой в классах сборки. Мы рассмотрим способ обхода этого ограничения для стратегий, которые предполагают использование нескольких таймфреймов на примере квадратичной скользящей средней.
Алгоритм Искусственного Племени (Artificial Tribe Algorithm, ATA)
В статье подробно рассматриваются ключевые компоненты и инновации алгоритма оптимизации ATA, представляющего собой эволюционный метод с уникальной двойной системой поведения, которая адаптируется в зависимости от ситуации. Используя скрещивание для углубленного исследования, и миграцию для поиска в случае застревания в локальных оптимумах, ATA сочетает в себе индивидуальное и социальное обучение.
Анализ временных разрывов цен в MQL5 (Часть II): Создаем тепловую карту распределения ликвидности во времени
Подробное руководство по созданию индикатора тепловой карты для MetaTrader 5, который визуализирует временное распределение цены в виде тепловой карты. Статья раскрывает математическую основу анализа временной плотности, где каждый ценовой уровень окрашивается от красного (минимальное время пребывания) до синего (максимальное время пребывания).
Символьное уравнение прогнозирования цены с использованием SymPy
Статья описывает интересный подход к алготрейдингу, основанный на символьных математических уравнениях вместо традиционных "черных ящиков" машинного обучения. Автор показывает, как преобразовать непрозрачные нейросети в читаемые математические формулы через библиотеку SymPy и полиномиальную регрессию, что позволяет полностью понимать логику принятия торговых решений. Подход сочетает вычислительную мощь ML с прозрачностью классических методов, давая трейдеру возможность анализировать, корректировать и адаптировать модели в реальном времени.
Разработка системы репликации (Часть 27): Проект советника — класс C_Mouse (I)
В этой статье мы воплотим в жизнь класс C_Mouse. Он обеспечивает возможности программирования на самом высоком уровне. Однако разговоры о высокоуровневых или низкоуровневых языках программирования не связаны с включением в код нецензурных слов или жаргона. Всё наоборот. Когда мы говорим о высокоуровневом или низкоуровневом программировании, мы имеем в виду, насколько легко или сложно понять код другим программистам.
Критерий независимости Гильберта-Шмидта (HSIC)
В статье рассматривается непараметрический статистический тест HSIC (Hilbert-Schmidt Independence Criterion) предназначенный для выявления линейных и нелинейных зависимостей в данных. Предложены реализации двух алгоритмов вычисления HSIC на языке MQL5: точного перестановочного теста и гамма-аппроксимации. Эффективность метода демонстрируется на синтетических данных, моделирующих нелинейную связь признаков и целевой переменной.
Теория категорий в MQL5 (Часть 21): Естественные преобразования с помощью LDA
Эта статья, 21-я в нашей серии, продолжает рассмотрение естественных преобразований и того, как их можно реализовать с помощью линейного дискриминантного анализа. Как и в предыдущей статье, реализация представлена в формате класса сигнала.
Индикатор тепловой карты рынка на основе плотности простых чисел
Инновационный индикатор на основе теории простых чисел помогает находить сильные уровни разворота, которые не видят другие трейдеры. Тестирование на 10 активах показало: развороты в математически значимых зонах происходят в 1.5-1.8 раза чаще. Пять практических сценариев применения с конкретными правилами для фильтрации ложных пробоев и точного входа в рынок.
Инженерия признаков с Python и MQL5 (Часть I): AI-модели для долгосрочного прогнозирования по скользящим средним
Скользящие средние являются, безусловно, самыми эффективными индикаторами для прогнозирования моделями ИИ. Однако точность результатов можно еще больше повысить, если перед этим соответственным образом преобразовать данные. В этой статье мы поговорим о создании AI-моделей, которые могут прогнозировать в более отдаленное будущее без существенного снижения уровня точности. В очередной раз мы с вами убедимся, насколько полезны скользящие средние.
Инженерия признаков с Python и MQL5 (Часть II): Угол наклона цены
На форуме MQL5 есть множество сообщений с просьбами помочь рассчитать угол наклона изменения цены. В этой статье мы рассмотрим один из способов расчета наклона изменения цены. Этот способ применим на любом рынке. Кроме того, мы определим, стоит ли разработка этой новой функции дополнительных усилий и времени. Выясним, может ли угол наклона цены улучшить точность нашей AI-модели при прогнозировании пары USDZAR на минутном таймфрейме.
Теория категорий в MQL5 (Часть 6): Мономорфные расслоенные произведения и эпиморфные кодекартовы квадраты
Теория категорий представляет собой разнообразный и расширяющийся раздел математики, который лишь недавно начал освещаться в MQL5-сообществе. Эта серия статей призвана рассмотреть некоторые из ее концепций для создания открытой библиотеки и дальнейшему использованию этого замечательного раздела в создании торговых стратегий.
Гауссовcкие процессы в машинном обучении: регрессионная модель в MQL5
В настоящей статье мы рассмотрим основы гауссовских процессов (ГП) как вероятностную модель машинного обучения и продемонстрируем ее применение в регрессионных задачах на примере синтетических данных.