Earn2Trade Blog
backtest, backtesting

Backtest en el Trading – Una Guía Sobre Cómo Hacer Backtest a una Estrategia de Trading

Última actualización el abril 15, 2021

Operar sin un backtesting adecuado es como jugar al casino. Puede que ganes un par de veces, pero sufrirás pérdidas importantes a largo plazo. La razón es que, antes de salir y comenzar a arriesgar tu capital, lo más importante es que ajustes tu estrategia de trading. La misma debe proporcionar un rendimiento relativamente estable en varios escenarios de mercado. Esta guía te ayudará a aprender cómo hacer backtest a una estrategia de trading, qué método de backtesting funciona mejor, cómo evaluar los resultados de tus pruebas y, lo más importante, cuándo considerar que estás listo para comenzar a operar y hacerlo con confianza.

910x300_earn2trade_ad_es

¿Qué Es el Backtesting?

El backtesting es un método para analizar el rendimiento de tu estrategia de trading actual durante un período de tiempo en el pasado. Hacer backtesting de una estrategia de trading te ayuda a evaluar su comportamiento durante los escenarios de mercado posteriores al hecho y determinar dónde se destaca y dónde se queda corta. Es una herramienta vital que te ayudará a validar un modelo de trading.

Podrías evidenciar un ejemplo de backtesting si retrocedes en el tiempo y compruebas cómo se habría desempeñado tu estrategia de trading durante el pico de la Crisis Financiera Global o al comienzo de la pandemia de COVID.

El backtesting tiene como objetivo ayudar a generar resultados y evaluar el riesgo y la rentabilidad sin arriesgar capital real. Piensa que es como nadar con un chaleco salvavidas: esta en el agua, pero no puedes ahogarte.

El backtesting para los traders es lo que es el entrenamiento para los atletas profesionales. Pasan horas perfeccionando su técnica antes de salir y competir con el resto. De esa manera, mejoran y generan confianza, basándose en numerosas pruebas, datos y análisis.

Haciéndole Backtesting a una Estrategia de Trading - Aprende Cómo Funciona

Los Aspectos Básicos

Hay varios programas de software diferentes que podemos utilizar para hacer backtesting. Las opciones incluyen Microsoft Excel, plataformas de terceros listas para usar o crear una desde cero. Las principales empresas de trading de algoritmos programan su software de backtesting en diferentes lenguajes informáticos: C ++, C #, Python o R (para proyectos menos complicados).

Para hacer un backtesting adecuado, necesitas datos históricos. El programa toma las especificaciones de tu estrategia y las aplica en un período de mercado en particular en el pasado para mostrarte cómo se habría comportado en ese entonces.

Dependiendo de los resultados del backtest, el trader o el analista decidirá si la estrategia necesita un ajuste o si es lo suficientemente buena para aplicarse tal cual.

La idea del backtesting se basa en la teoría de que los mercados financieros funcionan en ciclos. Si algo era viable en el pasado, muchos traders asumen que seguirá siendo relevante en el futuro y viceversa: si fracasó en el pasado, probablemente tampoco tenga éxito en el futuro.

¿Por Qué Necesitas Hacerle Backtest a tu Estrategia de Trading?

Los dos pilares principales para construir una estrategia de trading o de inversión son el riesgo y el rendimiento y su relación. El backtesting te ayuda a cuantificar esos dos factores para mostrar la rentabilidad general y el apetito por el riesgo de tu estrategia.

Debes hacer backtest de tu estrategia de trading para saber cómo funcionará en escenarios de mercado reales. El backtesting te permite simular tu idea de trading utilizando datos históricos y poniendo a prueba sus mecanismos de gestión de riesgos.

Hacer backtesting de una estrategia de trading puede ayudarte a encontrar sus puntos débiles, probar su resistencia y resaltar dónde necesitas ajustarla sin correr ningún riesgo. Al hacer todo esto, puedes aclarar todos los problemas, fortalecer tus herramientas de gestión de riesgos y ganar confianza en que tu estrategia de trading es lo suficientemente sólida. Hacerlo garantizará un desempeño más satisfactorio cuando la implementes en escenarios de mercado reales.

¿Qué te dice el Backtesting?

Básicamente, el backtesting te dará respuestas cruciales a preguntas esenciales como:

  • ¿Cuál es la mejor configuración de trading para tus necesidades y objetivos?
  • ¿Cuál es el riesgo óptimo por operación?
  • ¿En qué mercados funciona mejor esta estrategia?
  • ¿Están bien ajustados tus activadores de entrada y salida?

