Backtesting y forward-testing de un setup
Pon a prueba un setup con reglas escritas, registra los resultados en R y evita el sobreajuste y el sesgo de anticipación.
Lo que aprenderás
- Cómo escribir reglas lo bastante precisas para poder probarlas.
- Cómo registrar los resultados en R y calcular la expectativa y el factor de beneficio.
- Por qué importa el tamaño de la muestra y cómo unas pocas operaciones pueden cambiarlo todo.
- Cómo evitar el sobreajuste y el sesgo de anticipación, y cómo ayuda el forward-testing.
Explicación
El backtesting consiste en aplicar reglas fijas a datos pasados y registrar lo que habría ocurrido. El forward-testing consiste en aplicar las mismas reglas a datos nuevos a medida que se producen, en una cuenta demo o con un tamaño muy pequeño. Un buen backtest es una evidencia sobre el pasado, no una promesa sobre el futuro.
Reglas que se pueden probar
Cada regla debe poder responderse con sí o no. "Tendencia fuerte" no se puede probar. "Cierre diario por encima de la SMA de 50 días y último mínimo de swing diario sin romper" sí se puede probar. Anota: mercado, marcos temporales, condiciones del setup, disparador de entrada, stop, objetivo o salida, y el riesgo máximo por operación.
Registro en R
Registra cada resultado como un múltiplo del riesgo planificado. A partir de la lista calculas:
- Tasa de acierto = operaciones ganadoras ÷ todas las operaciones
- Expectativa = R total ÷ número de operaciones
- Factor de beneficio = suma de R ganadoras ÷ suma de R perdedoras (como número positivo)
- Racha perdedora más larga y mayor drawdown (la mayor caída desde un pico en tu total acumulado)
Incluye los costes estimados (spreads, comisiones, deslizamiento) como una deducción en R por operación.
Tamaño de la muestra
Una muestra pequeña tiene mucho ruido. Cuantas menos operaciones, más deciden el resultado una o dos operaciones afortunadas. Reúne tantas operaciones como razonablemente puedas, de distintas condiciones de mercado (tendencias, rangos, volatilidad alta y baja), antes de fiarte de un número.
Sobreajuste y sesgo de anticipación
El sobreajuste (curve-fitting, sobreoptimización) consiste en ajustar reglas y parámetros hasta que el pasado parezca perfecto. Las reglas describen entonces el ruido pasado, no un comportamiento repetible. Protección: mantén las reglas sencillas, fíjalas antes de probar y prueba en un periodo separado que no hayas usado al construir las reglas.
El sesgo de anticipación (look-ahead bias) consiste en usar información que no estaba disponible en el momento de la decisión. Ejemplos: usar un punto de swing antes de que se confirmara, o usar el cierre del día para decidir una entrada durante ese mismo día. Cuando pruebes a mano, avanza el gráfico vela a vela.
Ejemplo resuelto
Ejemplo hipotético: 40 operaciones de backtest registradas de un mismo setup. Riesgo planificado de €100 por operación (1R).
- Ganadoras: 16 operaciones, total +33.6R (media +2.1R). Perdedoras: 24 operaciones, total −24.0R.
- Tasa de acierto: 16 ÷ 40 = 40%
- Resultado neto: 33.6R − 24.0R = +9.6R. Expectativa: 9.6R ÷ 40 = +0.24R por operación
- Factor de beneficio: 33.6 ÷ 24.0 = 1.4
- Costes estimados de 0.1R por operación: 40 × 0.1R = 4.0R. Neto después de costes: 9.6R − 4.0R = +5.6R, o 0.14R por operación (unos €14 por operación con un riesgo de €100). Se excluyen los impuestos.
Prueba de sensibilidad, antes de costes: elimina las dos mejores operaciones (+4.5R y +4.0R, total +8.5R). Entonces 9.6R − 8.5R = +1.1R en 38 operaciones ≈ +0.03R por operación. La ventaja casi desaparece. Esta muestra es demasiado pequeña para fiarse de ella, así que el siguiente paso es obtener más datos de backtest y hacer un forward-test.
Error común
Actividad práctica
Resultados hipotéticos en R de 10 operaciones: +2, −1, −1, +3, −1, +1.5, −1, −1, +2, −1. Calcula la tasa de acierto, el R neto, la expectativa y el factor de beneficio. Después escribe un motivo por el que 10 operaciones no son suficientes.
Ver solución
Ganadoras: 4 (2 + 3 + 1.5 + 2 = +8.5R). Perdedoras: 6 (−6.0R). Tasa de acierto: 4 ÷ 10 = 40%. Neto: 8.5R − 6.0R = +2.5R. Expectativa: 2.5R ÷ 10 = +0.25R. Factor de beneficio: 8.5 ÷ 6.0 ≈ 1.42.
Diez operaciones no son suficientes porque una sola operación (la de +3R) cambia mucho el resultado; sin ella, la expectativa cae a −0.5R ÷ 9 ≈ −0.06R.
Limitaciones: aquí se excluyen los costes; los resultados reales serían inferiores.
Puntos clave
- Solo las reglas de sí/no pueden probarse con honestidad.
- Registra cada operación en R, incluidos los costes, y calcula la expectativa, el factor de beneficio y el drawdown.
- Las muestras pequeñas engañan; comprueba cuánto dependen los resultados de unas pocas operaciones.
- Evita el sobreajuste y el sesgo de anticipación; confirma con un forward-test sobre datos nuevos.
Siguiente paso
Has terminado este curso; continúa con "Gestión del riesgo y de las operaciones" para convertir un setup probado en un plan completo de tamaño de posición, drawdowns y gestión de operaciones.
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.