Событийная симуляция книги лимитных заявок на Neural Hawkes процессе: приложение к маркетмейкингу

7.5/10

Лука Лалор, Анатолий Свищук · University of Calgary, Department of Mathematics and Statistics · 25 февраля 2025

Оригинал: Lalor, L., Swishchuk, A. «Event-Based Limit Order Book Simulation under a Neural Hawkes Process: Application in Market-Making», 2025 — arxiv.org/abs/2502.17417 (PDF), лицензия CC BY 4.0.

Рисунки воспроизведены из оригинальной публикации. Перевод выполнен с указанием источника в соответствии с условиями лицензии CC BY 4.0.

Аннотация

В этой работе мы предлагаем событийную (event-driven) модель книги лимитных заявок (LOB), охватывающую двенадцать наиболее часто наблюдаемых LOB-событий на биржевых финансовых рынках. Для моделирования этих событий мы предлагаем использовать современный Neural Hawkes процесс — более робастную альтернативу традиционным моделям процессов Хоукса. Точнее, эта модель улавливает динамические взаимосвязи между разными типами событий, в частности их долго- и краткосрочные взаимодействия, с помощью нейронной сети Long Short-Term Memory. В этом каркасе мы строим процесс mid-цены, отражающий событийное поведение LOB, симулируя высокочастотную динамику так, как она проявляется на реальных финансовых рынках. Эмпирические результаты показывают, что наша модель улавливает многие из общих характеристик ценовых флуктуаций, особенно в части их общей волатильности. Мы применяем эту модель симуляции LOB в каркасе маркетмейкинга на глубоком обучении с подкреплением, где торговый агент теперь может получать исполнения заявок способом, близко напоминающим исполнение сделок на реальном рынке. Здесь мы также сравниваем результаты симулированной модели с результатами на реальных данных, подчёркивая, что общая результативность и распределение исполнений заявок близко согласуются с тем же анализом на реальных данных.

Ключевые слова: алгоритмическая и высокочастотная торговля, книги лимитных заявок, глубокое обучение с подкреплением, многомерный процесс Хоукса, Neural Hawkes, симуляция рынка.

1. Введение

Существует множество работ, посвящённых моделированию данных книги лимитных заявок (LOB), которые часто используют ту или иную аппроксимацию для процесса mid-цены1. Подробный обзор моделей LOB можно найти в обзорной статье Gould et al. (2013), а также в более недавнем исследовании Jain et al. (2024), где представлена значительная часть текущих эмпирических свидетельств популярной литературы вместе с ясным указанием на то, что остаётся много ограничений, не сводящихся только к модели ценового процесса. В этой работе мы строим процесс mid-цены с нуля, используя реальные LOB-события для воспроизведения его эволюции на рынке. В системе LOB три основных типа событий — это поступления лимитных заявок, поступления рыночных заявок, ведущие к исполнению сделок, и отмены лимитных заявок. Каждый раз, когда происходит одно из этих событий, ему присваивается уникальная временная метка (почти наверное), и события происходят в неравномерные дискретные моменты времени. Мы считаем, что модель, способная учитывать эту событийную структуру, лучше соответствует реалиям моделирования LOB для стратегий алгоритмической и высокочастотной торговли (HFT).

1 Mid-цена — середина между лучшими ценами bid и ask.

Популярные модели LOB в литературе часто опираются на аппроксимации ценообразования, обычно игнорируя дискретную, событийную природу реальной динамики LOB. Это вносит ограничения, выходящие за рамки простого неверного приближения процесса mid-цены, потенциально приводя к бóльшим неточностям при симуляции результативности алгоритмических и HFT-стратегий. Например, как показано в Law and Viens (2019), многие модели, включающие ту или иную диффузионную модель ценообразования (среди популярных и часто цитируемых работ — Bertsimas and Lo (1998), Bouchard et al. (2011), Cartea et al. (2015), Guéant (2017)), часто приводят к появлению так называемых «фантомных прибылей» (phantom gains) в приложениях алгоритмической торговли и HFT, особенно в торговых стратегиях с исполнением многочисленных лимитных заявок, таких как маркетмейкинг (MM). При бэктестировании или реализации MM-стратегии становится очевидно, что критически важно идентифицировать, какое LOB-событие (или события) вызвало движение цены. Однако модели случайного блуждания вроде броуновского движения не могут этого уловить, поскольку LOB-события полностью независимы от моделируемого диффузионного процесса. Простой пример, который может это прояснить: подумайте о MM-агенте, выставляющем лимитные заявки на лучших bid/ask. Его лимитные заявки гораздо вероятнее будут исполнены, когда цена идёт против него, чем в его пользу, — чего диффузионная модель учесть не может. Таким образом, симуляция MM-стратегии в диффузионной модели часто переоценивает лёгкость получения благоприятного исполнения лимитных заявок по сравнению с реальными условиями. Эмпирические свидетельства в согласии с этим примером можно найти в Lalor and Swishchuk (2024b) и DeLise (2024), где изучается проблема неблагоприятного отбора в LOB, лежащая в основе этой торговой стратегии. Диффузионные модели ценообразования широко используются в литературе по математическим финансам, алгоритмической торговле и HFT из-за их простоты в моделировании и симуляции. Однако их врождённые ограничения становятся более выраженными в HFT-контекстах, снижая их применимость на реальных рынках.

В этом исследовании мы предлагаем новый подход, моделирующий 12 LOB-событий с помощью нелинейного многомерного процесса Хоукса (MVHP), симулируемого в стандартном каркасе Neural Hawkes процесса. Затем мы применяем этот подход к моделированию LOB к современной задаче алгоритмической торговли и HFT на глубоком обучении с подкреплением (RL) — относительно новом, но более робастном методе анализа таких задач математической оптимизации. Мы моделируем 12 типов LOB-событий, охватывая значительную часть реальной активности LOB. Это можно расширить дополнительными типами событий, доступными на определённых рынках, при условии что их влияние на процесс mid-цены и функцию интенсивности, управляющую частотами событий, хорошо понято. В некоторых недавних работах предпринимались похожие попытки, например в Gašperov and Kostanjčar (2022), где разработан MM-каркас, применяющий модель mid-цены, эволюционирующую на основе линейной MVHP-модели, сформулированной в Lu and Abergel (2018). Однако мы считаем, что MVHP, выполняющий нелинейное преобразование линейного MVHP, более общ и лучше соответствует тому, как следует моделировать ценовые данные LOB. Эмпирические свидетельства в поддержку этой теории приведены в Lu and Abergel (2018) и Shi and Cartlidge (2022): нелинейная MVHP-модель приближает данные LOB лучше, чем линейный MVHP или другие традиционные модели Хоукса.

Опираясь на эту событийную структуру LOB, мы строим процесс mid-цены с помощью нейронно само-модулируемого многомерного точечного процесса, известного как Neural Hawkes процесс (Neural HP), впервые введённого в Mei and Eisner (2017). К настоящему времени мы нашли только два применения Neural HP в моделировании LOB, что отмечено и в недавнем обзоре Jain et al. (2024). В Shi and Cartlidge (2022) эмпирические свидетельства говорят о том, что их модель LOB-событий на четырёх типах событий симулирует данные LOB лучше традиционных стохастических HP-моделей и других методов глубокого обучения. В Kumar (2024) Neural HP используется для симуляции данных LOB после подгонки к конкретным датасетам, а также учитывает действия трейдеров через агентную модель. Помимо преимуществ нелинейного MVHP, позволяющего точнее моделировать отношения само- и кросс-возбуждения между LOB-событиями, Neural HP также снимает часть ограничений, всё ещё присутствующих в традиционных HP-моделях. Эти ограничения включают требование, чтобы функция возбуждения порождала только положительные значения, аддитивную природу прошлых событий и фиксированную структуру затухания функции интенсивности. Например, в данных LOB из эмпирических свидетельств Lu and Abergel (2018) ясно, что между определёнными LOB-событиями весьма распространены эффекты подавления (ингибирования), а не возбуждения, — что хорошо обученная Neural HP модель может учитывать. Следовательно, Neural HP модели лучше подходят для улавливания этих сложных зависимостей.

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

  1. Мы разрабатываем каркас Neural Hawkes симуляции LOB на основе 12 ключевых LOB-событий, наблюдаемых на электронных финансовых рынках. Эмпирические свидетельства демонстрируют, что этот событийный подход близко согласуется с реальными приходами LOB-событий, улавливая их нелинейные зависимости. Это критически важная особенность для HFT, поскольку отдельные события или их последовательности несут гранулярную информацию, существенную для краткосрочных трейдеров.
  2. Эта событийная структура LOB позволяет нам разработать симуляцию цены актива, движимую уникальным скачкообразным процессом, где скачки соответствуют вероятности возникновения конкретных размеров скачка внутри каждой категории LOB-событий. Мы показываем, как этот подход можно структурировать на основе специфичных для актива характеристик событий и применять к различным HFT-сценариям.
  3. Это первая работа, применяющая событийную LOB-модель на Neural Hawkes к высокочастотной MM-стратегии и демонстрирующая, как эта структура обеспечивает более реалистичное бэктестирование HFT-стратегий. Мы считаем это значимым расширением предшествующей MM-литературы, поскольку оно позволяет точнее симулировать исполнения заявок на основе LOB-событий, необходимых для совершения сделки. Кроме того, улучшается моделирование частот и тайминга LOB-событий. Эти аспекты критичны для симуляций высокочастотного MM и получили ограниченное внимание в существующих исследованиях.

