iBandsOnArray()

 iBandsOnArray()関数は、ユーザーが自由に作成した配列を基にして、ボリンジャーバンド(Bollinger Band)の値を算出するために使用します。

 iBandsOnArray()関数は、以下のように定義されています。

double iBandsOnArray(
double array[],
int total,
int period,
double deviation,
int bands_shift,
int mode,
int shift
);

 各引数の意味は、以下のとおりです。

  • double array[]
    ボリンジャーバンドの値を算出する配列名を指定します。
  • int total
    ボリンジャーバンドの値を算出する配列の要素数を指定します。
    「0」と記述すると、配列全体(=全ての要素)を基にしてボリンジャーバンドの値を算出します。
  • int period
    中間線の値を計算する期間を指定します。
  • double deviation
    上方バンドと下方バンドの値は、以下の計算式により算出されます。
    上方バンド:中間線の値 +(標準偏差 × 掛け率
    下方バンド:中間線の値 -(標準偏差 × 掛け率
    この引数では、上記計算式の「掛け率」の値を指定します。
  • int bands_shift
    算出したボリンジャーバンドの表示を右方向にシフト(ずらす)するバーの個数を指定します。
  • int mode
    ライン番号を指定します。
    中間線の値を取得したい場合は「」と記述します。
    上方バンドの値を取得したい場合は「」と記述します。
    下方バンドの値を取得したい場合は「」と記述します。
  • int shift
    算出したボリンジャーバンドの値を取得したいバーの位置を指定します。
    算出したボリンジャーバンドの値を取得したいバーが現在のバーであれば「」、1本前のバーであれば「」、2本前のバーであれば「」……と記述します。

戻り値

 第1引数で指定した配列に格納されているデータを基にした、第6引数に指定した値に従った各ラインの値が返されます。

注意点

 iBands()関数とは異なって、iBandsOnArray()関数は、通貨ペア名や時間軸や適用価格のデータを取得しません

 したがって、iBandsOnArray()関数でボリンジャーバンドの値を算出するためには、あらかじめ価格データを用意しておかなければなりません

 ボリンジャーバンドは、左から右へ(=古い価格データから新しい価格データに向かって)計算されます。右から左へ(=新しい価格データから古い価格データへ向かって)ボリンジャーバンドの値を計算するためには、ArraySetAsSeries()関数を使用します。

具体例

 配列Buffer[]を基に算出した現在のバーのボリンジャーバンド(上方バンド)の値を取得したい場合は、以下のように記述します。


double Upper = iBandsOnArray(Buffer,0,20,2,0,1,0);

関連手法

ボリンジャーバンド極秘裏技手法
ネットに溢れている情報よりも数段レベルは高いと自負しております。
ネットに溢れている情報よりも数段レベルは高いと自負しております。?|?fx-on.com

GogoJungleで購入する

 以下は、「ボリンジャーバンド極秘裏技手法」の紹介動画です。