SISTEMAS AUTOMÁTICOS

un blog de SISTEMAS AUTOMÁTICOS
Este artículo ha sido marcado como molesto Deshacer
AENEAS
17:03 el 16 marzo 2015

Lo que podemos hacer con Visual Chart para mejorar un posible Sistema Automatico - I

Abrimos nuevo artículo con el punto 17.1ª parte  del temario del artículo global… https://www.unience.com/blogs-economia-finanzas/sistemas_automaticos/sistemas_automaticos

 

1ª parte : ¿Qué podemos hacer con Visual Chart para mejorar las posibles ideas que tengamos sobre un posible Sistema Automático que pensemos debería funcionar?

 

En realidad podemos hacer cientos de desarrollos, difícilmente sintetizables aquí, pero voy a intentar al menos dar algunas pinceladas, que ayuden a nuestra protagonista Maite y a los amables lectores a avanzar algo más en su trabajo para configurar mejor cualquier sistema automático. Para no hacer aún más largo el artículo, lo he dividido en dos partes.

 

De hecho ya hemos visto ejemplos y dado reseñas de Sistemas automáticos disponibles en abierto y gratuitamente tanto en Visual Chart como en ProRealTime, hay decenas de ellos. Si el amable lector ha seguido los vínculos aportados en los diferentes artículos y se los ha ido estudiando un poco, quizás hasta ha encontrado alguno que tenga buenas posibilidades.

 

Por si se le han extraviado vuelvo a insertar los enlaces a los sistemas automáticos gratuitos de Visual Chart y ProRealTime:

 

Debe subrayarse que no siempre los resultados son evidentes a la primera y que debe dedicársele tiempo a hacer cálculos y optimizaciones hasta encontrar los parámetros que a cada uno le convenzan.

 

Imaginemos que Maite desea hacer un sistema intradiario en espacio temporal de 5 o 10 minutos que incluya una media para seguir una tendencia, o 2 medias una corta y una larga, más la pendiente de las medias que buscaremos sea positiva, también unos puntos como StopProfit, y otros puntos como StopLoss, más unas horas-minutos de entrada y salida ideales. Sin desearlo complicar mucho ya hemos introducido un montón de variables. Si eventualmente en lugar de medias simples, escogemos medias, dobles, triples o medias adaptativas, cada una de ellas puede tener 2 ó 3 ó 4 parámetros adicionales, lo que amplifica aún mucho más la cantidad de posibles combinaciones…

Hemos escogido para este ejemplo las medias pero es perfectamente aplicable a otros sistemas, por ejemplo rotura de niveles. Seguimos con las medias…

Haciendo cuatro números: una media corta entre 3 y 100 (x98 posibilidades), una media larga entre 101 y 1000 (x700posibilidades)… (multiplíquenlo 2 o tres veces si son medias más complejas)… Multipliquen por 50 o 100 puntos profit y otros 50 o 100 stop… multipliquen por p.ej. por 100 fracciones de 5 minutos entre las 8:00 y las 13:00 horas para la entrada… y por 120 fracciones entre 15:45 y 21:45 para la salida… esto nos lleva a billones de posibles combinaciones!!!

Lo que hace imposible plantear de entrada todos los cálculos de una sola vez.

 

Pero sí podremos planteárnoslo por partes:

  1. Empezaremos por calcular qué medias proporcionan los mejores resultados
    • En este punto es importante tener en consideración los cálculos a realizar. Intento explicarme: Si sólo consideramos una media simple entre p.ej. 2 y 500 resultará en 499 iteraciones que estarán calculadas muy rápidamente. Si consideramos una optimización con dos medias simples una corta y una larga, como decíamos en el párrafo anterior, ya nos vamos a casi 70.000 iteraciones a calcular, tardará algo más de tiempo, pero es perfectamente viable. El problema aparece cuando consideramos medias triples o medias adaptativas que pueden tener dos, tres o cuatro parámetros cada una de ellas. En ese supuesto, y ya sólo considerando 2 parámetros en cada media, nos iríamos a 70.000 X 70.000 = 4.900 millones de iteraciones, lo que es inviable calcular. ¿Cómo hacerlo? Acotar por tramos e incrementos. Es decir, al indicarle a Visual Chart  “Gráfico-Optimización” en la ventana que aparecerá “configuración sistemas” le indicaremos los límites inferior-superior de cada parámetro y el incremento a calcular. Si en el ejemplo le ponemos incrementos de 10 en cada uno (10x10x10x10=10.000) los 4.900 millones se convertirán en un cálculo mucho más asequible de 490.000 iteraciones. Conforme vayamos obteniendo resultados, iremos tomando nota, reduciendo los rangos inferior-superior y bajando la cifra de “incremento”, hasta que lleguemos a 1 en todos los parámetros. Éste es el proceso a seguir en todas las optimizaciones para que los ordenadores y Visual Chart sean capaces de realizar las iteraciones sin colapsarse.
       
  2. A continuación tomaremos la mejor combinación de medias (imaginemos 10-60-200) que dejaremos fija, e incorporaremos las posibles combinaciones de StopProfit y StopLoss, entre p.ej 5 y 100 cada uno de ellos.
     
  3. Con la mejor combinación de StopProfit (imaginemos 12) y StopLoss (imaginemos 20), y de medias(donde teníamos 10-60-200), volveremos a optimizar estos parámetros con cifras próximas a las anteriores:
    1ª optimiz Medias   10      60        200
    2ª optimiz Stops                                        12       20
    3ª optimiz Entre    8-12  50-70  180-220  9-15  17-23

     
  4. Posiblemente el resultado obtenido sea ligeramente distinto de las dos primeras optimizaciones, imaginemos que los 5 parámetros resultan ahora 11-59-192-13-19
     
  5. Con estos cinco parámetros fijos ahora tocará calcular las combinaciones correspondientes a las horas de entrada y salida. Y con el mejor resultado obtenido de estos dos parámetros volveremos a buscar la mejor combinación de los siete parámetros en valores cercanos a los mejores según se explica en punto 3 anterior.
     
  6. Obviamente el resultado que obtengamos ha de ser suficientemente bueno, como p.ej. Ratios iguales o superiores a 2,5. De lo contrario acostumbraremos a desechar el sistema. Recordemos que RATIO –como ya se vió en capítulos anteriores- es el cociente entre la Ganancia Anual Promedio y el Máximo DrawDown en cualquier momento del histórico. Ratio nos indica el máximo número de meses que el sistema ha estado en pérdida en el pasado, calculando 12/ratio=nº meses. Es decir un Ratio de 3 indica que el sistema ha estado hasta 4 meses en pérdida en el pasado.
     