Остальная часть работы устроена так. В разделе 2 мы вводим модель mid-цены, используемую на протяжении всей статьи. Раздел 2.1 содержит обсуждение и анализ включённых LOB-событий, а раздел 2.2 даёт обзор каркаса нелинейного MVHP-моделирования. В разделе 3 мы описываем каркас симуляции mid-цены через нейронный MVHP. Раздел 3.1 вводит модель Neural Hawkes процесса, раздел 3.2 детализирует процесс симуляции mid-цены и обсуждает ключевые результаты симуляций. В разделе 4 мы переходим к приложению в каркасе глубокого RL, сосредоточившись на задаче высокочастотного MM. Здесь мы проводим сравнительный анализ между симулированными и реальными данными LOB по пяти разным активам. В завершение мы обсуждаем выводы и рекомендации для будущих исследований.

2. Моделирование процесса mid-цены

В этом разделе мы обсуждаем формулировку нашего процесса моделирования mid-цены в каркасе нелинейного MVHP. За последние 15–20 лет процессы Хоукса нашли множество применений в финансах (широкий обзор — в Bacry et al. (2015)), а в последнее время и в алгоритмической торговле и HFT. Процесс Хоукса — это самовозбуждающийся точечный процесс, в котором возникновение события увеличивает вероятность будущих событий в коротком временном окне. Это делает его хорошо подходящим для моделирования кластеризованных приходов событий, таких как активность LOB на финансовых рынках. Примеры применений в области моделирования LOB включают Abergel and Jedidi (2015), где изучается долгосрочное поведение применения HP к LOB, Cartea et al. (2018b), где метрика потока заявок моделируется через HP, Swishchuk and Huffman (2020) и Swishchuk et al. (2019), формулирующие набор общих составных HP-моделей, применимых в определённых торговых задачах, с другими приложениями в Roldan Contreras and Swishchuk (2022) и Lalor and Swishchuk (2024a). Это ни в коей мере не исчерпывающий обзор HP-приложений в LOB — за ним мы отсылаем читателя к обзорной статье Jain et al. (2024). Однако из недавней литературы ясно, что HP — подходящий выбор для моделирования LOB-событий, особенно с точки зрения точечных процессов.

Остальная часть раздела устроена так. В разделе 2.1 мы даём обзор 12 LOB-событий, рассматриваемых в этой работе, вместе с анализом частот их появления в реальных данных LOB. В разделе 2.2 мы опишем динамику нелинейного MVHP, используемую для моделирования этих событий, вместе с нашим процессом mid-цены, представляющим ценовые движения на основе этих событий.

2.1. События книги лимитных заявок

При выборе LOB-событий для моделирования мы следуем набору событий, аналогичному использованным в Lu and Abergel (2018), Law and Viens (2019) и Gašperov and Kostanjčar (2022). В этих работах фокус на том, как каждое LOB-событие влияет на mid-цену, т.е. вызвали ли эти события рост, снижение или отсутствие изменения mid-цены. Независимо от их влияния на mid-цену, все они влияют на функцию интенсивности MVHP, которая будет введена в разделе 2.2, через эффекты само- и кросс-возбуждения, моделируемые нелинейными MVHP-моделями. Эти LOB-события можно ввести следующим образом:

  1. Агрессивная лимитная заявка на покупку ($LB^+$): лимитная заявка, двигающая mid-цену вверх постановкой по цене bid выше предыдущего лучшего bid.
  2. Агрессивная лимитная заявка на продажу ($LS^-$): лимитная заявка, двигающая mid-цену вниз постановкой по цене ask ниже предыдущего лучшего ask.
  3. Агрессивная рыночная заявка на покупку ($MB^+$): рыночная заявка, двигающая mid-цену вверх и исчерпывающая как минимум одну очередь ask.
  4. Агрессивная рыночная заявка на продажу ($MS^-$): рыночная заявка, двигающая mid-цену вниз и исчерпывающая как минимум одну очередь bid.
  5. Агрессивная отмена лимитной покупки ($BC^-$): отменённая лимитная заявка на покупку, ведущая к снижению mid-цены при опустошении очереди на предыдущей лучшей цене bid.
  6. Агрессивная отмена лимитной продажи ($SC^+$): отменённая лимитная заявка на продажу, ведущая к росту mid-цены при опустошении очереди на предыдущей лучшей цене ask.
  7. Неагрессивная лимитная заявка на покупку ($LB^0$): лимитная заявка на покупку, оставляющая mid-цену без изменения.
  8. Неагрессивная лимитная заявка на продажу ($LS^0$): лимитная заявка на продажу, оставляющая mid-цену без изменения.
  9. Неагрессивная рыночная заявка на покупку ($MB^0$): рыночная заявка на покупку, оставляющая mid-цену без изменения.
  10. Неагрессивная рыночная заявка на продажу ($MS^0$): рыночная заявка на продажу, оставляющая mid-цену без изменения.
  11. Неагрессивная отмена лимитной покупки ($BC^0$): отмена лимитной заявки на покупку, оставляющая mid-цену без изменения.
  12. Неагрессивная отмена лимитной продажи ($SC^0$): отмена лимитной заявки на продажу, оставляющая mid-цену без изменения.

В этой работе мы использовали данные LOBSTER (2025) — сайта, работающего в партнёрстве с Nasdaq и Венским университетом, который предлагает высокочастотные данные по множеству акций и на который теперь полагаются многие исследователи в алгоритмической и HFT-области. Они предлагают бесплатные данные за один день, 21 июня 2012 года, на протяжении всего торгового дня (9:30–16:30 EST). Эти бесплатные данные включают данные LOB до 10 ценовых уровней вместе с потоками сообщений о транзакциях для акций, торгуемых на бирже NASDAQ. Таблица 1 представляет частоту каждого описанного выше LOB-события по пяти тикерам (Apple-AAPL, Amazon-AMZN, Alphabet-GOOG, Intel Corp.-INTC и Microsoft-MSFT), полученную с использованием всех 10 уровней LOB. Последний столбец таблицы 1 показывает вероятность появления каждого LOB-события при условии появления какого-либо LOB-события, на основе данных этих пяти акций.

Тип событияAAPLAMZNGOOGINTCMSFTВероятность
$LB^+$16 8056 6116 4967399510.01497
$LS^-$17 4746 9936 3818691 0780.01554
$MB^+$5 8761 8711 7487259310.00528
$MS^-$6 2272 3682 1116958880.00582
$BC^-$8 9695 0133 904951040.00857
$SC^+$8 9994 7013 444941080.00822
$LB^0$65 71456 79227 626162 421153 9720.22101
$LS^0$91 02161 58830 755140 761173 5650.23577
$MB^0$12 3853 6444 12117 93915 7840.02552
$MS^0$10 5023 5353 69713 12315 8110.02211
$BC^0$65 83056 41327 839153 903144 4800.21245
$SC^0$90 58860 24829 793132 675161 0920.22474

Таблица 1. Суммарное число появлений каждого типа LOB-события по данным до десяти уровней LOB в наборе LOBSTER за 21 июня 2012 года, вместе с вероятностью каждого события на основе этих 5 акций.

Поскольку ясно, что LOB эволюционируют на основе событий описанного типа, мы считаем первостепенным, чтобы любой процесс симуляции mid-цены это учитывал, особенно при изучении высокочастотных данных и краткосрочных торговых стратегий. Как в Lu and Abergel (2018) и Gašperov and Kostanjčar (2022), мы покажем, как каждое из этих LOB-событий можно моделировать нелинейной MVHP-моделью, поскольку MVHP обычно используются для моделирования связей между этими событиями. В литературе по симуляции HFT-стратегий для симуляции данных LOB использовался только линейный MVHP, поэтому мы стремимся расширить предыдущие работы симуляцией нелинейного MVHP. Нелинейные MVHP дают бóльшую гибкость в моделировании сложных зависимостей между событиями, поскольку допускают неаддитивные, зависящие от состояния эффекты возбуждения и могут улавливать эффекты подавления или насыщения, которые линейным моделям недоступны. Это делает их лучше подходящими для приложений вроде моделирования LOB, где взаимодействия событий высокодинамичны и не строго аддитивны.

