GUÍA · TRADING · VALIDACIÓN
Cómo hacer backtesting en trading paso a paso
El backtesting en trading sirve para comprobar cómo habrían respondido unas reglas concretas frente a datos históricos. Bien hecho, ayuda a detectar ambigüedades, costes ignorados y condiciones donde una estrategia se vuelve frágil. Mal hecho, puede producir una curva perfecta basada en información futura, sobreajuste o ejecuciones que nunca habrían sido posibles.
Este contenido es educativo y no constituye asesoría financiera personalizada. Un backtest describe una simulación histórica bajo determinados supuestos; no elimina el riesgo ni garantiza que una estrategia mantenga el mismo comportamiento en el futuro.
Qué es el backtesting y qué puede decirte realmente
Backtesting significa aplicar una estrategia a un periodo histórico siguiendo reglas previamente definidas. TradingView lo describe como la recreación del funcionamiento de una estrategia sobre datos del pasado. Esa definición es útil porque deja claro que el backtest no es una predicción: es una prueba de cómo habría respondido un conjunto de reglas bajo datos y supuestos concretos.
Puedes consultar la explicación oficial de TradingView sobre backtesting y forward testing. Aunque utilices otra plataforma, la idea central es la misma: medir reglas repetibles sobre una muestra histórica.
Un backtest puede ayudarte a responder preguntas como estas:
- ¿Las reglas están suficientemente claras para ejecutarse siempre de la misma manera?
- ¿Qué frecuencia de oportunidades habría tenido la estrategia?
- ¿Cómo se distribuyeron las ganancias y pérdidas dentro de la muestra?
- ¿Hubo periodos prolongados de drawdown o muchas pérdidas consecutivas?
- ¿El resultado cambia demasiado al modificar ligeramente una regla?
- ¿Los costes de operación convierten una aparente ventaja en un resultado marginal?
Lo que no puede demostrar por sí solo es que el comportamiento se repetirá. El mercado cambia, la liquidez cambia, las reglas pueden estar sobreajustadas y la ejecución real introduce fricciones que una simulación puede modelar de forma incompleta.
Backtesting manual vs. backtesting automatizado
No necesitas programar para empezar. Un backtest manual consiste en recorrer datos históricos y registrar cada oportunidad que cumpla tus reglas sin saltarte operaciones incómodas. Es más lento, pero puede ser útil cuando todavía estás definiendo una estrategia visual o discrecional.
El backtesting automatizado ejecuta reglas programadas sobre grandes cantidades de datos. Permite repetir pruebas con rapidez y comparar variantes, pero exige especial cuidado con la calidad del código, la secuencia temporal de los datos y los supuestos de ejecución.
| Método | Ventaja | Riesgo habitual |
|---|---|---|
| Manual | Obliga a observar contexto y documentar cada decisión | Elegir solo ejemplos favorables o interpretar reglas de forma distinta después de ver el resultado |
| Automatizado | Permite procesar muchas operaciones de forma consistente | Errores de código, datos futuros, fills irreales o parámetros excesivamente optimizados |
1. Escribe la estrategia antes de probarla
El error más común es descubrir las reglas mientras miras el histórico. Si primero ves qué habría funcionado y después redactas la estrategia para capturar exactamente esos movimientos, corres un riesgo alto de adaptar el sistema al pasado.
Antes de iniciar el backtest, define por escrito:
- Mercado e instrumento: qué activo o grupo de activos vas a probar.
- Marco temporal: dónde identificas contexto y dónde ejecutas.
- Condición de entrada: criterios observables que deben cumplirse.
- Invalidación y salida: dónde deja de tener sentido la idea y cómo cierras.
- Riesgo: método para calcular tamaño y límite por operación.
- Restricciones: horarios, filtros o situaciones en las que no operas.
Si todavía no tienes esas reglas, empieza por nuestra guía para crear un plan de trading. El backtest funciona mejor cuando evalúa un proceso definido, no una idea que cambia después de cada gráfico.
2. Elige una muestra histórica adecuada
No existe un periodo universal que sirva para cualquier estrategia. La muestra debe incluir suficientes oportunidades y, cuando sea posible, diferentes condiciones del mercado. Una estrategia de baja frecuencia puede necesitar mucho más histórico que una estrategia intradía para reunir una muestra comparable de operaciones.
Evita elegir el periodo únicamente porque ya sabes que contiene una tendencia fuerte o una fase especialmente favorable. Si la estrategia pretende utilizarse en varios entornos, prueba qué ocurre cuando el mercado acelera, se lateraliza, cambia de volatilidad o atraviesa periodos con menos oportunidades.
También documenta desde el inicio la fuente de datos y sus limitaciones. Diferentes proveedores, ajustes, horarios o historiales incompletos pueden producir resultados distintos.
3. Evita mirar información que todavía no existía
El look-ahead bias aparece cuando una decisión histórica utiliza información que solo se conocería después. TradingView advierte que este problema puede generar resultados irrealmente buenos porque la estrategia obtiene datos del futuro que un operador real no habría tenido en ese momento.
Su documentación muestra ejemplos de estrategias que aprovechan precios o datos futuros dentro de una vela. Puedes revisar la explicación oficial sobre look-ahead bias.
En una prueba manual también puedes introducir este sesgo sin darte cuenta. Por ejemplo, si observas la vela completa y decides que “la entrada era obvia” aunque en tiempo real todavía no se había formado el máximo, mínimo o cierre que estás usando como confirmación.
En cada punto histórico pregúntate qué datos habrías conocido exactamente en ese instante. Si una variable depende de una vela aún no cerrada, de un máximo posterior o de información publicada después, no debe influir en la decisión.
4. Incluye comisiones, spread y slippage
Una estrategia con una ventaja pequeña puede cambiar mucho cuando introduces fricciones. Por eso el backtest debe intentar representar los costes que realmente afectarían la entrada y la salida.
Entre los elementos que conviene modelar se encuentran:
- comisiones de compra y venta;
- spread entre precio comprador y vendedor;
- slippage o diferencia entre el precio esperado y el ejecutado;
- costes de financiación o mantenimiento cuando apliquen;
- tamaño mínimo, tick, lote o restricciones del instrumento.
TradingView explica que su emulador de bróker permite configurar comisiones y slippage para acercar la simulación a condiciones más realistas. Puedes consultar su documentación sobre el broker emulator.
La misma lógica aplica aunque hagas el registro en una hoja de cálculo: no compares únicamente el precio teórico de entrada con el precio teórico de salida. Documenta los costes y supuestos que reducen el resultado.
5. Calcula el tamaño de posición de forma consistente
Un backtest puede quedar distorsionado si cada operación usa una cantidad elegida arbitrariamente. Define un método constante para transformar el riesgo permitido y la distancia al stop en tamaño de posición.
Si necesitas estructurar ese cálculo, revisa nuestra guía sobre cómo calcular el tamaño de posición en trading. Mantener el mismo criterio de riesgo permite comparar operaciones con mayor coherencia.
También conviene separar el rendimiento de la estrategia de decisiones externas como aumentar el tamaño después de una racha ganadora o intentar recuperar una pérdida. Si esos cambios no forman parte de reglas escritas, no deberían introducirse retrospectivamente.
6. Registra cada operación, no solo el resultado final
La ganancia neta del periodo no cuenta toda la historia. Un backtest útil guarda suficiente información para reconstruir por qué entró cada operación y qué ocurrió después.
| Dato | Para qué sirve |
|---|---|
| Fecha y hora | Detectar sesiones, periodos o condiciones con comportamiento distinto |
| Entrada y salida | Reconstruir la operación y revisar la ejecución |
| Stop e invalidación | Comprobar que el riesgo estaba definido antes de entrar |
| Riesgo monetario | Normalizar resultados entre operaciones de diferente tamaño |
| Costes y slippage | Evitar resultados excesivamente optimistas |
| Resultado en R | Comparar el resultado respecto al riesgo inicial de cada operación |
| Regla que activó la entrada | Verificar que todas las operaciones pertenecen realmente a la misma estrategia |
Después puedes trasladar las mismas variables a un diario de trading cuando hagas simulación en tiempo real o ejecutes con capital real.
7. Revisa más métricas que la tasa de acierto
Una tasa de acierto alta no significa automáticamente que una estrategia sea favorable. Si las pérdidas medias son mucho mayores que las ganancias medias, un porcentaje elevado de operaciones ganadoras puede esconder un perfil de riesgo poco atractivo.
Entre las métricas que puedes revisar están:
- número total de operaciones;
- porcentaje de operaciones ganadoras y perdedoras;
- ganancia media y pérdida media;
- resultado medio por operación;
- racha máxima de pérdidas;
- drawdown máximo dentro de la muestra;
- relación entre beneficio potencial y pérdida asumida;
- sensibilidad a comisiones y slippage.
Para entender mejor cómo comparar pérdida y objetivo antes de una operación, consulta nuestra guía de relación riesgo-beneficio en trading.
8. Separa datos de diseño y datos fuera de muestra
Si utilizas todo el histórico para ajustar parámetros hasta obtener la curva más atractiva, después no queda información independiente para comprobar si las reglas conservan sentido fuera del periodo que las moldeó.
Una práctica útil es dividir el histórico en al menos dos bloques:
- muestra de desarrollo: sirve para construir y ajustar la lógica;
- muestra fuera de muestra: se reserva para evaluar la versión ya definida sin seguir modificándola para mejorar ese resultado.
La separación no elimina el sobreajuste, pero añade una prueba que la estrategia no ha visto durante su diseño. Si modificas las reglas después de observar el bloque de validación, ese bloque deja de ser verdaderamente fuera de muestra y necesitarás nueva información para una comprobación independiente.
9. Haz pruebas de robustez antes de confiar en una curva bonita
Una estrategia frágil puede verse excelente solo con una combinación muy precisa de parámetros. Para detectar esa dependencia, modifica ligeramente supuestos razonables y observa si el comportamiento se desintegra.
Puedes probar, por ejemplo:
- comisiones o slippage algo mayores;
- una entrada ligeramente peor;
- otro periodo histórico;
- activos similares cuando la lógica debería ser transferible;
- pequeños cambios en parámetros sin buscar el valor “perfecto”;
- excluir las mejores operaciones para ver cuánto depende el resultado de unos pocos eventos.
La idea no es forzar a que toda variante gane. Es descubrir si el resultado depende de condiciones demasiado específicas que solo aparecen al mirar hacia atrás.
10. Continúa con forward testing
Después del backtest, una fase de forward testing permite observar la estrategia con datos nuevos que aparecen después de haber congelado las reglas. Puede hacerse en un entorno simulado antes de arriesgar capital real.
Esta etapa ayuda a detectar diferencias entre la simulación histórica y la ejecución en tiempo real: señales que llegan tarde, spreads cambiantes, órdenes que no se llenan como imaginabas o reglas que parecían objetivas hasta que debes decidir sin conocer la siguiente vela.
El forward testing tampoco garantiza que el sistema vaya a funcionar en el futuro. Su valor está en obligarte a evaluar reglas sobre información que no pudiste utilizar al diseñarlas.
Ejemplo didáctico de un backtest simple
Imagina una estrategia hipotética con estas reglas, únicamente para ilustrar el proceso:
- se analiza un instrumento y marco temporal definidos;
- la entrada requiere tres condiciones objetivas escritas;
- el stop se coloca donde la hipótesis queda invalidada;
- el tamaño se calcula para mantener constante el riesgo inicial;
- el objetivo y la salida están definidos antes de entrar;
- cada operación incluye comisión y un supuesto prudente de slippage.
Antes de ver el resultado, eliges un periodo de desarrollo y otro fuera de muestra. Recorres el primer periodo sin saltarte señales. Registras todas las operaciones y solo entonces calculas métricas. Después congelas la versión de las reglas y la aplicas al bloque reservado.
Si el segundo bloque muestra un comportamiento muy diferente, no significa automáticamente que la estrategia sea inútil. Sí significa que necesitas investigar por qué cambió: sobreajuste, régimen de mercado, costes, muestra insuficiente o una regla que no era tan estable como parecía.
Errores comunes al hacer backtesting
- Elegir operaciones a mano después de ver el gráfico. Eso transforma la prueba en una selección retrospectiva.
- Cambiar las reglas a mitad del test. Cada versión debería medirse por separado.
- Ignorar operaciones perdedoras ambiguas. Si la regla habría activado la entrada, debe registrarse.
- No incluir costes. Especialmente peligroso en estrategias de alta frecuencia.
- Usar información futura. Es uno de los sesgos que más puede inflar un resultado.
- Optimizar demasiados parámetros. Cuantas más combinaciones pruebas, más fácil es encontrar una que encaje por casualidad con el pasado.
- Juzgar todo por el beneficio neto. Revisa drawdown, distribución, rachas y consistencia.
- Confundir simulación con garantía. Una curva histórica no elimina la incertidumbre futura.
Checklist antes de aceptar un backtest como útil
- Las reglas estaban escritas antes de revisar el resultado completo.
- La muestra contiene suficientes operaciones y diferentes condiciones relevantes.
- No se utilizaron datos futuros ni confirmaciones que todavía no existían.
- Comisiones, spread y slippage se modelaron con supuestos razonables.
- El tamaño de posición siguió una regla constante.
- Todas las señales válidas se registraron, incluidas las pérdidas.
- Se revisaron drawdown, rachas y distribución, no solo tasa de acierto.
- Existe una muestra fuera de desarrollo o una fase posterior de forward testing.
- Los resultados no dependen de una única operación o de un parámetro extremadamente preciso.
Cómo encaja una formación o comunidad en este proceso
Una formación puede ayudarte a comprender conceptos de análisis, gestión y metodología, y una comunidad puede servir para contrastar dudas. Aun así, cualquier estrategia que pretendas utilizar debería pasar por tus propias reglas de validación y por una evaluación compatible con tu situación y tolerancia al riesgo.
Si estás evaluando este tipo de recurso, puedes revisar primero nuestra guía sobre cómo elegir una comunidad de inversión antes de pagar y la página informativa de CInvestClub, donde se explica el enfoque general y qué conviene verificar en la oferta vigente.
Si quieres complementar esta guía con formación y comunidad sobre mercados, puedes revisar CInvestClub y comprobar directamente su contenido, acceso y condiciones vigentes.
Explorar CInvestClubPreguntas frecuentes sobre backtesting en trading
¿Qué es el backtesting en trading?
Es el proceso de aplicar reglas de una estrategia a datos históricos para estudiar cómo se habría comportado bajo esas condiciones. Sirve para detectar patrones, errores y sensibilidad de las reglas, pero no garantiza resultados futuros.
¿Cuántas operaciones necesita un backtest?
No existe una cifra universal. La muestra debe ser suficientemente amplia y diversa para representar las condiciones en las que pretendes usar la estrategia. Una muestra pequeña puede hacer que unas pocas operaciones distorsionen las conclusiones.
¿Qué diferencia hay entre backtesting y forward testing?
El backtesting usa datos históricos. El forward testing observa cómo se comportan las mismas reglas con datos que van llegando después de haber definido la estrategia, normalmente en simulación o con riesgo controlado.
¿Debo incluir comisiones y slippage?
Sí. Si el backtest ignora comisiones, spread, slippage u otros costes relevantes, puede mostrar un resultado demasiado optimista, especialmente en estrategias con muchas operaciones o márgenes pequeños por trade.
¿Qué es el look-ahead bias?
Es usar, directa o indirectamente, información que todavía no habría estado disponible en el momento histórico de la decisión. Produce resultados irreales porque permite que la estrategia conozca datos del futuro.
¿Un backtest positivo significa que una estrategia funciona?
No necesariamente. Un resultado histórico puede depender del periodo elegido, del sobreajuste, de datos incompletos o de supuestos de ejecución poco realistas. Conviene probar robustez y reservar datos fuera de muestra antes de sacar conclusiones.
Conclusión
Hacer backtesting no consiste en buscar una curva perfecta. Consiste en someter reglas claras a una prueba histórica con datos, costes y supuestos lo más realistas posible. El resultado debe ayudarte a descubrir debilidades, no a fabricar certeza.
Define las reglas antes de mirar el desenlace, evita información futura, registra todas las operaciones, separa desarrollo y validación y continúa con datos nuevos. Si una estrategia solo funciona cuando conoces el pasado o cuando eliminas fricciones reales, el backtest ya te ha dado una información valiosa.