Documentación

Aplicaciones

Última actualización el 6. 5. 2015 por Mark Fric

Matriz Walk-Forward

Walk-Forward Matrix es una característica poderosa y única en la plataforma StrategyQuant. Puede ayudarle con dos cosas:

  1. Verificar la solidez de la estrategia
    si la estrategia supera la prueba de la matriz Walk-Forwad, significa que, con la ayuda de la reoptimización de los parámetros, se adapta a una amplia gama de condiciones de mercado.
  2. Encontrar el periodo óptimo para la reoptimización de la estrategia
    le ayudará a identificar la mejor frecuencia de optimización

Estándar Optimización Walk-Forward prueba los resultados de la estrategia con una reoptimización periódica, digamos cada 300 días.
Pero ¿cómo sabemos ¿cuál es el mejor periodo de reoptimización? Sólo podemos hacer conjeturas, a menos que utilicemos la matriz Walk-Forward que probará varias combinaciones de periodos de reoptimización.

¿Qué es la matriz Walk-Forward?

Se trata simplemente de un conjunto de optimizaciones Walk-Forward realizadas con diferente número de periodos de reoptimización y diferentes Out of Sample %.

El resultado de WF Matrix podría parecerse al de la imagen de abajo - mostrando el resultado total más el período ideal de reoptimización.

También mostrará un gráfico 3D de puntuaciones (resultados de robustez) todas las combinaciones de OOS / ejecuciones realizadas en esta matriz WF.

Este gráfico y la tabla se explicarán en la parte inferior de este artículo, empecemos primero con el ejemplo completo.

Ejemplo de matriz Walk-Forward en StrategyQuant

Realizar la Matriz Walk-Forward es casi tan sencillo como realizar la optimización WF, en las próximas líneas mostraré el proceso completo.
Todo el proceso de uso de la Matriz WF es casi igual que el uso de una optimización WF, por lo que en este ejemplo describiré sólo las diferencias.
Puede consultar Ejemplo de optimización Walk-Forward para los detalles sobre los pasos no descritos.

Contenido:

  1. Cargar una estrategia de optimización
  2. Ajuste de los valores de optimización
  3. Configuración de los recorridos walk-forward
  4. Comprobación de los resultados
  5. Interpretación de los resultados

Paso 1: Cargar una estrategia de optimización

Tenemos que cambiar a la ventana del Optimizador y cargar la estrategia que queremos optimizar.

Esta vez cambiaremos al modo Matriz Walk-Forward y configuraremos los parámetros. La Matriz WF realiza una serie de optimizaciones individuales Walk-Forward, por lo que tenemos que configurar por qué número de periodos (ejecuciones) y OOS % pasará. Para ello podemos utilizar los campos Inicio, Parada e Incremento.

En la matriz tenemos que especificar qué combinaciones queremos probar para la Optimización Walk-Forward. En nuestro ejemplo, utilizaremos los periodos 5, 7, 9, 11, 13, 15 recorridos y los OOS % 20, 30, 40.

¡Atención!
El cálculo de la matriz Walk-Forward lleva mucho tiempo, porque tiene que ejecutar la optimización Walk-Forward completa para cada combinación de la matriz. Es mejor no establecer demasiados pasos, al menos si desea obtener los resultados con relativa rapidez.

Hay un nuevo tipo de optimización Walk-Forward disponible - Simulación - que puede mejorar la velocidad de cálculo de la optimización Walk-Forward o matriz WF 10-100x más rápido.


Paso 2: Establecer los valores de optimización

Paso 3: Configurar las ejecuciones walk-forward

Estos ajustes se establecen de la misma manera o muy similar que en Ejemplo de optimización Walk-Forward.

Podemos hacer clic en el botón Inicio para iniciar la prueba.


Paso 4: Comprobar los resultados

Como ya se ha dicho, el análisis de la matriz Walk-Forward puede llevar mucho tiempo, así que espere a que termine. Puede utilizar menos parámetros, menos pasos y menos combinaciones WF para disminuir el número de pruebas necesarias y hacer que el análisis termine más rápido.

Una vez finalizada la optimización, volvemos a obtener un nuevo resultado de la matriz Walk-Forward en nuestra base de datos.

Cuando termine, veremos que sólo tenemos dos resultados en el banco de datos: la estrategia original y el resultado de la matriz Walk-Forward.

El resultado de la matriz WF en el banco de datos nos muestra el mejor Beneficio Neto de todas las optimizaciones Walk-Forwad realizadas. Hagamos doble clic en el resultado de WF en el banco de datos para abrirlo en detalle.

Los detalles muestran el resultado final de la prueba de robustez -si la estrategia superó o no la prueba- y un gráfico 3D configurable que puede mostrar los resultados de todas las combinaciones de matrices.

Debajo de los resultados finales puedes elegir cualquier combinación de Walk-Forward que se haya probado y ver los resultados detallados.

Cuando cambiemos al gráfico Equity, también veremos los resultados de la optimización Walk-Forward para una combinación seleccionada de la tabla WF Matrix.

La línea azul representa la estrategia reoptimizada y la línea gris más fina representa la estrategia original no optimizada.
Podemos ver claramente que esta estrategia funciona mejor si se reoptimiza periódicamente.

Tenga en cuenta que estos resultados y el gráfico de equidad se muestran para la optimización seleccionada: 7 ejecuciones con 20% OOS. Si elige otra combinación, los resultados y el gráfico serán diferentes.


Interpretación de los resultados

