Tick Data en sí no es un misterio, es el intercambio que te envía el estado de cada orden de compra o venta de cada acción (o opciones de futuros) en el libro de órdenes activo (es decir, sus órdenes todavía existen en el intercambio, pero no se han sintetizado).
**举例说明:**
某天的市场一开始的时候苹果股票的order book(委托挂单)清空(这里不进行auction period的探讨):
1. 接着来了第一个卖家:1000@100 :
这时候交易所会发给你一个message,告诉你是苹果股票有人想以100块钱卖出1000股,
那么这个order就先挂在了order book上,成为卖一。
卖:1000@100
2. 第二个卖家来了,他想卖得更高: 1000@101:
这时候交易所会发给你另一个message,告诉你是苹果股票有人卖的价格比你差,于是排序在更上面,卖二。
卖:1000@101
1000@100
3. 刚才的第一个卖家后悔了,cancel了他的order:1000@100撤消了,那么交易所会有message告诉你,
现在只剩一个1000@101(卖一)。但是你可能需要自己编程处理这种remove掉一个tick的情况。
卖:1000@101
4. 终于有买家来了... 500@90 , 这个价格是不会成交的,因为买家低于现在的最佳卖价:101,
那么order book里面会继续存着这个order,同时会发送一个tick告诉市场上的其他人,有买单了:
卖:1000@101
买:500@90
5. 继续,接着有一位买家以101块钱买入1000股,等于要把目前的bestoffer 1000@101给match - 撮合了,那么你是不会收到这个最新的bid: 101@1000 的,
因为它会进入matching engine的瞬间跟对面的best offer 撮合了,tick table的一个规则: bid offer 永远不会cross,
否则要么是数据商的bug,要么是交易所的bug。现在,你只会收到一个告诉你delete the best offer的message,那么tick table长这样:
买:500@90
Los datos de tick son tan simples que el mercado repite el proceso.Pero lo que es más complicado:
- 1. Muchas veces los datos de ticks se envían en UDP, imagine que en el mercado de valores si las transacciones son muy activas, entonces el volumen de datos será muy grande, UDP habrá casos de pérdida de paquetes, cómo tratar.
- 2. ¿Cómo procesar más rápido los datos de ticks en tiempo real, de lo contrario el volumen de datos es tan grande que una vez que se retrasa, no se puede seguir el ritmo de ticks en tiempo real hasta que su programa se cuelga?
- 3. Cómo evitar que algunas situaciones especiales causen un error, una vez que un tick no es correcto, la tabla de ticks posterior es incorrecta:)
** También hay un problema de comprensión del tick: los ticks de los diferentes mercados también son diferentes, lo que se menciona es el mercado de valores de los países desarrollados, que se impulsa en tiempo real (si hay una nueva orden y dentro del nivel de envío del tick, por ejemplo, la bolsa de Tokio solo envía 8 niveles de ticks, entonces no puedes ver el tick completo, porque puede haber más de 100 niveles si hay muchas personas que negocian). ¿Cuántos milisegundos de tick es cortar un instantáneo (snapshot), tick es 3 segundos, y luego enviarlo a usted, es probable que el sistema de transacción nacional ya sea muy antiguo y no pueda seguir el desarrollo de TI. Entonces, este dato de tick no es real time tick, solo sabes qué! en los primeros 100 milisegundos y ahora el cambio de tick es tal tick, probablemente ya se han transactado miles de órdenes en el medio.
(Este artículo fue compilado por el comerciante de cuantificación WeChat id:quantcity)
Para los datos de alta frecuencia de tick en el extranjero, hay un proceso de datos de orden completo, por lo que puede usar estos datos de orden para recuperar datos de snapshot.
Las dos acciones y los cuatro futuros más importantes del país son en teoría datos de instantánea. Por ejemplo, los campos de datos típicos incluyen: ¿Qué es esto? Precio de apertura Precio más alto Precio más bajo Precio más reciente Volumen de transacciones Volumen de transacciones ¿Qué es esto? El precio más bajo aquí es el precio más alto desde el inicio de la transacción hasta ahora, suponiendo que tengas un detalle detallado de cada transacción, en realidad este dato se puede deducir con max (min), por lo que los datos de ticks extranjeros generalmente no tienen este campo. ¿Qué es esto? Los intercambios en tiempo real ofrecidos por las bolsas y los centros de intercambio son de tres tipos: instantáneas y transacciones y encomiendas por cuenta propia. ¿Qué es esto? Las fotografías son tomadas cada 3 segundos, y luego se envían fotos de los precios actuales, máximos, mínimos, volúmenes de transacción, cantidades de transacción, etc. Como las fotografías son tomadas cada 3 segundos, no sabemos qué sucede en el mercado durante estos 3 segundos. La duración de las ofertas diarias consecutivas es de 2 horas y 2 horas por la tarde. Por lo tanto, el número de fotografías es de 14400/3 aproximadamente 3800 veces. ¿Qué es esto? La transacción por transacción es la transacción por átomo real. Pero esta información también se envía en un lote de 3 segundos, y no en tiempo real. Por ejemplo, una transacción que ocurre en el segundo y medio, se envía en el tercer segundo. ¿Qué es esto? Los datos de los pedidos de compra en comisión, en el nivel 2 solo incluyen los 50 primeros de compra y venta, no todos los pedidos. (Este artículo fue compilado por el comerciante de cuantificación WeChat id:quantcity)
**典型的有几类原因导致数据的差异**
- **1. 数据记录方式**
Por ejemplo, en el caso de los datos de nivel 1 de las acciones, el intercambio publica un archivo dbf que registra todos los datos de estado actualizados de los valores, y el archivo dbf se actualiza automáticamente. Entonces, el proveedor de datos o la persona que registra los datos necesita leer el archivo de vez en cuando y luego poner todos los datos en la base de datos, pero como la frecuencia con la que el intercambio actualiza los datos no es un valor único, la mejor manera de no perder los datos es que usted lea con más frecuencia que él. Debido a que hay una regla de este tipo, se puede ver que hay menos datos de valores no negociados que los activos, que hay menos datos de futuros a largo plazo que los recientes, y que hay problemas de sincronía en los plazos.
- **2. 运维问题**
Nadie puede garantizar que no se desconecte. Si se produce una interrupción de la red, un error de máquina, un error de programa, etc., se perderá la reproducción de los datos de la bolsa. Según el mecanismo de datos mencionado anteriormente, en realidad no hay ninguna relación lógica entre los momentos T y T+1 de los datos de nivel 1.
- **3. 程序导致的数据错误**
Algunos de los errores más inusuales, como los precios de ciertos tipos de acciones, pueden ser causados por errores en el proceso de registro de datos. ¿Por qué? Por lo tanto, en principio es difícil tener datos confiables al 100%, la verificación y limpieza de los datos es necesaria, también es una cosa aburrida, el establecimiento de reglas también depende de la experiencia personal.