Aplicaciones de comercio de sistemas: ¿almacenamiento de datos históricos en la base de datos local?

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

Pregunta

La mayoría de las solicitudes de negociación reciben la tarjeta de datos de proveedores comerciales como IQFeed o corredores de bolsa que respaldan la API comercial. ¿Hay mérito al almacenarlo en la base de datos local? La información de datos intradía es de tamaño masivo, y la base de datos crecería exponencialmente con datos de 1 minuto para solo 50 acciones, sin importar los datos de tick-by-Tick. Sospecho que esta sería una pesadilla para la copia de seguridad de la base de datos y puede afectar el rendimiento.

Si obtiene datos históricos en archivos de texto en DVD o en línea, entonces almacenarlos en la base de datos es la única opción lógica, pero ¿sería una buena idea si lo obtiene a través de API?

¿Fue útil?

Solución

Realmente se trata de espacio de almacenamiento. Definitivamente puede hacerlo a través de API, pero asegúrese de no hacerlo usando la misma aplicación que está haciendo el comercio automatizado por usted.

Como dijo, los datos de la marca están bastante fuera de cuestión, para datos de 1 minuto que significarían aproximadamente 400 bares/día y 20000 barras para 50 símbolos.

El espacio de cálculo se puede calcular en función de eso, si está almacenando OLHC, se puede lograr con cuatro valores de tipo int.

Como señaló la otra respuesta, el rendimiento puede ser un problema con más y más símbolos, pero no debería ser un problema con 50 símbolos en barras de 1 minuto.

Otros consejos

Esta es una pregunta de rendimiento. Si la API es lo suficientemente rápida, usa eso. Si no lo es y el almacenamiento en caché ayudará, entonces caché. Solo su aplicación y sus patrones de uso pueden determinar cuánta verdad y necesidad se aplican a estas declaraciones.

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