【異国のトレジャーキャンペーン】自由にカスタマイズが出来る最強のEAと手法が作れるインジケーターが無料で貰える!

【MQL4学習】一目均衡表をインジケーターやEAに組み込む時はiIchimoku()関数を使おう!

一目均衡表-ea-インジケーター-使い方

一目均衡表を独自に開発したインジケーターやEAに組み込む時ときには、

MT4が既に用意しているiIchimoku()関数を使うと便利です。

iIchimoku()関数とはなにか?

iIchimoku()関数は、一目均衡表の各インジケーター(転換線、基準線、先行スパン、遅行線)の値を取得するために使用します(一目均衡表の詳細については「こちら」を参照してください。)。

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

サンプルコード
double iIchimoku(
string symbol,
int timeframe,
int tenkan_sen,
int kijun_sen,
int senkou_span_b,
int mode,
int shift
);

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

  • string symbol
    一目均衡表の各インジケーターの値を取得したい通貨ペア名を指定します。
    通貨ペア名は、「気配値表示ウィンドウ」に表示されているとおりに記述します。
    特定の通貨ペア名を指定せず、EA等を適用したチャートの通貨ペアの一目均衡表の各インジケーターの値を取得したい場合は、「NULL」と記述します。
  • int timeframe
    以下の表に従って、一目均衡表の各インジケーターの値を計算する時間軸を指定します。

    fx-pips-bank

    timeframeの種類

    種 類
    定 数
    内 容
    PERIOD_CURRENT
    現在の時間足
    PERIOD_M1
    1分足
    PERIOD_M5
    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 tenkan_sen
    転換線の値を計算する期間を指定します。
    通常は「9」です。
  • int kijun_sen
    基準線の値を計算する期間を指定します。
    通常は「26」です。
  • int senkou_span_b
    先行スパンの値を計算する期間を指定します。
    通常は「52」です。
  • int mode
    ライン番号を指定します。
    転換線の値を取得したい場合は「1」と記述します。
    基準線の値を取得したい場合は「2」と記述します。
    先行スパンAの値を取得したい場合は「3」と記述します。
    先行スパンBの値を取得したい場合は「4」と記述します。
    遅行線の値を取得したい場合は「5」と記述します。
  • int shift
    一目均衡表の各インジケーターの値を取得したいバーの位置を指定します。
    一目均衡表の各インジケーターの値を取得したいバーが現在のバーであれば「0」、1本前のバーであれば「1」、2本前のバーであれば「2」……と記述します。

具体例

2本前のバーの転換線の値が基準線の値以下で、1本前のバーの転換線の値が基準線の値よりも大きい場合に、買いエントリーしたい場合は、以下のように記述します。

サンプルコード

double Tenkan_1 = iIchimoku(Symbol(),0,9,26,52,1,1);
double Tenkan_2 = iIchimoku(Symbol(),0,9,26,52,1,2);
double Kijun_1  = iIchimoku(Symbol(),0,9,26,52,2,1);
double Kijun_2  = iIchimoku(Symbol(),0,9,26,52,2,2);

if(Tenkan_2 <= Kijun_2 && Tenkan_1 > Kijun_1)
  {
   int Ticket
   = OrderSend(Symbol(),OP_BUY,0.1,Ask,10,0,0,
               NULL,2539,0,Magenta);
  }
  • OrderSend()関数の詳細については「こちら」を参照してください。
  • Symbol()関数の詳細については「こちら」を参照してください。
  • Askの詳細については「こちら」を参照してください。