///¿Qué es análisis y optimización Walk-Forward?
 

¿Qué es análisis y optimización Walk-Forward?

Uno de los mayores problemas con el desarrollo de sistemas de trading es que muchas estrategias no son capaces de mantener un buen rendimiento en el futuro. Esto puede deberse a varias razones:

  • El sistema no se basa en una premisa válida.
  • Las condiciones del mercado han cambiado de una manera dramática de tal forma que invalidan las premisas teóricas sobre las que se desarrolló el sistema.
  • El sistema no ha sido desarrollado y probado con una metodología sólida. Por ejemplo, (a) falta de robustez en el sistema debido a parámetros inadecuados, y (b) reglas inconsistentes y pruebas inadecuadas del sistema usando datos in-sample y out-of-sample.

Como vimos anteriormente, existen varios enfoques y metodologías diseñadas para evaluar la robustez de un sistema de trading y aumentar la probabilidad de que obtenga un desempeño positivo en la vida real, incluyendo:

  • Número limitado de parámetros optimizables
  • Gráficos de superficie 3D
  • Análisis de Monte Carlo
  • Análisis y optimización Walk-Forward

Una de las maneras más robustas de probar la fiabilidad de un sistema de trading y asegurarse que tendrá la mayor probabilidad de obtener un buen desempeño en el mercado es usar lo que se conoce como análisis y optimización Walk-Forward (WFO), un método descrito por primera vez en el libro “Design, Testing, and Optimization of Trading Systems” de Roberto Pardo.

¿Qué es el análisis Walk-Forward?

El análisis Walk-Forward es el proceso de optimización de un sistema de trading utilizando un conjunto limitado de parámetros y, a continuación, probar el mejor conjunto de parámetros optimizado en los datos out-of-sample. Este proceso es similar a cómo un operador utilizaría un sistema de trading automatizado para operar en vivo bajo condiciones reales del mercado. La ventana de tiempo in-sample se desplaza hacia adelante en el período cubierto por la prueba out-of-sample, y el proceso se repite. Al final de la prueba, todos los resultados registrados se utilizan para evaluar la estrategia de negociación.

En otras palabras, el análisis Walk-Forward realiza la optimización en un conjunto de parámetros de entrenamiento, posteriormente efectúa pruebas con los valores optimizados en un período después de la optimización de los parámetros y luego corre todo hacia adelante y repite el proceso. Al final del proceso tenemos múltiples periodos out-of-sample y observamos estos resultados combinados. El análisis Walk-Forward es una aplicación específica de una técnica conocida como validación cruzada. Significa tomar un segmento de datos para optimizar un sistema, y ​​otro segmento de datos para validar.

Esto da un período out-of-sample más grande y permite al desarrollador del sistema ver cuán estable es el sistema a lo largo del tiempo.

La siguiente imagen ilustra el procedimiento de las pruebas Walk-Forward. Una optimización se realiza durante un período más largo (los datos in-sample) y, a continuación, el conjunto de parámetros optimizado se prueba durante un período más corto subsiguiente (los datos out-of-sample). Los periodos de optimización y de ensayo se desplazan hacia delante y el proceso se repite hasta que se alcanza un tamaño de muestra adecuado.

Proceso de análisis Walk-Forward con 5 periodos de optimización

Con el fin de demostrar el concepto mediante un ejemplo vamos a presentar la optimización Walk-Forward de un sistema de trading de ruptura y volatilidad. Para la prueba usaremos los futuros del DAX 30, la plataforma NinjaTrader, los datos históricos de 1 minuto de CGQ, y vamos a asumir 3 puntos de deslizamiento para cada operación.

El proceso consta de tres pasos principales:

  • Definir los periodos in-sample y out-of-sample
  • Definir un área de parámetros robustos
  • Ejecutar el análisis walk-forward

Definición de los periodos in-sample y out-of-sample

Elegiremos como periodo in-sample 1/1/2005 a 31/12/2013 para el diseño del sistema y la optimización in-sample y 1/1/2014 al 31/12/2016 como período out-of-sample para evaluar la robustez de la optimización in-sample y ejecutar la corrida hacia adelante. En este caso, utilizaremos una proporción 3:1 para la optimización Walk-Forward:

  • Optimizar 2011 a 2013 y verificar el rendimiento out-of sample en 2014
  • Optimizar 2012 a 2014 y verificar el rendimiento out-of sample en 2015
  • Optimizar 2013 a 2015 y verificar el rendimiento out-of sample en 2016

Definición del área de parámetros robustos en el periodo in-sample

En esta sección vamos a definir el “área robusta” de los parámetros del sistema. Optimizaremos sólo 3 parámetros del sistema:

  • Período de la media móvil más rápida
  • Período de la media móvil más lenta
  • Filtro de volatilidad

