El caso es q todo esto es un poco nuevo para mi y como es tanto, se me hace un poco dificil de digerir...
A ver si me podeis echar una manita...
Estoy haciendo (o intentando) hacer backtesting sobre EA´s , pero claro, no tengo resultados como espero, y no me refiero a los resultados de los EA´s en si, sino del mismo test...
Al parecer cuando hago backtesting no se si es que me falta un historial o algo, pero hago lo siguiente:
Crt + R
Se me abre la ventana para hacer el backtesting... Bien, agrego el EA, el par de divisas, y ya empiezo a perderme en:
Modelo: Cada tick (lo dejo tal cual está, supongo q debo dejar este...)
Periodo: Vale, sin problemas...
Optimizacion? Si? No? Pq?
Utilizar datos... Mmm tiene pinta q se refiere al historial... Se supone q tengo el historial años atras, quiero decir, la plataforma tiene esos historiales?
Mmm propiedades del experto... Abro y me salen Deposito inicial, ok, posiciones, ok...
Parametro optimizado... Mmm... Cualdeberia poner? (supongo q la respuesta es... "Depenede de lo que busques" , pero me refiero, qué es lo mas usual en los backtesting...
Algoritmo genetico ...eing? Marco o desmarco esa casilla? pq?
Bueno... Mmm... me dejo mil cosas atras, pero le doy a iniciar test y solo me sale un resultado de 1 dia de operaciones nada mas...
Me siento un tanto mediocre...
He estao buscando, por ahi algun tuto...pero na...
Alguien me echa un cable?
Sobre backtesting... Unas dudillas...
Re: Sobre backtesting... Unas dudillas...
Para los test lógicamente el cada tick, el resto es para acelerar en otro tipo de búsquedasSe me abre la ventana para hacer el backtesting... Bien, agrego el EA, el par de divisas, y ya empiezo a perderme en:
Modelo: Cada tick (lo dejo tal cual está, supongo q debo dejar este...)
Si la seleccionas, hará una optimización de los valores que selecciones en Propiedades del experto, luego con los valores que te dé haces el test sin selecionar la optimización.Optimizacion? Si? No? Pq?
Mejor delimitar las fechas, si no utilizará todo el historial que tenga.Utilizar datos... Mmm tiene pinta q se refiere al historial... Se supone q tengo el historial años atras, quiero decir, la plataforma tiene esos historiales?
Evidentemente no tendrá todos esos historiales, depende del broker y de las gráficas que hayas abierto.
Pulsa F2 y descarga todos los historiales de cada periodo.
Hombre, lo más usual es el Balance, porque primero buscarás una estrategia que salga positivo, luego una vez tengas las estrategia buscas los mejores valores del resto si te interesan.Parametro optimizado... Mmm... Cualdeberia poner? (supongo q la respuesta es... "Depenede de lo que busques" , pero me refiero, qué es lo mas usual en los backtesting...
Es una forma de acelerar la optimización, el programa busca los mejores valores y cercanos (familiares, genético) y descarta el resto.Algoritmo genetico ...eing? Marco o desmarco esa casilla? pq?
Y ya para terminar, lo más importante es trabajar con un buen historial y que concuerden todos los datos en todos los periodos, algunos brokers utilizan parte del historial de su centro de datos y parte de metaquotes por ejemplo.
Entonces se puede dar el caso que un periodo de 15 min no concuerde con el equivalente a 30 min, en sus volumenes, maximos, mínimos etc, por tanto yo recomiendo coger un historial de 1 minuto de calidad y convertirlo a todos los periodos para luego importarlos a nuestro centro de historiales (F2) y así hacer un buen backtesting
Creo que hay por ahí un programa en mql que convierte los periodos al que quieras, yo suelo utilizar uno que me he hecho con matlab, cuando tenga tiempo desarrollaré uno por mi cuenta en mql.
Aquí tienes un data center con historiales desde el 2004 de 1 minuto y diarios
http://www.alpari-idc.com/en/dc/databank.html
Con esto de la entrada en vigor de euro...bla bla bla... Cuando haceis el inicio del backtesting? En enero del 2002?
Buf tengo juego para rato... A ver si busco el progama para convertir los historiales de minutos en otros frame rates...
Y encima hace poco enlazaron una pagina con muchisimos EA´s... No voy a salir de mi casa xD
Buf tengo juego para rato... A ver si busco el progama para convertir los historiales de minutos en otros frame rates...
Y encima hace poco enlazaron una pagina con muchisimos EA´s... No voy a salir de mi casa xD
Re: Sobre backtesting... Unas dudillas...
Absolutamente de acuerdo, hacer un buen backtesting requiere de un gran cuidado en una serie de detalles. Si las operaciones son intrabarra la calidad del modelo no debe ser inferior al 90%, la cual reflejara que resolución de tiempo tienes por debajo del TF que trabajes igualmente no confies en nada mas que en el modo "every tick" . En cuanto a lo de convertir los periodos de tiempo, en mi humilde opinión el script que trae la plataforma (period_converter) trabaja bastante bien.nstrader escribió:Y ya para terminar, lo más importante es trabajar con un buen historial y que concuerden todos los datos en todos los periodos, algunos brokers utilizan parte del historial de su centro de datos y parte de metaquotes por ejemplo.
Entonces se puede dar el caso que un periodo de 15 min no concuerde con el equivalente a 30 min, en sus volumenes, maximos, mínimos etc, por tanto yo recomiendo coger un historial de 1 minuto de calidad y convertirlo a todos los periodos para luego importarlos a nuestro centro de historiales (F2) y así hacer un buen backtesting
Creo que hay por ahí un programa en mql que convierte los periodos al que quieras, yo suelo utilizar uno que me he hecho con matlab, cuando tenga tiempo desarrollaré uno por mi cuenta en mql.
Aquí tienes un data center con historiales desde el 2004 de 1 minuto y diarios
http://www.alpari-idc.com/en/dc/databank.html
s2.
Por cierto, indagando por ahi he visto esta pagina q a lo mejor os puede interesar, ya q no se me ocurre otra forma de devolveros el favor...
Creo q es tick data...
Ya me contais...
http://ratedata.gaincapital.com/
Creo q es tick data...
Ya me contais...
http://ratedata.gaincapital.com/
Al bajarlo, lo guardas en el escritorio, luego extract al escritorio; ahora tienes que abrir el meta, click en tools, history center,seleccionas el par en 1 minuto o daily y le das a import, con browse buscas al archivo que está en el escritorio das ok y listo.MaLiBoO escribió:Parece q el historial está escondido en otra parte, o bien con otra extension...
Saludos
No intente predecir la dirección del mercado de valores, de la economía, de los tipos de interés o de las elecciones (Warren Buffet)
y listo nada, no se guardan los datos.rtrader escribió:Al bajarlo, lo guardas en el escritorio, luego extract al escritorio; ahora tienes que abrir el meta, click en tools, history center,seleccionas el par en 1 minuto o daily y le das a import, con browse buscas al archivo que está en el escritorio das ok y listo.MaLiBoO escribió:Parece q el historial está escondido en otra parte, o bien con otra extension...
Saludos
Alguien puede hechar una mano? gracias
No intente predecir la dirección del mercado de valores, de la economía, de los tipos de interés o de las elecciones (Warren Buffet)
Bueno, despues de pegarme sin exagerar 12 horas haciendo backtesting de diferentes EA´s q he pillado (y las que me quedan, q vicio por dios xD) he deducido algunas cosillas, seguramente no es nada nuevo, pero así quien busque algo sobre esto, lo encuentra...
Sobre MT4:
Decir q me gana la batalla, no sé q le pasa a los historiales q a veces dan un salto de un mes, supongo q no estan los correctos(sin el "supongo"...) Intento borrarlos de la carpeta de history, pero cuando abro el meta, siguen habiendo historiales, e intentando borrarlos manualmente, tengo q hacerlos uno por uno...
Sobre el periodo del testeo, los resultados son practicamente los mismos, pero quizá sea el time frame 1M el mejor ya q es el mas cercano a 1 tick
Sobre la calidad del modelado ... Vamos, no supero nunca el 25%... O sea q de ahi supongo q depende muy y mucho el resultado del test en veracidad... Aparte me reafirma sobre la pobre calidad de los historiales q tengo...
Sobre los EA´s:
Qué gozada, se pueden modificar, dentro de lo que el autor, o el q lo ha tocado antes q yo, permite...
Hay opciones de cambiar el volumen de los lotes, por minilotes, microlotes, cambiar el stop loss, activarlo desactivarlo, tp, MM, horarios en los que trabaja el EA, hacer q no trabaje los viernes... Unas cuantas configuraciones para poder mejorar o adaptar el EA a las exigencias del usuario, dentro de lo q el programador ha permitido, claro.
LA COÑA, es q aunque lo cambie, hace lo q le sale de los eggs, por ejemplo, quise cambiar de microlotes a minilotes, y nada, los resultados eran operaciones de microlotes
Tambien hay q observar q me pone "lots" y al lado 4 casillas, q corresponden a "Valor" "Iniciar" "Paso" y "Detener", entonces, claro, yo en las 4 casillas pongo 0.1 q sería el volumen del lote, pero ni caso
Entonces, creo q antes de tocar nada, habria q saber a que se refieren esas 4 casillas y sobre el comportamiento del EA en base a su configuracion, me pasa tb lo mismo con el stop loss, que por defecto viene desactivado, lo activo y lo mismo, 4 casillas y ponga lo q ponga, el stop loss sigue desactivado...
Seguiré investigando sobre como poner bien los parametros para q me obedezca el puñetero EA , si alguno de los presentes me quiere dar unas pistillas, pues oye, tan agradecido!
Sobre MT4:
Decir q me gana la batalla, no sé q le pasa a los historiales q a veces dan un salto de un mes, supongo q no estan los correctos(sin el "supongo"...) Intento borrarlos de la carpeta de history, pero cuando abro el meta, siguen habiendo historiales, e intentando borrarlos manualmente, tengo q hacerlos uno por uno...
Sobre el periodo del testeo, los resultados son practicamente los mismos, pero quizá sea el time frame 1M el mejor ya q es el mas cercano a 1 tick
Sobre la calidad del modelado ... Vamos, no supero nunca el 25%... O sea q de ahi supongo q depende muy y mucho el resultado del test en veracidad... Aparte me reafirma sobre la pobre calidad de los historiales q tengo...
Sobre los EA´s:
Qué gozada, se pueden modificar, dentro de lo que el autor, o el q lo ha tocado antes q yo, permite...
Hay opciones de cambiar el volumen de los lotes, por minilotes, microlotes, cambiar el stop loss, activarlo desactivarlo, tp, MM, horarios en los que trabaja el EA, hacer q no trabaje los viernes... Unas cuantas configuraciones para poder mejorar o adaptar el EA a las exigencias del usuario, dentro de lo q el programador ha permitido, claro.
LA COÑA, es q aunque lo cambie, hace lo q le sale de los eggs, por ejemplo, quise cambiar de microlotes a minilotes, y nada, los resultados eran operaciones de microlotes
Tambien hay q observar q me pone "lots" y al lado 4 casillas, q corresponden a "Valor" "Iniciar" "Paso" y "Detener", entonces, claro, yo en las 4 casillas pongo 0.1 q sería el volumen del lote, pero ni caso
Entonces, creo q antes de tocar nada, habria q saber a que se refieren esas 4 casillas y sobre el comportamiento del EA en base a su configuracion, me pasa tb lo mismo con el stop loss, que por defecto viene desactivado, lo activo y lo mismo, 4 casillas y ponga lo q ponga, el stop loss sigue desactivado...
Seguiré investigando sobre como poner bien los parametros para q me obedezca el puñetero EA , si alguno de los presentes me quiere dar unas pistillas, pues oye, tan agradecido!
Maliboo,
Un buen backtest tiene sus trucos...... Primero abrete una cuenta exclusivamente para probar tus EAs, el truco esta en nunca registrate de forma que nunca accese datos del servidor que puedan contaminar tus datos, luego de esto trabajar siempre en modalidad offline, cargas tus datos con f2 y abres siempre en modo offline. los datos en otros TF diferentes de m1 con el script period converter. Espero te sirva.
s2.
Un buen backtest tiene sus trucos...... Primero abrete una cuenta exclusivamente para probar tus EAs, el truco esta en nunca registrate de forma que nunca accese datos del servidor que puedan contaminar tus datos, luego de esto trabajar siempre en modalidad offline, cargas tus datos con f2 y abres siempre en modo offline. los datos en otros TF diferentes de m1 con el script period converter. Espero te sirva.
s2.
Aqui teneis los periodos del EURUSD en formato csv, M1, M5, M15, M30, M60, M240, M1440, desde el 16/06/2004 hasta 27/03/2009 http://www.megaupload.com/?d=9AO7SRD0 pesa 14,12Mb, los he convertido a partir de 1M de http://www.alpari-idc.com/en/dc/databank.html
El método de conversión es mediante un programa de Matlab que diseñé, así que de paso me probais si todo está bien, jejeje.
Decir que alpari utiliza 5 dígitos desde 2009 en los decimales de los pares pero en el databank solo lo guarda en 4 dígitos.
En los meses de este 2009 he visto que los decimales los normaliza a 4 dígitos, osea, 1.31569 = 1,3157
Para los scalpers decir también que los ticks en el test son modelados a partir del volumen de la barra
Por ejemplo la barra de un minuto (2004.06.16,10:55,1.21130,1.21150,1.21120,1.21150,15) tiene 15 de volumen, por tanto los tick de esa barra se modelaran de forma que tenga que hacer 15 movimientos hasta formar el OCHL, esto lo he deducido porque no hay más información que esa.
En alpari con 5 dígitos, el 5 dígito es el tick y en el caso anterior el volumen podría ser alrededor de unos 150 o mucho más con lo cual el modelado para los scalpers sería ideal, pero esto no lo guarda en su data center.
Para una estrategia en periodos de 15M por ejemplo o periodos mayores y teniendo el historial de 1M, el test es muy realista.
Cuando hacemos el test, elegir en Modelo, cada tick(el método más preciso basado en los periodos menores disponibles para generar cada tick), por tanto en una estrategia por ejemplo en H4 y teniendo este periodo y el de 1M los tick serán muy precisos.
Los Brokers (MM) tienen los ticks del mercado filtrados pero algunos dan historiales sin filtrar, y ahí pican los scalpers por que le sacan una rentabilidad bestial con un sistema automático y cuando pasa a tiempo real no funciona, otra cosa sería si se tuviera un acceso a historiales de un ECN con todos sus ticks, no sería dificil encontrar un sistema scalper ganador.
Nota, en megaupload, la imagen de verificación humana son letras superpuestas, a lo mejor cuesta un poco de verlas
El método de conversión es mediante un programa de Matlab que diseñé, así que de paso me probais si todo está bien, jejeje.
Decir que alpari utiliza 5 dígitos desde 2009 en los decimales de los pares pero en el databank solo lo guarda en 4 dígitos.
En los meses de este 2009 he visto que los decimales los normaliza a 4 dígitos, osea, 1.31569 = 1,3157
Para los scalpers decir también que los ticks en el test son modelados a partir del volumen de la barra
Por ejemplo la barra de un minuto (2004.06.16,10:55,1.21130,1.21150,1.21120,1.21150,15) tiene 15 de volumen, por tanto los tick de esa barra se modelaran de forma que tenga que hacer 15 movimientos hasta formar el OCHL, esto lo he deducido porque no hay más información que esa.
En alpari con 5 dígitos, el 5 dígito es el tick y en el caso anterior el volumen podría ser alrededor de unos 150 o mucho más con lo cual el modelado para los scalpers sería ideal, pero esto no lo guarda en su data center.
Para una estrategia en periodos de 15M por ejemplo o periodos mayores y teniendo el historial de 1M, el test es muy realista.
Cuando hacemos el test, elegir en Modelo, cada tick(el método más preciso basado en los periodos menores disponibles para generar cada tick), por tanto en una estrategia por ejemplo en H4 y teniendo este periodo y el de 1M los tick serán muy precisos.
Los Brokers (MM) tienen los ticks del mercado filtrados pero algunos dan historiales sin filtrar, y ahí pican los scalpers por que le sacan una rentabilidad bestial con un sistema automático y cuando pasa a tiempo real no funciona, otra cosa sería si se tuviera un acceso a historiales de un ECN con todos sus ticks, no sería dificil encontrar un sistema scalper ganador.
Nota, en megaupload, la imagen de verificación humana son letras superpuestas, a lo mejor cuesta un poco de verlas
Jeje es buena idea, yo ademas tengo instalado un sincronizador de archivos para que la carpeta experts donde está todo de la cuenta real se copie a la carpeta donde está instalado la cuenta Backtest, asi solo hay que darle al botón de sincronizar y ya pruebo el experto rápidamente en la cuenta Backtest sin contaminar historial del real y sin tener que copiar manualmente los archivos que modifique.ledzep escribió:Maliboo,
Un buen backtest tiene sus trucos...... Primero abrete una cuenta exclusivamente para probar tus EAs, el truco esta en nunca registrate de forma que nunca accese datos del servidor que puedan contaminar tus datos, luego de esto trabajar siempre en modalidad offline, cargas tus datos con f2 y abres siempre en modo offline. los datos en otros TF diferentes de m1 con el script period converter. Espero te sirva.
s2.
Si te ha gustado este hilo del Foro, ¡compártelo en redes!