Otra razón fundamental por la que debes hacerle backtest a tu estrategia de trading es que los mercados de hoy se rigen por datos. Datos históricos, indicadores prospectivos, modelos de análisis predictivo: todo esto puede ayudarte a construir una estrategia de trading sólida. Sin incorporar datos reales del mercado, simplemente no puedes obtener una indicación precisa del desempeño futuro de tu estrategia de trading y si es viable en las condiciones reales del mercado.

Al hacer backtest de tu estrategia de trading, puedes averiguar cómo se habría desempeñado en el pasado. Si tuvo un mal desempeño, la posibilidad de que tenga éxito en el futuro es mínima. Y viceversa.

Hacer backtesting de una estrategia de trading puede darte una ventaja competitiva. Te brinda información útil sobre lo que puedes esperar cuando comiences a operar en vivo para competir con otros traders.

¿Qué Necesitas Antes de Hacerle Backtest?

Lo más importante es intentar encontrar datos no sesgados, o imparciales, para evitar sesgar el rendimiento de tu modelo. Si utilizas datos sesgados, es casi inevitable que los resultados de la prueba no se vean afectados.

Aunque no es posible mantenerse completamente alejado de cualquier tipo de inclinación, debes asegurarte de mitigar sus efectos para obtener resultados lo más transparentes y confiables posible. Existen varios tipos de sesgos que pueden afectar tus datos y, en consecuencia, el rendimiento de tu modelo.

Sesgo de Optimización

Primero, el sesgo de optimización (también conocido como ajuste de curvas) describe situaciones en las que los traders introducen parámetros adicionales y operan hasta que el desempeño de su estrategia satisface sus expectativas. Básicamente, lo que hacen es “cubrir las grietas” del sistema e inflar artificialmente los resultados. Sin embargo, esta práctica solo servirá para engañarte, ya que resultará en un desempeño inesperadamente pobre cuando estés operando en tiempo real.

Sesgo de Anticipación

También existe el sesgo de anticipación, en el que accidentalmente se suele incluir fechas futuras en la simulación. Este error puede ocurrir debido a un cálculo incorrecto de los parámetros, un error técnico (principalmente al escribir el script de backtesting desde cero) y más. Para evitar tales situaciones, asegúrate siempre de verificar tus datos y la metodología de backtesting antes de comenzar. De lo contrario, la estrategia podría tener un rendimiento inferior en el trading real.

Otros Sesgos

También existen otros tipos de sesgos. Uno de ellos es el sesgo de supervivencia. Este sesgo se desarrolla cuando se hace backtesting de estrategias en conjuntos de datos que no representan la gama completa de activos relevantes en los que estás interesado en operar. Otro es el sesgo de tolerancia psicológica. Esto ocurre cuando se hace backtesting en períodos de largo plazo para mejorar el rendimiento, pero en realidad, planeas operar en períodos de corto plazo.

Después de asegurarte de que tus datos y la metodología de backtesting estén libres de sesgos (tanto como sea posible), es hora de centrarte en elegir un software de backtesting. Si estás operando a través de un bróker en particular, lo más probable es que tengan una función de backtesting incorporada en sus plataformas. Al menos los más populares lo han hecho. En este caso, el beneficio es que utilizarás una solución probada que es fácil de usar y que funciona. También te ayudará con un tema crucial que los traders suelen subestimar: incorporar los costos de trading en el modelo de backtesting. Incluso si son insignificantes, cuando se acumulan durante el trading a largo plazo, afectará la rentabilidad de tu estrategia.

También hay plataformas de backtesting listas para usar a las que puedes suscribirte. Sin embargo, ten en cuenta que el backtesting suele ser un proceso continuo. Debes hacer backtest de tu estrategia de vez en cuando, o si planeas ampliar tu portafolio, operar activos alternativos, etc. Hacerlo significa que tendrás que reservar un presupuesto específico para pagar tu software de backtesting con regularidad.

Aquellos con habilidades técnicas pueden escribir un script de backtesting desde cero en R, Python o incluso usar Excel. También puedes contratar a un programador para convertir tu estrategia en código.

Después de encontrar el software de backtesting perfecto, es hora de ponerse manos a la obra.

Escoger una Estrategia para Hacerle Backtest

No hay restricción sobre a qué estrategia exacta le harás backtest. La mayoría de los traders tienen varias estrategias de trading, dependiendo de la situación del mercado (tendencia bajista/tendencia alcista), tipo de activo, potencial de riesgo/beneficio y más. Como comprenderás, debes asegurarte de probar todas tus estrategias y evaluar su desempeño.

