La stratégie Momentum en bourse
Bonsoir à tous,
Comme promis dans mon dernier reporting, voici en détail un post complet concernant l’approche Momentum, ses résultats, et comment fabriquer soi-même des outils permettant d’appliquer cette stratégie.
Qu’est-ce que le Momentum
L’effet Momentum est considéré comme l’une des choses les plus puissantes du monde de l’investissement.
Son application est très simple à comprendre : une stratégie Momentum consiste à acheter les actions qui ont le mieux performé récemment, et d’éviter les actions qui ont sous performé.
Ce facteur part du constat que ce qui est fort reste fort dans un futur proche. Inversement, ce qui est faible va rester faible. Ainsi, ce qui a le mieux performé dans un passé proche a toutes les chances de bien performer dans un futur proche.
La notion temporelle est très importante (notamment dans la formulation de « proche »). En effet, de nombreux tests ont été effectués sur des durées différentes et les résultats peuvent varier fortement. Au-delà d’un an, il est démontré que l’effet Momentum peut même être néfaste à cause du phénomène de retour vers la moyenne. Mais dans des courtes périodes (de 6 mois à 1 an), le Momentum est très efficace.
De nombreux chercheurs en finance étudient ce phénomène. Il est facile de constater que celui-ci fonctionne, mais très difficile d’en trouver la raison, ou même de tenter toute démonstration. Les principaux arguments tentant d’expliquer le succès de cette stratégie sont :
1) Ce facteur repose sur des biais humains et non financiers ou fondamentaux. Or les principaux défauts de l’être humain (cupidité, émotions…) n’évoluent pas ou peu au cours du temps, ce qui explique la persistance de ce facteur.
2) Les informations mettent un certain temps à être entièrement digérées par le marché, il y a donc toujours un temps d’inertie dans un mouvement haussier ou baissier.
3) Quand une entreprise a tendance à bien publier (relèvement d’objectifs, dépassement des attentes…), elle continue souvent de surprendre le marché positivement lors des prochaines publications trimestrielles. Réciproquement en cas de tendance négative.
Ce facteur est très puissant, et MSCI le calcule avec des backtests sur les principaux indices :
On constate cependant que les résultats indiciels ne sont pas 100% similaires dans le temps entre les différentes zones : il semble mieux marcher sur l’Europe (la surperformance est constante et lointaine) qu’aux USA (où la nette surperformance est plus récente).
On peut aussi le voir sur des actions individuelles. J’ai fait plusieurs analyses sur mon portefeuille personnel et c’est assez flagrant.
Schneider Electric est par exemple dans une forte tendance haussière depuis maintenant plus d’un an. Pourtant, les fondamentaux n’ont pas particulièrement changé d’une année sur l’autre. À l’inverse, Dassault Systemes qui est une très belle action de croissance ne fait plus rien en bourse depuis un an alors que son CA a pourtant progressé sur l’année.
Cela semble incompréhensible, mais c’est l’effet Momentum qui intervient :
Appliquer une stratégie Momentum et fabriquer ses propres outils
Cette partie va détailler concrètement comment appliquer soi-même (et facilement) une approche Momentum à partir d’outils qui seront totalement expliqués ici. Ces outils sont programmés sur le logiciel ProRealtime.
Je précise qu’une grande partie des idées présentées viennent de plusieurs lectures que j’ai pu faire sur le sujet, notamment de l’excellent livre Stocks on the Move d’Adreas F Clenow (qui est une référence sur le sujet).
Si les outils que je propose diffèrent du livre évoqué, je le préciserais. J’ajoute également qu’il y aura un peu de mathématiques, mais je resterais simpliste dans les explications pour ne pas perdre les moins matheux.
Comment calculer un score momentum
Tout d’abord, le principal objectif de la stratégie est de trouver les actions prises dans une forte tendance haussière, avec un Momentum le plus élevé possible.
Il ne s’agit pas ici de regarder des graphiques et de faire du suivi de tendance un peu subjectif, mais vraiment de calculer la force de la tendance.
Plusieurs outils sont possibles :
1) Calculer la distance en pourcent entre le prix et une moyenne mobile : plus le prix est éloigné de sa moyenne mobile, plus la tendance sera puissante et donc le score Momentum élevé -> c’est globalement l’approche qui donne les moins bons résultats
2) Calculer la variation du prix en pourcent entre deux périodes : plus la progression de l’action est forte sur la période, plus son score Momentum sera élevé -> c’est l’approche que j’étudie personnellement et qui est la plus connue et la plus simple à appliquer. Elle donne de très bons résultats.
3) Modéliser le prix par une moyenne mobile exponentielle sur une certaine période. Celle-ci va suivre le cours de bourse de près de par son caractère exponentiel. On calcule ensuite sa pente quotidienne (prix 2 – prix 1), qu’on lisse par une moyenne mobile courte. C’est donc la pente moyenne qui va donner la puissance de la tendance : plus celle-ci est forte, plus le score Momentum sera élevé -> c’est la méthode qu’ Andreas Clenow utilise dans son livre, qui donne des résultats similaires à celle décrite au-dessus d’après ses backtests.
On peut ensuite faire varier la période utilisée. Andreas Clenow montre qu’elle a peu d’impact à partir du moment où elle est dans la tranche 4 mois – 1 an.
Il utilise dans son cas pour le calcul une période de 90j (et une MM20 pour le lissage de la pente) soit un peu plus de 4 mois.
Dans mon cas, je calcule la variation du prix sur 6 mois (~125j), sur 1 an (~250j), et je fais une moyenne pondérée 2/3 à 6 mois et 1/3 à un an (pour donner plus d’impact à 6 mois).
Voici la partie du code de mon screener :
Corriger le Momentum de la volatilité
Nous avons identifié maintenant comment calculer un Momentum, mais cela ne suffit pas. Nous risquons en effet de nous retrouver en tête de liste avec des actions très volatiles, ou potentiellement des actions qui ont fait des gros gaps récemment (OPA, rumeurs, news…).
Nous allons donc corriger le score Momentum obtenu précédemment afin de pénaliser les actions volatiles, et de favoriser les actions plus tranquilles. Nous recherchons dans cette stratégie des actions qui montent régulièrement et calmement plutôt que celles évoluant dans tous les sens de manière effrénée. Finalement c’est un peu l’idée du Sharpe ratio pour faire une analogie.
Voici deux méthodes de calcul de la volatilité :
1) Ce que j’utilise personnellement pour mesurer la volatilité d’une action est son amplitude de variation quotidienne.
Celle-ci est le max de :
– (Plus haut du jour – plus bas du jour)/plus bas du jour
– (Plus haut du jour – cloture veille)/cloture veille -> en cas de gap haussier
– (Cloture veille – Plus bas du jour)/plus bas du jour -> en cas de gap baissier
Cet indicateur donne donc l’amplitude du mouvement d’une action chaque jour et caractérise bien sa volatilité.
On peut ensuite appliquer une moyenne mobile (peu importe la période, 20j par exemple pour une maille mensuelle, c’est celle que j’utilise) pour lisser le résultat.
On obtient ensuite un score corrigé :
Momentum Corrigé = Momentum / volatilité
Plus la volatilité est élevée, plus le Momentum devra être élevé pour compenser. On pénalise donc bien les actions volatiles.
Voici la partie du code de mon screener :
Voici à quoi ressemble l’indicateur visuel (évolution en fonction du temps) :
Globalement une zone en bleu s’affiche quand la volatilité moyenne quotidienne est inférieure à 3% et en gris quand ça dépasse le seuil. J’ai également ajouté une zone en rouge lorsque la volatilité (réelle et non moyennée) dépasse les 10%.
Dans cet exemple venant de Schneider Electric, on voit que la volatilité est généralement en zone bleue. La grosse bulle grise correspond à l’augmentation de la volatilité constatée lors du krach de Mars-Avril 2020 (covid). On voit également que les variations dépassaient les 10% certains jours (zone rouge).
2) La méthode d’Andreas Clenow est différente de celle que je propose, mais c’est aussi car sa méthode de calcul du Momentum diffère.
Je rappelle qu’il utilise la pente moyenne d’une régression exponentielle comme indicateur de Momentum. Pour établir un critère de volatilité, il va étudier la corrélation entre l’évolution du cours de bourse et la moyenne exponentielle, à l’aide de l’analyse du coefficient d’interpolation R2 (je rappelle que ce coefficient évolue entre 0 et 1). Plus ce coefficient est élevé, plus le prix suit sa régression exponentielle (et donc la volatilité est faible). Inversement, plus ce coefficient est faible, plus la volatilité est forte.
Son calcul donne donc :
Momentum corrigé = pente moyenne exponentielle x R2
Nous avons vu maintenant comment calculer un score Momentum corrigé de la volatilité. C’est donc ce score final qui nous permettra de classer les actions.
Dans l’idée, plus ce score est élevé et plus l’action est intéressante. On peut ensuite mettre en place un système de seuil : si le score > 5 on se positionne à l’achat, et si celui-ci tombe sous 5 on revend. Dans mon indicateur, si le score > 5 une zone bleue claire s’affiche, et bleue foncée si >10. Ce sont les signaux d’achat.
Voici donc le résumé global du code de programmation :
Voici également à quoi ressemblent les différents indicateurs :
En haut le cours de bourse, en dessous le Score Momentum Corrigé, en dessous la volatilité, et encore en dessous le Momentum non corrigé. Le principal indicateur à surveiller est le Momentum corrigé. On voit dans cet exemple qu’il est supérieur à 10 (signal bleu foncé), on peut donc se positionner à l’achat.
En appliquant ce programme au marché Français (Euronext Grandes Capitalisations), voici le listing obtenu actuellement (date du 02/02/2021, résultat évidemment obsolète dans le futur) :
Ajouter un filtre de tendance
A.C ajoute également deux filtres de tendance pour prendre des décisions :
1) 1 filtre sur le marché (indice quelconque, par exemple le MSCI World) avec la moyenne mobile 200j : il ne s’autorise à acheter que quand le marché est en phase haussière à long terme, donc au-dessus de la MM200.
Cela ne veut pas dire qu’il vend toutes ses positions en dessous, mais simplement qu’il ne fait plus d’achat avec les nouveaux apports d’argent, et qu’il ne remplace pas non plus les positions vendues (qui n’ont plus de Momentum). Sa position cash augmente pendant cette période. Il reprend ensuite les achats lorsque l’indice repasse au-dessus de la MM200. Il démontre dans son livre que cette pratique lui a évité en grande partie les baisses boursières des années 2000 et 2008.
Le principal inconvénient étant parfois les faux signaux (le marché passe sous la MM200, il passe progressivement en cash, le marché rebondit fortement et rapidement, il reste donc à la traine tant que la MM200 n’est pas redépassée).
2) 1 filtre sur les actions avec la moyenne mobile 100j : ce filtre est en complément du score Momentum. Si une action est sous sa MM100 (même avec du Momentum, ce qui est assez rare mais arrive parfois), il la revend. Ça lui permet de couper rapidement ses positions en cas de forte chute des cours (parfois moins d’inertie qu’une perte de Momentum si on part de haut).
Situation pratique et application de la stratégie Momentum
Cette partie reprend le détail de toutes les étapes à appliquer dans cet exemple d’une stratégie Momentum. L’objectif est d’établir un process répétable et simple à appliquer.
1) Regarder dans son portefeuille à chaque début de mois les actions qui sont soit avec un Momentum insuffisant (score < 5), soit sous leur MM100. Il faut les revendre.
2) Il faut maintenant redéployer son cash (via ses apports et les ventes effectuées). On regarde donc si le MSCI World est au-dessus de sa MM200. S’il est en dessous, on ne fait rien et on attend le mois suivant. S’il est au-dessus, on va pouvoir faire des achats.
3) Si l’indice est haussier, lancer son screener Momentum et acheter les actions dont le score est > 5 (en commençant par les meilleurs scores) et qui sont au-dessus de leur MM100. Idéalement il faut avoir environ 30 positions en portefeuille (globalement équipondérées), de manière à réduire le risque, sans non plus être trop diversifié.
Conclusion
Je précise bien que ce post n’est ni une recommandation d’application d’un filtre Momentum, ni la mise en valeur d’une méthode « miracle ».
Il y a également bien d’autres façons de l’appliquer, je ne propose ici qu’un exemple de cette stratégie. Les périodes utilisées (pour les moyennes mobiles, le calcul des scores…) sont également données à titre d’exemple et ne sont pas nécessairement optimisées. L’idée de ce post est vraiment de donner une base de réflexion, qui pourra ensuite être modifiée, complétée et améliorée selon les gouts de chacun.
Dans ma situation personnelle, je suis intéressé par appliquer un filtre Momentum sur mon portefeuille (uniquement le PEA pour les aspects fiscaux), mais pas exactement de la manière décrite ici. Je souhaite en effet rester sur mon portefeuille orienté qualité/croissance, qui constitue mon univers de départ (et non toutes les actions Françaises ou Us ou autre). Je ne vais donc pas acheter des actions en dehors de ma liste même si leur Momentum est bon.
Je souhaite simplement appliquer le filtre Momentum pour faire varier la taille de mes positions. Si une action a un score élevé et est au-dessus de sa MM100, elle sera surpondérée ponctuellement dans le portefeuille. Si une action n’a plus de Momentum ou se trouve sous sa MM100, elle sera sous-pondérée. Il ne s’agit donc pas du tout de faire des ventes totales, mais juste de faire évoluer la taille de la position. Il n’est par ailleurs pas du tout certain que l’application de ce filtre donne de meilleurs résultats qu’une pure équipondération des lignes.
----------------------------------------------------------------------------------------------
En espérant que cela puisse aider ceux qui souhaitaient mettre en place une telle stratégie mais qui ne savaient pas comment l’appliquer.
A bientôt