Movement Directional Index(iADX)関数|MT4インディケータ

執筆者

佐川直弘(株式会社トリロジー取締役)

MetaTrader 4(MT4)を使ったFX自動売買において、テクニカル指標の理解と活用は非常に重要です。この記事では、Movement Directional Index(iADX)インディケータについて、初心者にもわかりやすく解説します。

Movement Directional Index(iADX)とは?

Movement Directional Index(iADX)は、トレンドの強さと方向性を評価するためのテクニカル指標です。iADXは、+DI(プラス方向性インデックス)と-DI(マイナス方向性インデックス)という2つのラインを使って、現在のトレンドが強いか弱いかを判断します。iADXは、特にトレンドフォローの戦略で使用されることが多いです。

iADXの計算方法

MT4では、iADXを計算するためにiADX()関数を使用します。この関数は以下のように定義されています。

関数仕様
double iADX(
    string symbol,    // 通貨ペア種類
    int timeframe,    // 時間軸種類
    int period,       // 移動平均の期間
    int applied_price,// 価格種類
    int mode,         // インディケータライン種類
    int shift         // 取得するバーの位置(0が最新のバーを表し、1~が過去のバーに遡っていきます)
);

この関数は、指定された通貨ペアと時間軸におけるADXインディケータの値を返します。

引数の説明

symbol
通貨ペアの種類を指定します。例えば、"EURUSD"や"GBPJPY"など。
timeframe
時間軸の種類を指定します。例えば、1分足(1)、5分足(5)、1時間足(60)など。
period
移動平均の期間を指定します。
applied_price
価格の種類を指定します。
mode
取得するデータの種類を指定します。
  – `MODE_MAIN` – メインのADXライン
  – `MODE_PLUSD` – +DIライン
  – `MODE_MINUSDI` – -DIライン
shift
取得するバーの位置を指定します。0が最新のバーを表し、1以上の数値が過去のバーを表します。

サンプルコード

以下に、iADX()関数を使用して最新のバーのADX値を取得するサンプルコードを示します。

サンプルコード
// EURUSDの1時間足で最新のバーのADX値を取得する例
double adx_value = iADX(“EURUSD", PERIOD_H1, 14, PRICE_CLOSE, MODE_MAIN, 0);
Print(“EURUSDの1時間足の最新のADX値: “, adx_value);

このサンプルコードでは、"EURUSD"の1時間足における最新のADX値を取得し、ターミナルウィンドウに表示します。

以下は、+DIと-DIを比較して、トレンドの方向を判断する例です。

応用例
// EURUSDの1時間足で+DIと-DIを比較してトレンドの方向を判断する例
double plusDI = iADX(“EURUSD", PERIOD_H1, 14, PRICE_CLOSE, MODE_PLUSD, 0);
double minusDI = iADX(“EURUSD", PERIOD_H1, 14, PRICE_CLOSE, MODE_MINUSDI, 0);

if (plusDI > minusDI) {
    Print(“現在のトレンドは上昇トレンドです。");
} else {
    Print(“現在のトレンドは下降トレンドです。");
}

このコードは、+DIが-DIより大きい場合に上昇トレンドと判断し、小さい場合に下降トレンドと判断します。

まとめ

Movement Directional Index(iADX)インディケータは、トレンドの強さと方向性を評価するための強力なツールです。MT4のiADX()関数を使用することで、簡単にこのインディケータの値を取得し、トレード戦略に活用することができます。初心者の方も、この基本的な使い方を理解して、実際のトレードに応用してみてください。

MQL4

Posted by 佐川直弘