Trading systématique basé sur algo momentum

C’est très intéressant, merci pour le partage !

J’avais tenté de mettre en place quelque chose de similaire en PEA, mais n’ayant pas de connaissances trop poussées en finance ni le temps pour me former, j’ai laissé tomber.
Je me suis contenté d’un MSCI World Momentum, qui, à mon avis, devrait se comporter comme un MSCI World classique + une petite allocation long/short momentum. Et depuis peu, j’ai trouvé une manière d’acheter les fonds d’Alpha Architect.

J’aimerais quand même avoir votre avis sur les deux dernières questions que je me suis posées avant de déléguer entièrement la gestion à MSCI et AA :laughing:

1 - Small cap momentum
Les actions small caps momentum devraient offrir une perf supérieure aux large caps. Est-ce une bonne idée de créer un portefeuille type Alpha Architect mais avec des small caps ?
→ answer first : non, car parmi les SC, le risque que quelques titres aillent à zéro et effacent la performance du portefeuille n’est pas négligeable. Pour cela, il faut un grand nombre de lignes pour se diversifier et lisser cet impact. Mais au final, je n’ai pas trouvé assez d’éléments pour une prise de décision

2 - Et si on sélectionnait les titres du MSCI Europe avec le momentum score le plus élevé ?
Je me suis aussi demandé quelle aurait été la performance d’une approche plus « lazy » : comparer les indices MSCI Europe momentum et classiques (proxy : composition des fonds iShares) pour déduire le score « momentum » MSCI (pour ne pas faire du simple 2-12) et sélectionner les 30 titres éligibles au PEA avec le score le plus élevé. → pareil, pas de données sous la main et pas assez de confiance pour me lancer

Any thoughts ?


Peut-être celui-ci

Comment fais tu, domicilié aux US?

J’ai à prori négatif sur les small caps pour les raisons que tu indiques. En plus ma strategie avec concentration sur 10 titres n’est pas adaptée, trop de risque avec les small caps, également la volatilité est extrème qui réduit la pertinence du momentum. Il y a iShares MSCI USA Small-Cap Multifactor ETF (SMLF) . This ETF targets small-cap US stocks with strong momentum, quality, value, and low volatility characteristics. It provides a diversified exposure to small-cap stocks with the potential for higher returns driven by momentum factors. Tout es dit, obligation d’ajouter des facteurs supplémentaires. Que reste til du facteur momentum après cela, il explique un faible % de la perf et 870 titres.

dans ce cas le mieux est d’utiliser le MSCI Europe Momentum. Dans le prospectus tu as une comparaison entre MSCI Europe et MASCI Europe momentum.https://www.msci.com/documents/10199/4b089780-97b4-4303-a0cf-086ee31a5a85

Oui mais la comparaison débute avec 50 titres minimum. Déjà avec 50 titres je pense que l’effet momentum est dilué.
En fait j’'avais complétemeent oubié, mais j’avais déjà construit tout un argumentaire en faveur d’un portfolio concentré avec des références académiques pour me rasusrer moi-meme! Ci après

