Creación de sistemas de negociación mediante la generación automática de código

0
9

A medida que más y más operadores se han movido hacia el comercio automatizado, el interés en estrategias de comercio sistemáticas ha aumentado. Mientras que algunos comerciantes desarrollan sus propias estrategias comerciales, la curva de aprendizaje empinada requerida para desarrollar e implementar un sistema comercial es un impedimento para muchos comerciantes. Una solución desarrollada recientemente para este problema es el uso de algoritmos informáticos para generar automáticamente el código del sistema comercial. El objetivo de este enfoque es automatizar muchos de los pasos en el proceso tradicional de desarrollo de sistemas comerciales.

El software de generación automática de código para construir sistemas comerciales se basa a menudo en programación genética (GP), que pertenece a una clase de técnicas llamadas algoritmos evolutivos. Los algoritmos evolutivos y GP en particular fueron desarrollados por investigadores en inteligencia artificial basados ​​en los conceptos biológicos de reproducción y evolución. Un algoritmo GP desarrolla una población de estrategias comerciales a partir de una población inicial de miembros generados aleatoriamente. Los miembros de la población compiten entre sí en función de su estado físico . Los miembros más en forma se seleccionan como padres para producir un nuevo miembro de la población, que reemplaza a un miembro más débil (menos en forma).

Dos padres se combinan usando una técnica llamada crossover, que imita el crossover genético en la reproducción biológica. En el cruce, parte del genoma de uno de los padres se combina con parte del genoma del otro padre para producir el genoma del niño. Para la generación del sistema comercial, los genomas pueden representar diferentes elementos de la estrategia comercial, incluidos varios indicadores técnicos, como promedios móviles, estocásticos, etc. diferentes tipos de órdenes de entrada y salida; y condiciones lógicas para entrar y salir del mercado.

Otros miembros de la población se producen por mutación, es decir, un miembro de la población se selecciona para ser modificado al cambiar al azar partes de su genoma. Por lo general, una mayoría (p. Ej., 90%) de los nuevos miembros de la población se producen por cruce, mientras que los miembros restantes se producen por mutación.

Durante generaciones sucesivas de reproducción, la aptitud general de la población tiende a aumentar. La aptitud se basa en un conjunto de objetivos de construcción que clasifican o puntúan cada estrategia. Los ejemplos de objetivos de construcción incluyen varias medidas de rendimiento, como el beneficio neto, la reducción, el porcentaje de ganadores, el factor de beneficio, etc. Estos pueden establecerse como requisitos mínimos, como un factor de beneficio de al menos 2.0, o como objetivos para maximizar, como maximizar el beneficio neto. Si hay múltiples objetivos de construcción, se puede usar un promedio ponderado para formar la métrica de aptitud. El proceso se detiene después de varias generaciones o cuando la condición física deja de aumentar. La solución generalmente se toma como el miembro más apto de la población resultante, o toda la población podría clasificarse por estado físico y guardarse para su posterior revisión.

Debido a que la programación genética es un tipo de optimización, el ajuste excesivo es una preocupación. Esto generalmente se aborda mediante pruebas fuera de la muestra, en las que los datos que no se utilizan para evaluar las estrategias durante la fase de construcción se utilizan para probarlas posteriormente. Esencialmente, cada estrategia candidata construida durante el proceso de construcción es una hipótesis respaldada o refutada por la evaluación y respaldada o refutada por los resultados fuera de la muestra.

Existen varios beneficios al construir sistemas de negociación a través de la generación automática de código. El proceso GP permite la síntesis de estrategias que solo tienen un conjunto de objetivos de rendimiento de alto nivel. El algoritmo hace el resto. Esto reduce la necesidad de un conocimiento detallado de los indicadores técnicos y los principios de diseño de la estrategia. Además, el proceso de GP es imparcial. Mientras que la mayoría de los operadores han desarrollado sesgos a favor o en contra de indicadores específicos y / o lógica de negociación, GP se guía solo por lo que funciona. Además, al incorporar una semántica adecuada de las reglas de negociación, el proceso de GP puede diseñarse para producir reglas de negociación lógicamente correctas y un código libre de errores. En muchos casos, el proceso GP produce resultados que no solo son únicos sino que no son obvios. Estas gemas ocultas serían casi imposibles de encontrar de otra manera. Por último, al automatizar el proceso de compilación, el tiempo requerido para desarrollar una estrategia viable puede reducirse de semanas o meses a una cuestión de minutos en algunos casos, dependiendo de la longitud del archivo de datos de precios de entrada y otras configuraciones de compilación.

Dejar respuesta

Please enter your comment!
Please enter your name here