sábado, 30 de marzo de 2013

Plan de Trabajo

En esta ocasión me gustaría compartir con vosotros el plan de trabajo que me mantendrá ocupado durante las siguientes semanas (y de cuyos avances iré dando cuenta en este blog). Básicamente lo que pretendo crear es un sistema para el desarrollo automático de sistemas de trading, así como para su puesta en marcha, seguimiento y evolución. Evidentemente, el desarrollo estará basado en R.

Las principales elementos en los que se basa el diseño del sistema son:
  • Aunque el sistema global pueda ser particularmente complejo, las estrategias de trading que finalmente se pongan en operativa real deben ser muy simples.
  • A la hora de buscar las estrategias de trading óptimas lo que prima es la robustez de las mismas, y la maximización de los beneficios se deberá alcanzar con la gestión monetaria.
La solución a desarrollar se compone de tres módulos:
  • Módulo de Búsqueda de Estrategias: tiene por objetivo realizar una búsqueda inteligente sobre un amplio espacio de posibles estrategias, seleccionando un conjunto de estrategias candidatas.
  • Módulo de Selección de Estrategias: partiendo de las estrategias candidatas generadas en el módulo anterior selecciona aquellas que son robustas.
  • Módulo de Operativa Real: partiendo de las estrategias robustas, a las que se le añade un sistema de gestión monetaria, realiza trading real. También es responsable del seguimiento y evolución de las estrategias.

Búsqueda de Estrategias
El módulo de Búsqueda de Estrategias a su vez se compone de los siguientes submódulos:
  • Algoritmo de Búsqueda: es el responsable de realizar una búsqueda inteligente por el espacio de soluciones. Se utilizará un algoritmo basado en enjambres de partículas (particle swarm) dado que lo que nos interesa es encontrar un conjunto de óptimos locales, y no el óptimo global.
  • Generador de Candidatos: para la generación de candidatos de estrategias de trading se utilizará una evolución gramatical (gramatical evolution), basada en un conjunto de gramáticas BNF específicamente diseñadas para el caso. Se utilizan gramáticas por su versatilidad a la hora de definir la forma que queremos que adopten las estrategias de trading (tendencial, pares, cointegración, ...).
  • Evaluación Rápida: como función objetivo durante la búsqueda se utilizará un procedimiento rápido de evaluación de estrategias, basado en una versión simplificada del método de Robert Pardo (sin análisis walk-forward). Se utiliza el método de Robert Pardo por su orientación hacia conseguir sistemas robustos.
En el caso de ser necesario se utilizarán técnicas de paralelización basadas en GPUs.

Selección de Estrategias
El módulo de Selección de Estrategias parte del conjunto de estrategias candidatas al que se ha llegado en el apartado anterior, y sobre ellas aplica el método Robert Pardo en su totalidad para filtrar aquellas estrategias que son robustas y presentan una esperanza matemática positiva. Al igual que en caso anterior, en caso de ser necesario se utilizarán técnicas de paralelización basadas en GPUs.

Operativa Real
El módulo de Operativa Real toma las estrategias seleccionadas en el módulo anterior y las pone a operar en una cuenta real de manera automática. Este módulo a su vez se compone de los siguientes submódulos:
  • Gestión Monetaria: se encarga de añadir la parte de gestión monetaria a las estrategias de trading. La estrategia a utilizar se basará en los trabajos de Ralph Vince.
  • Trading: módulo encargado de enviar las señales al mercado. Como broker se utilzará Interactive Brokers ya que dispone de un interfaz para operativa automática con R.
  • Re-optimización: se encarga de la re-optimización periódica de las estrategias, según la periodicidad óptima resultante del análisis walk-forward.
  • Evaluación: se encarga de la evaluación de los resultados obtenidos en real con la operativa de trading, y realimenta al submódulo de gestión monetaria. 

2 comentarios:

  1. Estaré encantado de poder ir siguiendo la evolución de lo que vayas compartiendo en el blog.

    Es un proyecto ambicioso, mucho ánimo!

    Saludos
    Orion

    ResponderEliminar
  2. Articulo muy interesante, suerte compañero en este apasionante mundo de trading, en el Blog Sistemas Trading, hay información bastante interesante sobre el tema echale un vistazo.
    http://www.sistemas-trading.com

    ResponderEliminar