WebSocket del CLOB de Polymarket vs. archivos por hora: por qué la resolución decide tu backtest
La diferencia entre un backtest de Polymarket con el que puedes operar y uno que miente no suele estar en cuántos datos tienes, sino en cómo se muestrearon.
La captura orientada a eventos registra el order book de Polymarket ante cada cambio, directamente desde el WebSocket del CLOB; un archivo de intervalo fijo lo muestrea según un reloj (digamos una vez por hora) y descarta todo lo que ocurre entre muestras. Para los mercados cripto de corto plazo que se liquidan en minutos, el muestreo por intervalos captura apenas uno o dos fotogramas de toda la vida del mercado, y por eso es la resolución, no el tamaño del archivo, lo que decide si un backtest es confiable.
Qué significa realmente la "resolución"
La resolución es la frecuencia con la que se registra el estado del book. Existen dos enfoques fundamentalmente distintos. El muestreo de intervalo fijo toma una snapshot según un reloj (cada hora, cada minuto, cada pocos cientos de milisegundos) sin importar lo que hizo el mercado. La captura orientada a eventos registra una snapshot cada vez que el book realmente cambia: una nueva orden, una cancelación, un trade.
Ambos pueden producir archivos de tamaño parecido y, aun así, contener información completamente distinta. Una muestra por intervalos de un mercado tranquilo desperdicia filas en un book que no cambia; una muestra por intervalos de un mercado rápido se pierde los movimientos que importan.
El problema de los mercados de corto plazo
Los mercados cripto up/down de Polymarket se liquidan en 5 a 60 minutos. Considera un mercado de BTC a 5 minutos. Un archivo por hora podría capturarlo cero o una vez: puede que ni siquiera tengas un solo book de toda la vida del mercado. Un archivo por minuto te da unos cinco fotogramas, ninguno alineado con los momentos en los que tu estrategia realmente habría actuado.
La captura orientada a eventos, en cambio, registra cada re-cotización y cada trade a medida que ocurren, así que todo el arco del mercado —la apertura, los movimientos a medida que el spot avanza, la ampliación del spread hacia la liquidación— queda ahí para reproducirlo.
Comparación lado a lado
| Archivo por hora | Muestra por minuto | Orientado a eventos (DepthFeed) | |
|---|---|---|---|
| Cobertura de un mercado de 5 minutos | 0–1 fotogramas | ~5 fotogramas | Cada cambio |
| Captura la ampliación del spread | No | Rara vez | Sí |
| Slippage medible | No | Aproximado | Sí |
| Se alinea con los movimientos del spot | No | De forma gruesa | Tick a tick |
| Entrega en vivo | n/a | n/a | ~10 ms de mediana (medido) |
Por qué casi nadie conserva profundidad orientada a eventos
Registrar cada cambio del book en tiempo real es costoso: implica mantener una conexión WebSocket en vivo por cada mercado, persistir cada fotograma y no poder nunca rellenar lo que no se capturó, porque el historial del order book no se puede reconstruir después de los hechos. Por eso los exchanges no sirven su propio historial de book y la mayoría de los archivos se quedan en un último precio muestreado. DepthFeed existe específicamente para registrar y servir esa profundidad orientada a eventos.
Key takeaways
- 01La resolución tiene que ver con el método de muestreo, no con el tamaño del archivo.
- 02Los archivos de intervalo fijo se pierden la vida de los mercados de 5 a 60 minutos.
- 03La captura orientada a eventos registra cada cambio del book, así que todo el arco del mercado se puede reproducir.
- 04El historial del order book no se puede rellenar después: solo está disponible si alguien lo capturó en vivo.
La diferencia entre un backtest de Polymarket con el que puedes operar y uno que miente no suele estar en cuántos datos tienes, sino en cómo se muestrearon.
Empieza gratis