Hola.
Os adjunto el manual traducido por mi .... más comentarios, apuntes añadidos por mi.
Si vais al hilo del programa veréis que yo estaba por allí, dando la tabarra, haciendo preguntas a diestro y siniestro hace un par de meses.
Yo he adquirido la plataforma de Birt (TDS) y utilizo el Tickstory solamente para bajarme los archivos .CSV.
Espero os sirva.
MT4 almacena datos históricos en sus propios formatos personalizados que tienen la extensión .HST y .FXT. Estos archivos son utilizados por MT4 para mostrar información en gráficos y también se utilizan en el proceso de backtests respectivamente. Los archivos de datos históricos contienen información importante para MT4 para poder evaluar un backtest.
Detalles como el
apalancamiento de la cuenta, comisiones, etc ..
Detalles del instrumento como el tamaño de
lote, número de dígitos, valor del tick y así sucesivamente.
Información del
precio, incluyendo el precio de oferta (bid) y el
spread bid/ask.
Todos estos detalles se incrustan en la base de datos histórica.
Al realizar un backtest , la información almacenada en la historia de la base de datos (*.Archivos de HST) se utilizan para producir un archivo de datos FXT. Los archivos FXT contienen la información detallada de "tick por tick" que es utilizada por el Back-tester. Se genera un archivo FXT para cada uno de los plazos para que MT4 permite a posteriori en - 1 minuto, 5 minutos, 15 minutos, 30 minutos, 60 minutos, 4 horas, diaria y semanal.
En general, realizar un backtest utilizando los datos del historial del MT4 podría ser lo suficientemente bueno para los EAs que no hagan scalping o caza de
pips (
pip hunting).
Sin embargo, si se está tratando con un EA que cierra operaciones entre 1 y 15 pips, incluso las diferencias de alimentación de datos más pequeñas podrían tener un impacto muy grande en el resultado del backtest.
El problema es causado por el terminal Metatrader al no tener acceso , en su base de históricos, a los datos reales de ticks, sino sólo a datos de barras de minuto en el mejor de los casos, lo que dá un resultado falso en el backtest producido por un proceso de interpolación con los datos del menor tiempo disponible. Esto no sería importante para un EA que utilice
stoploss y
takeprofit con objetivos de más de 15 pips, pero en el caso de los robots que hacen scalping , cazando unos pocos pips aquí y allá, el backtest podría ser completamente engañoso.
Por lo tanto, es muy importante tratar de realizar los backtests usando datos de una calidad tan alta como sea posible.
Hay proveedores de datos historicos de ticks gratuitos y de pago. Uno de los mejores y gratuito es el
broker ECN Dukascopy. De ahí vamos a bajar nuestros historicos de altisima calidad.
Para ello utilizaremos el programa Tickstory. OJO. Si se desea el programa Tickstory solo para bajar archivos .csv para utilizarlos en otros programas como podría ser el TDS de Birt hay que instalar el Tickstory en donde se vayan a almacenar los datos ya que después en la configuracion no se puede cambiar (al menos en la última version diciembre 12) y en la configuracion de bajada de archivos hay que elegir en "Data Output" Timeframe en Tick y en "Output format" Generic tick format (comma delimited).
Por cada año bajado por par se necesita más o menos 1.1 GB de espacio en disco duro por lo que necesitaríamos unos 100 GBs o más si bajamos todo el historico.
Para utilizar el Tickstory por si solo para realizar los Backtests con MT4:
Debe utilizar un terminal MT4 'personalizado' y asegurarse que no esté conectado a su broker que le permitirá utilizar correctamente los archivos exportados. Sin este terminal personalizado, el backtest sobreescribirá las exportaciones que usted acaba de hacer con sus propios datos historicos de MT4.
La forma más sencilla de realizar una exportación de datos historicos MT4 para realizar backtests es la de sólo generar datos configurado en zona horaria GMT. Cuando a posteriori su EA, si tiene un parámetro Offset GMT, entonces necesitará configurar esta a 0 ya que el archivo exportado no requerirá ningún cambio de tiempo.
Para producir exportación para MT4, siga estos pasos:
Con MT4 cerrado, instalar el
TickstoryInfoExpert.ex4 en la carpeta "experts" del terminal donde quieras colocar los datos. Este expert nos dará los datos minuciosos de configuracion de nuestro broker.
Abre el Metatrader 4 y asegurate que el MT4 esté conectado al broker.
Abrir el testador de pruebas y en propiedades del expert poner "m" si es una cuenta mini por ejemplo. Si es el standar EURUSD por ejemplo entonces no hay que poner nada. Ejecutar el expert. El archivo .config se guardará en la carpeta "tester\files. El experto solo genera información cuando se conecta al broker a menos que tenga la configuración de "Allow When Not Connection" en "true". Esto generará un archivo de configuración que contendrá los spreads (etc.) actuales cuando usted se conectó por última vez con su broker. Por supuesto, tenemos la opción de ajustar cualquier información una vez se cargue el archivo .mt4config en Tickstory.
Cerrar el Metatrader.
1) Ejecutar Tickstory.
2) Con el botón derecho en el instrumento (uno o varios) que desea para el backtest y seleccione "Exportar a MT4".
3) En el cuadro de diálogo de 'Exportación', seleccione el intervalo de fechas.Por ejemplo puede Seleccionar " Last 1 year " para obtener los datos del último año.
4) Seleccione los periodos de tiempo (TF) que desea para generar archivos FXT de MT4. Por defecto estan todos los periodos seleccionados porque esta es la opción recomendada, aunque obviamente ocupará mucho espacio en el disco duro. Si desea probar una EA que utilize sólo el plazo de 15 minutos, podría solo exportar este período de tiempo. Si sólo selecciona periodos específicos, sólo tenga cuidado con que usted no será capaz de probar su EA en los periodos que no han sido exportados (no utilizará los tick datos correctamente).
5) Seleccione "Generate HST files" - son necesarios para MT4 cada vez que se genera una nueva exportación con fechas diferentes. Dejarlo seleccionado para estar en el lado seguro.
6) Seleccione la zona horaria que desea generar para su archivo de datos. Se recomienda zona de tiempo UTC - Hora universal coordinada (significa 0 en verano e invierno) independientemente del UTC que utilice nuestro broker. El parámetro de "GMT Offset" (en caso de disponer) en el EA que queramos testar debe establecerse a 0 ya que, como se ha dicho, se exportan desde el Tickstory en GMT. Obviamente, si usted decide ejecutar su EA en Real en su broker, por ejemplo Activtrades, debe poner la configuracion del EA a "1" porque ahora está utilizando su EA en un servidor que proporciona datos con hora de GMT + 1 en invierno.
Si prefiere configurarlo a GMT de su broker debe elegir UTC de invierno (-1 hora de diferencia con el
horario de verano) de su broker y el EA que quiera provar configurandolo comforme ese horario. Los datos pasaran de verano a invierno y viseversa automaticamente ... cuando toque, como diría nuestro muy honorable ...
7) Seleccione los directorios de salida para los archivos HST y FXT. Si su MT4 está en el directorio de instalación C:\Program Files\Broker MT4, por ejemplo, entonces su directorio HST sería en un directorio como: C:\Program Files\Broker MT4\history\ <AccountName> donde <AccountName> es un directorio que ya debe existir y es generado específicamente para su cuenta (hay uno sólo, pero podría haber otros - sólo cercioreses de que tiene los archivos *.HST allí).
Y los archivos FXT estaran más abajo:
C:\Program Files\Broker MT4\tester\history
** Asegúrese de que su terminal MT4 no se está ejecutando, podría tener problemas tratando de escribir en archivos que podría estar utilizando en ese momento MT4.
8) Clikea 'OK' y esperar a que la exportación se complete. Nota: la exportación utilizará spreads por defecto (etc) en los datos que exportará. Si desea personalizar los spreads y otros ajustes, debe seguir las instrucciones en la ficha 'Ayuda'. Esto es para usuarios avanzados y debe utilizarse sólo una vez que entienda lo que está haciendo.
9) Una vez ha generado su exportación a MT4, puede iniciar su terminal de MT4 desde Tickstory, seleccionando ... Herramientas -> lanzamiento MT4 desde el menú principal (o presionando la tecla F8). Esta característica no sólo ejecuta su MT4, también lo prepara para utilizar correctamente su exportación de datos recién generados. La función de lanzamiento de Tickstory sólo parchea MT4 para que no sobreescriba los archivos FXT. Está limitado a sólo algunas compilaciones de MT4 y asesora en un cuadro emergente si el lanzamiento fue exitoso y qué características ofrece. No existe
soporte para archivos mayores de 2 gb.
10) En MT4, seleccione el probador de
estrategias, el EA, el instrumento y el periodo de tiempo apropiado y ... listo para realizar backtests.
------------------------------------------------------------------------------------------------------------------------------------
Si se tiene problemas para realizar los backtest en periodos de más de 1 año, probablemente sea debido a la limitación de 2 GB que MT4 tiene con respecto al procesamiento de archivos FXT. Tienes 2 opciones para solventar esto :
-Utilizar TDS (Tick data suite) de Birt que apoya archivos > 2 gb o dividir los archivos FXT en tamaños manejables ,es decir < 2 gb y hacer los backtests en periodos cortos de tiempo, por ejemplo de 1 año.
Manual;
Tickstory Lite Help