¿Cómo puedo comparar las fuentes de alimentación de datos de mercado para la calidad y mejora la latencia?

StackOverflow https://stackoverflow.com/questions/2239988

Pregunta

Estoy en las primeras etapas de la implementación de una herramienta para comparar las fuentes de ingreso de datos con 2 mercado con el fin de demostrar la calidad de nuevas fuentes desarrollados a mi jefe (es decir, no hay regresiones, actualizaciones sin perdidas o erróneas), y para demostrar la mejora latencias.

Así que la herramienta que necesito debe ser capaz de comprobar las actualizaciones de diferencias, así como para decirle qué fuente es la mejor (en términos de latencia).

Concrectly, fuente de referencia podría ser a Reuters mientras que el otro es un manejador de RSS desarrollamos internamente. La gente me advirtió que los cambios podrían no llegar en el mismo orden que la aplicación podría Reuters difiere totalmente de la nuestra. Por lo tanto, es probable que no funcione un simple algoritmo basado en el hecho de que las actualizaciones podrían llegar en el mismo orden.

Mi primera idea sería utilizar la huella digital para comparar las fuentes de alimentación, como la aplicación Shazaam hace para encontrar el título del tubo que está presentando. Google me dijo que está basado en FFT. Y me preguntaba si la teoría de procesamiento de señales podría comporta bien con las aplicaciones de acceso al mercado.

Yo quería saber de su propia experiencia en ese campo, que es posible desarrollar un algoritmo bastante preciso para satisfacer las necesidades? ¿Cuál fue su propia idea? ¿Qué opinas sobre la comparación basada huella digital?

¿Fue útil?

Solución

Si el intercambio que proporciona los datos tienen algún identificador único para los datos que ofrece la aplicación es bastante sencillo, pero no es trivial.

En esencia tienes una aplicación que se suscribe a las dos alimentaciones. (Se puede hacer esto con software basado en la aspiración, así como para la vigilancia no intrusiva / medición - Puedo tratar de hacer frente a eso también)

Se podría mantener dos listas (o cualquier otro método de notación de muestras "sin precedentes" de cada toma) de datos sin igual / actualizaciones. Como cada actualización viene en busca del elemento correspondiente en la otra lista de la otra fuente de datos. Al coincidir con éxito puede guardar este emparejamiento. Cuando cada actualización viene en lo que tiene que asignar de alguna manera un "sello de tiempo" - probablemente el tiempo de máquina local. Desde el origen, en este caso sencillo es el mismo intercambio determinar la latencia relativa es bastante fácil.

Este método requiere escribir aplicaciones que suscriban los datos.

Hay un montón de cuestiones tales como el manejo de las actualizaciones que faltan y el tiempo de espera de datos sin igual, cómo manejar los intercambios o alimentos que podrían no proporcionar ides únicos para las actualizaciones, trabajando alrededor de los datos de los proveedores de errores WRT locales frente al tiempo UTC, etc.

olfateando los datos es similar, pero que le capturar los datos a través de pcap o hardware de captura de tarjetas y luego analizar las secuencias basadas en los puntos finales de los paquetes. Esto es un poco más difícil que la suscripción recta, pero tiene la ventaja de ser no invasivo y bastante flexible en cuanto a lo que conjuntos de datos que se puede medir.

Otros consejos

Uno de los enfoques que he visto a los alimentos que rodean múltiples fuentes de datos de las operaciones de sociedades es mantener simplemente una heurística informado por las que se alimenta han tendido a ser más preciso históricamente, y por lo tanto dar mayor peso a sus datos.

Por supuesto, de todos los tipos de datos del mercado de acciones corporativas es probablemente uno de los volúmenes más bajos por lo que esta técnica probablemente no va a escalar a marcar datos!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top