Re: ---- Analizador de informes
Cita:
Iniciado por
carlessan
Ningún problema, te cuento:
Vamos a hacer el ejemplo de 1 solo EA
Un EA en el par EU, periodo 1 año:
1.- Realizas un backtest del meta en el EU y obtienes un statment de 1 año
2.- Localizas el archivo csv del histórico del par EU que corresponda al periodo que has hecho el backtest (1 año o más)
3.- Vas al Excel y realizas un proyecto que compare el histórico con las órdenes del statment.
Esta hoja Excel debe ser capaz de situar en el tick del histórico, la apertura de la orden cuando se dé y luego aplicar la fórmula para obtener el flotante tick a tick hasta que llega el tick que se cierra la orden.
Una vez realizado este proceso, se debe obtener una hoja resumen con el mayor flotante que ha soportado cada orden. A partir de aquí pon las estadísticas que necesites. Puedes hacerlo tan complejo como quieras.
Para más expertos del mismo par, no sería más que comparar el histórico con más statments y luego filtrar la solapación del flotante en caso de que coincidan dos o más ordenes en unos mismos ticks.
Para más pares y varios expertos en cada par, pues seria lo mismo pero siempre separando por par, pues el que manda es el histórico para compararlo con los statments de los expertos y así obtener el flotante tick a tick.
Piensa que si se utilizan distintos pares, la unidad base para obtener el flotante global de todos los pares es el factor tiempo, no el factor tick, porque puede haber ticks de un par y de otro no, por lo que creo que sería mejor usar un factor tiempo para comparar el flotante global más que por ticks del par si se quiere obtener el flotante global multipar.
Piensa que cuanto mayor sea la muestra de datos, el backtest, los expertos y los pares, más cantidad de datos y más se encallará el Excel. Por eso yo siempre me inclino a hacia el uso de las bases de datos. Los archivos tick a tick son pesados y trabajar con archivos de varios años puede encallar al Excel. Hay que probarlo.
Espero haberte ayudado
Salu2
Carlessan,
gracias por tus conocimientos.
Yo lo haría de la misma manera, pero hay que tener en cuenta que no hablamos de poco trabajo. A los que se atreven a hacer este trabajo...al loro, porque les llevará bastante bastante trabajo. No es difícil, pero si muy laborioso! Sobretodo para las comprobaciones.
Si lo consegues sacar, es un buen producto y se podría vender, pero creo que el tiempo que pierdes, puedes estar aprendiendo mejor forex (u otro mercado) y hacer operaciones manuales, programar robots, etc..
Yo intenté algo por el estilo, pero cuando estaba en el análisis de todo el percal, lo dejé porque valoré las horas que me pasaría haciendo todo el trabajo.
Saludos y no desaniméis, pero pensad en todo lo que abarca antes de picar código!
Saludos,
Dream3r
Re: ---- Analizador de informes
Cita:
Iniciado por
Vinisius
------------------------------------------------------------------------------------------------------------------------------------------------------
Coño Rojote , ¿ y todo eso tienes que leerte para llegar a una conclusión ?.
Que mareo.
Podrías utilizar el programa gratuito SQ EA Analyzer.
No lleva tanta cosa pero está aceptable.
Saludos.
No que he copiado y pegado el indice de lo que analiza y se a amontonado todo, esta ,muy bien la pagina y no marea nada esta muy bien explicado y con gráficos.
Saludos
Re: ---- Analizador de informes
Muy buenas,
Yo para analizar los reportes de los backs a veces utilizo esta pagina, ahí subes el archivo donde tengas el reporte y te da bastante información, no te da el flotante pero mas que el informe de metatrader te da, esta bien puedes mirar varias cosas de tu estrategia, o del EA. Ademas esta en español para los que no se manejen muy bien en ingles como yo.:contento2:
La pagina web : Herramienta de análisis del informe Forex, Analiza los reportes de comercio MT4/MT5/Oanda
SALUDOS ESPERO QUE LES SIRVA PARA ALGO :eur::eur::usd::usd::jpy::jpy::gbp::gbp:
Re: ---- Analizador de informes
Cita:
Iniciado por
Vinisius
Vaya hombre.
Dream ... me acabas de dar un bajon. Ahora que me estaba animando.
Saludos.
Para nada! No te dejes desanimar por nadie ni por nada.
El tema es cuestión de prioridades: yo prefiero tener este tiempo para hacer otras cosas que programar un sistema de backtesting que a lo mejor después no lo aprovecho tanto. O a lo mejor sí! No sé....valora lo que hagas, que el tiempo es limitado e incomprable! :p
Yo llegué a esta conclusión hace muy muy poco (aunque parezca mentira es una chorrada, pero has de pensar en priorizar las cosas).
Saludos,
Dream3r
- - - Updated - - -
La otra es usar software propietario....
Mirad esta páginita: http://www.strategyquant.com/eaanalyzer/
Saludos!
Dream3r
Re: ---- Analizador de informes
El raport que lanza la metatrader solo es la puntita del iceberg de los backtest.
Obtendréis buenas estadísticas de programas de seguimiento como son los típicos MyFXbook y MT4i, pero claro, debéis poner a funcionar los expertos en una cuenta monitorizada por el sistema y siempre serán datos forward, no de backtest.
La solución: crearse uno mismo su propio sistema de análisis.
Lo más simple sería echar mano del Excel, con ello tendríamos muchas ventajas como por ejemplo poder analizar los expertos de forma conjunta, es decir: podríamos ver la incidencia de sus movimientos en la cuenta mientras trabajan todos juntos, observar ratios globales, utilizar distintos pares a la vez y ver su incidencia en la cuenta , ver solapaciones de DD, etc.
Pero hay un valor que no dispondremos: el DD flotante y eso es importante según la estrategia que se use y el capital de la cuenta.
Porque no lo obtendremos?, porque para analizar los datos con Excel, es necesario hacer un backtest "normal" de cada experto en el mismo periodo y volcar el statment de órdenes en el Excel para proceder al calculo de las fórmulas, y por desgracia el backtest del meta solo nos da operaciones abiertas y cerradas.
Cómo saber lo que ha ocurrido mientras la(s) operaciones estaban abiertas?, ahí está el kit de la cuestión. Sólo se puede saber con el envío de la equity de la cuenta cada x segundos a un sistema externo: base de datos o archivo csv, para poder evaluar lo que pasa en el histórico desde que se abre una orden hasta que se cierra.
En el caso de tener un solo experto esto no tiene mucha importancia pues determina el DD el profit o estop de la orden, pero si se trabaja con multiples EAs en una cuenta y éstos pueden solapar órdenes, el DD flotante puede causarnos problemas. En cualquier caso es importante saber cual es para poder descartar sistemas, reducirlos, modificar lotajes, etc.
Si yo lo tuviera que hacer, crearía una aplicación externa por ejemplo con Visual Studio la cual capturaría los archivos statments etc, que quisiera para su procesamiento, pero para los que no son programadores, lo mejor sería profundizar en Excel el cual da la potencia necesaria para empezar, hasta llegar a tener un sistema de análisis de datos bueno. El tema del flotante mejor dejarlo para más adelante.
Salu2
Re: ---- Analizador de informes
Cita:
Iniciado por
dream3r
Yo intenté algo por el estilo, pero cuando estaba en el análisis de todo el percal, lo dejé porque valoré las horas que me pasaría haciendo todo el trabajo.
Saludos y no desaniméis, pero pensad en todo lo que abarca antes de picar código!
Vaya hombre.
Dream ... me acabas de dar un bajon. Ahora que me estaba animando.
Saludos.
Re: ---- Analizador de informes
Cita:
Iniciado por
carlessan
Pero hay un valor que no dispondremos: el DD flotante y eso es importante según la estrategia que se use y el capital de la cuenta.
Porque no lo obtendremos?, porque para analizar los datos con Excel, es necesario hacer un backtest "normal" de cada experto en el mismo periodo y volcar el statment de órdenes en el Excel para proceder al calculo de las fórmulas, y por desgracia el backtest del meta solo nos da operaciones abiertas y cerradas.
Cómo saber lo que ha ocurrido mientras la(s) operaciones estaban abiertas?, ahí está el kit de la cuestión. Sólo se puede saber con el envío de la equity de la cuenta cada x segundos a un sistema externo: base de datos o archivo csv, para poder evaluar lo que pasa en el histórico desde que se abre una orden hasta que se cierra.
A eso me refería exactamente Carles.
Las puntas de equidad negativa o positiva solo tienen una manera de conseguirse como bién dices tú, enviando la equity de la cuenta cada pocos segundos a un sistema externo como una base de datos y volver a recalcular las operaciones. Eso es lo que estoy buscando.
Cita:
Si yo lo tuviera que hacer, crearía una aplicación externa por ejemplo con Visual Studio la cual capturaría los archivos statments etc, que quisiera para su procesamiento, pero para los que no son programadores, lo mejor sería profundizar en Excel el cual da la potencia necesaria para empezar, hasta llegar a tener un sistema de análisis de datos bueno. El tema del flotante mejor dejarlo para más adelante.
Pero Carles, para meterse a hacer eso ahora no vale mucho la pena cuando ya existen software que lo hacen.
Buscar la equity negativa y positiva es lo verdaderamente importante. Voy a estudiar e investigar por mi cuenta.
Pero permíteme una cuestión , si utilizamos una base de datos para almacenar los históricos de tick mejor alternativa es MySQL sobre Acces , ¿OK?. Luego para abrir los report , programar para buscar la equity cada x segundos y recalcular las operaciones la mejor opción sería Visual Studio sobre Excel , ¿correcto ?.
Madre Mia ... la que me espera.
¿ Seguro que no hay nada por ahí ya hecho, aunque sea de pago ?.
Saludos.
Re: ---- Analizador de informes
Sorry, he cometido un error en el análisis anterior
En un backtest tick a tick también se podría mandar el DD flotante siempre que programes un módulo que lo calcule y envíe el dato cada x ticks. Incluso se podría mostrar en visual por pantalla el flotante a medida que se realiza el backtest. (yo lo tengo programado en alguno de mis expertos)
Al final creo que existen tantas las posibilidades, que solo que hay que tratar los datos en función de los análisis que quieras realizar.
Disculpa el error
salu2
Re: ---- Analizador de informes
Ningún problema, te cuento:
Vamos a hacer el ejemplo de 1 solo EA
Un EA en el par EU, periodo 1 año:
1.- Realizas un backtest del meta en el EU y obtienes un statment de 1 año
2.- Localizas el archivo csv del histórico del par EU que corresponda al periodo que has hecho el backtest (1 año o más)
3.- Vas al Excel y realizas un proyecto que compare el histórico con las órdenes del statment.
Esta hoja Excel debe ser capaz de situar en el tick del histórico, la apertura de la orden cuando se dé y luego aplicar la fórmula para obtener el flotante tick a tick hasta que llega el tick que se cierra la orden.
Una vez realizado este proceso, se debe obtener una hoja resumen con el mayor flotante que ha soportado cada orden. A partir de aquí pon las estadísticas que necesites. Puedes hacerlo tan complejo como quieras.
Para más expertos del mismo par, no sería más que comparar el histórico con más statments y luego filtrar la solapación del flotante en caso de que coincidan dos o más ordenes en unos mismos ticks.
Para más pares y varios expertos en cada par, pues seria lo mismo pero siempre separando por par, pues el que manda es el histórico para compararlo con los statments de los expertos y así obtener el flotante tick a tick.
Piensa que si se utilizan distintos pares, la unidad base para obtener el flotante global de todos los pares es el factor tiempo, no el factor tick, porque puede haber ticks de un par y de otro no, por lo que creo que sería mejor usar un factor tiempo para comparar el flotante global más que por ticks del par si se quiere obtener el flotante global multipar.
Piensa que cuanto mayor sea la muestra de datos, el backtest, los expertos y los pares, más cantidad de datos y más se encallará el Excel. Por eso yo siempre me inclino a hacia el uso de las bases de datos. Los archivos tick a tick son pesados y trabajar con archivos de varios años puede encallar al Excel. Hay que probarlo.
Espero haberte ayudado
Salu2
---- Analizador de informes
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Buenas a tod@s.
Los analizadores de informes del Metatrader (los famosos reports) tienen la virtud de que pueden dar unos detalles asombrosos de nuestros EAs que tanto nos han costado en dinero o en trabajo de fabricación.
Ahora bién , aunque todos ellos hacen muy bién su labor de analizar informes desglosados por dia , semanas, etc ... y otros varios ... fallan estrepitosamente al no darnos un detalle fundamental para calibrar nuestros Drawdowns y este no es otro que la equidad. Estos programas solo se basan en el balance y sus resultados nos llevaran sin duda alguna al engaño.
Además, estos programas, en los analisis de varios reports al mismo tiempo solo hacen que sumar las ganancias y perdidas de los EAs en modo global. No aplican lo que a mi entender sería primordial y no es más que la simulacion de la ejecucion nuevamente de las ordenes ahora mezcladas y realizar los cálculos de las operaciones de nuevo con una buena base de datos históricos que sería la del propio Metatrader o de una base histórica externa pero la misma originaria del Metatrader (CSV o texto).
Esto, en mi opinión, sería lo más parecido a una operativa real sobre todo si queremos poner varios Robots en la misma cuenta.
He estado buscando por internet y no he encontrado ningún software o herramienta que sirva para ello. Quizás la solución esté en Excel.
¿ Sabeis de alguna herramienta o software, aunque sea de pago, sirva para lo que he explicado ?.
Yo no he sabido encontrar nada y para mi pesar mis conocimientos de Excel son muy limitados.
Un saludo.
Re: ---- Analizador de informes
------------------------------------------------------------------------------------------------------------------------------------------------------
Coño Rojote , ¿ y todo eso tienes que leerte para llegar a una conclusión ?.
Que mareo.
Podrías utilizar el programa gratuito SQ EA Analyzer.
No lleva tanta cosa pero está aceptable.
Saludos.
Re: ---- Analizador de informes
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
¿ Entonces sugieres que mejor utilice una base de datos que un archivo CSV ? . Mis archivos CSV de ticks son de 6 años. ¿ Vuelco y/o convierto mi archivo de ticks CSV a MySQL ?. ¿ Y luego ya paso a trabajar con Excel ?.
Cita:
En un backtest tick a tick también se podría mandar el DD flotante siempre que programes un módulo que lo calcule y envíe el dato cada x ticks. Incluso se podría mostrar en visual por pantalla el flotante a medida que se realiza el backtest. (yo lo tengo programado en alguno de mis expertos).
Aquí entonces, cuando hablabas de modulo te estabas refiriendo a código mql4 del EA
Ya casi lo tenemos.
Un saludo
Re: ---- Analizador de informes
Y este otro programa Report Manager que es muy simple, pero en el dato del DD se acerca más al real que el otro.
Saludos.
Re: ---- Analizador de informes
Llevo 1 mes leyendo y estudiando Excel y Mql4. Ahora añado además el MySQL y programación general.
Este fin de año proximo, me van a sonar las campanas ... pero en la cabeza directamente.
En que berenjenales me meto.
Saludos.
Re: ---- Analizador de informes
Si ok, me refería programarlo en el EA.
El hecho de usar csv o MySQL para los datos es una decisión personal en función de tus conocimientos, yo prefiero trabajar con MySQL que con archivos de texto.
Salu2
Re: ---- Analizador de informes
No conozco de la existencia de un software que controle el flotante de la forma que quieres.
Sería cuestión de crear uno.
Tampoco no te hace falta mandar la equity a cada tick, lo puedes hacer cada x segundos en tiempo real y si usas el backtest del meta normal puedes mandarla a cada cierre de vela de 1M o 5M, etc, dependiendo del TF que usen tus estrategias. Si usas backtest tick a tick, puedes probar de hacerlo cada x pips por ejemplo. Para ello puedes hacerlo de dos formas desde un experto metatrader:
1.- con la librería wininet.dll de Windows con la que llamas a una página web en php y le mandas los valores que quieres procesar en la base de datos.
2.- con la librería libmysql.dll para conectar directamente el EA con la base de datos MySQL
(te pongo un enlace del foro de metaquotes donde hay un experto que lanza los ticks a una base de datos MySQL):TicksInMySQL - MQL4 Code Base
Con esto tienes el envío de datos
Para su proceso, puedes utilizar Visual Studio y trabajar directamente con MySQL, no te hace falta pasar por Excel, pero todas estas opciones don una solución para para el análisis forward o "en directo", pero no para backtest, ya que ¿cómo lo harás para que desde un backtest del meta te mande el flotante tick a tick?
Es por eso que hace falta un software que realice la comparación entre los históricos tick a tick y el statment de la metatrader (de un backtest), los compare y obtenga el DD flotante. Supongo que con Excel se podría hacer, pero hay que dominarlo un poco. Para el backtest no te hace falta ni Visual Studio ni MySQL.
En realidad para backtest no te hace falta ninguna base de datos, solo realizar un Excel que capture el statment del backtest y lo compare con el histórico tick a tick para obtener el flotante producido durante el transcurso de cada orden.
Luego si lo quieres complicar más, pues se puede hacer que lea múltiples históricos (pares), que lea múltiples statments (de diferentes expertos), etc. y puedes obtener el flotante de un grupo de expertos que utilizan distintos pares, bien no?
Salu2
Re: ---- Analizador de informes
Cita:
Iniciado por
dream3r
Para nada! No te dejes desanimar por nadie ni por nada.
El tema es cuestión de prioridades: yo prefiero tener este tiempo para hacer otras cosas que programar un sistema de backtesting que a lo mejor después no lo aprovecho tanto. O a lo mejor sí! No sé....valora lo que hagas, que el tiempo es limitado e incomprable! :p
Pués para mi sería prioritario. Yo utilizo más de un EA al mismo tiempo en la misma cuenta.
Para diversificar pero principalmente para intentar controlar el DD global.
Con 2 Robots voy haciendo pero como le quiera meter más es de lo más cansino y aburrido que se puede esperar (que te estaré contando que no sepas).
No veas el rato que me lleva analizar cada robot por separado y luego ir comparando sus informes y graficos uno al lado del otro para buscar sus DD y situarlos correctamente en el tiempo para verificar aproximadamente que harían juntos en una cuenta. Pero bueno, tengo aprendido que comparando los gráficos y apuntando con el cursor tengo todos los datos que necesito y no es necesario backtestear por año, solamente en su conjunto (6 años).
Bueno, después de decir eso , no me queda otra que retractarme, no es prioritario pero que carajo ... como ayudaría.
Ah si. Es precisamente una de las herramientas que aconsejo a Rojote unos post más arriba.
Saludos
Re: ---- Analizador de informes
Ok.
Pués muchas gracias por todo Carlessan.
Espero no haberte resultado demasiado pesado pero es que a mí cuando me apasiona un tema no paro hasta llegar al final.
Un saludo.
Re: ---- Analizador de informes
Cita:
En realidad para backtest no te hace falta ninguna base de datos, solo realizar un Excel que capture el statment del backtest y lo compare con el histórico tick a tick para obtener el flotante producido durante el transcurso de cada orden.
Cita:
Iniciado por
carlessan
Sorry, he cometido un error en el análisis anterior
En un backtest tick a tick también se podría mandar el DD flotante siempre que programes un módulo que lo calcule y envíe el dato cada x ticks. Incluso se podría mostrar en visual por pantalla el flotante a medida que se realiza el backtest. (yo lo tengo programado en alguno de mis expertos).
Supongo que aquí estas hablando de programarlo en el código del mismo EA ¿no?. Pero esto sería trasladable después para que Excel recalcule las operaciones y sus equidades de la mezcla de 2 robots o más. No necesitaríamos base de datos dices para Backtests, entonces utilizamos directamente los archivos CSV para ello ?... ¿ O como?. ¿ Cuando hablas de modulo te refieres al propio EA o a Excel ?.
¿ Serias tan amable de explicarme de nuevo el proceso para realizar SOLO Backtests , para abrir los report o statements y recalcular las operaciones tick a tick con equity y con la mezcla de varios EAs ?.
Está última actualización tuya me ha confundido. Cuando me haga grande quiero ser programador.
Saludos.