Lo que hay que saber sobre el back-testing

by Omar

¿Qué es el “back-testing”?

De modo somero, hacer un “back-test” es tomar una idea de trading que crees que funciona y revisar la historia del mercado para poder determinar si realmente vale la pena considerar esa idea para desarrollar un sistema de trading.

Entonces, estableciendo lo obvio, para hacer un back-test necesitas:

  1. Una idea de trading que quieres verificar.
  2. Un fragmento de la historia de la acción del precio de los mercados/instrumentos en donde quieras probar tu idea.
  3. El interés de desarrollar un sistema de trading a partir de tu idea una vez que verifiques su valor.

Desglosando:

  • ¿Una idea de trading? Básicamente se trata de que establezcas las condiciones más generales de tu setup. Una condición normalmente tiene la forma de una hipótesis:

Si ocurre A, entonces ocurre B.

Por ejemplo:

Si el mercado está sobrecomprado, bajará de precio; si el mercado está sobrevendido, subirá de precio.

Naturalmente, tendrás que establecer cómo vas a saber que el mercado está sobrecomprado o sobrevendido, por ejemplo a través de un oscilador, de la acción del precio, de algún índice financiero, etc.

De este modo, la condición completa podría ser de este estilo:

Si el indicador X señala Y, significa que el mercado está sobrecomprado, por lo que el precio bajará; si el indicador X señala Z, significa que el mercado está sobrevendido, por lo que el precio subirá.

Tu setup puede estar conformado por una condición (como en nuestro ejemplo) o por la suma de varias condiciones simultáneas o consecutivas; sin embargo, como argumentaremos más adelante, entre más simple sea tu idea (y mientras puedas explicártela con pocas condiciones), mucho mejor para hacer el back-test y para posteriormente desarrollar un sistema, si de verdad vale la pena tu idea.

  • ¿Un fragmento de la historia de la acción del precio? Esto es demasiado simple: si tienes una plataforma de trading, entonces tienes un fragmento de la historia de la acción del precio de los mercados/instrumentos en donde querrías/podrías probar tu idea.
  • ¿Interés de desarrollar un sistema? Por muy obvio que parezca: si no te interesara desarrollar un sistema de trading (o al menos un método), ¿para qué te molestarías en evaluar una idea de trading?

Así, si cuentas con estos tres ingredientes, puedes hacer un back-test a través de diversos medios: lo puedes realizar en tu plataforma de trading, lo puedes llevar a cabo con software especialmente diseñado para tal fin, lo puedes hacer en papel, lo puedes hacer en una hoja de cálculo, etc. Todo dependerá del grado de precisión y profundidad al que quieras llegar.

En este sentido, algunas ideas sobre los elementos que puedes incluir en tu back-test:

  • Puedes verificar únicamente la ocurrencia de tu hipótesis y verificar su validez, es decir, qué tanto sucede tu idea de trading en la historia que tengas disponible y en los mercados/instrumentos que te interesan y qué tanto funciona de acuerdo a lo que piensas.
  • Puedes verificar también tus métodos de entrada y salida para operar tu idea de trading en la historia que tengas disponible y en los mercados/instrumentos que te interesan, ya sea que los vayas diseñando de acuerdo a lo que ves o que utilices las entradas/salidas que ya utilizas.
  • Puedes verificar además otras variables esenciales, como tu sistema de position sizing y reglas de manejo del riesgo; de esta manera, ya puedes evaluar todos los elementos principales de un método y puedes verificar lo que habrías hecho y lo que habrías obtenido de haber estado operando este método en ese momento.

En resumen: al término de un back-test podrías determinar, no sólo la viabilidad de tu idea de trading, sino también el tipo general de entradas y salidas más adecuadas y el tipo general de reglas de manejo del riesgo más convenientes.

Por otro lado, algunas ideas sobre las condiciones que puedes diferenciar en tu back-test:

  • Puedes verificar los elementos de tu método (idea, entradas/salidas, position sizing) en general, es decir, independientemente del instrumento o de las condiciones.
  • Sin embargo, también puedes verificar estos elementos dentro de condiciones particulares: por ejemplo, probablemente no será lo mismo probar tu idea de trading en un mercado de tendencia o en un mercado de rango; en un entorno de baja volatilidad en contraposición con uno de alta volatilidad; en el horario de Londres o en el horario de Nueva York; en timeframes diarios o de quince minutos; en ciertos pares tendrás mejores resultados que en otros; y un largo etcétera.

