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

 

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

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

Торговля на малых таймфреймах набирает популярность (отчасти благодаря проп-фирмам) и ближе к высокочастотной торговле, чем к торговле на дневных или недельных таймфреймах. Необходимость управлять просадками позиций путем более частого отслеживания сделок привлекает все больше внимания трейдеров. Как правило, для этого требуется торговля или мониторинг сделок на малых таймфреймах.

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

Неизбирательная обработка ценовых баров может препятствовать интеграции сложных прогнозных моделей при ограничениях на выполнение в реальном времени. Если на каждом новом баре или тике выполнять матричные вычисления нейросети на каждом новом баре/тике, это явно приведет к аппаратным ограничениям. Это может вызвать рассинхронизацию между локальным торговым терминалом и сервером брокера.

При поиске подходящей цены для добавления или корректировки уровней стоп-лосса нефильтрованный рыночный шум может создавать ложноположительные сигналы и искажать последовательное управление сделками. Алгоритм, реагирующий на микроколебания, будет слишком агрессивно подтягивать стоп-лосс. В результате активу не останется пространства для реализации моментума основного направления.

В статье предлагается двухуровневая архитектура фильтрации, реализованная в пользовательском классе трейлинга на языке MQL5, для устранения этих системных неэффективностей. Используется вероятностный фильтр Блума для устранения дубликатов тиков со сложностью O(1), а также простая рекуррентная нейронная сеть RNN для модерации порога. Цель – более точное управление сделками. Методология резервирует вычислительные ресурсы для особых событий. Корректировка стоп-лосса определяется последовательной памятью рынка, а не случайными колебаниями.

MQL5 Wizard Techniques you should know (Part 88): Using Blooms Filter with a Custom Trailing Class


Автор: Stephen Njuki