iGator()関数は、ゲイターオシレーターの値を取得するために使用します。
ゲイターオシレーターは、短期・中期・長期の移動平均線を現在の位置よりも右方向にずらして表示させることで、相場のトレンドの発生の有無を判断するインジケーターであるアリゲーター(カオスアリゲーターともいいます。)における、各々の移動平均線の差をとったものです。
iGator()関数は、以下のように定義されています。
double iGator(
string symbol,
int timeframe,
int jaw_period,
int jaw_shift,
int teeth_period,
int teeth_shift,
int lips_period,
int lips_shift,
int ma_method,
int applied_price,
int mode,
int shift
);
各引数の意味は、以下のとおりです。
- string symbol
ゲイターオシレーターの値を計算する通貨ペア名を指定します。
通貨ペア名は、「気配値表示ウィンドウ」に表示されているとおりに記述します。
特定の通貨ペア名を指定せず、EA等を適用したチャートの通貨ペアのゲイターオシレーターの値を取得したい場合は、「NULL」と記述します。 - int timeframe
以下の表に従って、ゲイターオシレーターの値を計算する時間軸を指定します。timeframeの種類
種 類 定 数 内 容 PERIOD_CURRENT 0 現在の時間足 PERIOD_M1 1 1分足 PERIOD_M5 5 5分足 PERIOD_M15 15 15分足 PERIOD_M30 30 30分足 PERIOD_H1 60 1時間足 PERIOD_H4 240 4時間足 PERIOD_D1 1440 日 足 PERIOD_W1 10080 週 足 PERIOD_MN1 43200 月 足 - int jaw_period
長期移動平均線の値を計算する期間を指定します。
通常は「13」です。 - int jaw_shift
長期移動平均線の表示を右方向にシフト(ずらす)するバーの個数を指定します。
通常は「8」です。 - int teeth_period
中期移動平均線の値を計算する期間を指定します。
通常は「8」です。 - int teeth_shift
中期移動平均線の表示を右方向にシフト(ずらす)するバーの個数を指定します。
通常は「5」です。 - int lips_period
短期移動平均線の値を計算する期間を指定します。
通常は「5」です。 - int lips_shift
短期移動平均線の表示を右方向にシフト(ずらす)するバーの個数を指定します。
通常は「3」です。 - int ma_method
以下の表に従って、計算する移動平均線の種類を指定します。移動平均線の種類
種 類 定数 内 容 MODE_SMA 0 単純移動平均線 MODE_EMA 1 指数移動平均線 MODE_SMMA 2 平滑移動平均線 MODE_LWMA 3 線形加重移動平均線 通常は「平滑移動平均線」です。
- int applied_price
以下の表に従って、移動平均線の値の計算に使用する価格データを指定します。計算に使用する価格データの種類
種 類 定数 内 容 PRICE_CLOSE 0 終 値 PRICE_OPEN 1 始 値 PRICE_HIGH 2 高 値 PRICE_LOW 3 安 値 PRICE_MEDIAN 4 中央値
(高値+安値)÷2 PRICE_TYPICAL 5 代表値
(高値+安値+終値)÷3 PRICE_WEIGHTED 6 加重終値
(高値+安値+終値+終値)÷4 通常は「中央値」です。
- int mode
ライン番号を指定します。
「中期移動平均線と長期移動平均線の差」の値を取得したい場合は「1」と記述します。
「短期移動平均線と中期移動平均線の差」の値を取得したい場合は「2」と記述します。 - int shift
ゲイターオシレーターの値を取得したいバーの位置を指定します。
ゲイターオシレーターの値を取得したいバーが現在のバーであれば「0」、1本前のバーであれば「1」、2本前のバーであれば「2」……と記述します。
注意点
ゲイターオシレーターは、「中期移動平均線と長期移動平均線の差」を表すヒストグラム(「0」ラインを境にして上方に表示される)と、「短期移動平均線と中期移動平均線の差」を表すヒストグラム(「0」ラインを境にして下方に表示される)で表示されます。
具体例
1本前のゲイターオシレーターの「中期移動平均線と長期移動平均線の差」の値を取得したい場合は、以下のように記述します。
double Upper_Value_1
= iGator(NULL,0,13,8,8,5,5,3,MODE_SMMA,
PRICE_MEDIAN,1,1);