DMI : définition, ce qu'il mesure et ce qu'il ne mesure pas
Le DMI pose deux questions au graphique. Dans quel sens le prix se déplace-t-il ? C'est le rôle de +DI et de −DI. Ce déplacement est-il assez net pour parler de tendance ? C'est le rôle de l'ADX. L'aide de TradingView sur le Directional Movement (DMI) le présente comme trois indicateurs réunis en un seul, et précise que l'ADX sert à dire s'il y a une tendance ou non, sans tenir aucun compte de sa direction.
La ChartSchool de StockCharts le dit de la même façon : quand +DI est au-dessus de −DI, la tendance est haussière ; quand il est en dessous, elle est baissière ; et l'ADX mesure la force de la tendance, quelle que soit sa direction. Un ADX élevé accompagne donc une forte baisse aussi bien qu'une forte hausse, et un ADX qui recule ne dit pas que le prix recule. TradingView indique que le DMI prend une valeur entre 0 et 100.
Le nom, lui, change d'une source à l'autre. La documentation de thinkorswim sur le DMI écrit « Directional Movement Index (DMI) » pour l'ensemble des trois tracés. StockCharts appelle « Directional Movement Indicator (DMI) » la paire +DI et −DI, et « Directional Movement Index » une valeur intermédiaire du calcul, le DX. TradingView et StockCharts attribuent l'outil à J. Welles Wilder : selon la première, il l'a présenté dans New Concepts in Technical Trading Systems, paru en 1978, avec le RSI et l'ATR ; selon la seconde, il l'avait conçu en pensant aux matières premières et aux prix journaliers. Pages consultées en octobre 2026.
Le calcul du DMI : de +DM et −DM jusqu'à l'ADX
Étape 1 : le mouvement directionnel de chaque bougie. On compare la bougie à la précédente par deux écarts : la hausse du plus haut (plus haut − plus haut précédent) et la baisse du plus bas (plus bas précédent − plus bas). On ne garde que le plus grand des deux, et seulement s'il est positif. Si c'est la hausse du plus haut, elle devient le mouvement directionnel positif, +DM, et −DM vaut 0. Si c'est la baisse du plus bas, elle devient −DM, et +DM vaut 0. Une bougie n'a donc jamais les deux à la fois. TradingView et StockCharts écrivent la même règle.
StockCharts illustre deux cas. Une bougie qui déborde la précédente des deux côtés a deux écarts positifs : seul le plus grand compte. Une bougie contenue dans la précédente a deux écarts négatifs : +DM et −DM valent 0, elle n'a aucun mouvement directionnel. Et quand les deux écarts sont égaux, le code de l'indicateur ADX Wilder publié par MetaQuotes, l'éditeur de MetaTrader 5, les met tous les deux à 0.
Étape 2 : la true range. C'est l'amplitude de la bougie, écart d'ouverture compris : la plus grande de trois distances, détaillées dans la leçon sur l'ATR. StockCharts note que le calcul est le même que celui de l'indicateur Average True Range.
Étape 3 : le lissage de Wilder. +DM, −DM et true range sont lissés de la même façon sur N périodes, 14 d'après la recommandation de Wilder que rapporte StockCharts. La première valeur est la somme des 14 premières. Ensuite, à chaque bougie : valeur lissée = valeur précédente − valeur précédente ÷ 14 + valeur de la bougie. StockCharts donne cette formule, et l'aide de TradingView sur l'Average Directional Index (ADX) aussi.
Étape 4 : +DI, −DI et DX. +DI = 100 × +DM lissé ÷ true range lissée, et −DI = 100 × −DM lissé ÷ true range lissée. Diviser par la true range rapporte le mouvement directionnel à l'amplitude des bougies : un +DI de 30 veut dire que le mouvement directionnel positif pèse 30 % de l'amplitude lissée. Puis DX = 100 × |+DI − −DI| ÷ (+DI + −DI). La valeur absolue efface le sens : le DX est grand quand l'une des deux lignes domine nettement l'autre, peu importe laquelle.
Étape 5 : l'ADX. C'est le DX lissé une fois de plus. Le premier ADX est la moyenne simple des 14 premiers DX ; ensuite, ADX = (ADX précédent × 13 + DX de la bougie) ÷ 14. Avec ce calcul, +DI et −DI n'existent qu'à partir de la quinzième bougie, et l'ADX à partir de la vingt-huitième. StockCharts prévient qu'il faut environ 150 périodes d'historique pour que ces lissages donnent des valeurs stables : un ADX calculé sur 30 périodes ne tombe pas sur la même valeur qu'un ADX calculé sur 150.
Un exemple refait à la main, sur sept bougies
Les prix sont inventés, et le réglage est de 5 périodes au lieu de 14 pour que le calcul tienne en sept bougies. La méthode est la même.
Voici les sept bougies, dans l'ordre plus haut, plus bas, clôture. Bougie 1 : 101,00, 99,00, 100,00. Bougie 2 : 102,00, 99,50, 101,50. Bougie 3, qui déborde la précédente des deux côtés : 103,00, 97,50, 98,50. Bougie 4, contenue dans la précédente : 102,00, 98,00, 101,00. Bougie 5 : 104,50, 100,50, 104,00. Bougie 6 : 107,00, 103,00, 106,50. Bougie 7 : 108,60, 104,60, 108,00. La clôture précédente tombe chaque fois à l'intérieur de la bougie : la true range est donc simplement le plus haut moins le plus bas.
Le mouvement directionnel, bougie par bougie. Bougie 2 : le plus haut monte de 1,00 et le plus bas ne baisse pas, donc +DM = 1,00 ; true range 2,50. Bougie 3 : le plus haut monte de 1,00, le plus bas baisse de 2,00, le plus grand l'emporte, donc −DM = 2,00 et +DM = 0 ; true range 5,50. Bougie 4 : ni plus haut plus élevé, ni plus bas plus faible, donc +DM = 0 et −DM = 0 ; true range 4,00. Bougies 5 et 6 : le plus haut monte de 2,50 chaque fois, donc +DM = 2,50 ; true range 4,00. Bougie 7 : +DM = 1,60 ; true range 4,00.
À la bougie 6, on dispose de cinq valeurs, celles des bougies 2 à 6. Somme des +DM : 1,00 + 0 + 0 + 2,50 + 2,50 = 6,00. Somme des −DM : 2,00. Somme des true ranges : 2,50 + 5,50 + 4,00 + 4,00 + 4,00 = 20,00. Donc +DI = 100 × 6,00 ÷ 20,00 = 30, −DI = 100 × 2,00 ÷ 20,00 = 10, et DX = 100 × (30 − 10) ÷ (30 + 10) = 50.
À la bougie 7, le lissage de Wilder prend le relais : on retire un cinquième de chaque total, puis on ajoute la valeur de la bougie. +DM lissé = 6,00 − 1,20 + 1,60 = 6,40. −DM lissé = 2,00 − 0,40 + 0 = 1,60. True range lissée = 20,00 − 4,00 + 4,00 = 20,00. Donc +DI = 32, −DI = 8, et DX = 100 × 24 ÷ 40 = 60. −DI a perdu deux points sans qu'aucun plus bas ne baisse : la poussée baissière de la bougie 3 s'efface peu à peu du total.
Il n'y a pas encore d'ADX. À 5 périodes, il faut cinq DX, donc attendre la bougie 10, pour en faire la moyenne. C'est le prix du second lissage : l'ADX commence tard et bouge lentement.
Les réglages du DMI et de l'ADX, plateforme par plateforme
Le réglage d'origine tient en un nombre, 14 périodes, pour les DI comme pour l'ADX. Les plateformes le reprennent, mais ne le présentent pas de la même façon et ne lissent pas toutes pareil.
TradingView : l'indicateur DMI a deux réglages, la longueur des DI (« DI Length ») et la période de calcul de l'ADX, dont l'aide précise qu'il comporte un lissage, tous deux à 14 par défaut. L'ADX peut donc se lisser sur une autre durée que les DI. La plateforme propose aussi un indicateur ADX seul, qui ne trace pas +DI et −DI. StockCharts : 14 périodes par défaut, avec ou sans les deux lignes DI. thinkorswim : une seule longueur pour les trois lignes et un type de moyenne au choix, celle de Wilder par défaut.
MetaTrader 5 livre deux indicateurs, tous deux réglés sur 14 dans le code publié par MetaQuotes : « Average Directional Movement Index » et « Average Directional Movement Index Wilder ». L'aide de MetaTrader 5 sur l'ADX Wilder le présente comme construit en stricte correspondance avec l'algorithme décrit par Wilder dans son livre : son code lisse séparément +DM, −DM et true range par une moyenne lissée, où la dernière bougie pèse 1 ÷ 14, avant de les diviser. Le code de l'indicateur ADX publié par MetaQuotes procède autrement : il calcule d'abord le rapport 100 × DM ÷ true range de chaque bougie, puis lisse ce rapport par une moyenne exponentielle, où la dernière bougie pèse 2 ÷ 15, presque le double. Il lisse ensuite le DX avec la même moyenne exponentielle.
Même réglage, deux courbes. Le schéma plus haut est calculé à la façon de Wilder : son ADX vaut 46,1 à la bougie 54. Le calcul du code de l'indicateur ADX, refait sur les mêmes soixante-huit bougies, donne 80,6 à cette bougie, et monte jusqu'à 27,6 entre les bougies 28 et 36, en pleine phase sans tendance, quand celui du schéma ne dépasse pas 13,6. Un seuil appris sur l'un ne se transporte pas sur l'autre. L'aide de TradingView, elle, parle de moyenne exponentielle dans sa page sur le DMI et donne la formule de Wilder dans sa page sur l'ADX : avant de comparer deux courbes, regarde quel lissage ta plateforme applique.
Lire le DMI : croisements, niveaux 20 et 25, pente de l'ADX
Le niveau de l'ADX. D'après StockCharts, Wilder considérait qu'une tendance forte est présente quand l'ADX dépasse 25 et qu'il n'y a pas de tendance quand il est sous 20, avec une zone grise entre les deux ; la même page ajoute que beaucoup d'analystes retiennent 20 comme niveau clé. TradingView rapporte les mêmes seuils et prévient qu'ils ne s'appliquent pas tels quels partout : ce qui fait une tendance forte dépend de l'instrument, et se vérifie sur son historique. thinkorswim place la barre ailleurs : un ADX qui monte et dépasse 50. Trois pages, trois seuils : ce sont des conventions, pas des constantes.
Le croisement de +DI et de −DI. +DI qui passe au-dessus de −DI se lit à la hausse, l'inverse à la baisse. Le système que StockCharts et TradingView attribuent à Wilder y met deux conditions. D'abord un ADX au-dessus de 25, pour ne lire les croisements que dans un marché en tendance. Ensuite un repère de prix : pour un croisement haussier, le stop initial se place au plus bas du jour du croisement, et la lecture reste valable tant que ce plus bas tient, même si les deux lignes se recroisent. L'aide de MetaTrader 5 sur l'Average Directional Movement Index rapporte une autre règle de Wilder, celle du point extrême : attendre que le prix dépasse le plus haut du jour du croisement avant d'agir.
Ces garde-fous existent parce que les croisements sont nombreux. StockCharts l'écrit : ils sont très fréquents et demandent à être filtrés par une autre analyse. TradingView ajoute que les faux signaux sont les plus courants quand l'ADX est sous 25. Le schéma plus haut le montre : quatre croisements sans suite pendant la phase sans tendance. Mais le filtre a un coût, que StockCharts reconnaît : exiger un ADX élevé tend à écarter autant de bons croisements que de mauvais. Sur le schéma, le cinquième croisement, celui qui ouvre la hausse, se produit avec un ADX à 10,8.
La pente de l'ADX. Un ADX qui monte dit que la tendance se renforce, quel que soit son sens : pour StockCharts et TradingView, la lecture du croisement en sort renforcée. Un ADX qui baisse dit que la tendance faiblit, pas que le prix baisse : sur le schéma, il recule de 46,1 à 33,7 pendant que le prix reste sur son palier. Et il arrive tard. StockCharts parle d'un retard notable, dû à tous ces lissages : sur le schéma, l'ADX ne franchit 25 que neuf bougies après le croisement, quand plus des deux tiers de la hausse sont faits.
Aucune de ces lectures n'est un ordre d'achat ou de vente. Ce sont des conventions, à tester sur ton marché, ton unité de temps et ton réglage, avec la méthode de l'article backtester une stratégie sans se mentir. Tradoshi ne calcule ni le DMI ni l'ADX sur tes trades : l'indicateur se lit sur ton graphique. Le journal sert à l'étape suivante : tu étiquettes chaque trade pris sur une lecture précise, par exemple « +DI croise au-dessus de −DI, ADX sous 20 », et le tableau de bord se filtre par étiquette pour voir ce que cette lecture a donné chez toi.
L'ADXR, un ADX lissé une fois de plus
Certaines plateformes proposent l'ADXR, pour Average Directional Index Rating. La documentation de thinkorswim sur l'ADXR le définit comme une version lissée de l'ADX : la moyenne arithmétique de l'ADX et de sa valeur quelques barres plus tôt, ce nombre de barres étant la période de l'ADX. À 14 périodes : ADXR = (ADX de la bougie + ADX d'il y a 14 bougies) ÷ 2. Il ajoute un lissage à un indicateur qui en compte déjà deux : sa courbe est plus calme, et son retard plus grand. Cette page ne lui donne ni seuil ni règle de lecture.
Les limites du DMI et de l'ADX
L'ADX est en retard. C'est une moyenne lissée d'un rapport lui-même fait de moyennes lissées. Il confirme une tendance déjà installée, il ne l'annonce pas, et il reste élevé un moment après qu'elle s'est arrêtée : sur le schéma, il est encore à 33,7 dix-sept bougies après la fin de la hausse.
L'ADX ne donne pas le sens. Il monte dans une chute comme dans une envolée. Le sens se lit sur +DI et −DI, ou sur le graphique des prix.
Sans tendance, les croisements se multiplient. +DI et −DI se croisent à répétition dans un marché qui oscille, et le filtre par l'ADX retire aussi de bons croisements. StockCharts conseille de chercher la confirmation ailleurs : indicateurs de volume, analyse de la tendance de fond, figures chartistes.
Il dépend de la plateforme et de l'historique. Deux indicateurs réglés sur 14 peuvent afficher 46,1 et 80,6 sur les mêmes bougies, selon leur lissage. Et les premières valeurs d'un historique court ne sont pas fiables : StockCharts compte environ 150 périodes pour absorber les lissages.
Ses seuils viennent d'autres marchés. Wilder travaillait sur les matières premières et les devises, rappellent StockCharts et TradingView. Sur une action peu volatile, écrit StockCharts, ses paramètres peuvent ne donner aucun signal, et le réglage comme les seuils sont à ajuster à l'instrument. L'ADX appartient à la famille des indicateurs de tendance, celle des moyennes mobiles : la page sur l'analyse technique explique pourquoi deux outils de la même famille ne font pas deux confirmations. Le momentum est une autre question, celle de la leçon sur le stochastique.
Questions fréquentes
C'est quoi le DMI en trading ?
Le DMI, pour Directional Movement Index, est un indicateur technique en trois lignes. +DI et −DI comparent les poussées des dernières bougies vers le haut et vers le bas, et donnent le sens du mouvement. L'ADX mesure la force de la tendance, sans dire son sens. J. Welles Wilder l'a présenté en 1978.
Que veut dire Directional Movement Index ?
Directional Movement Index se traduit par indice de mouvement directionnel. Sur TradingView et thinkorswim, le nom désigne l'ensemble +DI, −DI et ADX, abrégé DMI. Dans les formules de StockCharts et de MetaTrader 5, il désigne une valeur intermédiaire, le DX : 100 × |+DI − −DI| ÷ (+DI + −DI), dont l'ADX est la moyenne lissée.
Quelle différence entre le DMI et l'ADX ?
Le DMI est le système entier, l'ADX est l'une de ses trois lignes. +DI et −DI indiquent la direction ; l'ADX indique seulement si une tendance est présente et avec quelle force. Sur TradingView, l'indicateur ADX trace cette ligne seule, et l'indicateur DMI trace les trois.
Quel réglage choisir pour le DMI et l'ADX ?
Le réglage d'origine est de 14 périodes, et c'est la valeur par défaut de TradingView, de StockCharts et des deux indicateurs de MetaTrader 5. Aucune de ces sources ne désigne un meilleur réglage. Vérifie surtout le lissage : l'ADX et l'ADX Wilder de MetaTrader 5 ne se calculent pas de la même façon avec le même 14.
Que veut dire un ADX au-dessus de 25 ?
Par convention, une tendance forte. D'après StockCharts et TradingView, Wilder parlait de tendance forte au-dessus de 25 et d'absence de tendance sous 20. Ce niveau ne dit pas si la tendance est haussière ou baissière, et l'ADX le franchit avec retard, à cause de ses deux lissages.
Ce qu'il faut retenir
- Le DMI réunit trois lignes : +DI et −DI donnent le sens du mouvement, l'ADX la force de la tendance. L'ADX ne dit jamais si le marché monte ou baisse.
- Chaque bougie n'a qu'un mouvement directionnel, +DM ou −DM, ou aucun. Lissés puis divisés par la true range, ils donnent +DI et −DI ; DX = 100 × |+DI − −DI| ÷ (+DI + −DI), et l'ADX est le DX lissé.
- Le réglage d'origine est 14. Selon la plateforme, le lissage est celui de Wilder ou une moyenne exponentielle, et les valeurs ne se comparent pas.
- 20 et 25 sont des conventions attribuées à Wilder, pensées pour les matières premières. Les croisements de +DI et −DI sont nombreux quand le marché n'a pas de tendance.
- L'ADX est lissé deux fois : il confirme tard et reste élevé après la fin du mouvement. Un ADX qui baisse ne veut pas dire que le prix baisse.
Pour aller plus loin
Ces articles du blog creusent les notions de cette leçon, un sujet par article.