Vamos a dedicar este artículo a la importancia del Forward Testing en Sistemas Automáticos de Trading, y una serie de consejos clave de gran utilidad para todo inversor, o desarrollador de sistemas.
Forward Testing de Expert Advisors
El Forward Testing, a diferencia del Backtesting, es cuándo ponemos nuestro sistema automático, de forma completamente autónoma en una plataforma a futuro, y le dejamos ejecutar durante un periodo de prueba prudencial, por lo general 2-3 meses mínimo.
Estamos buscando la ejecución, rentabilidad, fortalezas y debilidades del sistema a futuro, con la parametrización-optimización ya hecha, y queremos ver cómo se desempeña en condiciones reales de mercado.
Por ello, el Forward Testing de Sistemas Automáticos de Trading es mucho más importante que el Backtesting. Se dan casos con frecuencia de un backtesting excelente y un forward testing mediocre, y ahí es dónde el analista tiene que hincar el diente, para ver qué ha pasado.
Herramienta Myfxbook
Suelo usar myfxbook, por que es una herramienta transparente, fiable, y que está en constante evolución, cada mes se crean nuevos datos estadísticos de interés. Además es de muy fácil uso, y permite la comparativa en directo de muchas cuentas en paralelo.
Myfxbook permite obtener el Profit Factor, la ganancia media, la pérdida media, los pips, la duración en minutos, horas y días de los trades. Permite exportar a Excel, analizar por fechas de forma desglosada, por fechas y pares, o por fechas y magic number, si tenemos varios sistemas en la misma cuenta.
Consejos para el Forward Testing
Lo que queremos ver en el Forward Testing son varias cosas:
Ejecución real del sistema
Riesgo
Money Managementç
Estabilidad en forward
Rentabilidad
Flotante
Todos estos son factores clave que queremos controlar durante nuestras pruebas. No sólo importa la rentabilidad sin más, si no, que estos 4 puntos clave son de mucha mayor importancia que la rentabilidad.
Cuenta de control
Suelo abrir mínimo dos cuentas para probar un sistema nuevo, la primera la podemos llamar la cuenta base, y la segunda la cuenta de control. Al tener dos cuentas abiertas idénticamente, preferentemente en ips diferentes, o computadoras al menos diferentes, podemos monitorear la ejecución. Esto es crucial en los scalper. Si divergen mucho las entradas, tanto en precio, como trades que se abrieron en una cuenta, pero no en la otra, tendremos demasiada aleatoriedad en la ejecución. La cuenta de control, es la forma idónea de monitorear esto.
Split-testing de broker
El split-testing, es un concepto que proviene del famoso libro de marketing científico escrito en los años 20 del siglo pasado. El concepto es sencillo, hago un testeo partido, con SÓLO un cambio, para monitorear el efecto de esa sola variable.
En este caso, pongo el mismo EA, el mismo día, en mínimo 2 brokers diferentes, para tener una comparativa de ejecución y rentabilidad. Como cada broker tiene un price feed diferente, tendré cambios importantes en la ejecución, independientemente del tipo de sistema.
Es recomendable hacer este tipo de testeo partido, al menos 3 meses y comparar trade a trade, cada entrada, cada salida, etc. Para ello, myfxbook es ideal.
Split-testing de live y demo
El siguiente tipo de split-testing crucial, es lanzar dos cuentas idénticas en el mismo broker, una live y una demo. Aunque el broker tenga el mismo price feed en demo y live, como es el caso de XTB, podemos tener diferencias importantes, que hay que analizar trade a trade, es clave tener una comparativa en forward de ambos tipos de ejecución. Podemos hacer este tipo de pruebas con la cuenta live mínima que nos ofrezca el broker, pero considerando que si por ejemplo probamos una micro, no ejecutará igual que una cuenta mini o standard, ya que a veces el price feed varía de una a otra. Tenemos que ir al experts tab y ver si en la live a veces se envío la señal y no se ejecuto, pero sí en demo y ver el por qué, si este es el caso, para prevenir ya que estemos en operativa real, este tipo de situaciones.
Split-testing de .set (optimizaciones)
Este es el testeo partido más exigente de los tres, ya que podemos tener 3 parametrizaciones completamente divergentes y lo más descorrlacionadas posibles, y compararlas en forward. Exige un periodo de mínimo 3 meses, para que comparemos diferentes situaciones de mercado, pero nos puede dar idea muy clara de en qué condiciones qué cojunto de paramétros es el más idóneo.
Todo el tiempo que invirtamos en este tipo de testeo partido, por familias de parámetros, se pagará con creces en nuestra cuenta real.
Test de sincronización
Este es un tipo de test forward, desarrollado por el autor de este blog, al igual que los anteriores, en el que, esperamos a que una cuenta demo se acople muy bien el sistema en forward, y en cuánto veamos el primer síntoma de agotamiento de este primer acoplo y buena rentabilidad, conectemos una segunda cuenta con los mismos .set de monitoreo. Estamos buscando el periodo de acoplo de ambos sistemas, dónde los 2 vuelven a ejecutar prácticamente las mismas órdenes, y las curvas de balance se vuelven casi iguales. Este periodo de sincronización se medirá en días. Lo que nos indica, es si entramos en condiciones adversas de mercado nuevos en una cuenta, en cuántos días podemos esperar que el sistema entre ya de la forma esperada. Este dato es de interés, puesto que, pasados esos días de sincronización si el sistema va mal, no es un tema probabilístico de haber entrado en un mal momento al mercado, si no, que algo más esta pasando que debemos revisar.
Split-testing de cestas de EAs
En el split-testing de cestas de EAs, lo que estamos midiendo es diferentes combinaciones de sistemas de forma comparativa, para encontrar la combinación más perfecta (menos drawdown, curva de balance en forward más recta, menos rugosa, mayor frecuencia de trades). De nuevo se debe realizar por ejemplo combinando en una cesta los sistemas A+B+C y en otra A+B+D, es decir, siguiendo de nuevo los principios del testing científico, cambiando sólo una variable, en este caso un sólo EA.
Split-testing de instrumentos, pares, familias de pares
Este es un testeo forward muchas veces olvidado. Podemos crear diversas cuentas para diferentes instrumentos, o incluso para grupos de instrumentos, y así testear y equilibrar curvas de balance en nuestro forward test de forma óptima.
Por ejemplo un EA que funcione en 6 pares, puede ser dividido en 3 cuentas de 2 pares cada una, agrupando los dos pares por cuenta, que más descorrelacionados estén. Por ejemplo: EURUSD con GBPJPY, GBPUSD con EURCAD y EURCHF con USDJPY. De esta forma podríamos ver cuál de estos 3 grupos en este sistema se equilibra mejor y luego crear cestas con las combinaciones más idóneas.
saludos cordiales,
EA-Billionaire
www.robot-de-forex.com/
www.youtube.com/robotdeforex
www.twitter.com/robotdeforex