Backtest automático: ejecutar una estrategia programada sobre barras en caché

El modo Backtest automático de la pantalla Replay ejecuta una estrategia guardada sobre semanas o años de barras en caché, con costes de transacción obligatorios y las mismas reglas de ejecución conservadoras que el backtester de investigación, y registra el resultado en el panel de rendimiento.

Senzoukria · Documentación · Actualizado en septiembre de 2026


Dónde encontrarlo

Dónde
Replay → Preparar → modo «Backtest automático» («Meses de velas: tu estrategia se ejecuta sola»)
Valores por defecto
Período 1 mes, granularidad 15 minutos, valor del punto 2 $, comisión ida y vuelta 1,24 $, deslizamiento 1 tick
Reglas de ejecución
Entrada en la apertura de la barra siguiente más el deslizamiento, salidas sobre las mechas, el stop gana en una barra ambigua, comisiones en cada operación
Ventana de lectura
Una estrategia ve las últimas 500 barras en cada decisión

Qué hace

Mientras el replay manual reproduce un día tick a tick, el backtest automático ejecuta una estrategia escrita en la página Scripting sobre las barras guardadas en la caché local. La estrategia expone decide(bars, params, ctx, state), con las barras de la más reciente a la más antigua, y devuelve una acción: buy, sell o close, con qty, stopTicks y targetTicks opcionales. Todo el bucle se ejecuta en el worker del sandbox (el protocolo ofsandbox, que lleva su propia CSP) en pasos de 300 ms para que la interfaz siga respondiendo; el mismo texto del bucle corre también en un worker blob para los tests y para el sitio web, lo que garantiza resultados idénticos.

El panel lee primero la caché para el contrato y la granularidad elegidos e informa de la cobertura («{n} sesiones en caché de las {n} pedidas»). Las sesiones que faltan se pueden descargar del bróker (barras, o el histórico de ticks del footprint cuando la estrategia lee desequilibrios por nivel), y se puede importar un archivo ohlcv-1m de Databento. Las barras del servidor traen OHLC, volumen y delta pero no los niveles del footprint, y las barras importadas no traen delta en absoluto.

Ajustes

Ajustes de la tarjeta de backtest automático
AjustePor defectoQué cambia
Estrategia«Elegir…»Una estrategia guardada de la página Scripting; «Editar la estrategia» abre el código, un borrador modificado se ejecuta sin guardarse, Ctrl+Enter relanza.
Período1 mes1 semana, 1 mes, 3 meses, 6 meses, 1 año, 2 años, 5 años (de 7 a 1.825 días).
Granularidad15 minutos1 minuto, 5 minutos, 15 minutos, 1 hora. Seis meses de barras de 1 minuto son unas 250.000 barras y tardan minutos por configuración.
Valor del punto ($)2 (MNQ)Valor en dólares de un punto completo por contrato; mínimo 0,01.
Comisión ida y vuelta por contrato ($)1,24Se resta de cada operación; mínimo 0.
Deslizamiento (ticks)1Penaliza siempre la entrada: las compras ejecutan más arriba, las ventas más abajo; mínimo 0.
Walk-forwardDesactivadoActiva los tramos, la proporción de entrenamiento, el criterio de selección y los ejes de parámetros (ver la página de walk-forward).
Lanzar el backtestArranca la ejecución; «Interrumpir» la aborta. La cabecera del resultado dice «Resultado · {n} barras».

Reglas de simulación

  • Una decisión se toma sobre una barra cerrada y se aplica en la apertura de la barra siguiente: ninguna ejecución a un precio que ya era pasado cuando existía la decisión.
  • Los stops y los objetivos se contrastan con el máximo y el mínimo de la barra, no con su cierre.
  • Cuando una misma barra toca a la vez el stop y el objetivo, gana el stop: sin ticks el orden es desconocido, así que el motor falla en tu contra.
  • Las comisiones se aplican a cada operación; la ayuda de costes te recuerda que unos costes a cero convierten una estrategia perdedora en ganadora en cuanto opera a menudo.
  • Una señal contraria cierra primero la posición actual (motivo «reverse»); una acción close pone la cuenta plana (motivo «flatten»).
  • El MAE, el MFE y el riesgo en la entrada (distancia del stop × qty × valor del punto) se registran por operación para los gráficos de excursión y de múltiplos de R.
  • Los logs del script se conservan hasta 200 líneas; una estrategia en Python se ejecuta con el intérprete instalado desde la página Scripting; las estrategias en C++ todavía no se pueden probar en backtest.

Límites y trampas

El resultado se registra en el panel de rendimiento como una ejecución «auto» con los días realmente cubiertos, y la lista muestra «{n} d de {req} pedidos» cuando la cobertura es inferior al 90 % de la ventana pedida. Un backtest con cobertura parcial solo cubre esa ventana, y el panel lo dice.

Las barras históricas son un permiso del bróker: el panel distingue «permission denied» (rp_code 13, barras no habilitadas en la cuenta) de un archivo que no llega tan atrás. Un backtest no envía ninguna orden; las estrategias automáticas solo pilotan la cuenta de evaluación simulada.

Esta página en otros idiomas

Preguntas frecuentes

¿Por qué el backtest ejecuta en la apertura de la barra siguiente?
La decisión solo existe una vez cerrada la barra. Entrar a un precio de esa misma barra usaría información que todavía no tenías, que es el primer defecto de los backtesters ingenuos.
¿Puedo poner las comisiones a cero?
El campo acepta 0, pero la ayuda avisa de que un backtest sin costes miente en cuanto la estrategia opera a menudo. El valor por defecto de 1,24 $ es un orden de magnitud de una ida y vuelta en prop firm.
¿Por qué no hay nada en caché para mi contrato?
La caché se llena cuando abres el contrato en el gráfico con esa granularidad, o cuando descargas el histórico que falta desde el panel de backtest. También se puede importar un archivo ohlcv-1m de Databento.