En resumen: al término de un back-test podrías determinar, no sólo la viabilidad de tu idea de trading en condiciones generales, sino también bajo contextos muy particulares; por ejemplo, podrías determinar que tu idea de trading ha tenido un mayor éxito en mercados de tendencia, en timeframes superiores a H4 y en los pares mayores.

¿Qué debes obtener de un back-test?

En otras palabras, ¿para qué querrías hacer un back-test? Te lo digo con toda precisión.

Al realizar un back-test debes obtener, por lo menos:

  1. El win ratio de tu idea de trading bajo las condiciones que has establecido.
  2. La frecuencia u oportunidad de posiciones bajo dichas condiciones.
  3. El promedio del número de posiciones ganadoras o perdedoras consecutivas en una racha en esas condiciones.
  4. Las ganancias promedio y las pérdidas promedio bajo las condiciones establecidas y la proporción entre ellas.

Estos datos son importantes para comenzar a considerar una idea de trading como la base de un sistema de trading futuro. O sea: si no tienes por lo menos estos datos no puedes siquiera considerar la idea de trading para operarla.

Así, si tras el back-test verificas que tu idea de trading tiene, bajo las condiciones que has establecido, un buen win ratio, una buena frecuencia de posiciones, rachas perdedoras que puedes tolerar y una atractiva proporción entre lo que ganas y lo que pierdes, ya puedes comenzar a diseñar los elementos más sutiles de lo que se convertirá en un sistema de trading.

¿Qué es lo que NO obtienes con un back-test? ¿Con qué hay que tener MUCHO cuidado?

Contrario al sueño de opio de muchos, verificar que una idea ha funcionado en el pasado (incluso un método completo, con entradas, salidas, risk management, etc.) NO es una garantía de que funcione en el futuro. Ni modo.

😀

Lamentablemente, no existen bolas de cristal o cartas de tarot para poder predecir el movimiento futuro del mercado con certeza. En este sentido, lo que nos ofrece el back-testing es simplemente una mayor probabilidad y una mayor confianza de que la idea de trading es operativa bajo ciertas condiciones. Es todo.

Por esto, ten mucho cuidado con la “sobreoptimización”. Ésta es una trampa clásica en la que caen los traders novatos: tienen una idea de trading que comienzan a verificar en la historia de un par, por ejemplo; entonces, con la finalidad de hacerla casi perfecta y ajustarla lo más que se pueda, van modificando las condiciones, agregando indicadores y particularidades, modificando el sistema de entradas y salidas, haciendo más complejo el sistema de manejo del riesgo, etc.

El resultado final es que obtienen el método supuestamente infalible: de haber utilizado este método (basado en una muy compleja combinación de indicadores y señales, un sistema quizás complicado de entradas y salidas y reglas variadas para manejar el riesgo) en este par y en este tiempo, básicamente te habrías vuelto trillonario.

Lamentablemente para ti, eso no significa que el método vaya a funcionar exactamente de ese modo en el futuro; de hecho, entre más optimizaciones le hayas hecho a los elementos y condiciones de tu idea de trading para ajustarla al pasado, es más probable que te sirva menos en el futuro.

Esto es importante y por eso te lo digo con otras palabras: si has diseñado el método con el que te pudiste volver millonario en la gráfica de M15 del EURUSD, desde el 2005 hasta el 2010, y has encontrado la combinación perfecta de 7 indicadores para establecer las condiciones perfectas para el setup, las 2 formas perfectas de entrar y las 3 formas perfectas para salir y los 5 sistemas de money mangement que hay que utilizar dependiendo de la probabilidad de la posición (que se puede leer en un octavo indicador)… tanto grado de especialización difícilmente será aplicable a otros contextos, mercados, pares, timeframes y, lo más importante, épocas.

Otra forma de decir lo mismo es que cualquier idea de trading puede ser rentable… pero lo es no porque se adapte perfectamente a la historia de un par; si realmente es rentable, lo es porque puedes operarla con cierta facilidad, bajo ciertas condiciones y porque puedes combinar tu idea de trading con otros elementos vitales (como tus salidas y tu manejo del riesgo).

Así diseñan a los famosos robots, de hecho: los diseñan para que se adapten a la perfección a todo lo que ha pasado hasta el día en el que diseñaron el código. Entonces, ciertamente si ejecutas un back-test automatizado del robot, vas a ver que en 4 días te hubieras convertido en Warren Buffet… pero, por favor, piénsalo: ¡en esos cuatro días el mentado robot ni siquiera existía! Sin embargo, la demostración es impactante y muchos caen en la estafa…

