Existe un gran corpus de artículos académicos en apoyo al efecto de la tendencia (momentum) en los precios futuros de las acciones de bolsa. Múltiples artículos apoyan de una forma u otra la presencia de este efecto que básicamente dice que los precios de un activo continuarán moviéndose en una cierta dirección para cierto periodo de tiempo. De los artículos que apoyan la tendencia, este de Lo y MacKinlay sentencia con la siguiente conclusión:
"Hemos rechazado la hipótesis del paseo aleatorio para los rendimientos semanales utilizando una prueba simple basada en volatilidad. Este rechazo no puede ser totalmente explicado por operaciones infrecuentes o por volatilidades variables en el tiempo."
La esencia de esta conclusión, o conclusiones similares, aparecen repetidamente en la literatura financiera y es de la máxima importancia ante el problema de la predictibilidad del mercado:
"Los resultados aquí presentados rechazan de manera fiable la hipótesis de que los precios de las acciones de bolsa siguen un paseo aleatorio." De aquí.
"La hipótesis de paseo aleatorio para los rendimientos diarios para el mercado Indio se rechaza utilizando la estadística Q." De aquí.
"Aplicando la prueba Zivot-Andrews a los precios de acciones de diecisiete mercados emergentes, se alcanza una conclusión interesante. La ganancia en potencia de prueba permite rechazar la hipótesis de paseo aleatorio con niveles de significación estadística del 1% o 5% en diez mercados." De aquí.
La controversia está servida en cualquier caso ya que podemos encontrar al menos el mismo número de artículos que dicen lo contrario, que los precios de mercado siguen efectivamente un paseo aleatorio.
"En este artículo se ha establecido que los precios del JSE están decorrelados y por lo tanto se comportan como un paseo aleatorio. Este hallazgo conlleva implicaciones de máxima importancia para los inversores, reguladores e investigadores que significa, inter alia, que la imposibilidad de predecir el mercado implica que los inversores no pueden vencer las reglas de comercio del mercado." De este muy reciente artículo.
"El índice KSE-100 se comporta siguiendo la hipótesis de paseo aleatorio (HPA) y la Hipótesis de Mercados Eficientes (HME) de acuerdo a los resultados de las pruebas utilizadas." De este otro artículo.
La controversia sobre los paseos aleatorios en Wall Street está servida, se sirvió tan pronto como 1973, sigue servida y generando confusión en los operadores y reguladores de los mercados. Para poder beneficiarse del comercio de acciones, para mantener una cartera de activos equilibrada, para poder operar bajo un mercado saludable que efectivamente asignen los recursos financieros de la manera más eficiente posible es de vital importancia determinar si los precios siguen estos paseos aleatorios, ya que guiará las aproximaciones cuantitativas con las máximas probabilidades de ofrecer buenos resultado.
No sabemos posicionarnos dentro de este campo, ni en el lado del paseo aleatorio ni en el lado de los componentes predecibles, además, no nos atrevemos. Solamente vamos a intentar obtener algún beneficio utilizando el rechazo a la hipótesis de paseos aleatorios y verificando la presencia, en esta publicación, de los efectos de tendencia, ya que nos sorprende que, con los recientes aumentos de la accesibilidad a los datos de mercado, aumento de poder de computación y el interés general en este tema, la confusión parece crecer y no disminuir. También sospechamos que este dilema no se resolverá en el futuro, ni cercano ni lejano.
Utilizaremos algunas de las informaciones presentes en este artículo: "Fact, Fiction and Momentum Investing", en el que la estrategia de tendencia SMB (Suben Menos Bajan) se describe de la manera más simple posible: compraremos las acciones que subieron en el pasado y venderemos acciones que bajaron. Inicialmente, siguiendo la estructura del artículo en cuestión, miraremos 1 mes al pasado para determinar los rendimientos de los que suben y los que bajan. Entraremos en 15 posiciones en cada dirección para obtener una mínima diversificación del riesgo de sector y lo haremos dos veces, una para acciones de gran capitalización y otra para acciones de pequeña capitalización. Empezaremos en Enero de 2012 y terminaremos en Septiembre de 2020. Asi es como se comportaron estas dos estrategias en los últimos años, primero gran capitalización:
Y pequeña capitalización:
La misma estrategia para dos secciones diferentes del mercado da resultados completamente diferentes. Nótese que las empresas de menor capitalización son las menores de las 2000 empresas más capitalizadas de los mercados NYSE y NASDAQ. Estos 8 años de prueba retroactiva indican dos cosas de las que podemos estar seguros:
La estrategia de tendencia no se comporta igual para diferentes capitalizaciones.
La estrategia de tendencia, por sí sola, no es buena en ninguna caso.
Vamos, seleccionando acciones para el próximo mes basándonos solamente en el rendimiento del mes anterior parece no ser la mejor de las estrategias, incluso aunque la relación entre posiciones de compra y de venta sea 1 aparentemente el riesgo de mercado sigue presente.
Siendo tal y como es, durante este periodo analizado, la persecución de la tendencia tan mala estrategia, ¿que podemos decir de su gemelo maligno (o igual bueno)? Comercio de reversión. ¿Qué pasará si usamos el mismo modelo que hemos utilizado para las capitalizaciones menores pero en vez de comprar ganadores y vender perdedores hacemos lo contrario? Esto es lo que obtenemos en una estrategia de reversión:
En este periodo el efecto de reversión parece más fuerte que la tendencia en términos de rentabilidad, aunque nuestros activos no se desintegran en este periodo de 8 años, la gran mayoría de los rendimientos están concentrados en la fase de recuperación post COVID19 entre Febrero y Marzo de 2020, están concentrados en las durísimas bajadas y subidas de precio de este periodo tan sumamente volátil, indicando que la estrategia de reversión puede que tampoco sea suficiente como para construir un modelo de gestión por sí misma. ¿Existen otros ángulos sencillos desde los que atacar al modelo básico de tendencia? Ya que al parecer nuestra estrategia de posiciones largas y cortas equilibradas no parece estar dando buenos resultados veamos qué ocurre si perseguimos sólo una parte, solamente entraremos en posiciones largas dentro de estas acciones de capitalización baja:
Todavía no es universalmente bueno. Entre 2012 y 2014 existió un buen periodo, con retornos del 100% donde, ¡La reversión funciona!, al igual que durante el comienzo de 2020, pero no hay ninguna otra señal que nos indique cual es el comportamiento general del mercado, estas estrategias de tendencia o reversión están condenadas al fracaso en el largo plazo ¡La reversión no funciona!. Parece ser, por lo tanto, que los movimientos que generan los retornos del mercado son individualmente aleatorios cuando en realidad lo que ocurre es que nos falte identificar el tipo de proceso aleatorio operante en cada momento. Es aparente en las pruebas anteriores que los periodos de ganancias no son solamente fruto de la suerte o del azar, parece existir alguna fuerza que atrae o repele los precios, un estado "oculto" del mercado que no se percibe a través de la acción de los precios solamente. La tendencia se manifiesta, sí, pero se necesitan sin duda fuentes de datos adicionales para construir estrategias que se sobrepongan al mercado.
Por favor recuerde que las publicaciones en Ostirion.net no son consejos financieros. Ostirion.net no mantiene posiciones en ninguno de los instrumentos financieros que se mencionan en esta publicación en el momento de la publicación. Si necesita más información, apoyo con la gestión de activos financieros, desarrollo de estrategias de trading automatizados o despliegue táctico de estrategias existentes no dude en contactar con nosotros aquí.
Aqui esta el codigo y el modelo para generar estas pruebas de tendencia utilizando Quantconnect:
Y este código nos permitirá seleccionar un universo de acuerdo a la capitalización de mercado de las acciones:
from QuantConnect.Data.UniverseSelection import *
from Selection.FundamentalUniverseSelectionModel import FundamentalUniverseSelectionModel
class CapitalizationUniverseModel(FundamentalUniverseSelectionModel):
"""
Universe model that selects stocks by capitalization. It performs an initial
selection by traded volume to improve algorithm speed.
"""
def __init__(self, filterFineData=True, universeSettings=None, securityInitializer=None):
'''
Initializes a new default instance of the Capitalization Universe Model.
'''
super().__init__(filterFineData, universeSettings, securityInitializer)
self.numberOfSymbolsCoarse = 2000
self.num_symbols = 50
self.price_limit = 1
self.last_month = -1 # Start first period
self.is_take_top = True
def SelectCoarse(self, algorithm, coarse):
'''
Drop securities which have no fundamental data or have too low prices.
Select those by dollar volume ordered according to self.is_take_top.
'''
if algorithm.Time.month == self.last_month:
return Universe.Unchanged
self.last_month = algorithm.Time.month
selected = sorted([x for x in coarse if x.HasFundamentalData and x.Price > self.price_limit],
key=lambda x: x.DollarVolume, reverse=self.is_take_top)
return [x.Symbol for x in selected[:self.numberOfSymbolsCoarse]]
def SelectFine(self, algorithm, fine):
''' Selects the stocks by market cap '''
sorted_market_cap = sorted([x for x in fine if x.MarketCap > 0],
key=lambda x: x.MarketCap, reverse=self.is_take_top)
return [x.Symbol for x in sorted_market_cap[:self.num_symbols]]
Comments