2.2. Моделирование mid-цены через многомерный процесс Хоукса

Пусть $N(t) = (N_1(t), N_2(t), \ldots, N_m(t))$ — простой многомерный считающий процесс, в котором в любой момент времени может произойти только одно событие. Это предположение реалистично для данных LOB благодаря их высокому разрешению, где каждое LOB-событие имеет уникальную временную метку почти наверное. Условный процесс интенсивности этого простого многомерного считающего процесса — $\lambda(t) = (\lambda_1(t), \lambda_2(t), \ldots, \lambda_m(t))$, представляющий число LOB-событий типа $i$, произошедших до момента $t$, для $i = 1, \ldots, m$. В нашем случае $m = 12$ — число разных типов LOB-событий. Функцию интенсивности каждого $\lambda_i(t)$, для $i$-го события в момент $t$, можно определить так:

\[ \lambda_i(t) = \phi_i\left( \lambda_i + \int_{(0,t)} \sum_{j=1}^{m} \mu_{ij}(t-s)\, dN_j(s) \right), \tag{1} \]

где $\lambda_i$ — базовая интенсивность $i$-го события, которая может зависеть от времени, $\mu_{ij}$ — ядерная функция (в литературе часто экспоненциальная или степенная из-за простоты), описывающая влияние прошлых событий типа $j$ на события типа $i$, а $\phi_i$ — нелинейная функция, преобразующая линейный MVHP в нелинейный MVHP. Для наших целей мы выберем экспоненциальное ядро для простоты, положив $\mu_{ij} = \alpha_{ij} e^{-\beta_{ij} t}$. Уравнение (1) тогда переписывается как

\[ \lambda_i(t) = \phi_i\left( \lambda_i + \int_{(0,t)} \sum_{j=1}^{m} \alpha_{ij} e^{-\beta_{ij}(t-s)}\, dN_j(s) \right), \tag{2} \]

где $\alpha$ и $\beta$ управляют эффектами само- ($i = j$) и кросс- ($i \ne j$) возбуждения между моделируемыми событиями.

Далее мы делим наш список LOB-событий из раздела 2.1 на три категории по соответствующим движениям mid-цены. Обратите внимание на сокращённые обозначения этих событий в разделе 2.1, где показатели $+$, $-$ и $0$ относятся к LOB-событиям, ведущим к росту, снижению или отсутствию изменения mid-цены. Эти категории LOB-событий описываются так:

Отметим также, что LOB-события из множеств $O_u$ и $O_d$ называются агрессивными, так как они меняют mid-цену, а события из множества $O_n$ — неагрессивными, так как они не меняют mid-цену.

Поскольку LOB эволюционирует на основе дискретных появлений этих типов событий, определим эволюцию процесса mid-цены в дискретном времени так:

\[ V(t + \Delta t) = V(t) + \frac{\Delta}{2} \times \left[ \sum_{k \in O_u} I_k(t) a(X_k) - \sum_{l \in O_d} I_l(t) b(X_l) + \sum_{m \in O_n} I_m(t) c(X_m) \right] = V(t) + \frac{\Delta}{2} \times \left[ \sum_{k \in O_u} I_k(t) a(X_k) - \sum_{l \in O_d} I_l(t) b(X_l) \right]. \tag{3} \]

Заметим, что третье слагаемое исчезает, поскольку размеры скачков всегда равны нулю для неагрессивных LOB-событий множества $O_n$. Правую часть уравнения (3) можно описать так:

Это более общая версия процесса mid-цены из Lu and Abergel (2018), где предполагалось, что размер скачка для каждого события $+$ и $-$ всегда равен одному тику. Если упростить нашу модель до их модели, размер скачка для каждого $+$ или $-$ LOB-события был бы равен 1, то есть $a(X_k) = b(X_k) = 1$ на каждом шаге. Это дало бы следующее:

\[ V(t + \Delta t) = V(t) + \frac{\Delta}{2} \times \left[ \sum_{k \in O_u} I_k(t) - \sum_{l \in O_d} I_l(t) \right], \tag{4} \]

что совпадает с процессом mid-цены из Lu and Abergel (2018), но в дискретном времени.

3. Симуляция mid-цены через Neural Hawkes процесс

Neural HP расширяет традиционные HP, формулируя рекуррентные нейронные сети (RNN) непрерывного времени для моделирования последовательностей событий с адаптивными временными зависимостями, характерными для нелинейных MVHP-моделей. Этот подход преодолевает многие ограничения большинства классических HP-моделей, такие как предположение о фиксированной параметрической форме функции интенсивности. Модель Neural HP в оригинальной статье Mei and Eisner (2017) построена на LSTM RNN, обучающейся интенсивностям конкретных событий во времени. Идея моделирования LOB на основе структуры Neural HP относительно нова и нацелена на расширение предыдущих работ по применению HP к LOB-моделям за счёт способности процесса улавливать больше реальных феноменов. В частности, теперь можно моделировать эффекты подавления и инерции в данных LOB, показанные в Lu and Abergel (2018). Точнее, значения $\alpha_{i,j}$ и $\lambda_i$ в уравнении (2) теперь могут быть отрицательными, что невозможно в более ограничительном нелинейном MVHP-каркасе. Это может дать отрицательные «интенсивности» активации, которые затем пропускаются через нелинейную передаточную функцию для обеспечения положительности. Кроме того, совокупный эффект прошлых событий не обязан быть аддитивным, и модель может учитывать отложенные эффекты, часто не проявляющиеся через простую константу затухания обычных HP, как в уравнении (2). Таким образом, Neural Hawkes процесс способен преодолеть часть недостатков традиционной HP-модели: теперь влияние прошлых событий на будущие может быть больше, меньше или даже ослаблять их влияние, а также может зависеть от порядка, в котором происходили прошлые события.

В этом разделе мы сначала введём нашу модель Neural HP в разделе 3.1, где опишем архитектуру сети и то, как проводились обучение и тестирование, вместе со сводкой результатов. Мы также покажем, как 12 LOB-событий нашей модели можно симулировать на основе этих результатов. Затем в разделе 3.2 мы обсудим, как использовать эти результаты для симуляции нашего событийного процесса mid-цены, расширяющего значительную часть предыдущей литературы, где часто предполагается независимость событий и ценовых процессов. Мы также приведём примеры симуляций mid-цены для активов из данных LOBSTER с анализом того, насколько многие части этих результатов согласуются с реальными данными LOB, обсуждёнными в разделе 2.1.

3.1. Каркас Neural Hawkes процесса

Здесь мы объясняем основные компоненты разработанной нами модели Neural HP, многие части которой близко следуют стандартной модели Neural Hawkes из Mei and Eisner (2017) и Shi and Cartlidge (2022), где последняя — расширение оригинальной модели Neural Hawkes для LOB-модели, зависящей от состояния. Структуру созданного нами процесса симуляции сети можно увидеть на рис. 1. Вкратце: сеть получает на вход тип LOB-события и переменную состояния рынка, LSTM-ячейка аппроксимирует структуру функции интенсивности, эволюционирующей через экспоненциальное ядро, и на выходе сеть выдаёт значение новой интенсивности каждого LOB-события. Наша модель обучается на описанных ранее данных LOBSTER, где мы делим данные на 60% обучения, 20% валидации и 20% тестирования. Далее мы опишем рабочие части этого каркаса подробнее.

Структура LSTM Neural Hawkes LOB модели
Рис. 1. Визуализация структуры нашей LSTM Neural Hawkes LOB модели.

Основные рабочие части каркаса:

Вход. Модель принимает на вход тип LOB-события через one-hot кодирование и состояние рынка — дополнительный признак-индикатор объёмного дисбаланса, представляющий текущее состояние рынка, впервые описанный в Cartea et al. (2018a) и также используемый в Shi and Cartlidge (2022). Этот признак состояния рынка использует объём, выставленный на лучших bid или ask, как прокси для предсказания краткосрочного потока заявок. Точнее, обозначим этот предиктор $I$:

\[ I = \frac{v^{b(1)} - v^{a(1)}}{v^{b(1)} + v^{a(1)}}, \tag{5} \]