¿Te ha pasado alguna vez que tomas una idea de trading, haces un back-test con cierta profundidad y muy felizmente llegas a la conclusión de que has encontrado el hilo negro del trading y que con facilidad te convertirás en millonario?

Entonces, pon atención: Hay muchos otros aspectos con los que hay que tener cuidado cuando elaboras un back-test para que lo que obtengas de ello sea lo más fiel, preciso y útil posible. Aquí no voy a profundizar en todos los factores que hay pero al menos te daré algunas ideas con las que puedes empezar:

  • La acción del precio: Por ejemplo, lo que ves en una vela diaria sólo te dice el resultado final pero no lo que pasó y en qué orden ocurrió. Éste es un error clásico del trader novato. Para evitarlo, hay que descomponer la barra en los timeframes inferiores para poder ver qué ocurrió en el mercado realmente y qué habría ocurrido con tu idea de trading realmente.
  • El funcionamiento de los indicadores: Muy relacionado con el punto anterior, la mayoría de los indicadores muestran la lectura al cierre de la vela a la que hace referencia; entonces, no te muestra lo que habrías visto en tiempo real. Es otro error clásico de los back-tests fundamentados en indicadores cuyo funcionamiento no comprendes correctamente.
  • Comisiones y slippages: En el back-testing no es posible ver las comisiones que te habrían cobrado en una cuenta real (spreads y rollovers) y mucho menos los slippages provocados por momentos de volatilidad extrema. En algunos mercados y bajo algunas condiciones, esto es un factor que puede marcar una diferencia tremenda entre el trading histórico y el trading en el mundo real.
  • Capacidad del trader: Hay métodos de trading que pueden parecer perfectos… si tan sólo hubiera un ser humano capaz de seguir las reglas al pie de la letra. Muchas veces, el desarrollo de un método a partir del back-testing no contempla la capacidad real de una persona para seguir las reglas establecidas; a veces es una capacidad mental/emocional, pero a veces se trata de una capacidad física para hacerlo. Esto sucede mucho, por ejemplo, en métodos para timeframes muy reducidos, de M1 o M5, en donde seguir el método implicaría que el trader es capaz de percibir la información, tomar decisiones e implementarlas en solamente unas décimas de segundo.
  • Evaluación limitada: Muchas veces ocurre que una idea de trading nos ayuda a distinguir en los gráficos todas las veces que esa idea ha funcionado en el tiempo; eso nos emociona y nos hace creer con mucha facilidad que ya hemos encontrado el santo grial del trading (la soberbia es tan grande que incluso pensamos que nunca antes nadie había sido tan inteligente como para ver lo que acabamos de “descubrir”… ¡qué buen chiste!) Sin embargo, esto también nos “ayuda” a eliminar todas las otras numerosas ocasiones en donde la idea también se presentó y no funcionó como lo hubiéramos esperado. Esto obviamente modifica la precisión y la objetividad de dicha evaluación.

Conclusión…

Si haces back-testing con la misión de encontrar el método infalible, el que hubiera funcionado para convertirte en millonario el año pasado, el que te va a asegurar que estás en lo correcto y que rara vez te vas a equivocar, el que va a ser tan complejo que parecerá producto de años de investigación en la NASA… tus back-tests no van a servirte de casi nada. Te lo digo con pleno conocimiento de causa, propio y ajeno.

Si, por el contrario, haces back-testing para tener una visión general sobre el desempeño de una idea de trading en el pasado, para tener datos estadísticos útiles (win ratio, risk/reward, rachas, expectativa, oportunidad), para determinar que las probabilidades de éxito de esa idea son atractivas, sabiendo de antemano y aceptando sus limitaciones y riesgos… y tomas esa información como una justificación para comenzar a operar la idea en una cuenta demo (o una real, con la mínima unidad de operación posible), tus back-tests te van a ser de una tremenda utilidad para diseñar un sistema de trading completo. También te lo digo con pleno conocimiento, tanto propio como ajeno.

Saludos,
Omar.

PD. Si te agradó este artículo o tuvieras alguna duda, déjame tu comentario. Será un gusto saber de ti

 

