De 90% a 40% de acierto: por qué el backtest en el gráfico de NinjaTrader engaña
Hace poco me llegó un cliente —muy buena gente, todo hay que decirlo— con una estrategia que, según él, tenía un 90% de acierto. Lo había comprobado él mismo: cargaba la estrategia en el gráfico de NinjaTrader, la plataforma dibujaba las operaciones pasadas sobre las velas, y casi todas eran ganadoras. Parecía imbatible.
Cuando la pasé por un backtest de verdad, con datos tick a tick, el acierto real era del 40%. No es que el cliente mintiera, ni que la plataforma esté rota. Es que estaba midiendo con una herramienta que no mide lo que él creía.
Qué hace realmente NinjaTrader cuando cargas una estrategia en el gráfico
Al aplicar una estrategia a un gráfico, NinjaTrader calcula las operaciones históricas usando solo los datos de las velas cerradas: apertura, máximo, mínimo y cierre. No sabe en qué orden se movió el precio dentro de cada vela, porque esa información no está en la vela: está en los ticks.
Eso tiene consecuencias muy concretas:
- Stops que no saltan. Si una vela toca tu stop pero cierra por encima, el motor puede darla por buena: él solo evalúa la vela completa, no el recorrido interior. En real, ese stop habría saltado y la operación sería una pérdida.
- Entradas imposibles. Las entradas se calculan sobre precios de vela ya cerrada, con rellenos idealizados: sin deslizamiento, sin cola de órdenes, sin saber si tu precio se negoció de verdad en ese instante.
- Orden de eventos inventado. Si en la misma vela estaban tu objetivo y tu stop, ¿cuál se tocó primero? Con velas no se puede saber. El motor asume un orden; la realidad puede ser el contrario.
El resultado es una curva preciosa impresa sobre el pasado. No es una simulación de trading; es un dibujo.
El mismo sistema, medido bien
Reparé la estrategia (tenía además errores de ejecución) y la pasé por el Strategy Analyzer con resolución de llenado de órdenes alta y datos de 1 tick: cada stop, cada objetivo y cada entrada evaluados contra el recorrido real del precio. El 90% se quedó en un 40% de acierto. Y ojo: un 40% de acierto no significa que el sistema sea malo — depende de cuánto gana cuando gana y cuánto pierde cuando pierde. Pero es un sistema completamente distinto del que el cliente creía tener.
Por experiencia, entre un backtest tick a tick bien hecho y la cuenta real suele haber todavía una diferencia de un 10% arriba o abajo (deslizamiento, latencia, noticias). Entre el dibujo del gráfico y la cuenta real, la diferencia puede ser un abismo.
Cómo saber si tu backtest es de los que engañan
- Si tu única evidencia es la estrategia cargada en el gráfico con sus operaciones dibujadas: es el caso de este artículo.
- Si el backtest sale con un acierto altísimo (80-90%+) y stops ajustados: sospecha de los stops que "no saltan".
- Si en el Strategy Analyzer no configuraste la resolución de llenado alta con datos tick, el problema es el mismo aunque uses el Analyzer.
Tengo publicada una guía completa de cómo hacer un backtest realista en NinjaTrader 8 paso a paso, con la configuración exacta.
La moraleja no es "no te fíes de NinjaTrader" — la plataforma hace exactamente lo que dice que hace. La moraleja es que el gráfico no es un backtest. Antes de operar dinero real, o de comprar una estrategia por su curva, exige la medición tick a tick. Es la diferencia entre un 90% imaginario y un 40% real.
Preguntas frecuentes
ORB: una estrategia ORB automatizada con resultados reales públicos
Operada en cuenta real, con el registro completo de operaciones publicado y actualizado cada semana. Pruébala 30 días gratis antes de decidir.
Ver la estrategia ORB Ver resultados reales