Asegúrate de hacer backtest de tu estrategia justo antes de aplicarla en el mundo real. Si, por ejemplo, una estrategia de trading mostró un rendimiento excelente durante el mercado bajista en el primer trimestre del año pasado, podrías tener un rendimiento inferior en el mercado alcista del año actual. La clave aquí es contextualizar la información.

Además, es esencial hacer backtest a los modelos de trading en una variedad de condiciones de mercado. Si bien el mercado nunca se mueve exactamente de la misma manera, en la mayoría de los casos, los activos de trading muestran patrones similares a los anteriores.

Cuantos más escenarios pruebes, más representativos y confiables serán los resultados.

Escoger un Activo para Hacerle Backtest

El mejor de los casos es hacer backtest de tu estrategia con datos para el mismo instrumento con el que planeas operar con dinero real. Por ejemplo, si planeas aplicar tu método para operar futuros de soja (ZS), asegúrate de descargar los datos históricos del CME u otro proveedor de servicios y ejecutar tu modelo sobre ellos.

De esa manera, estarás seguro de que los resultados considerarán solo factores específicos de activos. Factores como la estacionalidad, volatilidad, oferta y demanda, riesgos externos (es decir, condiciones climáticas adversas en la región más grande de productores de soja), etc.

Asegúrate siempre de hacer backtest a tu estrategia con el activo exacto en el que deseas aplicarlo. Si eso no es posible (no puedes obtener datos históricos, por ejemplo), busca activos razonablemente similares que imiten con precisión el comportamiento del activo original. En ese caso, es posible que debas realizar pequeños ajustes en tu modelo de backtesting para asegurarte de que los resultados sean viables.

Si planeas operar un conjunto de acciones, asegúrate de recolectar una muestra representativa. Los datos deben incluir acciones de empresas que quebraron durante un período determinado. No los excluyas, ya que corres el riesgo de sesgar el rendimiento de tu estrategia. Por ejemplo, si seleccionas acciones de todas las empresas presentes en la actualidad, producirás rendimientos artificialmente altos cuando le hagas backtest a tu sistema.

¿Cómo Hacer Backtest a una Estrategia de Trading?

Los principios para el backtest de estrategias de trading son básicamente los mismos, independientemente de la plataforma que utilices.

Paso 1

Como primer paso, debes alimentar el algoritmo de backtesting con los datos históricos cuidadosamente seleccionados. Al probar una estrategia de trading con datos históricos, debes especificar un período concreto para tu conjunto de capacitación (por ejemplo, el precio de las acciones de AAPL en el período 2020 – 2021). Luego, necesitas otro conjunto de datos para un período alternativo. La razón para probar una estrategia en diferentes períodos es validar su confiabilidad y mitigar el papel que juega la “aleatoriedad” en todo el proceso.

Paso 2

A continuación, debes configurar algunos parámetros, dependiendo de lo complicado que sea tu modelo de backtesting. Estos pueden incluir capital inicial, capital en riesgo (%), tamaño del portafolio, comisiones, spread promedio de oferta y demanda y, lo que es más importante, un punto de referencia (generalmente el S&P 500).

También debes configurar los parámetros específicos de tu estrategia de trading. Estos incluyen instrucciones de stop loss y de trailing stop loss, nivel de take profit cuando tengas que cerrar una posición, tipo de posiciones preferidas y más.

Paso 3

A continuación, ejecuta el backtest sobre tus conjuntos de datos de prueba. Toda la información mencionada anteriormente se utilizará para simular operaciones durante un período específico.

Después de concluir el backtest, debes volver a ejecutar el proceso (al menos un par de veces) sobre otro conjunto de datos. Esto te asegurará de que eliminaste cualquier posible sesgo y el papel del factor “aleatorio”.

La mayoría de softwares de backtesting también admiten funciones de optimización de estrategias automatizadas. Esta característica es útil. La computadora puede determinar con qué entrada (o combinación de información) tu estrategia habría funcionado mejor. Idealmente, también te proporciona algunas ideas sobre cómo ajustar tu modelo.

Métodos de Backtest

Los métodos más populares de backtesting están diseñados para medir el denominado “Value-at-Risk”. El VaR revela la pérdida máxima que puedes esperar para el período del análisis en un conjunto de datos en particular y la posibilidad de que esa pérdida ocurra.

