Rankia España
blog Cómo no quedarte a 2 velas en el trading

Sistemas automáticos. Parámetros a optimizar

Trataremos de dar respuestas a muchas consultas iguales o parecidas que cada semana recibimos desde usuarios de Rankia.

Para empezar lo haremos con el tema que generalmente da más dolores de cabeza a todo usuario y/o programador de sistemas que actúen de forma automática, la optimización.

Que un sistema se desajuste cada cierto tiempo y necesite de encontrar nuevos parámetros mediante el método de optimización puede ser fruto de una estrategia defectuosa o un planteamiento con errores.

 

Qué es optimizar

Todo sistema y estrategia lleva implícito el uso de reglas, da igual que su ejecución sea de forma manual por nosotros mismos o por un robot de trading. Esas reglas están definidas con horarios para operar, niveles, uso de indicadores, etc. Si por ejemplo, nuestro sistema dice que el cruce de dos media móviles simples (SMA), una rápida y otra lenta, al cortar una a la otra dependiendo la que vaya de positivo a negativo o viceversa dará una señal de entrada o salida.

Hasta aquí todo normal. Probablemente estemos programando algo que hemos usado en el pasado con parámetros más o menos fijos como usar los cierres de 20 y 50 períodos. Cuando probamos la estrategia una vez se escribe el código los resultados no son los que se esperaban. Ese es el momento donde surge la pregunta de los valores a utilizar que hagan a la estrategia ganadora.

Y para ello, la mayoría de las plataformas que permiten trading algorítmico tiene un apartado para probar estrategias y sistema de optimización. Para ello se establece que uno o varios parámetros vayan cambiando de valor en un histórico seleccionado se un activo concreto y así poder obtener una estadística con pérdidas y ganancias, drawdown, máximas pérdidas consecutivas por ejemplo que nos ayude a evaluar su eficacia.

Volviendo al ejemplo de cruce de medias, si se le dice que recorra parámetros de 10 a 40 a la rápida con salto de 1, es decir, 11, 12, 13... así hasta llegar a 40 y lo mismo para la lenta con valores entre 50 y 100 y la optimización nos ofrece como mejor resultado en ganancias valores de 31 y 77 para cada una habremos optimizado el sistema.

La sobre-optimización, peligrosa e irreal

Si escogemos esos valores de 31 y 77 para operar en el futuro inmediato corremos el peligro con muy alta probabilidad de conseguir resultados negativos en las operaciones. Se llama sobre-optimizar porque hay que aplicar el sentido común a las cosas que hacemos. Seguro que a nadie se le pasa por la cabeza usar medias móviles que no acaben el cinco o en cero.

Es peligrosa e irreal porque terminamos consiguiendo que el sistema nos diga lo que queremos "escuchar". Programar sistemas algorítmicos entraña dificultad, no sólo porque haya que conocer y manejar un lenguaje de programación, ni porque haya que definir claramente las reglas en capas de algoritmos, sino porque el encontrar los parámetros adecuados, usar históricos lo suficientemente amplios para enfrentar a la estrategia a muchos escenarios diferentes y aplicarlo en otro histórico de test es donde la mayoría falla es el método.

No es mejor estrategia la que más gana sino la que mejor se comporta

Escoger mal los valores

También ocurre que la mayoría se queda con los valores que dan más beneficio sin entrar a valorar otros que sean más discretos pero cuyo drawdown (mayor pérdida soportada en una operación abierta o el máximo de pérdidas que la cuenta tiene que soportar), coeficiente de ratio, sharpe, etc.

No es mejor estrategia la que más gana sino la que mejor se comporta.

Conclusión

Aprender buscando literatura de calidad, diseñar muy bien la estrategia para aplicar luego el método de optimizar que ofrezca resultados reales, decantarse por una plataforma que nos ofrezca flexibilidad de programación, buenas funciones de trading y un buen probador de estrategia ayuda a conseguirlo. Metratrader 5 reúne esas tres cualidades siendo además gratuita para el usuario. Lenguajes como Python o R también lo son pero exige muchísimo más nivel de conocimientos y reduce ampliamente los brokers que se pueden utilizar para operar.

Autor del blog
  • estebandaniel

    Esteban Pérez. Analista técnico independiente, trader a tiempo completo y formador. Muchos años conociendo los mercados y sabiendo cómo negociarlos. Programador y usuario de sistemas automáticos (tradingalgoritmico.com). Colaborador como formador en Forexdax (forexdax.com), en Rankia y en la revista Trader's entre otras colaboraciones.

Envía tu consulta

Este sitio web usa cookies para analizar la navegación del usuario. Política de cookies.
Cerrar