Para detectar el régimen de mercado en el que nos encontramos y mejorar la eficiencia de nuestros algoritmos de trading podemos emplear Redes Neuronales Artificiales.
Como ya sabemos los mercados son no estacionarios, esto es, sus propiedades estadísticas son dinámicas; van cambiando con el paso del tiempo.
Por ello, un sistema de trading diseñado para explotar una ineficiencia depende, en parte, del régimen de mercado en el que nos encontramos. De alguna forma el cambio de las propiedades estadísticas del mercado hacen que el patrón que detectamos varíe en cuanto a su potencial riesgo de pérdida o posibilidad de ganancia.
Un sistema de trading diseñado para explotar una ineficiencia depende, en parte, del régimen de mercado en el que nos encontramos.
Simplificando, ésto nos llevaría a interpretar que hay sistemas que funcionan mejor en unos régimenes que en otros. Se suele hablar de sistemas para mercados tendenciales o contratendenciales… Pero nunca es todo blanco o negro y por eso considero estas categorías algo bastas y más bien prefiero categorizar los sistemas por sus propiedades estadísticas, aunque la primera clasificación es la norma.
Imaginemos entonces que podemos detectar el régimen en el que se encuentra un mercado en cada momento y a partir de ahí activar o desactivar cualquier sistema según si está bien adaptado o no a este régimen concreto, ejecutando únicamente aquellos trades que estadísticamente tienen mayor probabilidad de éxito.
Hace ya más de un año que empecé a explorar a fondo las Redes Neuronales Artificiales como detectores de régimen, obteniendo resultados notables en su aplicación.
CONCEPTUALIZANDO UN SISTEMA DE TRADING
Para entender cómo utilizar las redes neuronales conviene conceptualizar un sistema de la siguiente forma: por una parte encontrar una señal o patrón que predice una ineficiencia explotable. Ésto lo hacemos mediante mi técnica de diseño automatizado de sistemas en dos pasos.
En el primer paso se explora la serie temporal del mercado en busca de aquellos indicadores que demuestren explicar razonablemente bien una característica determinada del mercado, como pueda ser la volatilidad, ciclos inherentes en el precio o tendencias, por ejemplo. Ésto se puede realizar analizando las componentes principales de la serie temporal, mediante el algoritmo PCA aplicado de determinada forma e incluso con otros algoritmos de análisis más potentes y complejos.
En el segundo paso se utiliza otro método que, mediante modelos de Machine Learning, van a utilizar estos indicadores preseleccionados para encontrar, ahora sí, ineficiencias en el mercado.
Sobre esto escribí anteriormente en los números 16, 17 y 20 de este mismo magazine.
Y de esta forma se obtiene la base del sistema de trading: un patrón o señal que predice una ineficiencia explotable futura.
Como explicaba, dependiendo del régimen de mercado, este sistema se comportará mejor o peor, por lo que habrá que filtrar sus operaciones conectándolo a un inhibidor diseñado a tal fin.
El inhibidor, o detector de régimen de mercado, está basado en Redes Neuronales Artificiales. Se puede hacer desde lo más sencillo hasta lo más complejo, dependiendo principalmente de la tecnología de que dispongamos y el dominio de los algoritmos… Pero, realmente, no hace falta emocionarse y diseñar una Deep Learning y ejecutarla en un cluster de GPUs… He llegado a utilizar perceptrones monocapa, lo más básico del mundo, y funcionan perfectamente.
APLICANDO EL DETECTOR A UNA CARTERA DE SISTEMAS
Para el ejemplo, he diseñado, mediante mi método propio de Machine Learning, 3 sistemas diferentes sobre el AUDUSD. El timeframe es de 1H y se han generado sobre 5 años de histórico, reservando este último año 2014 para validar estadísticamente los sistemas.
Quiero recordar que son solo la base del sistema, simplemente el patrón o señal. Los he llamado AUSY, A, B y C. Estas son las estadísticas de cada uno de ellos, junto a su combinación en una cartera o portfolio. Los resultados se muestran en pips, pues aquí lo que interesa es medir el edge de los sistemas:
A continuación diseñamos, para cada uno de ellos, su Red Neuronal inhibidora y realizamos de nuevo las simulaciones. Los resultados pueden verse en las Figuras 3 y 4.
Como se puede observar, cada sistema neuronal obtiene prácticamente la misma cantidad de pips, sin embargo lo hace en muchísimas menos operaciones que su equivalente básico. Los sistemas base consiguieron 2831 pips mediante 1494 operaciones, ganando el 61% de las veces. Cuando aplicamos el detector de régimen de mercado, los mismos sistemas consiguieron 2782 pips mediante 748 operaciones, ganando el 68,5% de las veces.
De esta forma hemos obtenido una cartera diversificada en 3 sistemas que se inhiben individual y automáticamente cuando no están en su régimen de mercado óptimo. Cada trade es por tanto de mucha mayor calidad, como podemos ver, entre otras cosas, por el incremento del Sharpe Ratio en cada sistema. Utilizaremos esto en nuestro provecho, apalancándonos más agresivamente.
OBTENIENDO BENEFICIOS
Ahora aplicaremos una gestión de capital simple, de tipo antimartingala a nuestras dos carteras de sistemas; la básica y la neuronal (Figuras 5 y 6). En la segunda, al ser más estable podremos apalancarnos más agresivamente y por lo tanto disparar los beneficios.
En un periodo de 5 años, la cartera de sistemas base obtuvo un 319% de beneficio y la cartera neuronal, compuesta por los mismos sistemas pero adaptados al régimen de mercado consiguió un 647%. Obteniendo cada año entre un 54 y un 194%.
Otro beneficio indirecto es el haber reducido notablemente el tiempo de exposición al mercado, lo cual no es para nada despreciable. En concreto la primera cartera estuvo un total de 88 días expuesta y la segunda tan solo 43.
LA DETECCIÓN UN RÉGIMEN COMO ELEMENTO FUNDAMENTAL DE UN SISTEMAS
La detección del régimen de mercado es un elemento fundamental para el trading de sistemas. Así podemos encontrar muchas más ineficiencias explotables puesto que es muy difícil hallar buenos sistemas que se adapten satisfactoriamente a todo tipo de regímenes, pero inhibiendo las señales en determinados momentos se consigue sistemas rentables con mayor facilidad.
Y además, como hemos visto, incluirla en los componentes de un sistema nos permite explotar mejor las ineficiencias que encontramos obteniendo más beneficio por menos riesgo.
La detección del régimen de mercado nos permite explotar mejor las ineficiencias que encontramos obteniendo más beneficio por menos riesgo. Además, inhibiendo las señales en determinados momentos se consigue sistemas rentables con mayor facilidad.