Qué es el backtesting de EAs (y qué no es)
El backtesting de EAs es el proceso de tomar un sistema de trading basado en reglas (a menudo llamado Asesor Experto, o EA) y aplicar sus reglas a datos históricos de precios para ver cómo se habría comportado. El resultado no es una prueba de rendimiento futuro. Es evidencia sobre cómo reaccionaron las reglas a datos pasados bajo supuestos de simulación específicos.
El backtesting también es diferente del trading en demo o del trading en vivo. En el backtesting, tú controlas las entradas (datos históricos y opciones de modelado). En los mercados en vivo, las entradas pueden diferir: los spreads se amplían, se producen retrasos en la ejecución y la liquidez cambia.
Cómo funciona el backtesting de EAs en la práctica
La mayoría de los backtests siguen el mismo flujo básico:
-
Definir las reglas de la estrategia. Un EA normalmente tiene lógica de entrada/salida, lógica de tamaño de posición y reglas de riesgo o gestión de dinero. Estas reglas determinan qué órdenes se activarían.
-
Elegir los datos históricos. Los “precios históricos” utilizados en la prueba afectan el resultado. Si el conjunto de datos tiene huecos, diferente calidad de ticks o una formación de barras distinta a la que el EA espera, los resultados pueden ser engañosos.
-
Modelar los detalles de ejecución. Un backtest a menudo necesita supuestos sobre el spread, comisiones, deslizamiento, el llenado de órdenes y si los stops/objetivos se alcanzan exactamente cuando aparece el precio. Pequeños cambios aquí pueden alterar la rentabilidad y los drawdowns.
-
Ejecutar la simulación. El motor avanza a través del tiempo y aplica las reglas del EA. Si el EA utiliza indicadores, estos se calculan utilizando únicamente la información disponible hasta cada momento simulado.
-
Evaluar las métricas de rendimiento. Las métricas comunes incluyen retorno neto, drawdown, tasa de aciertos y distribución de operaciones. Interpretar estas métricas requiere comprender el período de tiempo, los costos incluidos y si el EA fue optimizado.
Evidencia y ejemplos: de dónde pueden provenir los resultados “buenos”
Un ejemplo realista ayuda a aclarar los errores típicos:
-
Supongamos que un EA se ve sólido en un mes de datos históricos porque la tendencia del mercado coincidió con la lógica del EA. Si esa lógica depende de un impulso constante, las mismas reglas pueden rendir mal en regímenes laterales o volátiles.
-
Supongamos que el backtest ignora o subestima los costos de transacción. En el trading real, los spreads y las comisiones reducen los retornos, y el deslizamiento cambia los precios de entrada/salida. Un backtest que no incluya costos realistas puede exagerar los resultados.
-
Supongamos que los parámetros del EA se ajustaron repetidamente para maximizar los resultados en un único conjunto de datos. Esto puede crear una solución sobreajustada: “aprende” las peculiaridades del pasado en lugar del comportamiento general del mercado.
Limitaciones materiales y modos de fallo
Los principiantes deben tratar los resultados del backtesting como condicionados a supuestos. Las limitaciones materiales incluyen:
-
Cambio de régimen de mercado Las relaciones que aparecieron en el pasado a menudo no persisten. Incluso si las reglas de la estrategia permanecen iguales, el comportamiento del mercado puede cambiar.
-
Desajuste de ejecución Los supuestos del backtesting sobre el llenado de órdenes, el deslizamiento y la activación de stops/objetivos pueden diferir de la ejecución real.
-
Calidad de datos y muestreo Los datos históricos pueden no replicar la secuencia exacta de ticks o barras que el EA espera. Esto puede cambiar los valores de los indicadores y el momento de las señales.
-
Sobreajuste Si el ajuste de parámetros, las elecciones de indicadores o los filtros se optimizan repetidamente para un período, la estrategia puede volverse frágil.
-
Sesgo de supervivencia y de selección (cuando corresponda) Si la prueba utiliza ventanas de tiempo seleccionadas selectivamente (por ejemplo, solo períodos de “buen aspecto”), los resultados pueden estar sesgados.
Cómo verificar de forma independiente los hechos relevantes
Un punto de control práctico es verificar que el backtest responda a una pregunta comprobable bajo supuestos explícitos.
Considera estos pasos de verificación:
-
Replica la prueba utilizando entradas consistentes. Comprueba si el mismo conjunto de datos históricos y la misma configuración del EA producen los mismos resultados.
-
Utiliza múltiples períodos de tiempo no superpuestos. Probar en diferentes años (o al menos en diferentes condiciones de mercado) ayuda a revelar si los resultados dependen de un solo régimen.
-
Incluye configuraciones realistas de costos y ejecución. Si el backtest no modela costos como comisiones y spreads (y no incluye supuestos de deslizamiento cuando corresponda), trata los resultados como incompletos.
-
Prueba de estrés de sensibilidades. Si pequeños cambios en los parámetros o en el modelado de ejecución alteran drásticamente el resultado, esto indica fragilidad.
-
Compara la lógica de entrenamiento vs. validación. Si los parámetros se optimizaron en un período, valídalos en un período separado que no se haya utilizado para el ajuste.