где $v^{b(1)}$ и $v^{a(1)}$ — объёмы, выставленные на лучших bid и ask соответственно. Тогда состояние рынка определяется категориально:

\[ x = \begin{cases} 0, & \text{если } I \in [-1, -\theta] \\ 1, & \text{если } I \in [-\theta, \theta] \\ 2, & \text{если } I \in [\theta, 1] \end{cases} \tag{6} \]

где $x$ обозначает состояние рынка, а $\theta$ — фиксированный параметр, задающий границы. В нашей модели мы полагаем $\theta = 0.4$, как в Shi and Cartlidge (2022). По сути, $\theta$ определяет границу для различения сбалансированного (1) и несбалансированного рынка (0 или 2). Этот предиктор по существу говорит: если индикатор объёмного дисбаланса предсказывает движение вверх, события, двигающие mid-цену вверх, более вероятны, с аналогичной логикой для категорий «вниз» и «без изменения».

Обновление памяти LSTM. Знаменитая LSTM-структура, впервые введённая в основополагающей статье Hochreiter (1997), используется для поддержания и обновления скрытого состояния $h_t$ и состояния ячейки $c_t$. Здесь мы следуем методу Shi and Cartlidge (2022) в нашем более гранулярном пространстве LOB-событий: они стекируют $m$ LSTM-модулей непрерывного времени для кодирования входной информации, где $m$ — число типов LOB-событий. Это расширение традиционной LSTM-структуры Mei and Eisner (2017) позволяет вычислять параметры скрытого состояния отдельно для каждого из наших типов LOB-событий, тогда как стандартный подход ранее разделял эти параметры. Общий механизм обновления этой LSTM-системы, использованный в нашем анализе:

\[ \begin{aligned} i_t &= \sigma(W_i [x_t, h_{t-1}] + b_i) &&\text{(входной гейт)} &&\text{(7a)}\\ f_t &= \sigma(W_f [x_t, h_{t-1}] + b_f) &&\text{(гейт забывания)} &&\text{(7b)}\\ g_t &= f_t \odot c_{t-1} + i_t \odot \tanh(W_g [x_t, h_{t-1}] + b_g) &&\text{(целевое состояние ячейки)} &&\text{(7c)}\\ \delta_t &= \exp\{W_\delta [x_t, h_{t-1}] + b_\delta\} &&\text{(скорость затухания)} &&\text{(7d)}\\ c_t &= g_t + (c_{t-1} - g_t) \odot \exp\{-\delta_t \Delta t\} &&\text{(состояние ячейки)} &&\text{(7e)}\\ o_t &= \sigma(W_o [x_t, h_{t-1}] + b_o) &&\text{(выходной гейт)} &&\text{(7f)}\\ h_t &= o_t \odot \tanh(c_t) &&\text{(скрытое состояние)} &&\text{(7g)} \end{aligned} \]

где:

Выход (функция интенсивности LOB-событий). На основе описанной LSTM RNN структуры функцию интенсивности из уравнения (2) теперь можно переформулировать так:

\[ \lambda_i(t) = \phi_i(h_i(t)) = \ln\left( 1 + e^{h_i(t)} \right). \tag{8} \]

Как и в уравнении (2), каждое $\lambda_i(t)$ скачет разрывно и дрейфует к стабильному базовому значению $\lambda_i$, но в постановке Neural Hawkes эта динамика управляется вектором скрытого состояния $h(t) \in (-1, 1)^D$, определённым в уравнении (7g), где интенсивность каждого события $\lambda_i(t)$ определяется соответствующей компонентой $h_i(t)$. Влияние каждого LOB-события на функцию интенсивности улавливается вектором ячейки памяти $c(t)$ в LSTM RNN. Точнее, входной и забывающий гейты LSTM из уравнений (7a)–(7b) определяют, как прошлые события запоминаются или забываются. Входной гейт определяет, какое влияние новые события оказывают на состояние ячейки, — аналогично тому, как $\alpha_{ij}$ масштабирует вклад прошлых событий в процессе Хоукса, но более динамично. Функция затухания в уравнении (7d) обучается динамически, что позволяет ей адаптироваться к разным контекстам, в отличие от фиксированного затухания $\beta_{ij}$ стандартного HP. Гейт забывания при этом определяет, сколько прошлой памяти сохраняется до применения затухания. Наконец, ясно, что $\phi$ представлена функцией Softplus, выполняющей нелинейное преобразование и гарантирующей неотрицательность предсказанной функции интенсивности каждого LOB-события. Благодаря $m$-стекированной LSTM-структуре каждое LOB-событие теперь также имеет уникальную интенсивность на основе своей латентной динамики.

Фаза обучения. Здесь модель обучается 20 эпох с батчами размера 256, скользящим окном по каждому временному шагу и длинами последовательностей 100. Как в Shi and Cartlidge (2022), наша функция потерь в основном сосредоточена на потере, происходящей из динамики Хоукса, определяемой следующей отрицательной логарифмической функцией правдоподобия:

\[ L = \sum_{j=1}^{J-1} \sum_{i=0}^{m} \log(\lambda_i(t_{j+1})) - \int_{t_j}^{t_{j+1}} \lambda_i(s)\, ds, \tag{9} \]

по правдоподобию моментов событий $t_1, t_2, \ldots, t_J$, где $J$ — суммарное число моментов событий. Параметры затем обновляются стандартным адаптивным градиентным алгоритмом оптимизации RMSprop (Root Mean Square Propagation) с learning rate 0.002. Для оценки также отслеживается точность (accuracy) по каждому батчу.

AAPLAMZNGOOGINTCMSFT
Обучение
Потеря1.77391.69522.6181-0.4972-0.6151
Точность0.45880.44010.37780.56750.5489
Тестирование
Потеря1.54261.56622.76-0.2038-0.5639
Точность0.40540.39040.31530.49690.5124

Таблица 2. Результаты обучения и тестирования для AAPL, AMZN, GOOG, INTC и MSFT на выборках датасета LOBSTER.

В таблице 2 мы показываем результаты для обучающих и тестовых наборов по 5 изученным активам (AAPL, AMZN, INTC, GOOG, MSFT). Здесь приведены значение функции потерь, вычисленной по уравнению (9), и точность, измеряющая вероятность правильного предсказания следующего события в батче. Таблица 2 показывает, что результаты обучения довольно хорошо обобщаются на тестовые в этой постановке. На рис. 2 мы также даём визуализацию результатов обучения по всем пяти активам, показывая эволюцию функции потерь и точности за первые 20 эпох. Ясно, что обучение улучшало эти меры — потеря снижалась, точность росла, — и что ошибка обобщения от обучения к тестированию в этой постановке относительно мала. По форме функции потерь видно, что после 20 эпох дальнейшее обучение, скорее всего, значимо не улучшило бы результаты и скорее привело бы к переобученной модели. Лучшие результаты получились на INTC и MSFT, что по совпадению верно и для результатов Shi and Cartlidge (2022) для их модели с 4 LOB-событиями.

Функция потерь и точность в ходе обучения по пяти активам
Рис. 2. Визуализация функции потерь и точности в фазе обучения для AAPL, AMZN, GOOG, INTC и MSFT: потеря (красным) и точность (синим) за 20 эпох.

Теперь, на основе результатов фазы обучения, можно симулировать 12 LOB-событий нашего исследования. Здесь мы принимаем широко используемый подход к симуляции MVHP: алгоритм прореживания Огаты, впервые выведенный в Lewis and Shedler (1979), — это метод отбраковочного сэмплирования для симуляции неоднородных пуассоновских процессов. Алгоритм прореживания Огаты был впервые применён к симуляции MVHP в Liniger (2009), а также использовался для симуляций в оригинальной статье о Neural Hawkes Mei and Eisner (2017) и в Shi and Cartlidge (2022) для симуляции их набора из четырёх LOB-событий. Алгоритм сначала симулирует неоднородный пуассоновский процесс с верхней границей интенсивности, а затем избирательно принимает события на основе его условной функции интенсивности. Время ожидания $\Delta t$ следует экспоненциальному распределению, то есть $\Delta t \sim \mathrm{Exp}(\Lambda_t)$, где $\Lambda_t = \sum_{i=1}^{m} \lambda_i(t)$, а $m = 12$ — число LOB-событий. Плотность распределения — $P(\Delta t) = \Lambda(t) e^{-\Lambda(t)\Delta t}$, а ожидаемое время до следующего события $\mathbb{E}[\Delta t] = \frac{1}{\Lambda(t)}$. Это сэмплируется стандартным методом $\Delta t = -\frac{\log(U)}{\Lambda(t)}$, где $U \sim \mathrm{Uniform}(0, 1)$. Вероятность появления каждого типа LOB-события $i$ моделируется как

