Backtesting y verificación beginner 13 min de lectura

Cómo hacer un backtest en MT5 (y cuál de las dos cifras de drawdown del informe hay que creerse)

Backtesting en MT5 paso a paso: qué histórico y qué modelo de ticks deciden el resultado antes de pulsar Start, y qué significa de verdad cada cifra del informe. Con una ejecución nuestra citada de entrada a salida y el dato que casi nadie comprueba: en las 23 ejecuciones publicadas, el drawdown de capital salió más profundo que el de saldo las 23 veces.

Publicado · Revisado

Haces un backtest en MT5 abriendo el Strategy Tester con View > Strategy Tester (Ver > Probador de estrategias) o con Ctrl+R, eligiendo el Expert Advisor, el símbolo, el marco temporal, el rango de fechas y el modo de modelado, y pulsando después Start. Cinco minutos más tarde tienes un informe. La pregunta que aprieta no es cómo llegar hasta ahí, sino cuáles de las cifras de ese informe significan lo que crees que significan.

Esta guía cubre las dos mitades: el procedimiento y la lectura. La lectura es de donde sale la evidencia de esta página, porque tenemos 23 ejecuciones terminadas en el archivo y sus informes se contradicen a sí mismos de una forma que casi nadie comprueba.

Qué te llevas de una ejecución terminada

El artefacto es un informe con dos mitades: un bloque de resultados (operaciones, factor de beneficio, drawdown, neto) y la lista de operaciones que hay detrás. Las dos importan, y solo se cita la primera.

Lo que deberías poder decir al final no es «ganó 3.023 $». Es: este conjunto de reglas, sobre este símbolo y este marco temporal, a lo largo de esta ventana, con este modelo de ticks, sobre una cuenta de 10.000 $, produjo este número de operaciones, con este factor de beneficio, habiendo estado así de bajo el agua en su peor momento. Cada parte de esa frase es un ajuste que elegiste tú, y cambiar cualquiera de ellos cambia la respuesta. Por eso aquí los ajustes van antes que el procedimiento.

Preparación: los datos y los ajustes que deciden la respuesta

Aquí tienes una ejecución real que hicimos y publicamos, citada para que puedas tener las entradas y la salida delante a la vez. Es el registro que hay detrás de Stillwater, una estrategia solo en largo sobre USD/JPY en el gráfico de 5 minutos. La columna de la izquierda son los campos del Strategy Tester tal como los imprime el terminal.

AjusteEsta ejecuciónPor qué está puesto así
ExpertStillwater (19 parámetros de entrada)Cada parámetro que se verificó que llevaba el informe: la superficie que tendrías que volver a teclear para reproducirlo
SymbolUSDJPY_DUKAUn símbolo dedicado al histórico de ticks, separado del que cotiza en vivo para que la ejecución sea repetible
PeriodM5El gráfico sobre el que se evalúan las reglas; el filtro de tendencia lee M30 desde dentro del EA
Date range2019-01-01 → 2026-07-017,5 años, suficiente para contener más de un régimen
ModellingEvery tick based on real ticks (Model 4)Todo lo que opera dentro del día necesita que el camino intravela se mida, no que se interpole
Deposit10.000 USDFijo en todas las ejecuciones de aquí, para que los porcentajes de drawdown sigan siendo comparables
LeverageSolicitado 1:500 — corrió a 1:100Ver más abajo. Esta fila no es lo que parece
OptimisationDesactivadaUna sola pasada. Buscar parámetros es otro trabajo, con otras trampas

Dos de esas filas merecen más que una celda de tabla.

La calidad de los datos es el ajuste sobre el que descansa el resultado. Todas las demás cifras del informe se calculan encima de la serie de precios que usó el probador, así que la cifra de calidad del modelado acota hasta qué punto el resto del informe habla siquiera de tu estrategia. El registro publicado de la ejecución de arriba declara un 100% de calidad del histórico sobre 229 millones de ticks reales, leído directamente del informe del probador. Una ejecución sobre datos de velas interpoladas habría producido un conjunto de operaciones distinto, y no solo unos precios de ejecución distintos: el probador da por supuesto un camino suave entre los precios que conoce, y una estrategia con un stop ajustado opera contra ese supuesto. Si no has mirado qué datos de ticks tiene realmente tu terminal para ese símbolo, eso es lo primero que hay que comprobar, antes que la estrategia.