Como se ha dicho al principio de este artículo, la matriz Walk-Forward sirve a la vez de comprobación de la solidez de la estrategia y como herramienta para encontrar el periodo óptimo de reoptimización de la estrategia.

Uso de la matriz Walk-Forward como prueba de solidez

Optimizar la estrategia utilizando la optimización Walk-Forward con varios parámetros nos permite ver si la estrategia "sobrevive" durante diferentes periodos de reoptimización, con diferente longitud de historia sobre la que se optimizó.

El gráfico Score 3D nos muestra el resultado de la robustez para cada combinación de parámetros, es una gran herramienta para identificar y evitar la sobreoptimización (ajuste a la curva). Las estrategias robustas parecerán tener cambios graduales, en lugar de bruscos, en el gráfico de superficie.

Lo que buscamos es que el mayor número posible de combinaciones de WF tengan éxito.
Como mínimo, busco un grupo de al menos 3×3 combinaciones en las que haya más aciertos que fallos.

Cuando hacemos clic en el botón Configurar podemos configurarlo para que StrategyQuant reconozca esto automáticamente - en nuestro ejemplo queremos un grupo de 3×3 combinaciones de pruebas individuales Walk-Forward donde al menos 7 de estas 9 pruebas Walk-Forward tengan éxito.

En nuestro ejemplo hay dos conglomerados de este tipo, sus límites están dibujados con color amarillo y azul. En ambos casos se superaron 7 de las 9 pruebas Walk-Forward (indicadas por el color verde, las pruebas están marcadas con círculos rojos).

Si sólo se encuentra un grupo 3×3 de este tipo en la matriz, considero que la estrategia es sólida. Este grupo significa que no sólo la estrategia se beneficia de la reoptimización, sino que también se puede reoptimizar utilizando distintos periodos y sigue manteniendo su rentabilidad, lo que es un signo de robustez.

¿Qué determina el éxito de una única optimización Walk-Forward?

Anteriormente evaluamos todas las combinaciones Walk-Forward probadas para determinar si la estrategia es robusta comprobando que la mayoría de las optimizaciones WF individuales superaban nuestros criterios.
Pero, ¿cómo decidimos que una optimización Walk-Forward única ha pasado o no?
Para ello utilizamos Puntuación de robustez que se calcula para cada optimización Walk-Forward.

La puntuación de robustez es totalmente personalizable. Podemos establecer todas las condiciones que queramos vigilar en la tabla de componentes de la puntuación de robustez (1) y fijar sus valores límite. Consulte la descripción de los componentes avanzados de la puntuación en Optimización Walk-Forward artículo.

El valor principal del umbral de puntuación de la robustez (2) indica cuántas de estas puntuaciones utilizadas deben superarse para que el resultado de la WF se considere satisfactorio.

Podemos ver que, por ejemplo, 9 ejecuciones / 20% OOS fallaron porque 2 de 6 puntuaciones no pasaron - la puntuación de robustez es de sólo 66% (4 de 6 es 66%) en lugar de los 80 valores de puntuación pasados % requeridos.

Siempre es bueno fijarse en las combinaciones que fracasaron: ¿cuál fue la razón de su fracaso?
Deberíamos fijarnos también en los detalles. ¿Tiene todas las combinaciones Fallidas? Quizás sus criterios de éxito son demasiado estrictos.

Uso de la matriz Walk-Forward para hallar el periodo óptimo de reoptimización

Esta es la extensión natural de la comprobación de robustez. Cuando encontramos, por ejemplo, un grupo 3×3 de optimizaciones Walk-Forward simples, prefiero seleccionar la que se encuentra en el centro del mismo.
StrategyQuant lo hace automáticamente por nosotros (si lo configuramos correctamente y el resultado se muestra justo debajo del resultado final:

Recuerde, la estrategia debe ser robusta también a los ajustes de reoptimización - por lo que la fecha exacta de reoptimización no debería importar, siempre y cuando mantengamos la reoptimización y el periodo histórico más o menos como deberían ser.

En el caso de esta estrategia puedo reoptimizar la estrategia justo ahora (agosto) sobre un histórico de 2 años, y pretendo reoptimizarla de nuevo el año que viene en agosto (dentro de un año).

Gráficos 3D avanzados

El nuevo StrategyQuant le ofrece una nueva característica - gráficos 3D de todas las combinaciones Walk-Forward realizadas. Como ya se ha mencionado, el gráfico 3D muestra el valor de cada combinación de parámetros y es una gran herramienta para identificar y evitar la sobre-optimización. Las estrategias robustas parecerán tener cambios graduales en el gráfico de superficie.

Puede visualizar gráficos 3D de Beneficio neto, Reducción, Estancamiento, Factor de beneficio, Estabilidad o cualquier otro valor de tres formas diferentes: como superficie, gráfico de barras o mapa de calor.

Consejo: consulte también el artículo Descripción de los valores avanzados de Walk-Forward para la descripción de varios valores que pueden ser utilizados en filtros o mostrados en el banco de datos.

¿Le ha resultado útil este artículo? El artículo era útil El artículo no era útil

Suscríbase a
Notificar a
1 Comentario
Más antiguo
Más reciente Más votados
Feedbacks de Inline
Ver todos los comentarios
Mario Gordon
Mario Gordon
29. 12. 2018 2:18 am

Hola,

Estoy viendo que en la nueva versión de SQ no existe el parámetro WF estabilidad del beneficio neto, ¿cuál podría ser la opción a seleccionar? ¿podrían crear una nueva guía con los nuevos parámetros para SQ4?