\[ P(i \mid \text{LOB-событие в } t) = \frac{\lambda_i(t)}{\Lambda(t)}. \tag{10} \]

Интуитивно очевидно, что LOB-события с более высокой интенсивностью выбираются с большей вероятностью.

В нашей постановке мы прогнали 200 симуляций по каждому батчу. Таблица 3 представляет кумулятивную частоту каждого LOB-события в симуляции, а рис. 3 даёт визуализацию их появления во времени в первой симуляции. Результаты таблицы 3 показывают, что неагрессивные события (с показателем 0) происходят чаще агрессивных (с показателями $+/-$), что согласуется с реальными данными таблицы 1. Хотя симуляция всё ещё демонстрирует более высокую долю агрессивных событий относительно неагрессивных по сравнению с реальными данными, общее распределение событий остаётся информативным для анализа. Ясно, что модель выучила, какие события более вероятны, но всё же с некоторыми неточностями, как также ясно видно из результатов обучения и тестирования в таблице 2. Заметим, однако, что этот тип модели Neural Hawkes доказанно превосходит стандартные бенчмарки традиционных моделей Хоукса в Shi and Cartlidge (2022), поэтому мы определённо считаем эту модель улучшением многих предыдущих Hawkes-моделей LOB в литературе, особенно с учётом её событийной структуры.

Тип событияAAPLAMZNGOOGINTCMSFT
$LB^+$2 7901 9842 7811 8842 290
$LS^-$3 0921 6402 8411 8362 239
$MB^+$3 1111 7642 6251 9372 534
$MS^-$2 4691 5722 6391 9662 211
$BC^-$2 2651 5322 6751 8522 241
$SC^+$2 4511 7732 4301 9172 314
$LB^0$4 4177 9538 3247 9985 917
$LS^0$7 65311 0087 2358 7888 336
$MB^0$4 1731 9542 8661 8785 783
$MS^0$2 8061 4883 5434 6942 359
$BC^0$3 6635 7115 9256 4748 380
$SC^0$12 31012 8217 3169 9766 587

Таблица 3. Суммарное число появлений каждого типа LOB-события за 200 симуляций в AAPL, AMZN, GOOG, INTC, MSFT.

Появление каждого LOB-события во времени в первой симуляции
Рис. 3. Визуализация того, как часто каждое LOB-событие происходило в первой из двухсот проведённых симуляций для AAPL, AMZN, GOOG, INTC и MSFT, где каждая цветная точка представляет появление конкретного события. Значения оси y, упорядоченные от 1 до 12, идут в том же порядке, что и события в таблице 3.

3.2. Процесс симуляции mid-цены

В математических финансах процессы mid-цены (часто называемые просто ценовыми процессами) обычно симулируются дискретизацией дифференциальных уравнений непрерывного времени, включающих диффузию, чистые скачки, скачко-диффузию или другую динамику моделей ценообразования. Некоторые известные примеры моделей для симуляции цен активов включают эйлерову дискретизацию знаменитой модели геометрического броуновского движения на основе Black and Scholes (1973), которая может включать и скачки, как в Merton (1976); также часто используются методы Эйлера–Маруямы или Мильштейна (см. Kloeden et al. (1992)), а также многие другие практические форматы через симуляции Монте-Карло. В значительной части литературы по алгоритмической торговле и HFT применяются похожие техники симуляции. Наиболее широко используемые подходы, как обсуждается в недавней обзорной статье Jain et al. (2024), включают модели на основе точечных процессов, где наиболее популярны модели нулевого интеллекта вроде пуассоновских процессов и базовые модели процессов Хоукса со структурами зависимостей. Этот обзор также затрагивает агентные модели и симуляционные модели на глубоком обучении. Однако большинство этих техник симуляции упускают событийную природу данных LOB, что ограничивает их эффективность в симуляции HFT-стратегий, где гранулярная информация LOB критична для принятия обоснованных решений. Мы нашли предыдущее исследование, Gašperov and Kostanjčar (2022), симулирующее событийную LOB-модель в каркасе высокочастотной MM-стратегии с использованием линейного MVHP. Как отмечалось ранее, у этого подхода есть определённые ограничения, которые модель Neural Hawkes стремится преодолеть. В области высокочастотного MM также разработана агентная модель, как показано в Kumar (2024), где модель Neural Hawkes используется для улавливания взаимодействий между разными торговыми агентами на рынке. Наша работа, однако, сосредоточена на особой событийной структуре данных LOB, которую агентной модели может быть трудно полностью уловить без моделирования широкого спектра поведений агентов на высокогранулярном уровне.

Для симуляции процесса mid-цены мы используем уравнение (3), определённое в разделе 2.2. Ясно, что процесс должен начинаться с начальной mid-цены $V(0)$, в качестве которой мы возьмём первое значение mid-цены в данных. Каждое последующее движение mid-цены затем определяется нашей событийной функцией интенсивности, вычисляемой через наш процесс симуляции Neural Hawkes. Проще говоря, можно переопределить уравнение (3) в более простой форме, нужной для симуляции. Здесь на каждой итерации цена $V(t + \Delta t)$ вычисляется как

\[ V(t + \Delta t) = V(t) + \mathrm{sgn}(\Delta V(t)) |\Delta V(t)|, \tag{11} \]

где, напомним, $\Delta t$ — неравномерный временной шаг на основе интервалов между приходами LOB-событий. Здесь $\mathrm{sgn}(\Delta V(t))$ — знак ценового скачка, происходящего для каждого уникального LOB-события. Из LOB-событий, определённых в разделе 2.1, мы знаем: если LOB-событие, симулированное функцией интенсивности, принадлежит множеству $O_u$, размер скачка положителен, т.е. $\mathrm{sgn}(\Delta V(t)) = 1$. Аналогично, если LOB-событие принадлежит множеству $O_d$ или $O_n$, то $\mathrm{sgn}(\Delta V(t)) = -1$ или $\mathrm{sgn}(\Delta V(t)) = 0$ соответственно.

Далее нужно определить размер скачка $\Delta V(t)$ для каждого только что произошедшего LOB-события, чтобы симулировать процесс mid-цены. Напомним из уравнения (3), что размер скачков отражает отображение текущего состояния в изменение цены, где отображение представляет тип ценового изменения. Для этой конкретной симуляции мы сэмплируем размеры скачков $\Delta V(t)$ из дискретного распределения, которое может включать $n$ счётно-конечных разных размеров скачка, где каждый размер имеет уникальную вероятность появления, а $n$ интерпретируется как общее число разных размеров скачка. Итак, определим вероятность конкретного размера скачка так:

\[ P(\Delta V(t) = x) = \begin{cases} p_1, & x = j_1, \\ p_2, & x = j_2, \\ \vdots & \vdots \\ p_n, & x = j_n, \end{cases} \tag{12} \]

где $p_i$ и $j_i$ — вероятность и размер каждого возможного скачка соответственно. На реальных данных LOB это может существенно различаться в зависимости от моделируемого финансового актива. Например, есть много активов, где большая часть скачков — 1 тик, и очень малая часть скачков имеет размер 2, 3, 4… тика. Таким образом, эти распределения скачков часто сильно скошены, и каждый процесс симуляции должен точно отражать это для конкретного моделируемого/симулируемого актива. Свидетельства этого — на рис. 4 по изученным нами данным, а общее число разных размеров скачка — в таблице 4. Важно отметить, что никакой размер скачка нельзя считать невозможным для конкретного актива, но выше определённого размера он крайне маловероятен в большинстве рыночных режимов; поэтому мы игнорируем этот случай. Агенту или практику, стресс-тестирующему стратегию в модели такого типа, следует рассматривать сценарии с более экстремальными скачковыми событиями — либо используя симулированные данные, либо применяя датасеты с более высокой волатильностью, чем использованный в нашем исследовании.

Гистограммы размеров скачков по каждому активу
Рис. 4. Гистограмма размеров скачков в каждом изученном активе, показывающая крайне тяжёлую правостороннюю скошенность размеров скачков.
AAPLAMZNGOOGINTCMSFT
Число размеров скачка ($n$)50479123
Волатильность (реальная)0.000050.00010.000110.000180.00016
Волатильность (симуляция)0.000050.00010.00020.00010.0002
Абс. скошенность (реальная)0.06850.12760.02670.10140.0908
Абс. скошенность (симуляция)0.16880.31341.67170.01440.0555
Избыточный куртозис (реальный)6.691817.705435.396-1.9814-1.9156
Избыточный куртозис (симуляция)6.060613.336633.8665-1.9896-1.9413
Показатель Хёрста (реальный)0.39290.34280.34150.18740.2846
Показатель Хёрста (симуляция)0.57590.65210.57070.32740.5583

