【MQL4】「iIchimoku関数」一目均衡表を使ったエントリー

一目均衡表は、日本人が考案したテクニカル指標です。

今では、世界で認知されて、MT4でもインジケーターが用意されています。
そして、MQL4プログラミングでも、「iIchimoku関数」として、価格を取得できます。

一目均衡表は、奥が深く色々な使い方が出来ますが、最も良く使われる方法は、「雲」を使ったトレンド判断だと思います。ぱっと見でトレンドが分かるので、とても分かりやすいですね。

今回は、MQL4プログラミングで一目均衡表の「雲」を使ったトレンドの転換」に注目した2つの方法をご紹介します。

・雲の上抜け、下抜け
・雲の転換
スポンサーリンク

iIchimoku関数の書式

double  iIchimoku(
   string  symbol,        // 通貨ペア
   int     timeframe,     // 時間軸
   int     tenkan_sen,    // 転換線期間
   int     kijun_sen,     // 基準線期間
   int     senkou_span_b, // 先行スパンB期間
   int     mode,          // 取得価格のタイプ
   int     shift          // ローソク足の位置
   );

iIchimokuの引数

double iIchimoku(string symbol, int timeframe, int tenkan_sen, int kijun_sen, int senkou_span_b, int mode, int shift);
引数名引数和名設定内容
int tenkan_sen転換線期間過去9日間の最高値と最安値の平均を算出し表示させた線です。初期値:9日
int kijun_sen基準線期間過去26日間の最高値と最安値の平均を算出し表示させた線です。初期値:26日
int senkou_span_b先行スパンB期間先行スパンは、A、Bの2種類あります。先行スパンBは、過去52日間の最高値と最安値の平均値を26日先に先行して表示させた線です。初期値:52日
int mode取得価格のタイプ一目均衡表は、5本の線から構成されています。
どの価格を取得するかを指定します。
MODE_TENKANSEN 1 (転換線)
MODE_KIJUNSEN 2 (基準線
MODE_SENKOUSPANA 3 (先行スパンA)
MODE_SENKOUSPANB 4 (先行スパンB)
MODE_CHIKOUSPAN 5 (遅行線)

一目均衡表は、転換線基準線先行スパンBの期間「9」「26」「52」を基準にして、時間や波動、値幅観測を判断するテクニカル指標なので、特に理由がなければ初期値を推奨します。

また、本来は月単位のような長期的なスパンで使うことを目的に作られたので、基本的に各パラメータは日単位がベースになっています。

しかしながら、デイトレードのような短いスパンでも同様に機能します。

iIchimoku関数の使い方

例えば、先行スパンAの価格を取得する場合です。

引数例)

symbol         NULL               現在の通貨ペア
timeframe      0                  現在の時間軸
tenkan_sen     9                  転換線期間 9日
kijun_sen      26                 基準線期間 26日
senkou_span_b  52                 先行スパンB期間 52日
mode           MODE_SENKOUSPANA   先行スパンA
shift          0                  現在のローソク足の価格

コード例)

// 先行スパンA の価格
double SenkouA  =  iIchimoku (NULL, 0, 9, 26, 52, MODE_SENKOUSPANA, 0);

遅行スパンの罠

「遅行線(遅行スパン)」の価格を取得するときは、注意が必要です。

「遅行線」は、その名の通り、26日前の価格(遅れた価格)を表示する仕様ですので、価格を取得する場合は、「26本前」のローソク足を指定する必要があります。

今回は「雲」を使った判定がメインなので関係ないですが、コード例だけ一応記載しておきます。

コード例)

// 遅行スパン の価格(引数「shift」に「26」を指定)
double Chikou  =  iIchimoku (NULL, 0, 9, 26, 52, MODE_CHIKOUSPAN, 26);

雲の上抜け、下抜け

雲を上抜けたら、エントリーしよう。

雲は「先行スパンA」「先行スパンB」で構成され、この2つの線の間を塗りつぶして、雲のように見せています。

雲を上抜ける = 「先行スパンA」と「先行スパンB」を上抜ける

ということになります。

コード例)

// 先行スパンA,B
double SenkouA   = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANA,0);
double SenkouB   = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANB,0);

// 先行スパンA1,B1 (1本前のローソク足)
double SenkouA_1 = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANA,1);
double SenkouB_1 = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANB,1);


// 雲の上抜け判定
if( (Ask > SenkouA   && Ask > SenkouB  ) &&   //雲を上抜け
   !(Ask > SenkouA_1 && Ask > SenkouB_1) ){   //1つ前では上抜けしてない


   // ここでエントリー処理


}

ポイントは、先行スパン2つとも上抜けした状態が、雲を上抜けした状態になるということです。

また、

「1本前」のローソク足では、まだ上抜け「していない」。
「現在」のローソク足では、上抜け「している」。

という判定で、今まさに雲を上抜けしたということが分かります。

また、雲を上抜けたら、トレンドの終了と判断して、そこで利確する。というのも方法の1つです。

雲の転換

一目均衡表は、雲の上向き・下向きの状態で、売り買いのトレンドを一目で把握できます。

この雲が「上向き」になったとき、「下向き」になったときをトレンドの転換点と捉えることが出来ます。

転換点になり得るというだけで、雲の向きが変わったからエントリーするというのは、レンジ相場もあるので厳しいかもしれません。

ただし、アラートなどで通知するようにすれば、トレンドの転換を見逃さなくなるというメリットがあります。

コード例)

// 先行スパンA,B
double SenkouA   = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANA,0);
double SenkouB   = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANB,0);

// 先行スパンA1,B1 (1本前のローソク足)
double SenkouA_1 = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANA,1);
double SenkouB_1 = iIchimoku(Symbol(),0,9,26,52,MODE_SENKOUSPANB,1);


// 雲の転換判定
if( SenkouA > SenkouB && SenkouA_1 <= SenkouB_1) ){


   // ここで処理を記述


}

雲の転換と、雲の上抜け・下抜けを組み合わせると、

雲が上昇トレンドのときに、雲を上抜けたら、エントリー。
雲が下降トレンドのときに、雲を下抜けたら、エントリー。

というように、トレンドに乗ったエントリーに活用できます。

その他にも、基準線、転換線、遅行線を使った方法もあり、一目均衡表は奥が深いテクニカル指標です。上手に使えると、トレードの幅が広がるかも知れません。

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