Перейти к содержимому

Глава 310: Торговля на основе любопытства (Curiosity-Driven Trading)

Введение: Внутренняя мотивация и любопытство для исследования рынка

Традиционные агенты обучения с подкреплением (RL) в трейдинге полагаются исключительно на внешние вознаграждения — прибыль, коэффициент Шарпа или другие метрики эффективности. Хотя такой подход эффективен в хорошо изученных рыночных условиях, эти агенты часто терпят неудачу при переходе рынков в новые режимы. Они эксплуатируют известные паттерны, но никогда по-настоящему не исследуют пространство состояний. В этой главе представлено исследование на основе любопытства как механизм для решения этого фундаментального ограничения.

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

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

Два фундаментальных подхода были разработаны для реализации любопытства в RL:

  1. Модуль внутреннего любопытства (ICM) — использует ошибку предсказания прямой модели как внутреннее вознаграждение
  2. Дистилляция случайной сети (RND) — использует ошибку дистилляции относительно фиксированной случайной сети как сигнал новизны

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

Почему любопытство важно в трейдинге

Финансовые рынки представляют уникальные вызовы для исследования:

  • Нестационарность: Рыночная динамика меняется со временем, что означает, что ранее хорошо изученные регионы могут снова стать новыми
  • Редкие события: События типа “чёрный лебедь”, флэш-крэши и смены режимов происходят редко, но критически важны
  • Высокая размерность: Комбинаторный взрыв рыночных состояний означает, что большая часть пространства состояний остаётся неисследованной
  • Разреженные вознаграждения: Прибыльные возможности могут быть разделены длительными периодами убыточных или нулевых сделок

Агент, движимый любопытством, решает все четыре проблемы, поддерживая внутреннюю модель “того, что он знает” и активно ищущий то, чего не знает.

Математические основы

Модуль внутреннего любопытства (ICM)

ICM, представленный Pathak et al. (2017), состоит из трёх компонентов, работающих в обученном пространстве признаков:

Кодировщик признаков отображает необработанные наблюдения состояния в компактное представление:

$$\phi(s_t) = f_\theta(s_t) \in \mathbb{R}^d$$

где $f_\theta$ — нейронная сеть с параметрами $\theta$.

Прямая модель предсказывает представление признаков следующего состояния по текущим признакам состояния и действию:

$$\hat{\phi}(s_{t+1}) = g_{\text{fwd}}(\phi(s_t), a_t)$$

Функция потерь прямой модели — L2 ошибка предсказания:

$$L_{\text{fwd}} = \frac{1}{2} | \hat{\phi}(s_{t+1}) - \phi(s_{t+1}) |^2$$

Обратная модель предсказывает предпринятое действие по двум последовательным состояниям:

$$\hat{a}t = g{\text{inv}}(\phi(s_t), \phi(s_{t+1}))$$

Функция потерь обратной модели:

$$L_{\text{inv}} = -\sum_k a_t^{(k)} \log \hat{a}_t^{(k)}$$

Обратная модель играет ключевую роль: она заставляет кодировщик признаков захватывать только те аспекты состояния, на которые влияют действия агента, фильтруя шум и нерелевантные изменения состояния (например, случайный шум микроструктуры рынка).

Внутреннее вознаграждение определяется как ошибка предсказания прямой модели:

$$r_t^i = \eta \cdot | \hat{\phi}(s_{t+1}) - \phi(s_{t+1}) |^2$$

где $\eta$ — масштабирующий коэффициент. Общее вознаграждение:

$$r_t = r_t^e + \beta \cdot r_t^i$$

где $r_t^e$ — внешнее вознаграждение (торговая прибыль), а $\beta$ управляет балансом исследования и эксплуатации.

Комбинированная функция потерь ICM:

$$L_{\text{ICM}} = (1 - \alpha) \cdot L_{\text{inv}} + \alpha \cdot L_{\text{fwd}}$$

где $\alpha \in [0, 1]$ балансирует две цели.

Дистилляция случайной сети (RND)

RND, представленная Burda et al. (2019), предоставляет более простую альтернативу ICM:

