Buenas.
Ultimamente me ha dado por combinar los resultados de sistemas distintos, como método para intentar mantener las curvas estables.
Aunque hay aplicaciones que lo hacen automágicamente, Amibroker no, y es el soft que uso. Además, quiero combinar las curvas de resultados tipo out of sample, no las óptimas.. y claro, es muy farragoso..
Asi que he hecho una pequeña utilidad en Access que permite combinar hasta 2 curvas de resultados, mostrando luego los Draw Down anuales (que es cómo suelo verlos yo), y resultados mensuales.
Esta ultima pantalla tiene esta pinta:
Adjunto el programita en Access, por si a alguien le sirve; y si alguien quiere mejorarlo, en plan Open Source, pues perfecto, ganamos todos.
El programa tiene 4 curvas de resultados de ejemplo mías. Para añadir nuevas, sólo hay que crear una tabla que se llame "equity" y algo más, (para lo cual se puede copiar y pegar cualquiera de las existentes), y pegar en ella los datos copiados desde una hoja Excel, por ejemplo, o importados, con la misma estructura (sólo 3 campos: nombre de equity, fecha y valor de la posicion). Es muy fácil.
A ver si a alguien le sirve, y/o lo amplía...
saluditos
[PD: Nueva version 1.1 en mensaje posterior]
Programita para combinar resultados
Programita para combinar resultados
- Adjuntos
-
- Calculus_1_0.mdb.zip
- (579.21 KiB) Descargado 52 veces
Última edición por ranunculo el 30 Sep 2010 09:26, editado 2 veces en total.
Re: Programita para combinar resultados
El MSA tiene la función de crear Portafolio, en la que unes dos o más sistemas y te pinta los resultados por fechas, con su estadística.
El problema es que es una demo de 30 días. Lo bueno es que borrando sus registros en el regedit.exe puedes volver a instalarlo.
El problema es que es una demo de 30 días. Lo bueno es que borrando sus registros en el regedit.exe puedes volver a instalarlo.
Re: Programita para combinar resultados
No parece que a nadie le sea de mucha utilidad el programita que he adjuntado;
parece que no hay mucha necesidad de combinar sistemas, o ya lo hace todo el mundo con sus herramientas habituales.
Y el caso es que yo no puedo combinar los resultados de dos pruebas Walk forward en una sola equity fácilmente, y uso esta pequeña utilidad..
O tal vez no haya explicado bien como usarla..
Por si es esto último, adjunto unos pantallazos que explican como usarla:
Primero, hay que importar los datos. Para ello, necesitamos una tabla vacia en Access donde meter los datos. ¿Como crearla?. Simplemente, se abre el programa, se da a F11 para acceder a la base de datos, y, viendo las tablas, se copia y se pega cualquiera que comience por la palabra "equity".
Al pegarla, Access nos deja darle otro nombre, y dejarla en blanco ("estructura solamente"). En el ejemplo de la imagen, se esta creando la tabla "equity_prueba" Una vez se ha creado la tabla "equity prueba", en blanco, podemos pegarle los datos de nuestra equity, obtenidos de un backtest o prueba externa en cualquier otro programa. Para pegar datos en una tabla Access, lo más sencillo es abrir los datos en Excel, sombrearlos, copiarlos: Una vez en el portapapeles, vamos a Access, y abriendo la tabla vacia "equity_prueba", elegimos del menú "edición", la opción "pegar datos anexados".
Esto mete todas las filas Excel en registros Access.
Hecho esto, cerramos y abrimos Access. Una vez en la pantalla principal, sombreamos 2 tablas que tengamos, y al pinchar en "Combinar dos sistemas", se recalculan, para ambas equities combinadas, las cifras de Draw Down anual: Por ultimo, ¿donde aparece el rendimiento, en tasa anualizada compuesta?: En la pantalla que aparece al pinchar en "ver beneficio mensual", que es la pantalla que aparece en el primer post..
A ver si alguien le sugiere esto ideas de utilidades y/o ganas de programarlas..
Si alguien detecta algún error, que me diga
salut
parece que no hay mucha necesidad de combinar sistemas, o ya lo hace todo el mundo con sus herramientas habituales.
Y el caso es que yo no puedo combinar los resultados de dos pruebas Walk forward en una sola equity fácilmente, y uso esta pequeña utilidad..
O tal vez no haya explicado bien como usarla..
Por si es esto último, adjunto unos pantallazos que explican como usarla:
Primero, hay que importar los datos. Para ello, necesitamos una tabla vacia en Access donde meter los datos. ¿Como crearla?. Simplemente, se abre el programa, se da a F11 para acceder a la base de datos, y, viendo las tablas, se copia y se pega cualquiera que comience por la palabra "equity".
Al pegarla, Access nos deja darle otro nombre, y dejarla en blanco ("estructura solamente"). En el ejemplo de la imagen, se esta creando la tabla "equity_prueba" Una vez se ha creado la tabla "equity prueba", en blanco, podemos pegarle los datos de nuestra equity, obtenidos de un backtest o prueba externa en cualquier otro programa. Para pegar datos en una tabla Access, lo más sencillo es abrir los datos en Excel, sombrearlos, copiarlos: Una vez en el portapapeles, vamos a Access, y abriendo la tabla vacia "equity_prueba", elegimos del menú "edición", la opción "pegar datos anexados".
Esto mete todas las filas Excel en registros Access.
Hecho esto, cerramos y abrimos Access. Una vez en la pantalla principal, sombreamos 2 tablas que tengamos, y al pinchar en "Combinar dos sistemas", se recalculan, para ambas equities combinadas, las cifras de Draw Down anual: Por ultimo, ¿donde aparece el rendimiento, en tasa anualizada compuesta?: En la pantalla que aparece al pinchar en "ver beneficio mensual", que es la pantalla que aparece en el primer post..
A ver si alguien le sugiere esto ideas de utilidades y/o ganas de programarlas..
Si alguien detecta algún error, que me diga
salut
Re: Programita para combinar resultados
He hecho una pequeña evolucion del programilla. Ahora muestra el resultado promediado total y hace pruebas de montecarlo.
Probablemente esté demasiado adaptado a mis propios métodos, pero bueno, quizá a alguien le sirva..
La pantalla de calculos de Montecarlo es: Los rendimientos se muestan para cada año, para poder ver las variaciones de la equity. En Access, pinchando en los iconos "A-Z", ordenas por un campo; ordenando por beneficio, se ve fácilmente cuántos años están en pérdidas..
Lo he hecho un poco deprisa, cualquier fallo me decis..
Adjunto version 1_1
Saluditos
Probablemente esté demasiado adaptado a mis propios métodos, pero bueno, quizá a alguien le sirva..
La pantalla de calculos de Montecarlo es: Los rendimientos se muestan para cada año, para poder ver las variaciones de la equity. En Access, pinchando en los iconos "A-Z", ordenas por un campo; ordenando por beneficio, se ve fácilmente cuántos años están en pérdidas..
Lo he hecho un poco deprisa, cualquier fallo me decis..
Adjunto version 1_1
Saluditos
- Adjuntos
-
- Calculus_1_1.mdb.zip
- (556.78 KiB) Descargado 47 veces
Re: Programita para combinar resultados
Me gustaria saber la diferencia de esta utilidad y el MSA. Es decir, que se puede hacer que no haga MSA
El camino equivocado es INVENTAR un SISTEMA ganador. El camino correcto es DESCUBRIR que hace el PRECIO, para adelantarse a el, y con eso poder hacer un sistema ganador.
Re: Programita para combinar resultados
Bueno, el MSA es muchísimo mas potente claro.EL MSA es un programa comercial, y esto es un pequeña utilidad Access.. claro que uno cuesta 400€ y el otro 0€..
Por otra parte, lo poco que consigue esta utilidad, lo hace de un modo bastante práctico:
Tras combinar resultados de 2 sistemas, te calcula:
*El beneficio promedio total,
*El beneficio para cada año,
*El beneficio para cada mes,
*Los DrawDowns de cada año.
Y el calculo de Montecarlo, en vez de sacar la típica gráfica con 100 equities apretujadas, te obtiene 100 veces el beneficio teórico de cada año, lo que a mi me resulta más relevante..
Lo siguiente que haré es, o bien que permita asignar diferentes pesos a cada equity, o bien que añada algún algoritmo de Money Management, tipo F optima o Fixed ratio..
con tiempo..
Por otra parte, lo poco que consigue esta utilidad, lo hace de un modo bastante práctico:
Tras combinar resultados de 2 sistemas, te calcula:
*El beneficio promedio total,
*El beneficio para cada año,
*El beneficio para cada mes,
*Los DrawDowns de cada año.
Y el calculo de Montecarlo, en vez de sacar la típica gráfica con 100 equities apretujadas, te obtiene 100 veces el beneficio teórico de cada año, lo que a mi me resulta más relevante..
Lo siguiente que haré es, o bien que permita asignar diferentes pesos a cada equity, o bien que añada algún algoritmo de Money Management, tipo F optima o Fixed ratio..
con tiempo..
Si te ha gustado este hilo del Foro, ¡compártelo en redes!