Arguments en faveur d’une diversification extrêmement limitée avec 10 positions
Avec un portefeuille à 10 positions, nous excluons le bon vieux principe de diversification. Cependant, de nombreuses études démontrent que seule une poignée d’actions contribuent à la performance globale, en faveur de la concentration des actions. Owen A. Lamont affirme qu’une concentration accrue du marché boursier ne signifie pas un risque accru. Voir Insights Owenomics. Dans l’article « Long-Term Shareholder Returns: Evidence from 64,000 Global Stocks », Financial Analysts Journal, octobre 2020, les auteurs Hendrik Bessembinder, Te-Feng Chen, Goeum Choi, K.C. John Wei démontrent que « les 2,4 % d’entreprises les plus performantes représentent la totalité des 75 700 milliards de dollars de création nette de richesse sur les marchés boursiers mondiaux entre 1990 et décembre 2020 ». Autrement dit, la plupart des gains à long terme proviennent d’un petit nombre d’actions. Selon M. Mauboussin, entre 1926 et 2022, 55 000 milliards de dollars de création de richesse ont été enregistrés, et 2 % des entreprises ont créé 90 % de cette nouvelle richesse. C’est extrêmement biaisé. » (Entretien de M. Mauboussin, Financial Times, Ethan et Robert Armstrong, février 2024, Unhedged Newsletter. En conclusion de son article « Naissance, mort et création de richesse » paru dans Counterpoint Global Insights, Mauboussin souligne que « l’asymétrie dans la création de richesse des entreprises suggère deux approches d’investissement potentielles. La première consiste à rechercher une large diversification dans un fonds indiciel. Si l’avenir est similaire au passé, la surperformance des créateurs de richesse compensera largement la sous-performance des perdants. La seconde consiste à construire un portefeuille qui cherche à éviter les destructeurs de richesse tout en détenant les créateurs de richesse. »
Citant également W.J. Bernstein dans la 2e édition de « Les quatre piliers de l’investissement », « Un chercheur a constaté que depuis 1926, la majorité des entreprises ont sous-performé les bons du Trésor et que les 96 % les moins performants, au total, ont à peine réussi à les rattraper. Autrement dit, seulement 4 % des entreprises ont fourni la totalité de la prime de risque des actions. » L’étude sur les ventes a révélé que sur des horizons temporels très longs, seulement 23 % des portefeuilles aléatoires de cinq actions, 37 % des portefeuilles de 25 actions et 43 % des portefeuilles de 100 actions battent le marché… Il n’est pas exagéré de dire que l’on trouve un nombre relativement faible d’aiguilles dans une botte de foin – les 4 % d’actions très performantes"

C’est précisément ce que nous faisons avec les variantes de portefeuille ZAKZAK : nous ne détenons pas la botte de foin entière, mais nous identifions les 5 % d’actions les plus performantes en tirant parti de la prévisibilité du momentum pour optimiser le fonds. En incluant logiquement davantage d’actions plus basses dans l’échelle du momentum, nous courons le risque de diluer l’impact de la stratégie de momentum, qui doit logiquement être maximal avec des actions proches du momentum le plus élevé.

En réalité, selon la théorie moderne du portefeuille, plus le nombre d’actions dans un portefeuille augmente, plus son profil de risque se rapproche du risque systématique (bêta), c’est-à-dire du risque global du marché sous-jacent. Avec environ 20 actions, le risque du portefeuille est systématique. Ainsi, pour capturer le risque non systématique, c’est-à-dire le risque lié aux facteurs propres à une entreprise, il faut réduire le nombre d’actions en portefeuille. Nous considérons le facteur de momentum propre à une entreprise. Pour une explication simple, nous nous référons au chapitre « Récolter les bénéfices ». En augmentant le risque, comme le montre le célèbre ouvrage « Une promenade aléatoire à Wall Street » de B.G. Malkiel.
Ainsi, conserver le panier de titres ne peut que réduire les rendements. Cependant, pour tirer profit de ce petit nombre d’actions affichant une performance exceptionnelle, il est essentiel de savoir les reconnaître. C’est précisément l’objectif de la stratégie momentum que nous appliquons pour constituer la famille de portefeuilles . Par conséquent, nous reconnaissons un risque plus élevé pour des rendements ajustés au risque potentiellement plus élevés. Avec une stratégie aussi agressive, il est important de bien appréhender le risque inhérent.

1 « J'aime »

J’ai ouvert un compte chez TastyTrade (courtier US), puis j’ai transféré mes titres sur IBKR. Il n’y a pas besoin d’être résident US pour ouvrir le compte.

J’avais plutôt celui-là en tête
AQR Small Cap Momentum Style Fund (ASMOX) - Mutual fund
Mais sur le plan fiscal, pas idéal car je crois (de mémoire) qu’ils distribuent les gains en capital

En ce qui concerne SMLF, pourquoi pas intégrer d’autres facteurs, mais j’avais fait une regression sur portfolio visualizer et si j’ai une bonne mémoire il y avait un alpha négatif non négligeable

Oui, l’idée était de prendre les 30 titres éligibles au PEA avec le momentum score plus élevé (donc, 30 titres en equal weight plutôt que 100+ pondéré market cap weight x momentum x momentum quality)

Edit: j’ai voulu utiliser le score momentum MSCI plutôt que du simple 2-12 et/ou 2-6 parce que leur score inclut une notion de qualité du momentum (inférieure à celle de AA, mais mieux que rien)

1 « J'aime »

Ca ne répond pas complètement a la question, mais on peut en déduire que des mid caps sont mieux que big caps:

De plus, les backtests avec le SBF120 ou uniquement avec le CAC40 ont permis de mettre en évidence une bien meilleure performance avec le SBF120 (par exemple la performance brute pour un portefeuille de 10 actions tombe à 18% avec uniquement le CAC40 contre 26% avec le SBF120 !).

Par contre 30 titres, de ce que j’ai pu lire un peu partout, vous allez perdre en perf ! L’ideal semble etre 10 à 20 actions

Merci,
pourrais-tu stp donner un lien vers le post original ?

Ce n’est pas un post :slight_smile: Algorithme et backtest

1 « J'aime »

@ZakZak

Salut, après un peu de travail de mon côté, je reviens vers toi sur ce sujet.

J’ai réussi à extraire les données de manière automatique en Python puis je travaille les données sur Excel ensuite. Je n’arrive pas encore à faire quelque chose d’assez visuel en restant uniquement sur Python, et j’ai besoin de visuel perso.

J’ai lancé quelques back tests, et cela m’a pris un temps fou de réussir à éliminer le biais du survivant (à cause des valeurs qui sont entrées dans le SP500 que récemment par exemple).
Mes résultats sont plutôt bons, mais pas impressionnants non plus, surtout quand on ajoute le coût des transactions chaque mois.

Si jamais tu as un peu de temps pour répondre à ces quelques questions :

  • tu utilises la technique décrite dans Trended Momentum de Charlie X. Cai. Cet article parle principalement pour moi de mesure de clarté de la tendance grave au R2. La seule méthode qu’il décrit vraiment serait d’isoler le quintile le plus performant, puis ensuite le quintile le plus clair et niveau tendance. Est-ce ceci que tu réalises pour identifier tes 10 titres ?
  • tu dis ensuite utiliser la variation de Clenow qui multiplie la pente sur 200 jours par le R2 sur 200 jours.
    Je n’arrive pas à faire un mix des 2 méthodes : soit j’identifie mes 10 titres avec la première méthode (et pas besoin de calculer le score de la 2e). Soit j’utilise le score de la 2e méthode : mais cela ne fonctionne pas car cela va parfois me faire privilégier des titres avec un R2 excellent, mais qui ne performent pas du tout, par rapport à des titres performants mais dont le R2 n’est pas aussi bon, ce qui les plombe.
  • ou alors tu utilises la méthode du quintile pour identifier les actions performantes puis la 2e méthode pour appliquer uniquement à ces actions sélectionnées le calcul du Momentum ?

J’ai pero testé ces 3 méthodes :

  • méthode des quintiles X2 (quintile performance puis quintile clarté de la performance) : résultats corrects
  • méthode du calcul du Momentum par le produit pente * R2 : mauvais résultats car des titres ayant de mauvaises performances sont sélectionnés.
  • méthode de calcul quintile performance puis calcul du score du momentum uniquement appliqué à ce quintile : résultat satisfaisant.

Mais dans aucun cas je ne retrouve quelque chose qui bat le marché à plate couture, comme ce que tu présentais il y a quelques mois.

Ça t’embêterait de détailler un peu plus ta méthode CTO ? Il y a probablement un mix entre ces 2 méthodes que ja n’arrive pas à saisir.

Pour info, j’applique aussi une stratégie de sortie du marché basé sur l’indice qui décrit le pourcentage des entreprises du SP500 au-dessus de leur MM200. Je cherche une stratégie « dual momentum » en gros.

Un grand merci d’avance.

L’algorithme comprend les étapes suivantes, effectuées mensuellement :

  1. Sélection des tickers éligibles sur SP500 ou RUSSELL
    a. Le biais de survie est éliminé via Norgatedata ; seuls les tickers constitutifs du marché à la date du backtest sont sélectionnés.
    b. Une limite de prix est fixée pour éliminer les tickers de faible valeur. Cette valeur est augmentée d’un pourcentage fixe chaque mois.
  2. Le momentum est calculé comme la somme des rendements mensuels (moyenne des rendements quotidiens) sur une période de 10 mois.
  3. La volatilité est calculée comme la somme standard des rendements mensuels
  4. Le quantile supérieur du momentum est conservé.
  5. Le momentum de clarté de tendance est calculé en créant une série chronologique de cours de clôture sur 200 jours . La régression est calculée et un score est obtenu (cf Note).
  6. Le quantile supérieur du score de clarté de tendance est conservé.
  7. Combiner les deux quantiles supérieurs obtenus pour sélectionne qui constitueront le portefeuille mensuel. Les deux quantiles supérieurs sont fusionnés, les doublons sont supprimés (même ticker dans la liste des deux) jusqu’à atteindre le nombre de 10 positions
  8. Le capital alloué à l’achat du portefeuille mensuel correspond au capital de trading disponible multiplié par la valeur de couverture « BAA10Y_2 ». La part du capital de trading allouée à chaque position est pondérée de manière égale. L’alloc_method peut être modifiée pour tenir compte de l’allocation cible de volatilité. allocation basée sur le momentum, etc…)

