Обсуждение статьи "Нейросети в трейдинге: Адаптация прогноза при смене рыночного режима (Объект верхнего уровня)"

 

Опубликована статья Нейросети в трейдинге: Адаптация прогноза при смене рыночного режима (Объект верхнего уровня):

Представлен объект верхнего уровня CNeuronOMPBOCL для адаптации рыночного представления внутри энкодера. Он объединяет байесовскую остаточную поправку, групповой затвор, раздельные истории Source и Target, оценку Mismatch и KL-ограничение. Разобраны инициализация, режимы работы, числовые проверки, прямой и обратный проходы в MQL5/OpenCL. Реализация разделяет прогноз и последующее обновление параметров и даёт готовый слой для дальнейшей интеграции в модель.

В нашей модели эти уровни адаптации разделены. Основой служит архитектура ORION. Её энкодер формирует внутреннее описание рыночной ситуации, а последующие блоки строят сценарий и выбирают действие. Разработанный ранее D2Skill вмешивается в конце этой цепочки и точечно корректирует торговую политику. OMPB работает внутри энкодера и перестраивает признаки до того, как они превратятся в прогноз. Такое разделение важно, когда ошибка связана не с выбором Buy/Sell, а с неверной оценкой состояния рынка. Коррекция политики может изменить реакцию, но не исправляет признаки, которые привели сценарный блок к ошибочному ожиданию.

Такое размещение сохраняет принципы авторского фреймворка OMPB. Базовая модель не переучивается вслед за каждым новым наблюдением. Адаптация сосредоточена в небольшом байесовском модуле. Схема Predict-Then-Update сохраняет причинность: прогноз строится по доступной истории, а корректирующая часть обновляется только после появления фактического результата. В авторской работе поправка применяется к готовому прогнозу. Мы переносим тот же принцип внутрь энкодера и изменяем представление рынка перед ScenarioForecast.

В первой статье мы разобрали теоретическую схему OMPB и реализовали байесовский линейный слой CNeuronBayesianLinearOCL. Он формирует детерминированный рабочий выход по средним параметрам и создаёт случайные реализации posterior для оценки неопределённости. Во второй статье появились OpenCL-операции для Disagreement, Mismatch и KL-дивергенции. Эти компоненты уже выполняют необходимые расчёты, но пока работают раздельно. Объект верхнего уровня должен задать им общий порядок: сформировать поправку, сравнить Source и Target, подготовить ограничения и передать результат дальше по сети.

Чтобы примитивы стали частью модели, нужен единый жизненный цикл. Он охватывает получение состояния рынка, расчёт и проверку поправки, подготовку градиентов и разрешённое обновление параметров. Этот цикл мы соберём в объекте верхнего уровня. Сосредоточимся на механизме, который сохраняет причинность, ограничивает коррекцию и оставляет базовое представление доступным при любом отказе.

Автор: Dmitriy Gizlyk