El campo de apalancamiento es una petición, no un ajuste. En las 23 ejecuciones del archivo se le pidió al probador 1:500 y la prueba corrió a 1:100: 0 veces de 23 tuvo efecto la cifra solicitada. Y no es una suposición sacada de releer el campo, sino algo que quedó fijado midiendo el margen que consumía de verdad una posición dentro de la prueba, 126,39 USD, que cuadra con el cálculo a apalancamiento 100 y no con el de 500. La consecuencia práctica es que un diseño sensible al margen — un grid, una martingala, cualquier cosa que apile posiciones — puede pasar un backtest a un apalancamiento que nunca verá, o fallar uno a un apalancamiento que no habría usado. Comprueba la cifra de margen del informe contra tu propia aritmética en vez de fiarte de la casilla que rellenaste.

Paso a paso: ejecuta la prueba en MT5

  1. Abre View > Strategy Tester (Ctrl+R). El panel se acopla en la parte baja del terminal, con Settings, Inputs, Agents y Journal como pestañas.
  2. En la pestaña Settings, elige el Expert Advisor y después el Symbol y el Period. Elige el símbolo con el que vas a operar de verdad: de él sale la especificación, no solo el precio, y el tamaño del contrato y las reglas de margen difieren entre las variantes que un bróker tiene del mismo par.
  3. Fija el rango de fechas. Usa un periodo personalizado con fechas de inicio y de fin explícitas en lugar de «Last month», para que la ejecución sea reproducible por alguien que solo lea tu informe.
  4. Elige el modo de Modelling. Every tick based on real ticks para cualquier cosa intradía; Every tick generado a partir de velas M1 para sistemas más lentos; los modos más gruesos son para barrer parámetros, nunca para una cifra que vayas a publicar.
  5. Fija Deposit, la divisa y el apalancamiento, y deja Optimisation desactivada para una primera pasada. Anota el apalancamiento que pediste: lo vas a verificar contra las cifras de margen del informe en vez de darlo por hecho.
  6. Abre la pestaña Inputs y lee todos los valores. Esta es la pestaña que arrastra en silencio las ediciones de la ejecución anterior, y por eso nuestros registros verifican los parámetros contra el informe terminado y no contra el archivo que creíamos haber cargado. Una ejecución de este conjunto lleva 362.
  7. Pulsa Start. Deja Visual mode apagado salvo que estés depurando la lógica de entrada: es mucho más lento y te tienta a mirar en vez de medir.
  8. Cuando termine, abre las pestañas Results, Graph y Backtest, después haz clic derecho dentro del informe y guárdalo. El informe guardado, y no una captura de la curva de capital, es lo que vas a comparar más adelante.
  9. Anota el build del terminal junto al resultado. Nuestras 23 ejecuciones abarcan los builds 6090 y 6140; dos ejecuciones de la misma estrategia bajo builds distintos no son automáticamente el mismo experimento.
  • Comprueba qué histórico tiene realmente el símbolo
  • Elige el modo de modelado según el tiempo de permanencia
  • Fija símbolo, periodo y un rango de fechas explícito
  • Lee todos los valores de la pestaña Inputs
  • Ejecuta una sola pasada con la optimización desactivada
  • Guarda el informe, no una captura de pantalla
  • Lee las dos líneas de drawdown antes que la del beneficio
El orden en el que hay que tomar las decisiones: datos antes que ajustes, ajustes antes que ejecución

Leer los resultados: qué significan de verdad las cifras del informe

Toma la salida de esa misma ejecución. Esto es lo que devolvió:

ResultadoValorQué tiene que superar antes de que sigas
Operaciones totales416Suficientes para que la media describa una muestra y no una anécdota
Factor de beneficio1,28Por encima de 1,0 con un margen que sobreviva a los costes que no modelaste
Beneficio neto3.023,01 USDSobre un depósito de 10.000: una rentabilidad, no una nota
Drawdown de saldo5,82% (747,57)La peor caída medida sobre operaciones cerradas
Drawdown de capital6,11% (787,60)La peor caída incluyendo las posiciones abiertas: la que habrías visto tú
Tasa de acierto60,82%No dice nada por sí sola; léela contra el stop y el objetivo, aquí de 100 y 200 pips
Condiciones de la prueba
ID del experimentoEXP-BACKTEST-RUNBOOK-001
ID de la ejecuciónstillwater__gate_v2_duka_realticks__2019-01-01_2026-07-01
Build de MT56140
Especificación del contratoExness-MT5Trial5
Símbolo / marco temporalUSDJPY_DUKA M5
Periodo2019-01-01 – 2026-07-01
ModeloEvery tick based on real ticks (Model 4)
Depósito10,000 USD
Apalancamiento solicitado1:500
Apalancamiento efectivo1:100
Medido2026-08-23
Última verificación2026-08-25