Фиксированная целевая сеть: Случайно инициализированная нейронная сеть $f: \mathcal{S} \to \mathbb{R}^k$ с фиксированными (необучаемыми) весами.

Сеть-предиктор: Обучаемая сеть $\hat{f}: \mathcal{S} \to \mathbb{R}^k$, которая пытается воспроизвести выход целевой сети.

Предиктор обучается минимизировать:

$$L_{\text{RND}} = | \hat{f}(s_t) - f(s_t) |^2$$

Внутреннее вознаграждение — ошибка предсказания:

$$r_t^i = | \hat{f}(s_t) - f(s_t) |^2$$

Ключевое наблюдение: предиктор будет иметь малую ошибку на часто посещаемых состояниях (на которых он обучен) и большую ошибку на новых состояниях. Это обеспечивает сигнал новизны без необходимости моделирования динамики.

Преимущества RND перед ICM для трейдинга:

  • Не нужно явно моделировать рыночную динамику (что крайне сложно)
  • Устойчивость к стохастическим средам — случайный шум не раздувает любопытство
  • Более простая архитектура с меньшим количеством гиперпараметров
  • Естественная работа с нестационарными распределениями

Нормализация вознаграждения

Как ICM, так и RND выигрывают от бегущей нормализации вознаграждения для предотвращения доминирования внутреннего вознаграждения:

$$\hat{r}_t^i = \frac{r_t^i - \mu_r}{\sigma_r + \epsilon}$$

где $\mu_r$ и $\sigma_r$ — бегущие статистики внутренних вознаграждений.

Применения в трейдинге

Обнаружение новых рыночных режимов

Агенты, движимые любопытством, отлично обнаруживают смены режимов. Когда рынок переходит от трендовой фазы к фазе возврата к среднему (или наоборот), ошибка предсказания прямой модели агента резко возрастает, генерируя большое внутреннее вознаграждение. Это побуждает агента:

  1. Обращать внимание на переходный период, а не игнорировать его
  2. Выделять больше бюджета на исследование для понимания нового режима
  3. Строить внутренние представления, различающие режимы
  4. Быстрее адаптировать торговые стратегии к новым условиям

Практический конвейер обнаружения режимов с использованием любопытства:

  • Мониторинг скользящего среднего внутреннего вознаграждения
  • Устойчивый рост внутреннего вознаграждения сигнализирует о возможной смене режима
  • Использование величины внутреннего вознаграждения для оценки степени новизны
  • Корректировка размера позиции обратно пропорционально внутреннему вознаграждению (снижение экспозиции при неопределённых переходах)

Исследование редких торговых возможностей

Рынки иногда предоставляют редкие, но высокоприбыльные возможности — окна арбитража, каскады ликвидаций или структурные дислокации. Традиционные RL-агенты, обученные на исторических данных, редко встречают эти сценарии и, следовательно, не могут научиться их использовать.

Агенты, движимые любопытством, напротив:

  • Естественным образом тяготеют к необычным рыночным конфигурациям
  • Накапливают опыт в редких, но важных рыночных состояниях
  • Разрабатывают более устойчивые функции ценности, покрывающие хвостовые сценарии
  • Могут выявлять и использовать возможности, которые нелюбопытные агенты полностью пропустили бы

Межактивное исследование

При одновременной торговле несколькими активами любопытство побуждает агента исследовать структуры корреляций:

  • Обнаружение возникающих межактивных связей
  • Детекция разрушения исторических корреляций
  • Выявление новых факторных экспозиций по мере эволюции рыночной микроструктуры

Реализация на Rust

Реализация в rust/src/lib.rs предоставляет:

  • ForwardModel: Предсказывает следующие признаки рыночного состояния по текущим признакам и действию
  • InverseModel: Предсказывает действие по последовательным признакам состояния
  • ICMModule: Комбинирует прямую и обратную модели с вычислением внутреннего вознаграждения
  • RNDModule: Дистилляция случайной сети с фиксированной целевой и обучаемой сетью-предиктором
  • CuriosityDrivenAgent: Полный агент, комбинирующий внешние и внутренние вознаграждения
  • BybitClient: Получает реальные OHLCV данные из API Bybit

