Después de un largo proceso de estudio, desarrollo y programación de nuestra estrategia de trading, llegamos por fin a la fase final de esta. Es un momento en el que inconscientemente tenemos la esperanza de descubrir que nuestro sistema puede ser aún mejor de lo que preveíamos inicialmente y con el cual vamos a poder obtener jugosos beneficios. El proceso de optimización.
Pero la optimización, lejos de ser un puro trámite para encontrar los mejores parámetros que nos den los mejores resultados, puede llegar a ser una trampa que arruine nuestra estrategia y nuestra cuenta.
Hoy en día la gran mayoría plataformas de trading cuentan con potentes herramientas de optimización de estrategias. Tanto la popularización de estas herramientas (en especial los algoritmos genéticos), como el fuerte desarrollo del hardware para usuarios medios, con eficientes máquinas con potentes procesadores y gran capacidad de cálculo, han sido factores clave en la difusión del trading automático.
Bueno, pues teniendo todo esto a nuestra mano, ¿dónde está entonces el peligro de todo este proceso? El riesgo sencillamente está en nosotros mismos y en nuestra codiciosa naturaleza. La gran mayoría de traders, especialmente los más novatos, sólo tienen ojos para los beneficios y dejan de lado otros factores clave de análisis. Esto nos lleva a transformar el proceso de optimización en lo que venimos llamando sobreoptimización u overfitting, en su denominación alglosajona.
No es fácil definir lo que es la sobreoptimización. De hecho he tratado de buscar alguna definición para ponerla en el post, y no he encontrado ninguna que me terminara de convencer (posiblemente porque al igual que otros, yo también tengo mi propia interpretación de esta situación). Así que mejor que buscar una definición tratemos analizar los factores que nos pueden hacer caer en ella:
- Evitar usar demasiados parámetros en el proceso de optimización. Cuantas más variables usemos, mayores serán los grados de libertad de nuestro sistema y mayor el número de combinaciones a realizar. Esta situación puede provocar que se produzcan combinaciones de parámetros inverosímiles que, aunque ofrezcan buenos resultados en backtest, acaben resultando ruinosos en una cuenta real. Algunos traders llegan a recomendar no más de 3 variables a optimizar. Yo sin llegar a ese extremo, no recomendaría sobrepasar las 5, aunque evidentemente cuantas menos, mejor.
- Nunca optimizar buscando como objetivo el máximo beneficio. Con esto no debemos entender que despreciamos las ganancias, si no que no debemos olvidar uno de los principales factores a tener en cuenta en una estrategia, que es la relación rentabilidad/riesgo. Dicho de otra forma, no debemos fijarnos en cuanto vamos a ganar sin tener en cuenta cuanto podemos llegar a perder. Para solucionar esto lo mejor es optimizar un ratio que tenga en cuenta las dos magnitudes de beneficios y pérdidas. El profit factor (o factor de beneficio), el ratio de calmar (también conocido como drawdown ratio), o ratio de Sterling, entre otros muchos, pueden servir para este propósito. En muchos casos será nuestra propia plataforma la que nos condicionará a usar uno u otro, ya que no todas permiten elegir el criterio de optimización.
- Utilizar mapas 3D, de superficie u otras herramientas similares para localizar zonas robustas. Nunca debemos elegir puntos máximos aislados como combinaciones óptimas ya que estos pueden ser producto del azar. Elijamos valores máximos pero dentro de “áreas óptimas”. De esta forma nos garantizaremos mayor estabilidad para nuestro sistema. Si nuestra plataforma no nos ofrece demasiadas posibilidades a la hora de efectuar este análisis, siempre podemos recurrir a herramientas externas, como las hojas de cálculo, usando como base de datos los resultados de nuestra optimización. Existen infinidad de ayudas en la web de cómo realizar gráficos de calidad que nos ayuden en este proceso.
- Buscar un periodo de optimización (in sample) para realizar nuestro backtest en el que haya suficiente variedad de sucesos tanto alcistas, como bajistas, de volatilidad, etc. Después de analizar los resultados de la optimización y hacer la selección de parámetros, debemos validar estos en un nuevo periodo (out of sample) para comprobar si se mantienen los resultados y podemos finalmente concluir que nuestro sistema es estable. El periodo IS debe ser mayor que el OOS en una relación entorno a 3:1 o 5:1, y la muestra de operaciones debe ser suficiente para que exista relevancia estadística (cuantas más mejor y nunca menos de 100 operaciones). Conviene que los periodos de análisis, tanto IS como OOS, sean lo más cercano posible en el tiempo al momento actual para que la situación de mercado sea así la más parecida a la realidad que nos vamos a encontrar. Existen varias teorías de cómo realizar estos análisis, pero dado lo extenso del tema casi es mejor tratarlo en otro artículo con más detalle.
Siguiendo estas sencillas indicaciones podremos evitar la tentación de sobreoptimizar un sistema. Lo más importante en una estrategia de trading no es cuánto dinero es capaz de ganar, si no cuan equilibrada y robusta es. Y recordad que además de interesarnos por cuánto gana un sistema, debemos también preocuparnos de cómo lo gana, de cuánto pierde, de cómo lo pierde, de cuánto tarda en recuperar lo que pierde y de otras tantas magnitudes, y todo ello siempre teniendo en consideración el binomio rentabilidad/riesgo para evitar una ruina prematura.
- ¿Son buenos los indicadores para el trading? Por Carlos Pérez - 18 agosto, 2016
- Sistemas con medias móviles, por Carlos Pérez - 13 mayo, 2015
- Las trampas de la optimización, por Carlos Pérez - 9 abril, 2015
Deja una respuesta