En "A Random Walk Down Wall Street" (1973), Burton Malkiel sugirió: "Un mono con los ojos vendados que arroja dardos a las páginas financieras de un periódico podría seleccionar una cartera que funcionaría tan bien como una cuidadosamente seleccionada por expertos". Si bien la evolución puede haber hecho que el hombre no sea más inteligente en la selección de acciones, la teoría de Charles Darwin ha demostrado ser bastante efectiva cuando se aplica más directamente.
TUTORIAL: Estrategias de selección de valores
¿Qué son los algoritmos genéticos?
Los algoritmos genéticos (AG) son métodos de resolución de problemas (o heurísticos) que imitan el proceso de evolución natural. A diferencia de las redes neuronales artificiales (ANN), diseñadas para funcionar como neuronas en el cerebro, estos algoritmos utilizan los conceptos de selección natural para determinar la mejor solución para un problema. Como resultado, los GA se usan comúnmente como optimizadores que ajustan los parámetros para minimizar o maximizar alguna medida de retroalimentación, que luego se puede usar de forma independiente o en la construcción de un ANN. (Para obtener más información sobre los ANN, consulte: Redes neuronales: Pronóstico de ganancias ).
En los mercados financieros, los algoritmos genéticos se usan con mayor frecuencia para encontrar los mejores valores de combinación de parámetros en una regla de negociación, y se pueden incorporar a los modelos ANN diseñados para elegir acciones e identificar operaciones. Varios estudios han demostrado la efectividad de estos métodos, incluidos "Algoritmos genéticos: Génesis de la evaluación de existencias" (2004) y "Las aplicaciones de los algoritmos genéticos en la optimización de minería de datos del mercado de valores" (2004). (Para obtener más información, consulte: Cómo se crean los algoritmos comerciales ).
¿Qué son los algoritmos genéticos?
Cómo funcionan los algoritmos genéticos
Los algoritmos genéticos se crean matemáticamente usando vectores, que son cantidades que tienen dirección y magnitud. Los parámetros para cada regla comercial se representan con un vector unidimensional que puede considerarse como un cromosoma en términos genéticos. Mientras tanto, los valores utilizados en cada parámetro pueden considerarse como genes, que luego se modifican mediante la selección natural.
Por ejemplo, una regla comercial puede involucrar el uso de parámetros como la divergencia de convergencia de promedio móvil (MACD), un promedio móvil exponencial (EMA) y estocástico. Un algoritmo genético ingresaría valores en estos parámetros con el objetivo de maximizar el beneficio neto. Con el tiempo, se introducen pequeños cambios y los que tienen un impacto deseable se conservan para la próxima generación.
Hay tres tipos de operaciones genéticas que luego se pueden realizar:
- Los cruces representan la reproducción y el cruce que se observa en la biología, mediante el cual un niño adquiere ciertas características de sus padres. Las mutaciones representan una mutación biológica y se utilizan para mantener la diversidad genética de una generación de una población a la siguiente mediante la introducción de pequeños cambios aleatorios. etapa en la que los genomas individuales se eligen de una población para su posterior reproducción (recombinación o cruce).
Estas tres operaciones se utilizan en un proceso de cinco pasos:
- Inicialice una población aleatoria, donde cada cromosoma tiene una longitud n , siendo n el número de parámetros. Es decir, se establece un número aleatorio de parámetros con n elementos cada uno. Seleccione los cromosomas, o parámetros, que aumenten los resultados deseables (presumiblemente beneficio neto). Aplique operadores de mutación o cruce a los padres seleccionados y genere una descendencia. Combine la descendencia y la población actual para formar una nueva población con el operador de selección. Repita los pasos dos a cuatro.
Con el tiempo, este proceso dará como resultado cromosomas (o parámetros) cada vez más favorables para su uso en una regla comercial. El proceso finaliza cuando se cumplen los criterios de detención, que pueden incluir el tiempo de ejecución, el estado físico, el número de generaciones u otros criterios.
Uso de algoritmos genéticos en el comercio
Si bien los algoritmos genéticos son utilizados principalmente por comerciantes cuantitativos institucionales, los comerciantes individuales pueden aprovechar el poder de los algoritmos genéticos, sin un título en matemáticas avanzadas, utilizando varios paquetes de software en el mercado. Estas soluciones van desde paquetes de software independientes dirigidos a los mercados financieros hasta complementos de Microsoft Excel que pueden facilitar un análisis más práctico.
Al utilizar estas aplicaciones, los comerciantes pueden definir un conjunto de parámetros que luego se optimizan utilizando un algoritmo genético y un conjunto de datos históricos. Algunas aplicaciones pueden optimizar qué parámetros se usan y los valores para ellos, mientras que otras se centran principalmente en simplemente optimizar los valores para un conjunto dado de parámetros. (Para obtener más información sobre estas estrategias derivadas del programa, consulte: El poder de los oficios del programa ).
El ajuste de curvas (sobreajuste), o el diseño de un sistema de comercio basado en datos históricos en lugar de identificar el comportamiento repetible, representa un riesgo potencial para los comerciantes que utilizan algoritmos genéticos. Cualquier sistema de comercio que use GA debe probarse en papel antes del uso en vivo.
La elección de parámetros es una parte importante del proceso, y los operadores deben buscar parámetros que se correlacionen con los cambios en el precio de un valor determinado. Por ejemplo, pruebe diferentes indicadores para ver si alguno parece correlacionarse con los principales cambios del mercado. (Para obtener más información, consulte: Elección del software de comercio algorítmico correcto ).
La línea de fondo
Los algoritmos genéticos son formas únicas de resolver problemas complejos al aprovechar el poder de la naturaleza. Al aplicar estos métodos para predecir los precios de seguridad, los operadores pueden optimizar las reglas de negociación identificando los mejores valores para usar para cada parámetro para una seguridad determinada. Sin embargo, estos algoritmos no son el Santo Grial, y los operadores deben tener cuidado de elegir los parámetros correctos y no el ajuste de la curva. (Para leer más, consulte: Cómo codificar su propio robot de comercio de Algo ).