Conociendo el Value-at-Risk de sus portafolios, los administradores de inversiones, o los traders, pueden prepararse más a fondo para el peor de los casos.

Podemos examinar el Value-at-Risk utilizando diversos métodos. Algunos de ellos incluyen la simulación de Monte Carlo, el Método de Varianza-Covarianza y más.

Lo que une a todos los métodos de backtesting son sus conclusiones. Te dicen dónde tu estrategia se queda corta y dónde funciona bien para que puedas hacer los ajustes correctos y optimizarla para garantizar un nivel mínimo de riesgo, en comparación con los retornos esperados.

¿Cómo Evaluar los Resultados?

Una vez que termines el backtesting, es hora de interpretar los resultados y ver cómo funciona tu estrategia durante el período observado.

Debes saber que no existe una fórmula o regla de oro que defina si tu estrategia de trading es buena o mala. Para todos los análisis que hagas, debes tener en cuenta el contexto necesario. Parte de ese contexto incluye qué otros activos tienes en tu portafolio, el entorno del mercado y las características únicas de la estrategia. Algunas estrategias, por ejemplo, son más arriesgadas por diseño. Naturalmente, también te harán ganar más dinero. Otras son más conservadoras y no te ofrecerán tan buenos retornos al final del backtest.

La mejor manera de evaluar los resultados de tu estrategia es definiendo tu apetito por el riesgo y tu objetivo de ganancias. Después de ejecutar el backtest, verifica si la estrategia genera resultados que van de la mano con tus objetivos. Además, asegúrate de agregar un punto de referencia (el S&P 500 es el más utilizado). Después de ejecutar el backtest, verás cómo le va a tu estrategia en el mercado.

La metodología de backtesting generará resultados para diferentes medidas. Aquí se incluyen ganancias y pérdidas netas, retornos totales del portafolio durante un período de tiempo determinado, retorno ajustado al riesgo, exposición al mercado, volatilidad y más.

Al final, el software cuantificará los resultados del backtest para cada una de las medidas. Dependiendo del software que utilices, también puedes generar gráficos y visualizar el resultado del backtest.

¿Cuáles Son las Métricas del Éxito?

No cometas el error de elegir tu estrategia basándote únicamente en sus beneficios. Aunque las ganancias son esenciales, cuando están fuera de contexto, no brindan ninguna información útil. De hecho, hacen todo lo contrario: pueden engañarte y hacerte elegir una estrategia de alto riesgo.

Para no caer en esta trampa, analiza las rentabilidades en conjunto con el riesgo adoptado. Es comprensible que la mejor estrategia obtenga retornos satisfactorios sin una exposición significativa al riesgo. Alternativamente, tiene un alto ratio de Sharpe.

Además, asegúrate de hacerle un seguimiento a la volatilidad. Si, después del backtest, detectas que tu portafolio tiene períodos con alta volatilidad, debes tener en cuenta que si esto se traduce en el mundo real del trading, corres el riesgo de activar tus órdenes de stop-loss o take-profit. Por eso es fundamental esperar y ajustar tus órdenes de acuerdo con la volatilidad de tu portafolio.

Otra cosa esencial que define tu éxito es la correlación entre los componentes. Si existe una alta correlación entre los activos, significa que tu portafolio no será lo suficientemente resistente como para aguantar las perturbaciones y los riesgos específicos del sector. Alternativamente, tendrás una baja diversificación y una cobertura inadecuada. Eso te hace más vulnerable y susceptible frente a los diversos problemas.

Consideraciones Finales

Hace una década, el backtesting era un derecho exclusivo reservado solo para los grandes tiburones como los fondos de cobertura, los bancos de inversión, las firmas de trading de alta frecuencia, etc. Hoy, gracias a la tecnología, el backtesting está disponible incluso para los traders minoritstas y los pequeños inversores. El backtesting hoy en día ya no es un lujo. Se ha convertido en una necesidad y una obligación real si deseas navegar con éxito en los mercados financieros.

Operar sin un backtesting adecuado, en el mejor de los casos, es operar basándote únicamente en suposiciones. Hacer backtesting a una estrategia de trading es la tarea del trader. Sin un análisis inicial y una estimación de riesgo precisos, saldrás sin estar realmente preparado, vulnerable y listo para ser devorado no solo por el mercado, sino también por los otros traders. Ten en cuenta que la mayoría de los traders con los que compites actualmente emplean backtesting. Si quieres evitar perder terreno y ganar una ventaja competitiva, haz siempre tu tarea.