ADW(平均方向性指数ウィルダー)は、市場のトレンドを把握するための便利なインジケーターです。
このテクニカルインジケーターは、ウェルズ・ウィルダーが著書「テクニカル・トレーディングシステムの新概念」で説明したアルゴリズムに基づいて構成されています。
このインジケーターのトレードルールについては、平均方向性指数を参照してください。

計算方法:
まず、各バーの最初のプラス(dm_plus)とマイナス(dm_minus)の変化、そして真の範囲(tr)を計算します:
もし High(i) - High(i-1) が 0 より大きければ、 dm_plus(i) = High(i) - High(i-1) それ以外は dm_plus(i) = 0。
もし Low(i-1) - Low(i) が 0 より大きければ、 dm_minus(i) = Low(i-1) - Low(i) それ以外は dm_minus(i) = 0。
tr(i) = Max(ABS(High(i) - Low(i)), ABS(High(i) - Close(i-1)), ABS(Low(i) - Close(i-1)))
ここで:
- High(i) - 現在のバーの最高価格;
- Low(i) - 現在のバーの最低価格;
- High(i-1) - 前のバーの最高価格;
- Low(i-1) - 前のバーの最低価格;
- Close(i-1) - 前のバーの終値;
- Max (a, b, c) - 三つの数値の中での最大値;
- ABS(X) - Xの絶対値。
次に、スムーズな値を計算します:Plus_D(i)、Minus_D(i)、ATR():
ATR(i) = SMMA(tr, Period_ADX,i)
Plus_D(i) = SMMA(dm_plus, Period_ADX,i)/ATR(i)*100
Minus_D(i) = SMMA(dm_minus, Period_ADX,i)/ATR(i)*100
Plus_D(i) = SMMA(dm_plus, Period_ADX,i)/ATR(i)*100
Minus_D(i) = SMMA(dm_minus, Period_ADX,i)/ATR(i)*100
ここで:
- SMMA(X, N, i) - 現在のバーの X シリーズのスムーズ移動平均;
- Period_ADX - 計算に使用するバーの数。
次に、方向性運動指数 DX(i) を計算します:
DX(i) = ABS(Plus_D(i) - Minus_D(i))/(Plus_D(i) + Minus_D(i)) * 100
最終的に、現在のバーの ADW(i) 指標の値は、DXインデックスのスムーズ化によって得られます:
ADX(i) = SMMA(DX, Period_ADX, i)