Hay tres cosas de ese informe que se leen mal una y otra vez.

Las dos líneas de drawdown responden a preguntas distintas. El drawdown de saldo mide la curva de capital sobre operaciones cerradas; el drawdown de capital incluye la flotación de las posiciones que seguían abiertas. En nuestras 23 ejecuciones la línea de capital fue la más profunda todas las veces, y el tamaño de la brecha no se puede predecir a partir de la descripción de la estrategia: la más estrecha fue de 0,04 puntos (0,67% frente a 0,71%) y la más ancha, de 11,10 puntos (14,52% frente a 25,62%, una razón de 1,76). Una estrategia que cierra rápido tiene una brecha pequeña. Una que se queda sentada aguantando el movimiento en contra la tiene grande, y esa es precisamente la estrategia cuyo drawdown más necesitas conocer antes de ponerle dinero.

23 de 23Ejecuciones publicadas en las que el drawdown de capital fue más profundo que el de saldo
11,10 ptsBrecha más ancha entre las dos líneas de drawdown en una misma ejecución: 14,52% frente a 25,62%
0 de 23Ejecuciones en las que el apalancamiento pedido al probador es el apalancamiento al que corrió la prueba

MT5 imprime cada drawdown dos veces, bajo dos definiciones. El drawdown Maximal se mide en el momento en que el importe fue mayor; el Relative, en el momento en que el porcentaje fue mayor. Son momentos distintos de la misma ejecución, así que las dos cifras no son dos vistas de un mismo suceso. De nuestras ejecuciones, 16 están registradas con la definición Maximal y 5 con la Relative, y el proceso que escribe esos registros se niega a emparejar una cifra de saldo Maximal con una de capital Relative, porque una página que mostrara las dos estaría comparando dos instantes distintos. Cuando cites un drawdown, di con qué definición.

Los totales del propio informe vienen redondeados, y su ventana puede no ser la ventana que tú quieres decir. Recalculado desde la lista de operaciones publicada, el factor de beneficio de esa misma ejecución es 1,2843 y no el 1,28 que imprime el informe: inofensivo aquí, y nada inofensivo cuando comparas dos candidatas separadas por tres decimales. Más importante todavía, esa ejecución de 416 operaciones se parte en 404 operaciones hasta la fecha de corte de publicación del 2026-04-01 y 12 después de ella. Esas 12 últimas devolvieron un factor de beneficio de 2,3317. Ninguna de las dos cifras es falsa; responden a preguntas distintas, y el corte es una fecha que eligió una persona, no algo que imprimiera el probador. Si vas a dividir una ejecución en «la parte sobre la que ajusté» y «la parte sobre la que no», escribe dónde está la línea antes de mirar la segunda mitad. Cómo leer un informe de backtest de MT5 hace esa división en las 23 ejecuciones y enseña cuánto se mueve la cifra de cabecera.

Trampas que invalidan una ejecución en silencio

Mejóralo: cambia una cosa, vuelve a ejecutar y compara

El bucle es aburrido a propósito. Cambia una variable, vuelve a ejecutar y anota los dos resultados. Con dos variables a la vez ya no puedes atribuir la diferencia a ninguna de ellas.

El orden que más información te da por ejecución es este:

  1. Varía la ventana antes que la estrategia. Ejecuta 2019–2022 y 2022–2026 por separado. Si las dos mitades no coinciden, los parámetros están describiendo un solo periodo, y no hay ajuste fino que arregle eso.
  2. Varía el símbolo. Una regla que solo funciona en un par es un dato sobre ese par. Nuestro conjunto incluye los mismos planteamientos generales sobre USD/JPY, EUR/GBP, AUD/CAD, NZD/USD, un índice y un par cripto exactamente por este motivo.
  3. Varía el modo de modelado. Vuelve a ejecutar la candidata superviviente sobre un modelo más grueso. Si el resultado se derrumba, la ventaja vivía dentro de la vela, y el camino intravela es la parte menos fiable de cualquier simulación.
  4. Solo entonces varía los parámetros, y trata cualquier ajuste que hayas tenido que buscar como una afirmación más débil que uno que elegiste de antemano.

Deja de iterar cuando un cambio deje de mover el resultado fuera del ruido de las ejecuciones anteriores, o cuando te des cuenta de que estás eligiendo ajustes por lo que decía el último informe. Esa segunda condición es la de parada de verdad, y llega antes de lo que la gente espera. El analizador de backtest resulta útil aquí porque vuelve a extraer las cifras principales de un informe guardado, y eso convierte comparar dos ejecuciones en un acto de aritmética en vez de memoria.