Таблица 4. Число разных размеров скачка в каждом активе 21 июня 2012 года вместе со стилизованной статистикой лог-доходностей в реальных и симулированных данных.

На рис. 5 мы даём визуализацию эволюции каждой ценовой траектории по всем пяти активам, а в таблице 4 можно найти сравнение некоторых распространённых высокочастотных метрик цены актива между симулированными и реальными данными. Из результатов таблицы 4 довольно ясно, что симулированные данные смогли воспроизвести очень близкие меры волатильности и избыточного куртозиса, но были измеримые различия в значениях абсолютной скошенности и показателя Хёрста. Итак, можно заключить, что наши симулированные данные эффективно улавливают более широкие характеристики, такие как общая волатильность и толстохвостость распределения. Однако они менее точны в более тонких деталях, таких как соответствие наблюдаемому диапазону цен и различение трендового и возвращающегося к среднему поведения рынка.

Эволюция процесса mid-цены в каждом активе
Рис. 5. Эволюция процесса mid-цены в каждом активе на основе предыдущих симуляций LOB-событий.

4. Приложение: задача маркетмейкинга на глубоком обучении с подкреплением

В этом разделе мы изучаем, как можно бэктестировать стратегию в стиле маркетмейкинга в описанном выше процессе симуляции LOB, а также сравниваем результаты с тем, что произошло бы на реальных данных. Одно из главных преимуществ использования событийного процесса симуляции LOB в том, что теперь мы можем сопоставлять исполнения заявок с моментами, когда они фактически произошли, — что невозможно в широко используемых диффузионных, чисто скачковых или скачко-диффузионных моделях, где такие LOB-события либо не отслеживаются, либо считаются независимыми от ценового процесса. Например, если у MM выставлена лимитная заявка на лучшем bid, мы теперь знаем, что сделка может состояться, только если на рынок придёт рыночная заявка, распознаваемая через два ранее определённых типа рыночных заявок на продажу, $MS^-$ и $MS^0$. Таким образом, наша MM-симуляция гарантирует, что исполнение заявки происходит только при наличии двух сторон, отражая фундаментальное требование реальных рыночных взаимодействий.

Кратко суммируя MM-стратегию: рассмотрим участника рынка, выставляющего лимитные заявки по ценам bid и ask. Для простоты предполагаем, что эти заявки размещаются на лучших bid и ask. MM тогда рассматривается как поставщик ликвидности рынку, поскольку это поощряет и позволяет другим участникам торговать по текущим ценам. Крупные MM-игроки часто получают за это вознаграждение от бирж, поэтому такая активность может генерировать положительные вознаграждения. При этом MM всё же подвержен рыночному риску, поэтому в его интересах понять, когда оптимально держать лимитные заявки выставленными в LOB. В терминах оптимизации цель MM — максимизировать терминальное вознаграждение при определённых ограничениях, которые у него могут быть. Такие ограничения часто включают соблюдение определённых мер риска, например максимального размера позиции. В этом разделе мы исследуем типовую оптимизационную MM-задачу в каркасе глубокого RL, где мы стремимся вычислить оптимальную стратегию выставления лимитных заявок. Эта оптимальная стратегия будет во многом определяться LOB-моделью из раздела 3, поскольку движения цены и тайминг исполнений лимитных заявок MM — два главных фактора, влияющих на общую результативность стратегии.

В последнее время глубокий RL стал одним из более популярных оптимизационных подходов к решению задач алгоритмической и HFT-торговли такого типа. Ранее распространённым подходом в литературе была теория стохастического оптимального управления, где среди популярных работ — каркас оптимального исполнения Bertsimas and Lo (1998), общий импульсный подход Bouchard et al. (2011), учебник Cartea et al. (2015), посвящающий целую главу многочисленным вариациям MM-задачи, Guéant (2017) с очень основательным теоретическим обзором задачи оптимального MM и Cartea et al. (2018b), изучающая аспекты проблемы неблагоприятного отбора в MM. Глубокий RL набрал популярность по мере того, как прогресс глубокого обучения упростил интеграцию аппроксиматоров функций в традиционный RL-каркас. Это преодолело главное ограничение классического RL, который плохо справлялся с большими пространствами состояний-действий, типичными для задач в стиле MM. Более глубокое обсуждение преимуществ глубокого RL по сравнению со стохастическим оптимальным управлением см. в Lalor and Swishchuk (2024c). Примеры недавних применений глубокого RL в MM в литературе включают Guéant and Manziuk (2019) с глубокими нейросетями в методе Actor-Critic для оптимального MM в корпоративных облигациях, Gašperov et al. (2021) с обзором популярных подходов глубокого RL в оптимальном MM, Gašperov and Kostanjčar (2022), решающую Hawkes-основанную задачу оптимального MM методом Soft Actor-Critic (SAC), Kumar (2024), формулирующую агентную глубокую Hawkes-модель для высокочастотного MM, и Lalor and Swishchuk (2024c), использующую метод SAC с немарковскими ценовыми процессами.

Остальная часть раздела устроена так. В разделе 4.1 мы начнём с обсуждения изученной нами типовой MM-постановки, конкретно описывая основные компоненты каркаса глубокого RL. Это включает определение задействованных стохастических процессов и того, как будет симулироваться торговая стратегия. Затем в разделе 4.2 мы приведём результаты симуляций MM-стратегии в нашей симулированной LOB-постановке, обсуждённой в разделе 3.2, а также покажем, как стратегия отработала бы на реальных данных. Насколько нам известно, это первое на сегодня применение событийной LOB-модели Neural Hawkes к MM-стратегии.

4.1. Постановка маркетмейкинга

Агент в этой постановке может выставлять лимитные заявки на лучших bid и ask, и его цель — максимизировать терминальное вознаграждение при ограничении на запасы. В каркасе глубокого RL для MM главные переменные, которые нужно сформулировать, — пространство состояний-действий (аппроксимируемое нейросетью) и функция вознаграждения. Здесь мы следуем подходу, близкому к постановкам глубокого RL в Gašperov and Kostanjčar (2022) и Lalor and Swishchuk (2024c). Этот тип MM-стратегии также изучался в более традиционном подходе стохастического оптимального управления в Cartea et al. (2015) и Cartea et al. (2018b). Сначала определим пространство состояний:

\[ S_t = (V_t, Q_t), \tag{13} \]

где $V_t$ — процесс mid-цены из уравнения (3), а $Q_t$ — процесс запасов, удовлетворяющий уравнению

\[ Q_t = N^-_t - N^+_t, \tag{14} \]

где $N_t$ — считающий процесс исполнений лимитных заявок на bid ($-$) и ask ($+$). В нашей модели каждое исполнение лимитной заявки MM теперь должно совпадать с 4 событиями рыночных заявок из таблицы 1. Таким образом, логика процесса исполнения заявок будет расширена, чтобы включить событийную природу исполнения сделки.

Исполнения заявок будут разделены на отдельные непересекающиеся считающие процессы для ненеблагоприятных (non-adverse) и неблагоприятных (adverse) исполнений, как в Lalor and Swishchuk (2024b) и Lalor and Swishchuk (2024c), но теперь следуя нашей событийной логике. Процесс ненеблагоприятных исполнений также получит соответствующую вероятность ненеблагоприятного исполнения, поскольку исполнения лимитных заявок не гарантированы, когда сделки исполняются по цене лимитной заявки агента неагрессивными рыночными заявками. Это по существу следствие природы приоритета времени в LOB, где каждая лимитная заявка обычно отправляется в конец очереди ранее поданных лимитных заявок. Таким образом, только рыночные заявки, размер которых больше либо равен размеру этой очереди, гарантированно приводят к исполнению лимитной заявки.

Итак, сначала определим логику исполнения для ненеблагоприятных исполнений:

\[ NFA_t = \sum_{i=1}^{N} A^+_{t_i} I_{\{MB^0_{t_i} \ne \emptyset\}} \cdot p, \tag{15} \]

и

\[ NFB_t = \sum_{i=1}^{N} A^-_{t_i} I_{\{MS^0_{t_i} \ne \emptyset\}} \cdot p, \tag{16} \]

