DMI 方向性指数 (DMI、Directional Movement Indicators) は、J. Welles Wilder が発表した方向性指数システムであり、平均方向性移動指数 (ADX、Average Directional Movement Index) を使って計算されます。ここでは、+DI と -DI の2つの指数を表示します。

Configuration Options

- Period (ピリオド): 計算で使用されるバー数。
- Color Selectors (配色セレクター): グラフ要素に使用する配色。
- Display Axis Label (軸ラベルの表示): Y 軸に最新値を表示するかどうか。
数式
DM ディレクショナル ムーブメント は、前単位期間(前日)の値幅を超えた、当単位期間(当日)の上昇幅・下落幅から定義します。各期間の計算は以下のとおりです。
[+DM = High – Previous;High]
[-DM = Previous;Low – Low]
2つの値のうち小さい方を 0 にリセットします (例: +DM > -DM の場合、-DM = 0 )はらみ線(インサイド バー)の場合は、+DM と -DM の両方が負の値となるので、どちらも 0 にリセットします。これは当期間の値動きに方向性がなかったことを示します。
TR (実質変動幅、トゥルー レンジ) は各時間足ごとに計算します。
[TR = max(High_{t} – Close_{t-1};,;Close_{t-1} – Low_{t};,;High_{t} – Low_{t})]
(+DM_{n}, -DM_{n}) と (TR_{n}) はユーザー定義の n-期間にわたって平均化されます。最初の計算は純粋な移動平均を使用しますが、その他の計算は、蓄積テクニックを使用します (これは指数平滑化に類似した平滑化ラインを生成します)。
[bullet; +DM_{n-periods} = +DM_{n-1} – left ( frac{+DM_{n-1}}{n} right ) +( +DM_{n})]
[bullet; -DM_{n-periods} = -DM_{n-1} – left ( frac{-DM_{n-1}}{n} right ) +( -DM_{n})]
[bullet; ATR_{n-periods} = ATR_{n-1} – left ( frac{ATR_{n-1}}{n} right ) +( TR_{n})]
+DI と -DI、上昇・下降の方向性指数を、TR (トゥルー レンジ) の対 % 指数として計算します。
[bullet; +DI = left ( frac{+DM}{TR} right ) times 100]
[bullet; -DI = left ( frac{-DM}{TR} right ) times 100]
次の手順は以下の場合 DX を計算します。
[bullet; DI_{diff} = left |; ((+DI) – (-DI)); right| ]
[bullet; DI_{sum} = ((+DI) + (-DI)) ]
[bullet; DX = left( frac{DI_{dif}}{DI_{sum}}right) times 100]
DX は常に 0 ~ 100 間の値です。DX の平均化に蓄積移動平均テクニックを使用します。結果は ADX または ADM 平均方向性指数です。
[ADX_{n} = +ADX_{n-1} – left ( frac{ADX_{n-1}}{n} right )+(DX_{n})]