Si bien hace ya unos años hablamos de Tickstory y también en el Foro se ha hablado de otras soluciones, lo cierto es que tenía pendiente hablar de una excelente herramienta para trabajar con históricos de calidad en MetaTrader como es Tick Data Suite.

Y es que no debemos olvidar que el creador de Tick Data Suite (que abreviaremos como TDS) es Birt, muy conocido por ser un pionero en la exportación de datos tick a tick para usarlos en MetaTrader (realmente todas las herramientas aparecidas posteriormente se basan en los scripts de Birt) y tener una estupenda web de reviews independientes de robots comerciales, la conocida (aunque actualmente un poco abandonada) EA Review.

Pero ¿qué es lo que hace realmente especial a esta herramienta? Resumiéndolo en una sola frase, TDS nos va a permitir realizar backtests con calidad de modelado del 99% en cualquier Metatrader de forma muy sencilla y sin realizar complejas importaciones.

Dicho de otro modo: basta con instalar TDS para que podamos hacer backtests de muy alta calidad en cualquiera de las MetaTraders que tengamos instaladas en nuestro ordenador. 

Claro que seguro que antes alguno se preguntará ¿y por qué tenemos que hacer todo esto? ¿Es que no nos valen los históricos de MetaTrader?


El Problema de la Interpolación
Si leéis habitualmente X-Trader.net recordaréis que en MetaTrader existe un numerito denominado Modelling Quality o Calidad de Modelado, el cual nos dice cómo de completo está el histórico utilizado en nuestros backtests en relación al histórico de barras de 1 minuto.

El problema es que MetaTrader no está diseñado para trabajar con resoluciones de datos inferiores a 1 minuto, esto es, con datos tick a tick por lo que cuando realizamos un backtest con datos de 1 minuto lo que hace el Strategy Tester en realidad es simular una serie de interpolaciones de los datos tomando los valores de apertura, máximo, mínimo y cierre de la vela para reconstruirla. Pero claro, esto en realidad no es más que una simulación, no es lo que ha sucedido de verdad en el mercado real.

Si trabajamos con estrategias que operan en bajos timeframes (por ejemplo 1, 5 o 15 minutos) nos vamos a encontrar con resultados completamente irreales ya que por un lado no se tiene en cuenta el comportamiento real del mercado y por otro el spread se va a mantener constante durante toda la simulación, por lo que los resultados que obtengamos al hacer un backtest pueden ser completamente falsos e irreales como veremos al final del artículo.

Sin embargo, TDS permite muchas cosas que el Tester de MetaTrader no puede hacer como por ejemplo:

  • Crear ficheros de datos para simulación basados en ticks reales y no interpolados.
  • Utilizar spreads históricos reales.
  • Forzar slippages y configurar su magnitud.
  • Incluir comisiones en los resultados.
  • Cambiar la zona horaria de nuestros datos.

Pero veamos más detalles acerca de cómo funciona TDS.

Rompiendo la Barrera del 90%
TDS consta de dos programas, uno para gestionar las bases de datos de Forex y CFDs denominado Tick Data Manager y otro que activa la importación y uso de esas bases de datos en MetaTrader.

Como podemos ver en el siguiente pantallazo, dentro del Tick Data Manager podemos elegir nuestra fuente de datos entre Dukascopy (la más extensa, con multitud de pares y CFDs de muchos productos) y TrueFX. En próximas versiones además está previsto que podamos incorporar nuestras propias bases de datos.

Desde ese panel podemos elegir el período que queremos descargar y gestionar todo lo relativo a nuestras bases de datos. Y claro con la comodidad que supone saber que todas las MetaTraders que tengamos instaladas en nuestro ordenador van a usar los mismos datos para los backtests no teniendo que depender nunca más de los datos del History Center. Y todo ello con solo hacer un simple click dentro del Strategy Tester.

Y es que una vez instalado TDS y descargadas las bases de datos que deseemos, basta con abrir cualquier MetaTrader, abrir el Strategy Tester y, ¡oh sorpresa! Fijaos en la nueva casilla que nos aparece ahora:

Basta con hacer click en esa casilla para que utilicemos las bases de datos de calidad descargadas en el paso anterior, independientemente del timeframe que deseemos utilizar. Si además queremos hilar fino, en el botón Tick Data Settings tenemos unas cuantas opciones realmente interesantes

Por ejemplo, en la pestaña Basic podemos elegir el origen de datos (esto es útil si tenemos descargado por ejemplo EURUSD desde Dukascopy y TrueFX) así como determinar el horario del broker y si se ha producido cambio de hora en el histórico.

Si además marcamos las casillas Use Variable Spread y Enable Slippage se activarán las dos pestañas superiores para reproducir a la perfección las condiciones reales de mercado en nuestros backtests. Como podéis ver en los siguientes pantallazos, las opciones son increíblemente amplias:


Por su parte, en la pestaña Advanced ya rizamos el rizo, pudiendo desde cambiar el apalancamiento del broker a añadir las comisiones que deseemos:


En la pestaña Expert podemos configurar diferentes valores de muchas variables que generalmente vienen fijadas por el broker. Aquí podemos fijar desde los dígitos de las cotizaciones hasta los valores del swap de posiciones cortas y largas que deseemos o la divisa base de la cuenta.


Por último en la pestaña Margin podemos fijar, entre otras muchas cosas, los porcentajes de margen inicial y stopout para las posiciones:


 
La Prueba del Algodón
Seguramente haya mucha gente que crea que todo este esfuerzo en trabajar con bases de datos de calidad y el hecho de poder controlar la calidad de los backtests teniendo en cuenta todas las variables imaginables no merezca la pena.

El caso es que los resultados que se pueden obtener utilizando los datos y opciones de TDS y los que lograríamos con los del History Center de MetaTrader pueden ser radicalmente distintos. Y es que el impacto de slippages y spreads variables puede tener efectos realmente dramáticos sobre nuestros backtests. Para muestra, un botón:


Backtest de baja calidad de modelado

 

El mismo backtest al 99% de calidad de modelado

Precisamente es de este defecto del Tester de MetaTrader del que se aprovechan (consciente o inconscientemente) muchos creadores de robots comerciales, vendiendo resultados que saben de sobra que en la práctica no se pueden alcanzar. Esto se hace especialmente patente en aquellos casos en los que el robot va a por muy pocos pips con un stop amplio. Lo más probable es que el objetivo de beneficios no se alcance en muchos casos, terminando por saltar el stop en la mayor parte de casos.

Conclusión
Realmente os puedo decir que estoy muy contento de haber pagado los 115 € que cuesta el programa (más aproximadamente 11 € al mes por usar el gestor de bases de datos), sin duda los resultados que se obtienen merecen la pena y nos pueden ahorrar mucho dinero, sobre todo si tenemos en cuenta que la elección errónea de un robot en base a un backtest incorrecto nos puede suponer una importante pérdida en nuestra cuenta.

 

Saludos,
X-Trader