累積/分散の値を取得 iAD 関数

関数

テクニカルインジケータ関数

iAD 関数

 この関数は、任意に設定したパラメータのADの値を計算して、その値を取得します。ADはボリューム系のインジケータに分類されます。

AD

 AD (Accumulation/Distribution [累積/分散]) は、一定期間の価格変動量と出来高を組み合わせて、その通貨ペアの買われ過ぎや売られ過ぎの状態を示すボリューム系の指標です。ADは、価格と出来高の変動が同じ方向にある場合に正の値を持ち、逆方向にある場合に負の値を持ちます。そして、トレンドの転換点を示すことがあります。価格が上昇傾向にある場合、出来高が多いときには買い圧力が高いことを示し、ADの値が上昇します。一方、価格が下降傾向にある場合、出来高が多いときには売り圧力が高いことを示し、ADの値が下落します。

MT4でチャート上にADをプロットする時はナビゲーター中のインディケータ → 「ボリューム」 → 「Accumulation/Distribution」インジケータを使用します。

(ADの計算式)

 ADの計算式は、以下のようになります。

AD = ( ( ( CP - LP ) - ( HP - CP ) ) ÷ ( HP - LP ) ) ✕ VO + 1つ前のAD

 CP:終値 (直近のバーの計算は、現在の価格)
 HP:高値
 LP:安値
 Vo:出来高

(ADの使い方) 

 ADは、特定の期間における出来高と価格変動を考慮して、買われ過ぎ・売られ過ぎの状況を把握することができます。

 ADが高い水準にある場合、出来高が多くなり、相場の方向性が強まる可能性があります。一方、ADが低い水準にある場合、出来高が少なくなり、相場の方向性が定まらない可能性があります。したがって、トレンド判断やトレンドの転換点の確認に役立ちます。

 また、ADはOBV(On Balance Volume)と似た特徴を持ちますが、OBVが累積出来高を用いるのに対して、ADは中間値と出来高の関係を用いる点で異なります。従って、OBVが示す売買圧力とは異なる情報を提供することがあります。

データ型と構成・戻り値

double iAD(①, ②, ③);

 戻り値は、任意に設定したパラメータのADの値を計算して、その値を返します。

引数 [3]

 iAD関数は 3個の引数で構成されます。


引数名データ型単位初期値説明
symbolstring計算対象の通貨ペア名。
「NULL」は選択チャートの通貨ペア名が選択されます。
timeframeint時間軸。ENUM_TIMEFRAMES 列挙値から選択。
「0」は現在チャートの時間軸が選択されます。
shiftintADの値を算出するバーの位置。
現在のバーから指定した時間軸のバー数だけ過去へシフトします。例えば、現在のバーからの計算は「0」、 1つ前のバーから計算する時は「1」になります。

使用例

iAD関数によるAD値の計算

 iAD関数を使って、現在のAD値を計算します。

コード

// iAD関数によるAD値の計算
#property strict
void OnInit() {

   double AD = iAD(NULL, 0, 0);

   Print("AD値:", AD);
}

コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)

結果

タイトルとURLをコピーしました