Choppiness Index
Distingue marché en tendance (choppiness bas) de marché en range (choppiness haut). Conçu par E.W. Dreiss. Borné [0, 100].
Définition
Choppiness répond à : « Sur les N dernières barres, le marché est-il directionnel ou bruyant ? » Combine la somme des True Ranges (mouvement total) avec le range global de la fenêtre. Si TR_sum >> range global → marché bruyant qui zigzague. Si TR_sum ≈ range global → marché qui suit une direction.
Formule
TR_sum = somme des True Range sur N barres
maxH = max(highs[-N:])
minL = min(lows[-N:])
Choppiness = 100 × log₁₀(TR_sum / (maxH − minL)) / log₁₀(N)
Borné [0, 100] par construction logarithmique.
Paramètres dans le code
- Période : 14
- Implémentation :
forex-assistant.tsx:630— fonctionchoppiness(highs, lows, closes, period = 14) - Cas dégénéré : retourne 50 si
closes.length < period + 1ou si range nul.
Interprétation
| Choppiness | Lecture |
|---|---|
| > 61.8 | Range/chop — marché bruyant, éviter le trend-following |
| 38.2 – 61.8 | Mixte |
| < 38.2 | Trending — marché directionnel, OK pour trend-following |
Les seuils 38.2 et 61.8 sont des niveaux de Fibonacci (61.8% et 38.2% de 100), choisis par Dreiss pour leur résonance esthétique (pas de justification statistique particulière).
Logique de score (forex-assistant.tsx:1693)
> 61.8 → score = -0.4 (max 0.4) // chop = pas de direction
< 38.2 → score = +0.4 (max 0.4) // trending → confiance dans la direction du moment
sinon → score = 0 // mixte
Particularité : le score ne donne pas la direction — il donne la confiance qu'il y a une direction. Combiner avec un indicateur directionnel.
Pièges
- Direction-aveugle : Choppiness ne dit pas si on monte ou on descend, juste si le marché est tendanciel. Le score
+0.4en trending est ambigu — on l'applique au plus net signal directionnel disponible. - Inverse de l'ADX : Choppiness < 38.2 ≈ ADX > 25. Les deux sont fortement corrélés négativement.
- Sensibilité aux gaps : les gaps gonflent le True Range mais pas le range global, biaisant Choppiness vers le haut.
- Seuils Fibonacci = arbitraires : 61.8 et 38.2 sont esthétiques. En backtesting sérieux, calibrer par actif.
Indicateurs liés
- ADX 14 — l'inverse conceptuel (mesure la trend, pas le chop)
- PFE 9 — autre mesure d'efficacité directionnelle
- Hurst Exponent — distingue mean-reverting (H < 0.5), random walk (H ≈ 0.5), trending (H > 0.5)
- Fractal Dimension — autre mesure du "désordre" du marché