Глава 312: Планирующее RL для трейдинга
Введение
Традиционные подходы обучения с подкреплением (RL) без модели для трейдинга --- такие как DQN, PPO или SAC --- обучают политики непосредственно из взаимодействий с рыночной средой. Хотя они эффективны, они крайне неэффективны по выборке: требуют миллионов переходов для сходимости и не могут рассуждать о последствиях действий до их выполнения. В отличие от этого, RL на основе модели с явным планированием строит внутреннюю модель среды (“модель мира”) и использует её для симуляции будущих траекторий, оценки кандидатных последовательностей действий и выбора лучшего плана перед выполнением хотя бы одной реальной сделки.
Эта парадигма черпает вдохновение из того, как работают опытные трейдеры. Умелый трейдер не просто реагирует на текущую цену; он мысленно моделирует сценарии: “Если я размещу большой ордер на покупку здесь, рынок двинется против меня; если я распределю ордер на 10 минут, влияние будет меньше, но я рискую, что цена уйдёт.” Планирующее RL формализует этот цикл рассуждений.
Ключевые компоненты планирующего RL для трейдинга:
- Обучение модели мира — Нейронная сеть, предсказывающая следующее состояние рынка и вознаграждение по текущему состоянию и действию.
- Архитектура Dyna-Q — Агент, дополняющий реальный опыт симулированными прогонами из обученной модели мира.
- Управление с предиктивной моделью (MPC) — Алгоритм планирования, оптимизирующий последовательности действий путём симуляции будущих траекторий.
- Оценка неопределённости — Количественная оценка уверенности модели для предотвращения катастрофических решений на основе неточных предсказаний.
Математические основы
Обучение модели мира
Модель мира состоит из двух обучаемых функций:
Модель переходов: $$\hat{s}{t+1} = f\theta(s_t, a_t)$$
Модель вознаграждений: $$\hat{r}t = g\phi(s_t, a_t)$$
где $s_t$ --- состояние рынка в момент $t$ (цены, объёмы, индикаторы), $a_t$ --- торговое действие (покупка/продажа/удержание с размером позиции), а $\theta, \phi$ --- обучаемые параметры.
Модель переходов обучается минимизацией: $$\mathcal{L}{\text{trans}}(\theta) = \mathbb{E}{(s_t, a_t, s_{t+1}) \sim \mathcal{D}} \left[ | s_{t+1} - f_\theta(s_t, a_t) |^2 \right]$$
Модель вознаграждений обучается аналогично: $$\mathcal{L}{\text{reward}}(\phi) = \mathbb{E}{(s_t, a_t, r_t) \sim \mathcal{D}} \left[ (r_t - g_\phi(s_t, a_t))^2 \right]$$
где $\mathcal{D}$ --- буфер воспроизведения реальных переходов.
Архитектура Dyna-Q
Dyna-Q, представленная Саттоном (1991), дополняет стандартное Q-обучение прогонами на основе модели. Алгоритм чередует:
- Реальный опыт: Выполнение действия $a_t$ в реальной среде, наблюдение $(s_t, a_t, r_t, s_{t+1})$ и обновление Q-значений.
- Симулированный опыт: Выборка $k$ ранее посещённых состояний, генерация синтетических переходов с помощью модели мира и обновление Q-значений на них.
Обновление Q-значений (для реальных и симулированных переходов): $$Q(s_t, a_t) \leftarrow Q(s_t, a_t) + \alpha \left[ r_t + \gamma \max_{a’} Q(s_{t+1}, a’) - Q(s_t, a_t) \right]$$
Выполняя $k$ симулированных обновлений на каждый реальный шаг, Dyna-Q достигает $k$-кратного улучшения эффективности по выборке. Для трейдинга, где каждое реальное взаимодействие связано с реальным капиталом, этот выигрыш в эффективности критически важен.
Управление с предиктивной моделью (MPC)
MPC --- это алгоритм планирования, оптимизирующий на конечном горизонте $H$:
$$a_t^* = \arg\max_{a_{t:t+H}} \sum_{h=0}^{H-1} \gamma^h \hat{r}_{t+h}$$
где $\hat{r}{t+h}$ и $\hat{s}{t+h+1}$ генерируются прогоном модели мира:
$$\hat{s}{t+h+1} = f\theta(\hat{s}{t+h}, a{t+h}), \quad \hat{r}{t+h} = g\phi(\hat{s}{t+h}, a{t+h})$$
Выполняется только первое действие $a_t^*$; процесс повторяется на следующем временном шаге (скользящий горизонт).
MPC со случайной стрельбой: Выборка $N$ случайных последовательностей действий длины $H$, оценка каждой прогоном модели мира, выбор последовательности с максимальным накопленным вознаграждением.
Метод перекрёстной энтропии (CEM): Итеративное уточнение случайной стрельбы:
- Инициализация гауссового распределения по последовательностям действий: $\mu_0, \sigma_0$.
- Выборка $N$ последовательностей действий из $\mathcal{N}(\mu, \sigma)$.
- Оценка каждой последовательности прогонами модели мира.
- Выбор лучших $K$ (элитных) последовательностей.
- Переобучение $\mu, \sigma$ на элитном множестве.
- Повторение $M$ итераций.
CEM сходится к лучшим решениям, чем чистая случайная стрельба, особенно в многомерных пространствах действий.
Оценка неопределённости модели
Одна детерминированная модель мира может давать чрезмерно уверенные предсказания в незнакомых областях пространства состояний. Для решения этой проблемы используется ансамбль из $B$ моделей мира ${f_{\theta_1}, \ldots, f_{\theta_B}}$, а неопределённость оценивается как:
$$\text{Var}[\hat{s}{t+1}] = \frac{1}{B} \sum{b=1}^{B} \left( f_{\theta_b}(s_t, a_t) - \bar{f}(s_t, a_t) \right)^2$$
где $\bar{f}$ --- среднее ансамбля. Когда неопределённость превышает порог, агент должен предпочитать консервативные действия или переключаться на поведение без модели.
Применение в трейдинге
Многошаговое планирование сделок
Планирующее RL позволяет реализовать сложные многошаговые стратегии:
- Оптимизация входа/выхода: Вместо изолированных решений о покупке/продаже агент планирует полный жизненный цикл сделки: точку входа, масштабирование позиции, цели по прибыли и установку стоп-лосса.
- Ребалансировка портфеля: Агент моделирует влияние действий по ребалансировке на несколько шагов вперёд для минимизации транзакционных издержек при следовании целевым аллокациям.
- Спред-трейдинг: Планирование по коррелированным активам для выявления и использования временных ценовых расхождений.
Моделирование рыночного воздействия
Для ордеров институционального размера модель мира явно учитывает рыночное воздействие:
- Временное воздействие: Немедленное смещение цены от ордера, пропорциональное $\sqrt{V/\text{ADV}}$, где $V$ --- объём ордера, ADV --- средний дневной объём.
- Постоянное воздействие: Устойчивый сдвиг равновесной цены из-за утечки информации.
- Динамика затухания: Как временное воздействие затухает со временем.
Включая воздействие в модель мира, планировщик MPC может оптимизировать графики исполнения (аналогично Almgren-Chriss, но адаптивно и обучено на данных).
Планирование с учётом режимов
Модель мира может обучиться динамике, зависящей от режима:
- В трендовых рынках планировать стратегии следования за моментумом с более длинными горизонтами.
- В рынках с возвратом к среднему планировать контртрендовые входы с более короткими горизонтами.
- В режимах высокой волатильности сокращать горизонт планирования и размер позиции.
Реализация на Rust
Реализация в rust/src/lib.rs предоставляет:
WorldModel: Модель переходов и вознаграждений, вдохновлённая нейронными сетями, с обучением на основе обратного распространения.DynaQAgent: Табличный агент Q-обучения, дополненный прогонами на основе модели через модель мира.MPCPlanner: Планировщик MPC, поддерживающий как случайную стрельбу, так и оптимизацию CEM.ModelEnsemble: Ансамбль моделей мира для оценки неопределённости.BybitClient: HTTP-клиент для получения данных о свечах с биржи Bybit.
Архитектура
Рыночные данные (Bybit API) | v Обучение модели мира | v Планирование (MPC / Dyna-Q) | v Выбор действия | v Исполнение и обратная связьМодель мира обучается на исторических переходах (состояние, действие, вознаграждение, следующее_состояние), построенных из данных OHLCV. Состояния включают нормализованные доходности цен, соотношения объёмов и технические индикаторы. Действия дискретизированы в {Покупка, Удержание, Продажа} с непрерывным размером позиции.
Интеграция с Bybit
Реализация подключается к публичному REST API Bybit для получения исторических данных свечей:
GET https://api.bybit.com/v5/market/kline?category=linear&symbol=BTCUSDT&interval=60&limit=200Ответ предоставляет данные OHLCV, которые преобразуются в торговые состояния:
- Ценовые признаки: Доходности, лог-доходности, пересечения скользящих средних
- Объёмные признаки: Объём относительно скользящей средней
- Признаки волатильности: Скользящее стандартное отклонение доходностей
Эти реальные данные питают как конвейер обучения модели мира, так и оценку запланированных действий относительно фактических рыночных результатов.
Запуск примера
cd 312_planning_rl_trading/rustcargo buildcargo run --example trading_exampleПример:
- Загружает часовые данные BTCUSDT с Bybit
- Строит представления состояний из данных OHLCV
- Обучает модель мира на исторических переходах
- Запускает планирование MPC для выбора оптимальных действий
- Сравнивает планирование на основе модели с подходом без модели
- Сообщает накопленные доходности и коэффициенты Шарпа
Ключевые выводы
-
Эффективность по выборке: RL на основе модели с планированием может достигать той же производительности, что и методы без модели, при 10-100 раз меньшем количестве реальных взаимодействий со средой. Для трейдинга, где каждое взаимодействие связано с реальными деньгами, это трансформационное преимущество.
-
Способность к прогнозированию: MPC позволяет агенту рассуждать о многошаговых последствиях перед действием. Это особенно ценно для оптимизации исполнения и предотвращения негативного рыночного воздействия.
-
Dyna-Q как мост: Архитектура Dyna обеспечивает естественный мост между RL без модели и на основе модели. Настраивая количество симулированных прогонов на реальный шаг, практики могут плавно обменивать вычисления на эффективность по выборке.
-
Неопределённость важна: Оценка неопределённости на основе ансамбля не опциональна --- она необходима. Без неё ошибки модели накапливаются при прогонах, приводя к катастрофически чрезмерно уверенным планам.
-
Компромисс горизонта планирования: Более длинные горизонты планирования позволяют более сложные стратегии, но более чувствительны к ошибкам модели. На практике горизонты в 5-20 шагов хорошо работают для часовой торговли; более короткие горизонты предпочтительны для более высоких частот.
-
Интеграция рыночного воздействия: Одно из самых перспективных применений планирующего RL --- включение обученных моделей рыночного воздействия в цикл планирования, что позволяет интеллектуальное исполнение, недостижимое для методов без модели.
-
Адаптивность к режимам: Модель мира естественно учитывает динамику, зависящую от режима. По мере обновления модели свежими данными поведение планировщика адаптируется к текущему рыночному режиму без явного детектирования режимов.
Ссылки
- Sutton, R. S. (1991). “Dyna, an Integrated Architecture for Learning, Planning, and Reacting.” SIGART Bulletin.
- Chua, K., et al. (2018). “Deep Reinforcement Learning in a Handful of Trials using Probabilistic Dynamics Models.” NeurIPS.
- Hafner, D., et al. (2020). “Dream to Control: Learning Behaviors by Latent Imagination.” ICLR.
- Almgren, R. & Chriss, N. (2001). “Optimal Execution of Portfolio Transactions.” Journal of Risk.
- Schrittwieser, J., et al. (2020). “Mastering Atari, Go, Chess and Shogi by Planning with a Learned Model.” Nature.