Backtest en Timeframes No Habituales con Metatrader

No nos engañemos: nuestra plataforma favorita, Metatrader tiene un defecto (nada es perfecto ;)): no es posible graficar en escalas diferentes a las que vienen por defecto (bueno, sí es posible pero usando un script que podéis descargar desde aquí, tal y como ya comentamos por el Foro), ni tampoco es posible realizar backtests con el System Tester en escalas distintas a las predeterminadas.

Precisamente por ello os explicamos un pequeño truco que nos va a permitir realizar backtests en gráficos de 2 minutos, 7 minutos o 3 horas, veamos cómo en 3 sencillos pasos.


1. Preparación de Metatrader
Para poder hacer lo que pretendemos, lo primero que necesitamos es instalar una Metatrader limpia, crear una demo y esperar a que la tabla de Market Watch reciba los primeros ticks. A continuación descargamos suficiente histórico del símbolo sobre el que vamos a hacer el backtest en 1 minuto (si no sabéis cómo, podéis mirar este artículo y este otro).

Seguidamente le damos botón derecho al icono de conexión (el de color verde y rojo que aparece abajo a la derecha, como podéis ver en la siguiente imagen), seleccionamos Login y en la ventana que nos sale, desmarcamos Save account information. Después hacemos click en Login y esperamos a que conecte de nuevo.



Con este paso conseguimos que Metatrader ya no se conecte automáticamente y añada nuevos datos históricos; de lo contrario nos destruiría el histórico que vamos a generar en el siguiente paso.

Seguidamente cerramos Metatrader y vamos al Explorador de Windows para buscar la carpeta History (la encontraremos debajo de nuestra instalación de Metatrader). Dentro de ella hay que buscar el nombre del servidor al que nos acabamos de conectar y borrar todos los archivos .hst que haya dentro.


2. Preparamos los datos
Ahora viene lo bueno: utiliando el script Period_Converter que viene por defecto con Metatrader generamos los archivos en escala diferente a lo normal, por ejemplo en 2 y 7 minutos. Para ello basta con ejecutar el script en el gráfico de 1 minuto que previamente hemos descargado en el paso anterior. Si queremos generar un gráfico de 2 minutos, basta con indicar 2 en el parámetro PeriodMultiplier. Si todo va bien, al término de la ejecución deberíamos ver un mensaje similar a este en la pestaña Experts:

"2014.02.20 14:28:09 period_converter EURUSD,M1: 25378 record(s) written"

Para comprobar que ha ido todo bien, vamos al menú File -> Open Offline y en el cuadro que nos sale buscamos un gráfico que se llame EURUSD,M2. Repetimos esta operación las veces que necesitemos para todos los timeframes y símbolos que necesitemos.

El siguiente paso es convertir estos gráficos offline a CSV utilizando el script s_ExportChartToCSV_v1.mq4 que podéis descargar haciendo click en el enlace anterior. Seguidamente abrimos cada gráfico offline y ejecutamos el script sobre ellos. Si todo va bien, deberíamos tener los diferentes archivos CSV en la carpeta Experts\Files (MQL4\Files desde la build 600) debajo de nuestra instalación de Metatrader como podéis ver en la siguiente imagen.


3. Importamos los Nuevos Datos
Ahora abrimos la Metatrader que configuramos en el paso 1 para evitar que se conectara (puede ser la misma que usamos en el paso 2 o no, eso ya al gusto de cada uno ;)) y vamos al menú Tools -> History Center (alternativamente podemos pulsar la tecla F2 para acceder directamente). Desplegamos la lista de timeframes para el símbolo que vamos a importar y seleccionamos 1 minuto haciendo doble click:

Le damos ahora a Import y cogemos el CSV que deseemos, y le damos a OK. Si ahora abrimos el gráfico de 1 minuto, tendremos un gráfico en otra escala completamente distinta!!!

Ahora ya lo tenemos todo listo para empezar a probar nuestros Expert Advisors en cualquier timeframe: simplemente basta con abrir el Strategy Tester, seleccionar nuestro EA, el símbolo que acabamos de convertir y como timeframe coger el que acabamos de reemplazar por nuestro CSV... y ya lo tenemos.

 

Saludos,
X-Trader


Artículos Relacionados


Modo Playback a partir de la TWS

Modo Playback a partir de la TWS

Para el que no lo sepa, existe la posibilidad de disponer de modo Playback a partir de la TWS. El modo Playback consiste simplemente en almacenar los datos intradiarios para después reproducirlos...

MetaTrader

MetaTrader

Así que Vd. busca una herramienta de análisis técnico con una buena recepción de datos en tiempo real, muchísimos indicadores, un lenguaje flexible de programación, una amplia comunidad de...

Lanzar Órdenes a la TWS con Metatrader

Lanzar Órdenes a la TWS con Metatrader

Sí, lo han leído bien: el sueño se ha hecho realidad. Ya es posible lanzar órdenes a la plataforma de Interactive Brokers desde Metatrader con el script desarrollado por el broker VIC Global.

Históricos en Metatrader

Históricos en Metatrader

Hacemos un pequeño paréntesis en la serie sobre Bill Williams para explorar algunas opciones para mantener una buena base de datos históricos en Metatrader.

Generar un Fichero con Histórico Intradía con Amibroker

Generar un Fichero con Histórico Intradía con Amibroker

En el siguiente artículo remitido por Tolo, os comentamos la forma de generar un fichero intradía de x minutos con el histórico de un valor, con la posibilidad de hacerlo cada n minutos. Para ello...

Convertir Ficheros ASCII a XPO

Convertir Ficheros ASCII a XPO

Tras las múltiples peticiones recibidas de lectores y foristas, en este artículo os explicamos cómo pasar un archivo con datos en ASCII al formato nativo del Global Server de Tradestation o, en su...