Eventualmente pudiera suceder, y de hecho sucede algunas veces que pudiéramos encontrar un set de parámetros distintos y con buen Ratio. Imaginemos que encontramos otro set de parámetros con medias más cortas y con menor cantidad de puntos StopProfit y StopLoss (insisto con buen ratio!).

 

En ese supuesto analizaremos las respectivas ganancias/pérdidas anuales y la fluctuación de las mismas. Pudiera suceder que uno de los sets de parámetros fuera muy bueno un año y peor en otro y viceversa el otro set de parámetros. En ese escenario será bueno ir más allá en nuestro análisis, yendo a las ganancias/pérdidas mensuales. Exportar ambas de ambos sets de parámetros a Excel y verificar si combinando ambos sets obtenemos un conjunto de sistemas/sets de parámetros que disminuyan las pérdidas consecutivas y mejoren el ratio combinado.

 

Ahora unas fotos que nos ayuden a comprender mejor el proceso arriba descrito.

 

Tenemos una idea que reflejamos más o menos burdamente en un papel y hacemos unas simulaciones preliminares, remarcando los mejores parámetros a considerar en el Sistema a plantear:

 

A continuación creamos el sistema, lo compilamos y lo ponemos a optimizar, anotando los límites inferior-superior y los incrementos (confío los lectores me perdonen que al principio de los cálculos intento que esté todo muy ordenado, pero conforme se van extendiendo se convierten en un pequeño-gran guirigay).

Probablemente nos habremos también impreso los resultados de las mejores optimizaciones para ir seleccionando las mejores de cada serie de cálculos:

 

Acto seguido, de los mejores sets de parámetros obtenemos en “Gráfico-Estadística” la correspondiente estadística a cada uno de los mejores RATIOS. Pero hay que hacer “la prueba del algodón”. No nos quedaremos sólo con el mejor Ratio que nos muestre Visual Chart, pues su cálculo es en base a porcentajes. Y debemos trasladarlo a “Estadística-Dinero”. Cuando un sistema es suficientemente bueno, lo más probable es que dispongamos de muchos sets de parámetros interesantes. Tampoco nos quedaremos en sólo visualizar el gráfico que nos muestra por defecto, sino que clickaremos en la pestaña “Estadística-Compresión” y sustituiremos “Negocios” por “Años”. Si los resultados son aceptables, ahora cambiaremos a “Meses” y Exportaremos los resultados a Excel. Podríamos obtener algo así:

 

Como decíamos arriba, probablemente combinando adecuadamente un par o tres sets de parámetros, podamos obtener una combinación de dos o tres sistemas que en conjunto sean más estables, con menor DrawDown y mayor rentabilidad que un solo sistema. Los cálculos que podríamos hacer en Excel serían algo asÍ:

(sorry lo he puesto vertical pero él solo se gira a horizontal)

Donde podremos analizar con todo detalle el nº total de meses negativos y los meses negativos consecutivos. Las ganancias, pérdidas y meses consecutivos en pérdida en distintos períodos alcistas y bajistas, etc, etc…

 

Hasta encontrar la mejor combinación cuyo comportamiento histórico nos convenza.

 

Y sí, hablamos de comportamiento histórico, lo cual no es garantía de que vaya a ocurrir exactamente lo mismo en el futuro. Pero la verdad, a mí personalmente me da más confianza invertir en sistemas que hayan tenido un buen comportamiento histórico que no en otros que no lo hayan tenido.

 

Finalmente archivaremos de forma adecuada todas nuestras investigaciones y cálculos para cualquier momento, si es el caso, que convenga revisarlos:

 

Hasta aquí la 1ª parte de este artículo.

Publicar Ocultar ¿Quieres hacer públicos tus favoritos? Publicar No por el momento
0 comentario
3 veces compartido
Únete al grupo de SISTEMAS AUTOMÁTICOS en Finect para comentar. 

¡Regístrate y forma parte de la comunidad líder de finanzas en España!

Regístrate

Top Autores

AENEAS
107 Artículos
finanzasmania
61º 1 Artículos

app version

Wed Nov 02 13:34:35 CET 2016

2221

79dd84889bae13e7769f41dc060a3ba472981ca5