Глава 139: Гибридные модели SSM-GNN для трейдинга
Обзор
Гибриды моделей пространства состояний (SSM) и графовых нейронных сетей (GNN) объединяют сильные стороны последовательного временного моделирования и обучения реляционной структуре. SSM, такие как S4 и Mamba, эффективно захватывают долгосрочные временные зависимости, а GNN моделируют межактивные связи, секторные корреляции и цепочки поставок. Объединяя эти два подхода, гибриды SSM-GNN одновременно учат когда и как двигаются активы (временная динамика) и почему они двигаются вместе (графовая структура).
На финансовых рынках активы не существуют изолированно. Доходность акций зависит от секторных аналогов, макрофакторы распространяются по цепочкам поставок, а цены криптовалют совместно изменяются через ончейн и биржевые связи. Гибрид SSM-GNN улавливает как последовательную эволюцию характеристик каждого актива, так и межактивный поток информации на каждом временном шаге.
Содержание
- Математические основы
- Архитектура
- Компонент SSM
- Компонент GNN
- Стратегии слияния
- Реализация на Python
- Реализация на Rust
- Торговое применение
- Бэктестинг
- Оценка производительности
- Литература
Математические основы
Модели пространства состояний (SSM)
Линейная модель пространства состояний в непрерывном времени определяется как:
x'(t) = A x(t) + B u(t)y(t) = C x(t) + D u(t)где:
x(t) ∈ R^N— скрытое состояние,u(t) ∈ R^1— входной сигнал,y(t) ∈ R^1— выход,A ∈ R^{N×N},B ∈ R^{N×1},C ∈ R^{1×N},D ∈ R^{1×1}— обучаемые параметры.
Для дискретных последовательностей выполняется дискретизация (например, через метод нулевого порядка):
x_k = Ā x_{k-1} + B̄ u_ky_k = C x_k + D u_kгде Ā = exp(Δ A) и B̄ = (Δ A)^{-1}(Ā - I) Δ B для шага Δ.
Графовые нейронные сети (GNN)
Для графа G = (V, E) с признаками узлов h_v для каждого узла v ∈ V GNN на основе передачи сообщений обновляют представления узлов:
m_v^{(l)} = AGGREGATE({h_u^{(l-1)} : u ∈ N(v)})h_v^{(l)} = UPDATE(h_v^{(l-1)}, m_v^{(l)})Распространённые варианты: GCN (Kipf & Welling, 2017), GAT (Veličković et al., 2018) и GraphSAGE (Hamilton et al., 2017).
Слияние SSM-GNN
Гибридная модель обрабатывает временную последовательность графов {G_1, G_2, ..., G_T}, где каждый граф G_t = (V, E_t, X_t) имеет изменяющиеся во времени признаки узлов X_t ∈ R^{|V|×F}.
Последовательное слияние (SSM → GNN):
- Применяется SSM для каждого узла независимо:
z_v = SSM(x_{v,1}, ..., x_{v,T}) - Применяется GNN на графе с признаками узлов
z_v
Чередующееся слияние (SSM ↔ GNN):
На каждом шаге t:
- Обновление признаков узлов через GNN:
h_v^{(t)} = GNN(x_{v,t}, G_t) - Обновление временного состояния через SSM:
s_v^{(t)} = SSM_step(s_v^{(t-1)}, h_v^{(t)})
Архитектура
Вход: Мультиактивные временные ряды + Граф связей │ ▼┌─────────────────────┐│ Извлечение признаков│ Технические индикаторы по активам└─────────┬───────────┘ │ ▼┌─────────────────────┐│ SSM кодировщик │ S4/Mamba временное кодирование│ (по узлам) │└─────────┬───────────┘ │ ▼┌─────────────────────┐│ GNN слои │ Межактивная передача сообщений│ (GAT / GCN) │ по корреляционному / секторному графу└─────────┬───────────┘ │ ▼┌─────────────────────┐│ Головы предсказания│ Прогноз доходности, волатильности,│ │ классификация тренда└─────────┬───────────┘ │ ▼ Торговый сигналКомпонент SSM
Компонент SSM обрабатывает временной ряд каждого актива независимо. Используется упрощённая диагональная SSM в стиле S4:
- HiPPO инициализация: Матрица
Aинициализируется по методу HiPPO для оптимального захвата долгосрочных зависимостей. - Диагональная структура: Ограничение
Aдиагональной матрицей позволяет вычисления заO(N)вместоO(N^2). - Селективный механизм (в стиле Mamba): Зависящие от входа
Δ,B,Cпозволяют модели селективно запоминать или забывать информацию.
Компонент GNN
Компонент GNN улавливает межактивные связи. Поддерживаются статические и динамические графы:
Построение статического графа:
- Принадлежность к сектору/отрасли (бинарная матрица смежности)
- Скользящая корреляционная матрица с порогом отсечения
Построение динамического графа:
- Веса рёбер на основе внимания, обучаемые из эмбеддингов узлов
- Изменяющаяся во времени корреляция по скользящим окнам
Слой GNN использует графовые сети внимания (GAT):
α_{ij} = softmax_j(LeakyReLU(a^T [W h_i || W h_j]))h_i' = σ(Σ_j α_{ij} W h_j)Стратегии слияния
Стратегия 1: Последовательная (SSM-затем-GNN)
Каждый актив обрабатывается SSM для получения временного кодирования, затем GNN выполняет межактивную агрегацию.
Плюсы: Просто, каждый компонент может быть предобучен независимо. Минусы: Временная и реляционная информация не обучаются совместно.
Стратегия 2: Чередующаяся (SSM-GNN на каждом шаге)
На каждом временном шаге SSM обновляет состояние, затем GNN распространяет информацию между активами.
Плюсы: Богатое взаимодействие временной и реляционной динамики. Минусы: Медленнее, сложнее параллелизовать.
Стратегия 3: Параллельная (конкатенация SSM + GNN)
SSM и GNN обрабатывают данные независимо, результаты конкатенируются.
Плюсы: Полностью параллелизуемо. Минусы: Нет глубокого взаимодействия между временными и графовыми признаками.
Реализация на Python
Реализация на Python использует NumPy для численных вычислений.
python/ssm_gnn_model.py— Основная гибридная модель SSM-GNN (DiagonalSSM, GAT, SSMGNNHybrid)python/data_loader.py— Загрузка данных фондового рынка (Yahoo Finance) и криптобиржи Bybitpython/backtest.py— Движок бэктестинга с метриками (акции и крипто)
Реализация на Rust
Реализация на Rust обеспечивает высокопроизводительный движок SSM-GNN для торговых систем. Используется ndarray для численных вычислений.
Основные модули:
src/model/ssm.rs— Диагональная SSM с дискретизациейsrc/model/gnn.rs— Графовый слой внимания (GAT)src/model/hybrid.rs— Комбинированная гибридная модельsrc/data/bybit.rs— Получение данных с Bybit API (криптовалюты)src/data/stock.rs— Данные фондового рынка (симуляция с секторной волатильностью)src/data/features.rs— Технические признаки и построение графаsrc/trading/— Генерация сигналов и бэктестингexamples/— Рабочие примеры (крипто, акции, смешанный портфель)
Торговое применение
Генерация сигналов
- Извлечение признаков: Технические индикаторы (RSI, MACD, полосы Боллинджера, OBV) по активам.
- Временное кодирование: SSM обрабатывает последовательность признаков каждого актива.
- Межактивная агрегация: GNN распространяет информацию по графу активов.
- Классификация: Голова предсказания — 3-классовый сигнал: Long (+1), Neutral (0), Short (-1).
Построение портфеля
Для сигналов s_i ∈ {-1, 0, +1} для N активов:
w_i = s_i * confidence_i / Σ_j |s_j * confidence_j|Управление рисками
- Размер позиции: Критерий Келли или фиксированная доля
- Стоп-лосс: Трейлинг-стоп на 2× ATR
- Фильтр корреляции: Уменьшение экспозиции при превышении порога
Бэктестинг
Фреймворк бэктестинга оценивает стратегию SSM-GNN на исторических данных с учётом комиссий и проскальзывания.
Метрики
| Метрика | Описание |
|---|---|
| Sharpe Ratio | Доходность с поправкой на риск |
| Sortino Ratio | Доходность с поправкой на нисходящий риск |
| Maximum Drawdown | Максимальная просадка |
| Win Rate | Доля прибыльных сделок |
| Profit Factor | Валовая прибыль / Валовый убыток |
| Calmar Ratio | Годовая доходность / Макс. просадка |
Оценка производительности
Сравнение с базовыми моделями
- SSM-only: Временная модель без графовой структуры
- GNN-only: Графовая модель без SSM кодирования
- LSTM: Стандартный рекуррентный базелайн
- Transformer: Модель на основе механизма внимания
- Buy-and-Hold: Пассивный бенчмарк
Ожидаемые преимущества
- Лучшие межактивные сигналы: GNN улавливает опережающе-запаздывающие связи.
- Осведомлённость о режимах: Долговременная память SSM обнаруживает смену режимов; GNN распространяет информацию о режимах по графу.
- Устойчивость: Совместное обучение регуляризует оба компонента, снижая переобучение.
Литература
- Gu, A., Goel, K., & Ré, C. (2022). Efficiently Modeling Long Sequences with Structured State Spaces (S4). ICLR 2022.
- Gu, A., & Dao, T. (2023). Mamba: Linear-Time Sequence Modeling with Selective State Spaces. arXiv:2312.00752.
- Kipf, T. N., & Welling, M. (2017). Semi-Supervised Classification with Graph Convolutional Networks. ICLR 2017.
- Veličković, P., et al. (2018). Graph Attention Networks. ICLR 2018.
- Hamilton, W. L., Ying, R., & Leskovec, J. (2017). Inductive Representation Learning on Large Graphs. NeurIPS 2017.
- Wang, Y., et al. (2023). Graph State Space Models. arXiv:2301.01731.
- Chen, D., et al. (2022). Structure-Aware Transformer for Graph Representation Learning. ICML 2022.