note
La mesure de la clarté de la tendance est donc le R au carré issu de la régression du cours quotidien de l’action sur une séquence de dates au cours des 12 derniers mois (nécessitant au moins 200 jours). Le calcul utilisé pour la stratégie est la variation de A. Clenow comme suit : « calcule de manière exponentielle la pente de régression, dans ce cas sur 90 jours, et la multiplie par le R². Cela nous donne un momentum, ajusté en fonction de la force de la tendance.» La version est légèrement différente : l’entrée correspond aux rendements quotidiens sur 200 jours, la sortie est la pente de régression du logarithme des rendements quotidiens au carré par le R² de la régression. Le code :
x = np.arange(len(ts))
result = stats.linregress(x, log_ts)
score = result.rvalue ** 2
return (score)

1 « J'aime »

Oui j ai simulé des sorties après pertes de 1%, 2%, 5%,10%,20% sans remplacement de la valeur. Dans ce cas il est préférable de ne pas sortir et de rester investi.

J ai testé différentes méthodes pour le sizing des positions telles que la volatilité, le momentum, l inverse du momentum, le optimisation Merton ou Kelly. Ce qui marche le mieux c est la plus simple 1/N N = number of positions. Tu verras que c est le cas pour de nombreuses strat. L equal weighting est souvent le plus effectif.