Архитектура разработана для промышленного использования:

  • Настраиваемые размерности признаков, пространства действий и скорости обучения
  • Бегущая нормализация вознаграждений для стабильного обучения
  • Модульный дизайн, позволяющий использовать ICM и RND независимо или совместно
  • Эффективные операции линейной алгебры на базе ndarray

Ключевые проектные решения

Пространство признаков: Рыночные состояния кодируются как нормализованные векторы данных OHLCV плюс производные признаки (доходности, волатильность, коэффициенты объёма). Кодировщик признаков проецирует их в пространство меньшей размерности, где динамика более гладкая.

Пространство действий: Для простоты используются дискретные действия (покупка, продажа, удержание), но архитектура поддерживает расширение до непрерывного размера позиции.

Комбинирование вознаграждений: Общее вознаграждение использует адаптивную схему взвешивания, где коэффициент внутреннего вознаграждения $\beta$ затухает со временем, смещая баланс от исследования к эксплуатации по мере того, как агент становится более знакомым с рыночной динамикой.

Интеграция данных Bybit

Реализация включает BybitClient, который получает исторические данные свечей (kline) из Bybit V5 API:

GET https://api.bybit.com/v5/market/kline

Параметры:

  • category: “linear” для бессрочных USDT-контрактов
  • symbol: например, “BTCUSDT”
  • interval: интервал свечи (1, 5, 15, 60, 240, D, W)
  • limit: количество свечей (максимум 200)

Полученные данные преобразуются в матрицу признаков, подходящую для модулей любопытства:

  • Необработанные значения OHLCV нормализуются с использованием z-score нормализации
  • Доходности вычисляются как логарифмические: $r_t = \ln(p_t / p_{t-1})$
  • Волатильность оценивается с использованием скользящего стандартного отклонения доходностей
  • Признаки объёма нормализуются относительно скользящего среднего

Этот конвейер обеспечивает, что сигнал любопытства отражает подлинную рыночную новизну, а не артефакты масштабирования.

Ключевые выводы

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

  2. ICM использует ошибку предсказания как вознаграждение: когда прямая модель агента не может предсказать следующее состояние, это состояние считается новым и достойным исследования. Обратная модель фильтрует шум, фокусируя пространство признаков на контролируемых агентом аспектах.

  3. RND проще и устойчивее: измеряя, насколько хорошо предиктор может воспроизвести выход фиксированной случайной сети, RND обеспечивает сигнал новизны, невосприимчивый к стохастическому шуму — критическое преимущество на финансовых рынках.

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

  5. Любопытство повышает эффективность выборки: фокусируя исследование на новых состояниях, агент учится больше на единицу опыта, что критически важно, когда торговые данные ограничены или дороги для получения.

  6. Балансом исследования и эксплуатации необходимо тщательно управлять: слишком много любопытства приводит к чрезмерной торговле и транзакционным издержкам; слишком мало — возвращает к базовому поведению. Параметр $\beta$ и нормализация вознаграждений — необходимые механизмы контроля.

  7. Комбинирование ICM и RND даёт лучшие результаты: ICM захватывает новизну, зависящую от действий, а RND — новизну состояний, обеспечивая взаимодополняющие сигналы для более эффективного исследования.

  8. Агенты, движимые любопытством, более устойчивы к сдвигу распределения: поскольку они исследовали более широкий диапазон рыночных состояний во время обучения, они лучше обобщаются на невиданные рыночные условия при развёртывании.

Ссылки

  • Pathak, D., et al. (2017). “Curiosity-driven Exploration by Self-Supervised Prediction.” ICML.
  • Burda, Y., et al. (2019). “Exploration by Random Network Distillation.” ICLR.
  • Bellemare, M., et al. (2016). “Unifying Count-Based Exploration and Intrinsic Motivation.” NeurIPS.
  • Oord, A., et al. (2018). “Representation Learning with Contrastive Predictive Coding.” arXiv.
  • Tang, H., et al. (2017). “#Exploration: A Study of Count-Based Exploration for Deep Reinforcement Learning.” NeurIPS.