La semana pasada te mostré cómo recopilar datos fundamentales de las acciones que componen el S&P500 y los importamos a Amibroker.
De esta manera, seremos capaces de mezclar conceptos fundamentales con análisis algorítmico.
En este artículo vamos a ver un ejemplo de un sistema que se basa en datos fundamentales y comprobaremos si realmente hay cierta ventaja estadística.
Vamos a plantear una estrategia muy sencilla. Será un sistema de tipo rotacional de temporalidad mensual.
Escogeremos aquellos valores que, con un ROE positivo (dan beneficios), tienen un mayor crecimiento del mismo de un trimestre para otro.
Tendremos en cuenta que un valor de ROE por sí sólo no nos dirá nada por muy positivo que éste sea si no tenemos un análisis de la tendencia del mismo. Es de esperar, por tanto, que un mayor crecimiento del ROE, y por tanto unas mayores expectativas de crecimiento de la compañía, deberían verse reflejadas en el precio.
Para cuantificar ese crecimiento vamos a utilizar la función de Amibroker LinRegSlope
que nos va a indicar la pendiente de la regresión lineal del ROE, y por tanto su pendiente. Tan sencillo como escoger cada mes aquellos valores con más pendiente y ya tenemos sistema.
Finalmente, vamos a seleccionar un periodo de 4 meses, ya que los resultados son trimestrales y necesitamos darle un mes de margen para que el sistema tenga en cuenta tanto el último resultado publicado (mes anterior) y el de tres meses antes (hace cuatro meses).
Además, ya que estamos planteando un sistema que busca acciones de alto crecimiento vamos a premiar aquellas compañías con menor capitalización. Para ello vamos a realizar un cálculo indirecto con un multiplicador del precio por el volumen.
De esta manera tendremos una puntuación para cada compañía basada en la pendiente de su crecimiento de un trimestre para otro dividido de su factor de capitalización.
Nos quedará por tanto un sistema que buscará las acciones de menor capitalización y mayor crecimiento en la evolución de sus beneficios. Para ello, establecemos la condición de que el ROE sea mayor que 0 y un tope del factor de capitalización a partir del cual no operaremos.
Por otra parte, en la configuración de Amibroker no debemos olvidarnos de seleccionar el timeframe mensual y un delay de 1 tanto para el buy como el sell considerando close como precio de entrada y salida.
De esta forma, ya que los datos no se publican de forma inmediata, operaremos al final del mes siguiente a la fecha de registro de resultados.
A continuación podemos ver los resultados del backtest en los que vemos que el sistema lo hace francamente bien y se puede obtener una buena rentabilidad si compramos las acciones con mayor crecimiento.
Si optimizamos el límite del factor de capitalización (LFC) sobre el cual no operaremos vemos claramente que el sistema penalizará operar con acciones de mayor capitalización.
En el análisis de los resultados no debemos perder de vista un matiz muy importante.
Estamos haciendo un backtest con las compañías presentes hoy en día en el S&P500, pero estamos obviando aquellas que en los últimos años lo han hecho mal y han salido del índice. Esto es así porque la web de macrotrends solo tiene datos de los componentes actuales y compañías activas. Esto genera un sesgo de supervivencia que debe ser tenido en cuenta y tomar los datos con más precaución.
También debe considerarse que el periodo utilizado llega hasta el año 2010 con lo que se está realizando el análisis en un periodo en el que el mercado lo ha hecho «bien».
A pesar de todo ello, sí que parece que el sistema tiene una rentabilidad muy alta y bajo drawdown, aunque seguro que no tanto como en los resultados. No obstante, lo hace bastante bien en el último año batiendo con claridad al mercado.
Además es un sistema sencillo sin un montón de variables sobreoptimizadas en el cuál únicamente hemos aplicado una lógica empresarial, comprar lo que más crece.
Como resumen podríamos apuntar que la utilización de los datos fundamentales nos abre un campo prácticamente infinito para utilizar en nuestros sistemas ya sea mediante el uso de filtros de crecimiento, buscar compañías baratas, o bien el uso de sistemas tendenciales en los que podemos combinar una estrategia de momentum con el análisis de crecimiento de la empresa.
En definitiva, la cuestión no es si el análisis técnico es mejor o peor que el análisis fundamental, lo verdaderamente importante es desarrollar un sistema con un adecuado control del riesgo y una expectativa positiva sustentada en un análisis previo que nos permita elegir las mejores acciones.
👨💻 Código AFL de Amibroker
Este es el sistema que hemos utilizado para hacer la simulación en Amibroker.
Este artículo fue cortesía de Sergio Meana para MKTSignals
Si te ha gustado no olvides dejarnos tu opinión 😉
0 comentarios