Próximos pasos: prueba en avance antes de pasar a real

Un backtest limpio es el primero de cuatro pasos, no la meta.

Optimiza, si la regla tiene parámetros que merezca la pena buscar. Registra todo el rango de búsqueda y no la pasada ganadora: un resultado que has tenido que buscar es evidencia sobre la búsqueda, y el rango es lo que le dice a quien te lea cuánto buscaste. Optimización de parámetros recorre esa pasada y lee nuestras propias ocho búsquedas registradas: 116 combinaciones, y ni un solo ajuste que estuviéramos dispuestos a publicar.

Después haz walk-forward. Ajusta sobre un segmento, mide sobre el siguiente y repite. Es el único de los cuatro pasos que ataca directamente el sobreajuste, y por eso vale más que un backtest más largo.

Después prueba en avance sobre una cuenta demo. Aquí es donde la latencia, las recotizaciones y la apertura real del spread entran por fin en el experimento. Déjalo correr el tiempo suficiente para ver a la estrategia perder y recuperarse, porque la cifra que necesitas de verdad no es la rentabilidad: es si eres capaz de aguantar sentado el drawdown que mediste arriba.

Y después decide. Escribe por adelantado la pérdida que te haría apagarla. Un límite que fijas antes de poner dinero es una decisión; uno que fijas en mitad de un drawdown es una reacción.

Si quieres una referencia trabajada antes de ejecutar la tuya, cada ficha del catálogo de EA publicados lleva su lista completa de operaciones cerradas, sus dos líneas de drawdown y el manifiesto de la ejecución que hay detrás, y cómo probamos describe el estándar al que se someten esos registros. El resto de las guías de backtesting profundizan en los pasos de optimización y walk-forward que esta página solo señala. Aquí no se promete ningún resultado: todas las cifras de esta página describen ejecuciones que ya han ocurrido.

Preguntas frecuentes

¿Cuánto debe durar el periodo del backtest?
Lo suficiente para que la estrategia haya operado a través de condiciones que se va a volver a encontrar, que es una pregunta sobre el número de operaciones más que sobre la longitud del calendario. De las 23 ejecuciones publicadas aquí, 22 empiezan el 2019-01-01 y la ventana mediana es de 7,5 años, pero la frecuencia de muestreo dentro de esas ventanas va de 14,2 operaciones al año a 945,1. Una ventana de siete años sobre una estrategia lenta puede seguir siendo una muestra de cien operaciones, y cien operaciones son pocas para sacar una conclusión. Lee primero el número de operaciones y después el rango de fechas.
¿Por qué cambian los resultados de mi backtest cuando repito la misma prueba?
Casi siempre porque cambió el histórico de precios, no la estrategia. El probador descarga y guarda en caché el histórico símbolo a símbolo, así que una primera ejecución sobre una ventana cuyos primeros años todavía no estaban almacenados produce una serie de ticks distinta de la de una segunda ejecución hecha después de rellenar los huecos. El modo de modelado hace lo mismo de forma más visible: pasar de Every tick based on real ticks a Every tick generated from M1 bars cambia qué operaciones llegan a dispararse siquiera, no solo a qué precio se ejecutan. Anota el modo y el build del terminal junto al resultado, o dos ejecuciones tuyas dejarán de ser comparables entre sí.
¿El Strategy Tester incluye spread, comisión y swap?
Aplica lo que lleven los datos de precio y la especificación del símbolo, que no es lo mismo que elegir tú esos costes. En las 23 ejecuciones publicadas aquí la comisión salió a cero en todas, y solo una puede declarar su propio spread medio: 19,14 puntos, y solo porque un EA registrador corría dentro de la prueba junto a la estrategia. Todo lo demás heredó el spread que llevaba el histórico sin dejar constancia de él. Si un coste importa para tu resultado, mídelo dentro de la prueba en vez de dar por hecho que el probador lo modeló.
¿Basta un buen backtest para poner un EA en una cuenta real?
No. Un backtest acota lo que un conjunto de reglas habría hecho sobre precios ya registrados y bajo un modelo de ejecución simulado. No contiene latencia, ni recotizaciones, ni nada de la apertura del spread que llega justo cuando salta una señal. El orden que funciona es este: backtest, después optimización si la regla tiene parámetros que merezca la pena buscar, después una comprobación walk-forward sobre datos que la búsqueda no vio nunca, y después una cuenta demo durante el tiempo suficiente para ver a la estrategia perder y recuperarse. Los resultados pasados describen el pasado, y nada de esta página es un pronóstico.