Otros parámetros del sistema que no optimizaremos son:

  • Hora de inicio: 09:00 (GMT + 1)
  • Hora de finalización: 22:00 (GMT + 1)
  • Última operación: 18:00 (GMT + 1)
  • Riesgo por operación: 2%
  • Máximo de operaciones por día: 3
  • Salir en el cierre: Verdadero

Definición del área de parámetros robustos para las medias móviles

Gráfico 3D para la definición de los parámetros óptimos de las medias móviles

A través de un gráfico de superficie 3D podemos identificar el área de parámetros más robustos para las medias móviles tal como sigue:

  • Media móvil rápida: 12 a 30 minutos
  • Media móvil lenta: 330 a 500 minutos

Definimos como área de parámetros “robustos” aquella que no tiene picos o valles importantes y generalmente tiene un buen rendimiento.

Definición del parámetro robusto para el filtro del sistema

Como podemos ver el área robusta para el filtro está entre 0.55 y 0.70, siendo está un área donde el desempeño del sistema está aumentando lentamente y no hay alzas ni caídas abruptas.

Ahora que hemos identificado el área de parámetros robustos, vale la pena realizar una optimización in-sample completa para ver cómo se habría comportado el sistema entre el 2005 y el 2013.

Análisis del desempeño del sistema para el periodo 2008-2013

El sistema generó una ganancia neta de $120,000 entre 2005 y 2013 con un factor de ganancia de 1,56, realizando 756 operaciones con un promedio de 41% de operaciones rentables. El sistema exhibió ciertas características deseables tales como una alta relación de ganancias/pérdidas de 2,28.

Periodo Beneficio acumulado (USD) Drawdown máximo (USD)
2005 -506.50 -5240
2006 17980 -3743.50
2007 7425 -4262.50
2008 4553.70 -3068.50
2009 4350 -3331.3
2010 23537.40 -3681.10
2011 7787.50 -6562.30
2012 45232 -8575.60
2013 10231 -6443.50

Aplicación del análisis Walk-Forward

Como se anticipó ahora procederemos con una optimización Walk-Forward:

Paso 1: Optimizaremos entre 2011-2013 y encontraremos los mejores parámetros.

Los mejores parámetros para el período 2011-2013 son:

  • Media móvil rápida: 12
  • Media móvil lenta: 410
  • Filtro:55

Aplicamos estos parámetros al período out-of-sample en 2014 con los siguientes resultados:

Resultados de la prueba out-the-sample para el 2014

  • Beneficio neto: $12,300
  • Drawdown: $9,000
  • % de operaciones ganadoras: 43%
  • Factor de beneficio:38

Paso 2: Optimizaremos entre 2012-2014 y encontraremos los mejores parámetros.

Los mejores parámetros para el período 2012-2014 son:

  • Media móvil rápida: 20
  • Media móvil lenta: 500
  • Filtro:70

Aplicamos estos parámetros al período out-of-sample en 2015 con los siguientes resultados:

Resultados de la prueba out-the-sample para el 2015

  • Beneficio neto: $27900
  • Drawdown: $7450
  • % de operaciones ganadoras: 43%
  • Factor de beneficio:61

Paso 3: Optimizaremos entre 2013-2015 y encontraremos los mejores parámetros.

Los mejores parámetros para el período 2013-2015 son:

  • Media móvil rápida: 20
  • Media móvil lenta: 420
  • Filtro:55

Aplicamos estos parámetros al período out-of-sample en 2016 con los siguientes resultados:

Resultados de la prueba out-the-sample para el 2016

  • Beneficio neto: $17540
  • Drawdown: $7300
  • % de operaciones ganadoras: 41%
  • Factor de beneficio:58

Observaciones

Después de realizar un análisis Wak-Forward el desarrollador puede que tenga la duda acerca de qué conjunto de parámetros debe utilizar en el sistema para sus operaciones reales. Las opciones que tiene son las siguientes:

  • ¿Los parámetros del último período periodo adelantado (walk-forward period)?
  • ¿Los parámetros que dieron los mejores resultados?
  • ¿Los parámetros donde los resultados out-of simple fueron los mejores?
  • ¿Los parámetros en los que los resultados out-of-sample estuvieron más cerca de los resultados de la muestra?

Algunos expertos recomiendan usar la optimización más reciente. En el futuro al final del período out-of-sample actual, se optimizaría de nuevo y se utilizarían los valores recién generados en el siguiente período out-of-sample.

Conclusiones

En esta sección hemos mostrado a nivel básico cómo realizar una optimización Walk-Forward en un sistema mecánico intradía. En este caso, los resultados del análisis Walk-Forward están en línea con los resultados del in-sample y esto genera confianza en la robustez de la estrategia.


 

2018-04-28T00:47:34+00:00By |Categories: SISTEMAS DE TRADING|Tags: |0 Comments
 

Leave A Comment