Une technique similaire et efficace https://alphaarchitect.com/wp-content/uploads/2021/08/Avoiding_the_Big_Drawdown_with_Trend-Following_Investment_Strategies.pdf

pour info, j’ai découvert ce nouvel ETF UCITS sur un autre forum: Global Smaller Companies ETF, qui devrait être la version côtée de ce fonds.
Il a une exposition pas mal (benchmark vs facteurs marchés développés de Fama-French en excluant CMA:

  • alpha : -0.02% mensuel (non significatif)
  • MRP : 1.16
  • SMB : 0.69
  • HML : 0.13
  • RMW : 0.14
  • WML : 0.18

Par contre, les AUM sont de <20 M$

Hello @ZakZak

incroyable ton expérience et merci infiniment de partager tes connaissances.

J’ai plusieurs points ou j’aimerais bien avoir ton avis:

  1. Pourquoi avoir choisi 200 jours de données pour calculer la pente exponentielle ?
    Dans le livre “Stocks on the Move” d’Andreas F. Clenow, il est plutôt question d’un horizon de 90 jours. J’imagine qu’une approche mixte, par exemple 50 % sur 90 jours + 50 % sur 200 jours, permettrait de capturer à la fois le momentum moyen et long terme.
    Qu’est‑ce qui t’a conduit personnellement à utiliser 200 jours ?

  2. Mon environnement de momentum tourne actuellement sur le Russell 1000.
    Conseilles‑tu d’aller plus loin et de basculer vers le Russell 3000 ?

  3. Côté algo : il s’exécute automatiquement une fois lancé manuellement tous les mois, avec gestion des achats et des ventes. Je cherche maintenant à mettre en place un environnement en ligne sur cloud, de façon à pouvoir me connecter de n’importe où et déclencher le bot chaque mois.
    Est‑ce que ton système est également entièrement automatisé ?
    Et si oui, aurais‑tu des conseils pour héberger un bot Python dans le cloud tout en minimisant les coûts ? un env ou l’on paye uinquement lorsqu’il est activé c’est a dire qq minutes par mois

  4. les performance que tu partages momentum pure sont incroyable. beacoup plus que celle calculé par F.Clenow, aurais tu une piste pk un tel écart ? (est-ce uniquement la durée de back test qui est beaucoup plus courte dans le livre 1994-2014).

merci pour ton partage d’idée.

tres bonne journée,

Carl

EN

En fait je ne veux pas chercher à tester diférentes mesures du momentum parce qu’au final cela revient vouloir chercher à optimiser (overfit) et c’est contreproductif. Donc 200J parce que j’aligne mes 2 calculs de momentum, le classique et la régression à 200J. Tu peux jouer avec tellement de mesures. IE Wes Gray de Alpha Architect élimine de l’univers les 5% low momentum à 6 et 9 months. Tu peux aussi calculer mes momentum à 1/6/9/12 mois et prendre le momentum moyen.

Russell 1000, Russell 3000 est fragile, beaucoup de boites qui n’ont aucun profit ou profit érratique, liquidité limité. Il te faut éliminer les valeurs dessous 20$ et aussi si tu peux éliminer toutes les boites qui n’on pas vu leurs profits trimestriels augmentés sur les 3 dernières années

Oui ce serait idéal mais j’ai abandonné l’idée, peu de bénéfice au final pour un investisseur indivduel avec gestion de 10 valeurs et un trading mensuel. Si je montais un fund ce serait ben sur différent et aussi différent pour un trading journalier. Mais au final mon temps étant compté, je préfère le consacrer à l’exploration de nouvelles strat.

Sans oublier les erreurs potentielles de mon côté. Je serais curieux de connaître les perfs aue tu obtients de ton côté. Oui la période 2014/2024 change la donne assurément avec d’excellentes années après 2000 malgré 2002.

@ZakZak merci pour tes inputs. clair

Concenrant mes stats : les performance live de mon wallet sont incroyable. je trade sur le Russel 1000. Je pense que c’est le bon compromis sur taille entreprise et risque acceptable.

Wallet 57,7 % | SP500 4,6% since inception Sep.25

@ZakZak et toi ? ca donne quoi sur ce début d’année ?

( pour info, si je peux le partager, pour ceux qui sont intéressé je mes a jours mes perf & infos ici : Trading | ready to boost your income )

merci

@ZakZak et concernant le back testing je suis autour de 18,8 % annuel sur un horizon 1994-2024 sur le SP500.

(j’ai coupé mon poste, finary ne m’autorise pas a avoir trop de screenshot sur un poste)

assez proche de ce que je lis sur la literature. j’ai boosté ce rendement en passant sur des actions plus mid cap avec le russel 1000.

Tu dois pouvoir reduire le drawdown considérablement en appliquant une règle riskoff/riskon pour sortir ou réduire ton expo au marché en cas de trend neg.

Regarde ici

https://alphaarchitect.com/avoiding-the-big-drawdown-with-trend-following-investment-strategies/

1 « J'aime »

Merci pour tes conseils. Je vais ajouter plusieurs filtres au sein de l’univers Russell 1000, et je vais également voir si je peux intégrer un filtre spécifique pour réduire le drawdown mais sans sacrifier la rentabilité. Ma priorité reste un Sharpe ratio élevé associé à un max performance.

@ZakZak Est‑ce que tu as étudié d’autres types d’algorithmes ? Diversifier un portefeuille à travers plusieurs approches me paraît essentiel.

De mon côté, j’ai déjà travaillé sur plusieurs stratégies :

  • Stratégie Value : basée sur What Works on Wall Street. j’ai retenu le PSR, qui ressort comme le meilleur ratio. Les résultats sont encourageants jusque‑là : environ 15 % depuis le début de l’année, avec une volatilité plus faible que le momentum.

  • Pair Trading : j’ai fait plusieurs tentatives, mais je n’ai jamais obtenu de résultats vraiment convaincants. Pourtant, d’après la littérature, c’est une stratégie pertinente pour apporter un hedge naturel au portefeuille. Elle est théoriquement capable d’offrir un très bon Sharpe ratio, même avec une performance brute modeste et avec du levier, ça peut devenir très intéressant. Je serais vraiment curieux d’avoir ton avis sur le sujet.

bonne journée

Je suis sur 2 stratégies, une sur le SP500 en momentum, monthly rebalance, 10 tickers en CTO

une stratégie type Tactical Asset Allocation (rotation des assets selon une technique proche de Gary Antonacci de momentum absolu et relatif https://www.optimalmomentum.com/mais avec une détection d’un canary jaune risk on/risk off ) suivant les règles de ce papier Dual and Canary Momentum with Rising Yields/Inflation: Hybrid Asset Allocation (HAA) https://papers.ssrn.com/sol3/papers.cfm?abstract_id=4346906. La stratégie a été explorée par Member Login - Allocate Smartly

L’intéret est d’apporter une couche macro au momentum et aussi de pouvoir jouer sur des etfs reproduisants différents indices et assets qui tendent différement selon les conditions macros . J’utilise 8 assets, SP500, EM, Japon, Latin America, World, Gold, Obligations, Real Estate. La stratégie sélectionne 4 assets. Evidemment en 2025 ça a super bien fonctionné avec 2 assets ultra performant Gold et Japon.

Oui j’ai implementé la stratégie telle que décrite pa Wes Gray dans son livre Quantitative Value mais je ne suis pas convaincu par Value, (evidemment je crois aux fondamentaux mais l’ajustement prix/valeur est très aléatoire avec des durées d’ajustement qui peuvent être trop longue pour ma patience. Il ya d’excellent papier en faveur d’un 50% momenum et d’un 50% value. Mais tu vas diluer la perf.

Oui j’ai testé mais pas réussi à sortir un sharpe intéressant. C’était une stratégie très en vogue il y a 20 ans mais qui depuis comme on dit a été arbitré. Le sujet est constament revisié comme ici https://blog.harbourfronts.com/2024/11/10/rethinking-pairs-trading-can-traditional-methods-still-deliver-returns/

et ici https://blog.harbourfronts.com/2026/01/26/modern-pairs-trading-what-still-works-and-why/

et ici https://economics.yale.edu/sites/default/files/2024-05/Zhu_Pairs_Trading.pdf

J’ai pas eu le temps d’y revenir.

Pour l’instant je cherche une stratégie qui intègre 3 inputs, technical (prix et volume), fundemental (eps growth et sales growth) et macro (market regime). J ‘expérimente beaucoup en algorytmant le livre de WIlliam J. O’Neill “How to Make Money in Stocks). Résultats pour l’instant très intéressants mais j’ai pas encore une stratégie opérationnelle.

Enfin je test beaucoup les techniques d’AI supervised learning associé à du ranking (analogie avec le ranking des recherches sur internet), ici étant donné un ensemble de critères prédisant le return ranking des stocks sur n mois , trouve le rang des stocks pour le prochain mois. Pour te mettre en appétit regarde cà Learning to Rank - by Quantitativo - Quant Trading Rules

Le problème avec le supervised learning c’est l’hyper paramétrisation et donc difficile de savoir comment ajuster le modèle. Encore beaucoup travail de mon côté.