Rankia España Rankia Argentina Rankia Brasil Rankia Chile Rankia Colombia Rankia Czechia Rankia Deutschland Rankia France Rankia Indonesia Rankia Italia Rankia Magyarország Rankia México Rankia Netherlands Rankia Perú Rankia Polska Rankia Portugal Rankia Romania Rankia Türkiye Rankia United Kingdom Rankia USA
Acceder
Evaluando sistemas de trading

Evaluando sistemas de trading

Una vez que hemos logrado programar los sistemas y antes de comenzar su utilización en el mercado, deberemos tomar una serie de precauciones:

Lo primero es verificar que el sistema no tiene ningún error en el código, lanzando correctamente al mercado; es decir, que da las mismas operaciones en tiempo real que en el histórico; o mejor dicho, que no modifica las ordenes que genera en tiempo real. Para estar totalmente seguros de esto no hay mas remedio que ir tomando nota de las operaciones que lanza y después comprobar que tras abrir y cerrar el programa sigue manteniendo las mismas señales.

 

Otra verificación que nosotros consideramos muy importante es someter al sistema a un protocolo riguroso a fín de evaluar su fiabilidad; ya que si no sometemos al sistema a una prueba de este tipo nos tendríamos que guiar únicamente por su estadística y sabemos que sistemas mas optimizados seria sinónimo de mejor sistema. Como sabemos esto no es real, y sistema muy optimizado suele ser sinónimo de fracaso a corto o medio plazo.

Pues bien hay tantas formas de hacer este protocolo como diseñadores de sistemas, aquí vamos a ver lo que consideramos mas importante y a esbozar un procedimiento sencillo para probar la fiabilidad de los sistemas, como en todo lo relacionado con sistemas, nunca obtendremos unos resultados concluyentes que podamos extrapolar a futuro, pero si una guía importante que nos ayudara a evitar errores graves y frecuentes que irán en detrimento de nuestra cuenta de resultados.

Dentro de este segundo punto, deberemos:

  • Elegir una determinada compresión del grafico histórico para hacer nuestras pruebas, -esto dependerá del tipo de sistema pudiendo incluso estar predefinido a la hora de programar el sistema-. Lo más razonable es que nuestro sistema pueda trabajar con un cierto grado de amplitud de compresiones de barras; al igual que debería suceder con los parámetros del mismo, que existiese un resultado homogéneo con parámetros aproximados.
  • Insertamos nuestro sistema en el histórico completo que dispongamos en diferentes compresiones, es este punto es importante definir de forma lo mas realista posible tanto las comisiones que tendremos que pagar como los deslizamientos; dado que en caso contrario el sistema tendera a sacar mejores resultados teóricos operando excesivamente. Podemos probar según la naturaleza del sistema con diferentes compresiones estándar 5, 10, 15, etc.
  • Una vez que hayamos elegido una determinada compresión, porque el sistema funcione mejor, lo haga de manera más lógica o de forma más parecida a como nosotros queramos que se comporte. Lo que haremos será optimizar sobre todo el histórico. Con los resultados de esa optimización tendremos una idea del potencial del sistema, y será un dato importante para comparar después con los resultados de prueba externa.
  • Llegados a este punto deberemos marcarnos un mínimo exigible, los sistemas que no lleguen a ese mínimo ya no es necesario pasar el resto de pruebas, pues consideramos que no tienen potencial suficiente rentabilidad/riesgo. Aquí habría que hacer alguna salvedad; con sistemas que no teniendo un potencial alto pero nos aportan correlación negativa con algún grupo mayoritario de sistemas.

Ya tenemos la primera selección, sistemas que han conseguido superar un cierto nivel en los resultados de la optimización. Ahora los someteremos a la prueba mas importante una optimización de prueba externa. Consiste en optimizar el sistema en un determinado periodo de tiempo, e insertarlo posteriormente en el resto del histórico, tanto anterior como posterior al periodo de tiempo optimizado.

Una forma lógica de hacerlo es tomar periodos de histórico de 2 años y optimizar sobre ellos. Para el Eurostoxx, por ejemplo, empezaríamos en 1999 ya que en 1998 hay poco histórico y de mala calidad.

Tenemos los siguientes bloques de dos años: 

1999-2000

2000-2001

2001-2002

2002-2003

2003-2004

El sistema con los parámetros de la primera optimización lo insertamos en el periodo que comprende de 2001 a 2004 y guardamos los datos obtenidos igual que en la optimización completa, para este ejemplo tomamos la ganancia por año y la máxima serie de perdidas.

El sistema con los parámetros de la segunda optimización lo insertamos por un lado en el año 1999 y por otro en el periodo que comprende de 2002 a 2004. Hacemos esto sucesivamente con los parámetros obtenidos de las cinco optimizaciones.

Con esto ya tenemos los datos mas importantes para analizar el sistema, por un lado los datos de optimización de todo el histórico. Por otro los datos conseguidos insertando el sistema con los parámetros de optimización de unos periodos en el resto del histórico.

Para analizar estos datos tenemos que definir un rango de valores entre los cuales tendrá que estar el sistema. Vamos a dar unos valores orientativos a modo de ejemplo. 

optimizacion

Lo que quiere decir esto, es que el mínimo exigible para un sistema en la optimización completa, son unos beneficios del 20% anuales con una serie máxima de perdidas del 50%. Y que los sistemas con ganancias superiores al 70% anuales y serie de perdidas menor de 10% tendrían la puntuación máxima. Quedando todos los sistemas que se muevan entre máximo y mínimo con una puntuación proporcional a su comportamiento. 

prueba-externa

En los resultados de prueba externa hay que bajar el nivel de exigencia dado que es de sentido común que ningún sistema puede mantener los resultados de la prueba interna, ya que por definición, los de prueba interna son los óptimos.

Ejemplifiquemos los datos de un sistema cualquiera y el resultado que daría nuestro protocolo. En este caso vamos a ponderar igualmente la optimización que la prueba externa. 

puntuacion

38.6 Seria el resultado de nuestro sistema, no es un resultado absoluto; si nuestro nivel mínimo exigible es 50 estaría por debajo. Pero según el grado de exigencia el nivel puede ser distinto.

De todas formas un protocolo, tiene que ser mas completo, usando además índices de acople, historicos de otros mercados y muchos mas datos estadísticos. Pero con este ejemplo vemos una forma sencilla de comparar sistemas de forma objetiva. 

 

 

Puedes encontrar más artículos relacionados en la Revista Gestión Alternativa, a la que puedes suscribirte de forma gratuita; y también puedes mejorar tu formación acudiendo a los diferentes cursos de sistemas de trading que imparte Mario Somada.

Accede a Rankia
¡Sé el primero en comentar!
Definiciones de interés