iADX()関数

iADX()関数は、ADXとDMI(±DI)の3種類の値を返します。
※ADXはAverage Directional Movement Indexの略、DMIはDirectional Movement Indexの略です。

iADX()関数について

iADX()関数の()括弧内は次のように指定します。

iADX(通貨ペア名, 時間足, 計算期間, 適用価格, ライン種類, シフト数)

通貨ペア名
通貨ペア(銘柄)名を文字列で指定します。NULLを指定すると表示チャートの通貨ペアのことになります。

時間足
時間足(時間軸)を次の表の整数または定数で指定します。

現在表示時間足 0 PERIOD_CURRENT
1分足 1 PERIOD_M1
5分足 5 PERIOD_M5
15分足 15 PERIOD_M15
30分足 30 PERIOD_M30
1時間足 60 PERIOD_H1
4時間足 240 PERIOD_H4
日足 1440 PERIOD_D1
週足 10080 PERIOD_W1
月足 43200 PERIOD_MN1

計算期間
計算する期間(ローソク足の本数)を整数で指定します。

適用価格
適用価格を次の表の整数または定数で指定します。

終値 0 PRICE_CLOSE
始値 1 PRICE_OPEN
高値 2 PRICE_HIGH
安値 3 PRICE_LOW
中間値:(高値+安値)/2 4 PRICE_MEDIAN
平均値:(高値+安値+終値)/3 5 PRICE_TYPICAL
加重平均値:(高値+安値+終値+終値)/4 6 PRICE_WEIGHTED

ライン種類
インジケーターラインの種類を次の表の整数または定数で指定します。

ADXライン 0 MODE_MAIN
+DIライン 1 MODE_PLUSDI
-DIライン 2 MODE_MINUSDI

シフト数
ローソク足何本分前かを指定します。

サンプルコード

// スクリプトファイルのコード
void OnStart()
{
   double adx = iADX(NULL, 0, 14, PRICE_CLOSE, MODE_MAIN, 0);
   double pdi = iADX(NULL, PERIOD_H1, 14, PRICE_CLOSE, MODE_PLUSDI, 0);
   
   Print("Current ADX: ", adx);   
   Print("H1 +DI: ", pdi);
}

上記のサンプルコードは、期間14のADXと、1時間足期間14の+DIをそれぞれ取得し、その値を出力するスクリプトです。