где $NFA_t$ и $NFB_t$ — считающие процессы всех ненеблагоприятных исполнений на лучших ask и bid соответственно. Здесь $A^+_{t_i}$ и $A^-_{t_i}$ обозначают сделки, которые произошли бы на лучших ask/bid при появлении неагрессивных рыночных заявок $MB^0$ и $MS^0$ в момент $t_i$. Однако MM-агенту эти исполнения не гарантированы, поэтому мы также ввели вероятность ненеблагоприятного исполнения $p$, определяемую как

\[ p = P\left( N^{A,\pm}_{t_i} \,\middle|\, A^+_{t_i} I_{\{MB^0_{t_i} \ne \emptyset\}} = 0,\ A^-_{t_i} I_{\{MS^0_{t_i} \ne \emptyset\}} = 0 \right). \tag{17} \]

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

\[ AFA_t = \sum_{i=1}^{N} A^+_{t_i} I_{\{MB^+_{t_i} \ne \emptyset\}}, \tag{18} \]

и

\[ AFB_t = \sum_{i=1}^{N} A^-_{t_i} I_{\{MS^-_{t_i} \ne \emptyset\}}, \tag{19} \]

где $AFA_t$ и $AFB_t$ — считающие процессы всех неблагоприятных исполнений на лучших ask и bid соответственно. Главное отличие логики исполнения заявок в этой работе по сравнению с Lalor and Swishchuk (2024b) и Lalor and Swishchuk (2024c) в том, что теперь каждое исполнение основано на событийном процессе прихода торговых заявок на рынок, а не чисто на симулированных ценовых движениях некоторого аппроксимированного ценового процесса. Интуитивно новая логика исполнения гласит: лимитные заявки агента всегда будут исполнены агрессивными рыночными заявками ($MB^+$ и $MS^-$), но лишь иногда — неагрессивными ($MB^0$ и $MS^0$), что зависит от вероятности ненеблагоприятного исполнения.

Далее определим пространство действий:

\[ A_t = \begin{cases} \{0, 1\}, & \text{если } Q_t = -q, \\ \{-1, 0, 1\}, & \text{если } -q < Q_t < q, \\ \{-1, 0\}, & \text{если } Q_t = q, \end{cases} \tag{20} \]

где видно, что MM-агент может выбирать, выставлять ли лимитные заявки на лучших bid/ask, при ограничении на запасы $q$. Таким образом, агент не может иметь длинную или короткую позицию, большую по модулю $q$.

Далее нужно определить функцию вознаграждения для измерения результативности deep RL MM-стратегии. Здесь мы используем типовую функцию вознаграждения/ценности из MM-литературы:

\[ \mathbb{E}_\pi\left[ W_T - \psi \int_0^T |Q_t|\, dt \right], \tag{21} \]

где $W_t$ — суммарное богатство, определяемое как $W_t = Q_t V_t + C_t$, где $C_t$ — денежный процесс. Здесь $\psi$ — коэффициент штрафа за запасы, штрафующий ненулевые запасы. MM-агент обычно предпочитает держать позиции на рынке малыми или большими лишь очень короткое время, поэтому это будет побуждать модель закрывать крупные позиции как можно быстрее.

Наконец, кратко опишем архитектуру нейросети, аппроксимирующей пространство состояний-действий. Как уже говорилось, мы используем подход Soft Actor-Critic (SAC) — off-policy алгоритм глубокого RL, максимизирующий ожидаемое вознаграждение при поощрении исследования через энтропийную регуляризацию, с двумя Q-сетями, стохастической политикой и автоматической подстройкой параметра баланса эксплуатации и исследования. Мы использовали python-пакет Stable Baselines3 для упрощения этого, недавно разработанный Raffin et al. (2020). См. Haarnoja et al. (2018) — основополагающую статью об этом алгоритме — и Lalor and Swishchuk (2024c) для более глубокого введения в применение этого в MM-постановке, поскольку мы используем тот же подход.

4.2. Результаты по активам — симулированные и реальные данные

В этом разделе мы обсудим результаты, относящиеся к подходу по отдельным активам, где каждый набор результатов основан на динамике LOB, выученной из данных конкретного актива. Мы провели сравнительный анализ между выходом симулированного процесса mid-цены (на основе каркаса Neural Hawkes процесса из раздела 3) и реальными данными LOBSTER (2025). В обоих случаях deep RL модель маркетмейкинга обучалась отдельно на каждом из пяти активов. Из этого анализа мы можем оценить кумулятивные результаты на невиданных данных для каждого конкретного актива и проанализировать, как основные типы событий рыночных заявок влияли на результативность MM-агента.

Сначала см. таблицу 5, где мы показываем значения параметров нашей Deep RL MM модели. Для начала мы установили максимальные запасы в 5 единиц, чтобы позиция агента не становилась слишком большой. Меньшие позиции дополнительно поощряются параметром штрафа за запасы, где мы положили $\psi = 0.001$. Каждая сделка имеет размер 1, представляемый $dQ = \pm 1$. Затем мы установили вероятность ненеблагоприятного исполнения в 0.2, что согласуется с эмпирическими результатами Lalor and Swishchuk (2024b), где эта вероятность вычислялась по данным исполнений заявок на некоторых из самых ликвидных фьючерсных контрактов Чикагской товарной биржи. Наконец, обучающие и тестовые наборы, обозначенные $X_{train}$ и $X_{test}$, брались как первые 5 000 и последующие 2 500 сэмплов данных LOB-событий и цен соответственно, как для симулированных, так и для реальных данных.

ПараметрЗначениеПараметрЗначение
$q$5$dQ$$\pm 1$
$p$0.2$\psi$0.001
$X_{train}$5 000$X_{test}$2 500

Таблица 5. Параметры симуляции Deep RL оптимального MM.

Начнём с ключевых кумулятивных результатов этого анализа, что в RL часто делается анализом выхода функции вознаграждения в терминальный момент $T$. Рис. 6 и 7 иллюстрируют кумулятивные терминальные вознаграждения во всех 100 тестовых эпизодах для симулированных и реальных данных. Здесь ясно, что кумулятивные вознаграждения в основном отрицательны для обоих наборов данных с некоторыми небольшими различиями в распределении этих терминальных значений. Это всё же представляет улучшение относительно начальных результатов в период обучения, аналогично выводам Lalor and Swishchuk (2024c), где MM-агент успешно учился достигать положительного или менее отрицательного вознаграждения. Однако довольно ясно, что простая стратегия — например, чисто сфокусированная на поиске оптимальных моментов выставления лимитных заявок на лучших bid/ask — вряд ли будет прибыльной сама по себе. Секретность высокорезультативных MM-стратегий затрудняет улучшение более традиционных MM-постановок, но главная цель здесь — показать, как нашу событийную LOB-модель можно применить в реальной постановке.

Гистограммы терминального кумулятивного вознаграждения на симулированных данных
Рис. 6. Гистограмма терминального кумулятивного вознаграждения по каждому тестовому эпизоду на симулированных данных.
Гистограммы терминального кумулятивного вознаграждения на реальных данных
Рис. 7. Гистограмма терминального кумулятивного вознаграждения по каждому тестовому эпизоду на реальных данных.

Как отмечалось ранее, результативность MM-стратегии часто во многом определяется тем, как и когда MM-агент получает исполнения лимитных заявок и, в частности, как эти исполнения влияют на общую рыночную экспозицию MM-агента. Благодаря нашему событийному каркасу мы теперь можем анализировать, какие из ранее определённых типов рыночных заявок из таблицы 1 сопоставились с выставленными лимитными заявками MM-агента. Точнее, рис. 8 и 9 иллюстрируют частоту, с которой каждый тип рыночной заявки исполнял выставленные лимитные заявки агента по всем тестовым эпизодам, на симулированных и реальных данных соответственно. Ясно, что распределение исполнений лимитных заявок MM-агента с гораздо большей вероятностью происходит от агрессивных рыночных заявок, чем от неагрессивных, и это очень похоже на обоих наборах данных. См. также таблицу 6, где видно, что отношение неблагоприятных к ненеблагоприятным исполнениям было очень похожим по каждому активу, а также существенно смещено в сторону неблагоприятных исполнений. Это по существу означает, что после получения нового исполнения позиция MM-агента на следующем шаге чаще будет в минусе, чем в плюсе. В реальности MM-агенту было бы выгодно избегать этих неблагоприятных исполнений лимитных заявок. Однако, как показали многочисленные исследования, включая Lalor and Swishchuk (2024b), эффективное их смягчение остаётся значительной проблемой.

