Pruebas fuera de muestra y walk-forward
Divide tus datos en periodos de entrenamiento y de prueba, realiza un análisis walk-forward y juzga cuánto del rendimiento de un backtest sobrevive con datos no vistos.
Qué aprenderás
- La diferencia entre los datos dentro de muestra y fuera de muestra, y por qué el periodo de prueba solo puede usarse una vez
- Cómo funciona un análisis walk-forward, con ventanas móviles y ancladas
- Cómo calcular la eficiencia walk-forward y un resultado fuera de muestra encadenado
- Reglas prácticas sobre la longitud de las ventanas, el número de operaciones y la estabilidad de los parámetros
Explicación
La mejor defensa contra el sobreajuste (lección anterior) es probar las reglas con datos que no intervinieron en su construcción.
Dentro de muestra y fuera de muestra
Los datos dentro de muestra (IS, in-sample) son el periodo que usas para desarrollar las reglas y elegir los parámetros, como la longitud de una media móvil. Los datos fuera de muestra (OOS, out-of-sample) son un periodo posterior que guardas bajo llave y usas solo para comprobar las reglas terminadas. Una división sencilla habitual es aproximadamente un 70% dentro de muestra y un 30% fuera de muestra, con el periodo fuera de muestra al final, porque el futuro siempre viene después del pasado.
El periodo fuera de muestra solo tiene valor mientras no se ha visto. Si miras el resultado, cambias una regla y vuelves a probar, se ha convertido en datos dentro de muestra. Esto se llama data snooping (fisgoneo de datos): reutilizar los mismos datos hasta que algo parezca bueno por casualidad.
Análisis walk-forward
Un único periodo reservado da un solo veredicto, y ese veredicto depende mucho de las condiciones de mercado de ese periodo. El análisis walk-forward repite el proceso muchas veces:
- Optimiza los parámetros en una ventana dentro de muestra, por ejemplo de cuatro años.
- Aplica los parámetros elegidos, sin cambios, a la siguiente ventana fuera de muestra, por ejemplo de un año.
- Desplaza ambas ventanas hacia delante en la longitud de la ventana fuera de muestra y repite.
- Une todos los resultados fuera de muestra en una única curva de capital fuera de muestra encadenada.
En un walk-forward móvil, la ventana dentro de muestra mantiene una longitud fija y descarta los datos antiguos. En un walk-forward anclado, la ventana siempre empieza en la primera fecha y va creciendo. Las ventanas móviles se adaptan más deprisa; las ancladas usan más datos y suelen dar parámetros más estables.
El número de ventanas es: (años totales − años dentro de muestra) ÷ años fuera de muestra.
Eficiencia walk-forward
La eficiencia walk-forward (WFE, walk-forward efficiency) compara el rendimiento con datos no vistos con el rendimiento optimizado:
WFE = rentabilidad anualizada media OOS ÷ rentabilidad anualizada media IS
Una WFE cercana al 100% significa que el sistema se comportó casi tan bien con datos nuevos como con los datos con los que se ajustó. Una WFE baja significa que gran parte del resultado dentro de muestra se debió a ajustar ruido. Algunos profesionales usan aproximadamente un 50% como mínimo; es una convención, no un umbral demostrado. Comprueba también cuántas ventanas fueron rentables.
Reglas prácticas
- Cada ventana fuera de muestra debe contener suficientes operaciones para que signifique algo; intenta reunir al menos 20–30 operaciones en total entre todas las ventanas OOS, y más si es posible.
- Cada ventana dentro de muestra debe abarcar fases alcistas, bajistas y laterales.
- Prefiere parámetros de una «meseta» estable, donde los valores vecinos también funcionan, a un único pico pronunciado.
- Anota la longitud de las ventanas y la regla de selección antes de empezar, para no poder cambiarlas después de ver los resultados.
Ejemplo resuelto
Ejemplo hipotético: un sistema de seguimiento de tendencia sobre un índice bursátil se prueba con 10 años de datos diarios. Supuestos: walk-forward móvil, ventana dentro de muestra de 4 años, ventana fuera de muestra de 1 año, avance de 1 año. Las rentabilidades son hipotéticas y excluyen comisiones, spreads, slippage e impuestos.
Número de ventanas: (10 − 4) ÷ 1 = 6 ventanas.
| Ventana | Años IS | Año OOS | Rentabilidad IS (anualizada) | Rentabilidad OOS |
|---|---|---|---|---|
| 1 | 1–4 | 5 | 14% | 6% |
| 2 | 2–5 | 6 | 12% | −2% |
| 3 | 3–6 | 7 | 15% | 8% |
| 4 | 4–7 | 8 | 11% | 4% |
| 5 | 5–8 | 9 | 13% | −5% |
| 6 | 6–9 | 10 | 12% | 7% |
Paso 1: rentabilidad media IS = (14 + 12 + 15 + 11 + 13 + 12) ÷ 6 = 77 ÷ 6 ≈ 12.8%.
Paso 2: rentabilidad media OOS = (6 − 2 + 8 + 4 − 5 + 7) ÷ 6 = 18 ÷ 6 = 3.0%.
Paso 3: WFE = 3.0 ÷ 12.8 ≈ 23%.
Paso 4: crecimiento OOS encadenado = 1.06 × 0.98 × 1.08 × 1.04 × 0.95 × 1.07 ≈ 1.186. Solo cuentan los años no vistos, así que €10,000 crecen hasta aproximadamente €10,000 × 1.186 ≈ €11,860 en 6 años, alrededor de un 2.9% anual compuesto.
Interpretación: cuatro de los seis años OOS fueron positivos, pero sobrevivió menos de una cuarta parte del rendimiento optimizado. Las cifras dentro de muestra sobrestiman mucho las reglas. El siguiente paso es simplificarlas y volver a probarlas con datos realmente nuevos.
Error frecuente
Actividad práctica
En papel: tienes 12 años de datos hipotéticos y usas un walk-forward móvil con una ventana dentro de muestra de 3 años y una ventana fuera de muestra de 1 año. (a) ¿Cuántas ventanas hay? (b) Las cuatro primeras ventanas dan rentabilidades IS del 10%, 9%, 11% y 10%, y rentabilidades OOS del 5%, 6%, −1% y 4%. Calcula la WFE de estas cuatro ventanas. (c) Calcula el crecimiento OOS encadenado de €10,000 durante estos cuatro años.
Ver solución
(a) (12 − 3) ÷ 1 = 9 ventanas.
(b) Media IS = 40 ÷ 4 = 10.0%. Media OOS = 14 ÷ 4 = 3.5%. WFE = 3.5 ÷ 10.0 = 35%.
(c) 1.05 × 1.06 × 0.99 × 1.04 ≈ 1.146, así que €10,000 crecen hasta aproximadamente €11,460 antes de costes.
Limitaciones: cuatro ventanas son una muestra muy pequeña, y la WFE no dice nada sobre los drawdowns ni sobre los costes.
Ideas clave
- Los datos fuera de muestra solo son válidos mientras no se han visto; reutilizarlos los convierte en datos dentro de muestra.
- El análisis walk-forward repite muchas veces el ciclo de optimizar y luego probar, y solo une los resultados no vistos.
- La eficiencia walk-forward muestra cuánto del rendimiento optimizado sobrevive; los valores bajos apuntan a sobreajuste.
- Fija la longitud de las ventanas, las reglas de selección y el número mínimo de operaciones antes de mirar ningún resultado.
Siguiente paso
En la próxima lección añadirás costes y slippage realistas a tu backtest y verás cuánto queda de un resultado bruto.
Autoevaluación
Responde a las preguntas y luego comprueba tus respuestas. Puedes volver a intentarlo tantas veces como quieras.
Autoevaluación automática para tu propio repaso. Tus respuestas se comprueban en tu navegador y no las vemos ni evaluamos. No es un examen ni una titulación.
Tu progreso
«Completada» solo significa que marcaste la lección como terminada. No es una prueba de tu comprensión. El progreso y las notas se guardan solo en este navegador y en este dispositivo, no en una cuenta.