MARKET
MT4ツールを、数字で作る。— Team REI|平日の朝に「相場分析」を更新しています|

iOpen ― 指定した足の始値を取得する(MQL4)|MQL4/MQL5リファレンス

MQLリファレンス›関数時系列・履歴iOpen
(‘mt4’, ‘MQL4’)四本値の取得要書き換え(MQL5)

iOpen指定した足の始値を取得する(MQL4)

指定した銘柄・時間足・何本前か、の3つで1本のローソク足を指定して、その始値を取得する。MQL4のEA・インジケーターでもっとも出番が多い関数のひとつ。

1書式

double iOpen(
   string symbol,
   int    timeframe,
   int    shift   // 何本前の足か。0が今の足
);

MQL5には無く、CopyOpenに置き換わる。

2引数

引数 内容
symbol 銘柄。NULLでいまの銘柄
timeframe 時間足。0でいまの時間足
shift 何本前の足か。0が現在形成中の足

3戻り値

指定した足の始値。データが無ければ0。

4使用例

double o1 = iOpen(NULL, 0, 1);   // 1本前(直近確定足)の始値
Print("1本前の始値: ", o1);

MetaEditorでコンパイル0エラー・0警告を確認済み。

5MQL4→MQL5の違い

🔁 差分

MQL5にはこれらの関数自体が無い。CopyTime・CopyOpen・CopyHigh・CopyLow・CopyClose・CopyTickVolumeで、1本ずつでなく配列にまとめて取得する設計に変わる。1本だけ欲しいときも、要素数1の配列で受け取る。

6よくある罠

⚠ 実務で踏んだもの
  • shift=0は「今まさに動いている、まだ確定していない足」。確定した直近の足の値が欲しいときはshift=1を使う。0で判定すると1回のティックごとに条件が変わってしまう。

7関連する関数

REI-FX&BO OFFICIAL LINE

ツールのダウンロードパスワードは
公式LINEで、すぐ届きます。

友だち追加の自動返信でパスワードをお送りします。
新しいツールの公開や、検証でわかったことも先にお知らせします。

全ツールのパスワード新作ツールをいち早く配信は月1〜2回だけ
LINEで友だち追加 パスワードを受け取る ›

追加後にひとことメッセージをいただけると、ツールづくりの参考にします。