3 votos

Comprendiendo la calibración del trading de alta frecuencia en un libro de órdenes limitadas

Estoy tratando de entender y replicar esta tesis, que se basa en High-frequency trading in a limit order book de (Avellaneda y Stoikov, 2008) y Optimal market making, de Olivier Gueant, 2017, excepto que la tesis utiliza datos históricos reales para calcular las intensidades y utiliza el mejor bid(ask) como precio de referencia al calcular las intensidades $\lambda^a$ ($\lambda^b$), mientras que Avellaneda utiliza el precio medio.

Actualmente tengo un libro de órdenes limitado de 10 niveles durante todo el día con incrementos de $0.1$ segundos. También tengo la información de las órdenes como órdenes ocultas, cancelaciones, MO buy/sell, LO colocadas, etc. con los mismos incrementos en sincronización.

Por lo tanto, puedo calcular las intensidades $\lambda_t = \Lambda(\delta_t)$, y resolver para $A$ y $k$ en $\Lambda(\delta_t)=Ae^{-k\delta}$, durante el período de tiempo de los datos del LOB. Así como la $\sigma$ (asumiendo una volatilidad constante por ahora).

Pregunta principal: ¿Cómo se realiza realmente la prueba retrospectiva?

Según entiendo, el precio de oferta y demanda se simula usando:

$$\begin{align} dS_t^b & = \sigma S_t^bdW_t^b \\ dS_t^a & = \sigma S_t^a dW_t^a \end{align}$$

y $$\begin{align} \delta_t^b & = S_t - S_t^b \\ \delta_t^a & = S_t^a - S_t,\end{align}$$

donde $S_t$ es el precio de referencia.

Y la cuenta de efectivo de MM se modela por:

$$ d X_t=\left(S_t+\delta^a\right) d N_t^a-\left(S_t-\delta^b\right) d N_t^b $$

donde $N_t$ es una distribución de poisson con la intensidad $\lambda_t$, que se calcula a partir del conjunto de datos históricos que tengo.

Mi confusión radica en su algoritmo y simulación. Si simulan el precio de oferta y demanda, obviamente no seguirá las fluctuaciones del spread entre oferta y demanda en el conjunto de datos. Es decir, si $S_0 = 100$ y $S_3 = 80$ a partir de la simulación, pero ¿qué sucede si el precio del bid-ask nivel 1 es $S_3=101$ y $S_3=103$?

Según el algoritmo 1 en la página 74 de la tesis, parece que calculan $\delta^a$ y $\delta^b$ en $t=0$, con posiciones de compra y venta iniciales en el libro de órdenes de $LO^a$ y $LO^b$. Luego simulan $S_t^a$ y $S_t^b$ y si los bid-asks simulados cumplen con sus órdenes, entonces se ejecutan.

No estoy seguro de cómo se está llevando a cabo este proceso de simulación. Y si estamos simulando, ¿qué sucede si $S_t^a?

Mientras que en el artículo de Avellaneda y Stoikov, solo simulan el precio medio y luego utilizan las intensidades para determinar si la riqueza de MM cambia.

¿O solo se simula $d X_t=(S_t+\delta^a) d N_t^a - …$ utilizando los parámetros que calculamos a partir de los datos históricos del LOB?

Se agradecerían algunas ideas.

0voto

John Rennie Puntos 6821

El backtesting a alta frecuencia es complicado. Primero porque implica una gran cantidad de datos, luego porque en esta escala de tiempo tienes la certeza de que tus órdenes (simuladas) tendrán un efecto de retroalimentación e influirán en otros participantes.

Primero, echa un vistazo a quant.stackexchange, por ejemplo:

Para el aspecto específico de simular el paper de Avellaneda-Stoikov, recomendaría echar un vistazo a Guéant, Olivier, L, y Joaquín Fernández-Tapia. "Lidiar con el riesgo de inventario: una solución al problema del market making." Matemáticas y economía financiera 7 (2013): 477-507. Generaliza el paper anterior y tiene una sección completa sobre simulaciones.

Si puedo resumir

  • si quieres mantenerte cerca de las grabaciones históricas,
    1. sin embargo, necesitas tener cuidado para asegurarte de que una de tus órdenes pasivas no reciba demasiadas ejecuciones
    2. tus órdenes agresivas (aunque es posible que la solución de este problema de market making termine con órdenes negociables) no deben poder consumir la misma orden límite más de una vez, y respetar un "tiempo de recuperación" del libro de órdenes.
  • si aceptas alejarte de los registros históricos, el Modelo de Cola Reactiva es una buena solución, pero ten cuidado: es principalmente útil para pruebas de estrés.

Te proporciona 2 "regímenes": uno cercano a los datos históricos para evaluar lo que sucederá si no perturbas demasiado el régimen de liquidez de los días registrados, y otro para probar tu estrategia bajo estrés.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X