【CJ 套利进阶 14/14】
Muchos aún no han demostrado que la estrategia sea rentable y ya empiezan a hablar del rendimiento del lenguaje. El orden está al revés.
Cuando la estrategia aparece por primera vez, lo más importante es verificarla rápidamente: ¿se pueden obtener los datos?, ¿la señal es real?, ¿después de calcular las comisiones y el deslizamiento todavía hay ganancias?, ¿qué ocurre cuando falla?. Python es adecuado para crear prototipos, investigar y usar herramientas de baja frecuencia, porque modificarlo es rápido y el ecosistema es completo. Es mejor ejecutar con poco capital durante un tiempo suficientemente largo para lograr estabilidad, que perseguir desde el principio la velocidad más extrema.
Cuando la estrategia entra en una ruta “caliente” con múltiples bolsas, alta concurrencia y sensibilidad a la latencia, entonces los problemas cambian. Cuando el mercado llega al mismo tiempo, las órdenes necesitan firmarse rápidamente y el proceso no puede ser retrasado por el recolector de basura ni bloqueado para que no aparezcan colas largas de latencia, ahí es donde el rendimiento de Rust, la memoria controlable y la estabilidad realmente valen. CJ fue reestructurando su sistema gradualmente hacia Rust y optimizando la ruta caliente desde la recepción de cotizaciones hasta el envío de órdenes, pero eso fue una mejora de ingeniería después de que la estrategia ya funcionaba; no es la fuente de la rentabilidad en sí.
Para decidir si conviene reescribir, hay que observar tres señales: la latencia ya está causando pérdida de órdenes, el “temblor” del lenguaje actual no puede resolverse mediante la arquitectura y el tamaño del sistema empieza a exceder el límite estable de un solo proceso. Si no, el código más rápido solo hará que se ejecute con más rapidez una idea que aún no está verificada.
Estas 14 entregas terminan en la misma conclusión: las oportunidades provienen de la ineficiencia del mercado, las ganancias provienen de la ejecución completa y la ventaja a largo plazo proviene de convertir el juicio, el control de riesgos y la ingeniería en un sistema.
#量化开发 #Rust
Muchos aún no han demostrado que la estrategia sea rentable y ya empiezan a hablar del rendimiento del lenguaje. El orden está al revés.
Cuando la estrategia aparece por primera vez, lo más importante es verificarla rápidamente: ¿se pueden obtener los datos?, ¿la señal es real?, ¿después de calcular las comisiones y el deslizamiento todavía hay ganancias?, ¿qué ocurre cuando falla?. Python es adecuado para crear prototipos, investigar y usar herramientas de baja frecuencia, porque modificarlo es rápido y el ecosistema es completo. Es mejor ejecutar con poco capital durante un tiempo suficientemente largo para lograr estabilidad, que perseguir desde el principio la velocidad más extrema.
Cuando la estrategia entra en una ruta “caliente” con múltiples bolsas, alta concurrencia y sensibilidad a la latencia, entonces los problemas cambian. Cuando el mercado llega al mismo tiempo, las órdenes necesitan firmarse rápidamente y el proceso no puede ser retrasado por el recolector de basura ni bloqueado para que no aparezcan colas largas de latencia, ahí es donde el rendimiento de Rust, la memoria controlable y la estabilidad realmente valen. CJ fue reestructurando su sistema gradualmente hacia Rust y optimizando la ruta caliente desde la recepción de cotizaciones hasta el envío de órdenes, pero eso fue una mejora de ingeniería después de que la estrategia ya funcionaba; no es la fuente de la rentabilidad en sí.
Para decidir si conviene reescribir, hay que observar tres señales: la latencia ya está causando pérdida de órdenes, el “temblor” del lenguaje actual no puede resolverse mediante la arquitectura y el tamaño del sistema empieza a exceder el límite estable de un solo proceso. Si no, el código más rápido solo hará que se ejecute con más rapidez una idea que aún no está verificada.
Estas 14 entregas terminan en la misma conclusión: las oportunidades provienen de la ineficiencia del mercado, las ganancias provienen de la ejecución completa y la ventaja a largo plazo proviene de convertir el juicio, el control de riesgos y la ingeniería en un sistema.
#量化开发 #Rust