Число исполнений по типам рыночных заявок на симулированных данных
Рис. 8. Число раз, когда каждый тип рыночной заявки приводил к исполнению заявки MM-агента в каждом тестовом эпизоде на симулированных данных.
Число исполнений по типам рыночных заявок на реальных данных
Рис. 9. Число раз, когда каждый тип рыночной заявки приводил к исполнению заявки MM-агента в каждом тестовом эпизоде на реальных данных.
AAPLAMZNGOOGINTCMSFT
Отношение (реальные)3.20933.42033.23422.00041.9510
Отношение (симуляция)3.08713.46263.41511.97081.6075

Таблица 6. Отношение неблагоприятных к ненеблагоприятным исполнениям заявок MM для каждого актива по всем тестовым эпизодам симуляции Neural Hawkes и реальных данных.

5. Выводы и рекомендации для будущих исследований

В этом исследовании мы разработали событийный Neural HP для симуляции процесса цены актива на высокочастотном уровне. Гранулярная информация LOB существенна для HFT-стратегий, таких как MM, и мы считаем, что наша модель делает шаги к улучшению анализа в этой области. Точнее, мы разработали событийную LOB-модель, учитывающую 12 основных событий, появляющихся в LOB, где интенсивность каждого события моделировалась через нелинейный MVHP. Эта нелинейная MVHP-модель затем аппроксимировалась через Neural HP, что помогает преодолеть многие ограничения традиционных HP-моделей. Наши эмпирические результаты показывают, что многие из широких динамик, видимых в симулированных данных, согласуются с реальными данными, как видно по мерам волатильности и избыточного куртозиса, тогда как модель всё ещё испытывает трудности с некоторыми более тонкими деталями, о чём свидетельствуют меры абсолютной скошенности и показателя Хёрста. Тем не менее полученный симулированный процесс mid-цены затем применялся с deep RL MM каркасом, где на симулированных и реальных данных были достигнуты очень похожие результаты. В этой постановке исполнения заявок MM теперь могут конкретно вычисляться из наблюдаемой активности LOB-событий, что больше соответствует тому, как высокочастотный MM оценивает рыночные условия в реальном мире.

В части рекомендаций для будущих исследований мы советуем углубиться в повышение точности предсказанных симулированных процессов mid-цены, чтобы они ещё ближе согласовывались с реальными данными LOB. Хотя наша постановка Neural Hawkes дала похожие результаты для простой MM-стратегии как на симулированных, так и на реальных данных, улучшение модели для лучшего различения агрессивных и неагрессивных заявок привело бы к более точному представлению высокочастотной динамики, наблюдаемой в данных LOB. Практик может также захотеть детализировать набор LOB-событий, расширив LOB-модель за пределы 12 текущих событий. Это должно быть достижимо, если влияние LOB-события на процесс mid-цены и динамику его функции интенсивности можно математически сформулировать достаточно простым образом.

Благодарности

Авторы благодарят MITACS и NSERC за финансирование исследований.

Литература

  1. Abergel, F. and Jedidi, A. (2015). Long-time behavior of a Hawkes process–based limit order book. SIAM Journal on Financial Mathematics, 6(1):1026–1043.
  2. Bacry, E., Mastromatteo, I., and Muzy, J.-F. (2015). Hawkes processes in finance. Market Microstructure and Liquidity, 1(01):1550005.
  3. Bertsimas, D. and Lo, A. W. (1998). Optimal control of execution costs. Journal of Financial Markets, 1(1):1–50.
  4. Black, F. and Scholes, M. (1973). The pricing of options and corporate liabilities. Journal of Political Economy, 81(3):637–654.
  5. Bouchard, B., Dang, N.-M., and Lehalle, C.-A. (2011). Optimal control of trading algorithms: a general impulse control approach. SIAM Journal on Financial Mathematics, 2(1):404–438.
  6. Cartea, A., Donnelly, R., and Jaimungal, S. (2018a). Enhancing trading strategies with order book signals. Applied Mathematical Finance, 25(1):1–35.
  7. Cartea, Á., Jaimungal, S., and Penalva, J. (2015). Algorithmic and High-Frequency Trading. Cambridge University Press.
  8. Cartea, A., Jaimungal, S., and Ricci, J. (2018b). Algorithmic trading, stochastic control, and mutually exciting processes. SIAM Review, 60(3):673–703.
  9. DeLise, T. (2024). The negative drift of a limit order fill. arXiv preprint arXiv:2407.16527.
  10. Gašperov, B., Begušić, S., Posedel Šimović, P., and Kostanjčar, Z. (2021). Reinforcement learning approaches to optimal market making. Mathematics, 9(21):2689.
  11. Gašperov, B. and Kostanjčar, Z. (2022). Deep reinforcement learning for market making under a Hawkes process-based limit order book model. IEEE Control Systems Letters, 6:2485–2490.
  12. Gould, M. D., Porter, M. A., Williams, S., McDonald, M., Fenn, D. J., and Howison, S. D. (2013). Limit order books. Quantitative Finance, 13(11):1709–1742.
  13. Guéant, O. (2017). Optimal market making. Applied Mathematical Finance, 24(2):112–154.
  14. Guéant, O. and Manziuk, I. (2019). Deep reinforcement learning for market making in corporate bonds: beating the curse of dimensionality. Applied Mathematical Finance, 26(5):387–452.
  15. Haarnoja, T., Zhou, A., Abbeel, P., and Levine, S. (2018). Soft actor-critic: Off-policy maximum entropy deep reinforcement learning with a stochastic actor. In International Conference on Machine Learning, pages 1861–1870. PMLR.
  16. Hochreiter, S. (1997). Long short-term memory. Neural Computation, MIT Press.
  17. Jain, K., Firoozye, N., Kochems, J., and Treleaven, P. (2024). Limit order book simulations: A review. arXiv preprint arXiv:2402.17359.
  18. Kloeden, P. E., Platen, E. (1992). Stochastic Differential Equations. Springer.
  19. Kumar, P. (2024). Deep Hawkes process for high-frequency market making. Journal of Banking and Financial Technology, pages 1–18.
  20. Lalor, L. and Swishchuk, A. (2024a). Algorithmic and high-frequency trading problems for semi-Markov and Hawkes jump-diffusion models. arXiv preprint arXiv:2409.12776.
  21. Lalor, L. and Swishchuk, A. (2024b). Market simulation under adverse selection. arXiv preprint arXiv:2409.12721.
  22. Lalor, L. and Swishchuk, A. (2024c). Reinforcement learning in non-Markov market-making. arXiv preprint arXiv:2410.14504.
  23. Law, B. and Viens, F. (2019). Market making under a weakly consistent limit order book model. High Frequency, 2(3-4):215–238.
  24. Lewis, P. W. and Shedler, G. S. (1979). Simulation of nonhomogeneous Poisson processes by thinning. Naval Research Logistics Quarterly, 26(3):403–413.
  25. Liniger, T. (2009). Multivariate Hawkes Processes. PhD thesis, ETH Zurich.
  26. LOBSTER (2025). LOBSTER: Limit Order Book Reconstruction and Visualization. Accessed: 2025-01-30.
  27. Lu, X. and Abergel, F. (2018). High-dimensional Hawkes processes for limit order books: modelling, empirical analysis and numerical calibration. Quantitative Finance, 18(2):249–264.
  28. Mei, H. and Eisner, J. M. (2017). The neural Hawkes process: A neurally self-modulating multivariate point process. Advances in Neural Information Processing Systems, 30.
  29. Merton, R. C. (1976). Option pricing when underlying stock returns are discontinuous. Journal of Financial Economics, 3(1-2):125–144.
  30. Raffin, A., Hill, A., Gleave, A., Kanervisto, A., Ernestus, M., and Dormann, N. (2020). Stable Baselines3. GitHub repository.
  31. Roldan Contreras, A. and Swishchuk, A. (2022). Optimal liquidation, acquisition and market making problems in HFT under Hawkes models for LOB. Risks, 10(8):160.
  32. Shi, Z. and Cartlidge, J. (2022). State dependent parallel neural Hawkes process for limit order book event stream prediction and simulation. In Proceedings of the 28th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, pages 1607–1615.
  33. Swishchuk, A. and Huffman, A. (2020). General compound Hawkes processes in limit order books. Risks, 8(1):28.
  34. Swishchuk, A., Remillard, B., Elliott, R., and Chavez-Casillas, J. (2019). Compound Hawkes processes in limit order books. In Financial Mathematics, Volatility and Covariance Modelling, pages 191–214. Routledge.

Перевод выполнен с сохранением структуры, формул и данных оригинала. Оригинал: arXiv:2502.17417 · Lalor, Swishchuk · CC BY 4.0.

Подборка актуальных статей, репозиториев и работ по маркетмейкингу и микроструктуре · обновлено в августе 2026