サンプルコード 一覧へ戻る

MQL5サンプルコード

【MT5(MQL5)サンプルコード】iOpen

スポンサーリンク

MT4(MQL4)/MT5(MQL5)のiOpen

 指定したローソク足の始値を取得できます。

double  iOpen(
  const string        symbol,         // 銘柄
  ENUM_TIMEFRAMES     timeframe,      // 期間
  int                shift           // シフト
  );

「shift」は、現在の足から何本分前にずらすかを表します。

MT4→MT5になっても変わらず使えます。

サンプルコード

過去のローソク足の始値を取得してチャートに表示してみます。

void OnInit()  
{

    Comment
    (
    "iOpen(""NZDUSD"", PERIOD_H1 , 1) = ",iOpen("NZDUSD", PERIOD_H1 , 1),"\n",
    "iOpen(Symbol(), Period() , 1) = ",iOpen(Symbol(), Period() , 1),"やっている事は↑と同じ","\n",
    "iOpen(Symbol(), 16385 , 1) = ",iOpen(Symbol(), 16385 , 1),"やっている事は↑と同じ","\n",
    "iOpen(Symbol(), 16385 , 2) = ",iOpen(Symbol(), 16385 , 2)," ※バーを2本シフト"
    );
    
   return;
}

PERIOD_H1が”60”ではなく”16385”になっているのは、MT4→MT5の仕様変更によるものです。

詳しくは【MT5(MQL5)サンプルコード】_Period、Period()を参照。

結果

1本前の始値が表示されているのが分かります。

2本前はこちら。

2本前の始値が表示されているのが分かります。

コメント

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