Mi Programa Educativo: Desde que fundé ForexIQ Pro he mantenido el mismo precio anual de $290 USD (¡son $0.79 USD al día!) por una educación formal y completa en todos los temas relevantes al trading de divisas, mis métodos, mis análisis semanales y nuestro foro exclusivo. Hay gente que gasta 100 veces más en “cursos” y todavía no ha aprendido nada. – Haz clic aquí para enterarte de los detalles.

{ 10 comments… read them below or add one }

Mauricio

Este artículo me cae en el momento justo, ahora que estoy probando un nuevo método de mi propia autoría (eso deben pensar todos los que “descubren” un nuevo método).

Hasta ahora he comprobado que funciona mejor con ciertas paridades y en timeframes de 1 día y superiores.

Todo peter indicar

Reply

Omar

Excelente, Mauricio.
Pon atención a las recomendaciones que doy aquí. También cubriré este tema con mucha mayor profundidad y con recomendaciones muy prácticas en el módulo 3 del STP. ¡Mucho éxito con tu método!

Reply

Daniel

Igual estoy realizando el back test de dos metodos que eh venido desarrollando y uno ya lo presente en el foro. Sin embargo lo que mas me ha ayudado ha sido mi aprendizaje en PNL, sin duda con mi cuenta real las desiciones hacen la diferencia, asì como el back test….Gracias.

Reply

Omar

De acuerdo, Daniel. Como todos saben, el aspecto psicológico toma una relevancia enorme al momento de operar en un mercado justamente porque se trata de tomar decisiones. Cuando realizamos un backtest bien hecho, éste debe ofrecernos datos “duros” que suelen facilitar, desde el aspecto mental, la ejecución del sistema de trading que de él se deriva. Por supuesto, todo lo demás que tú sepas o puedas aprender acerca del control mental y emocional es de enorme utilidad. ¡Que continúen los éxitos!

Reply

laura

Muchas gracias por tus artículos y análisis. Siempre estoy al pendiente de lo que publicas.

Reply

Omar

Muchas gracias por leer, Laura. ¡Saludos!

Reply

Asdrubal

Muy interesante la publicación, varias de las cosas que dices respecto al backtesting las he ido comprobando solitariamente y me agrada encontrar una segunda opinión al respecto confirmando mis hipótesis. Ciertamente me gustaría que pudieses definir aunque sea brevemente lo que en las últimas lineas de la publicación tú llamas: “un sistema de trading completo” y si dicho sistema (si es que existe realmente) puede permitir a un trader ganar consistentemente día a día (o semana a semana o mes a mes, etc.). saludos.

Reply

Omar

Muchas gracias por tu comentario, Asdrubal. Por supuesto que existe un “sistema de trading completo”; cualquier sistema que contenga todos los elementos necesarios para ser utilizado como base de un negocio dentro de los mercados financieros es, por definición, “un sistema de trading completo”.

La pregunta clave, por supuesto, es la que mencionas a continuación. Desde mi punto de vista, antes de emplear un sistema de trading cualquiera (o siquiera un método de trading solamente) es necesario evaluar si tiene posibilidades reales de generar dinero en el largo plazo y con cierto nivel de consistencia. Como quizás imagines, la mayoría de los traders no saben realizar esta importante labor y muchos de ellos simplemente comienzan a operar dinero real con un método sólo porque en un entorno demo generaron algún tipo de ganancias.

De esta manera, podemos enunciar una “regla” que vincula las dos dimensiones comentadas del siguiente modo: todos los sistemas de trading que generan dinero en el largo plazo y con consistencia son sistemas de trading completos, es decir, cuentan con todos los elementos que deben formar parte de un sistema de trading… sin embargo, un sistema que tiene todos los elementos no necesariamente va a generar dinero en el largo plazo; para determinar esta distinción con exactitud, es necesario evaluar al sistema en cuestión formalmente.

Dicho de otro modo: una parte de la tarea es diseñar el sistema de trading de una manera tan amplia como sea posible; sin embargo, eso no puede ser garantía… la otra parte de la tarea es evaluar ese diseño formalmente, de modo que se pueda obtener una certeza estadística al respecto y, entonces y sólo entonces, comenzar a operarlo con ese nivel de confianza.

Espero haber respondido tu solicitud.

Reply

Rosmelvic Alexandra Becerrit Loaiza

Gracias por la informacion, muy clara para principiantes y ya operadores.

Reply

Omar

Al contrario, Rosmelvic. Muchas gracias a ti.

Reply

Leave a Comment