(‘mt5’, ‘MQL5’)MQL5専用四本値の取得
CopyOpen始値をまとめて配列にコピーする(MQL5)
指定した本数分の始値を配列にコピーする。MQL4のiOpenに相当。
1書式
int CopyOpen( string symbol, ENUM_TIMEFRAMES timeframe, int start, int count, double &open_array[] );
MQL4のiOpen(1本ずつ)に相当。
2引数
| 引数 | 内容 |
|---|---|
| symbol / timeframe | 銘柄と時間足 |
| start / count | 何本前から何本分か |
| open_array | 結果を受け取る配列 |
3戻り値
コピーした本数。
4使用例
double opens[];
ArraySetAsSeries(opens, true);
CopyOpen(_Symbol, PERIOD_CURRENT, 1, 1, opens);
Print("1本前の始値: ", opens[0]);
MetaEditorでコンパイル0エラー・0警告を確認済み。
5MQL4→MQL5の違い
🔁 差分
MQL4ではiOpen等で1本ずつ値を読んでいたが、MQL5ではこの関数群で指定した本数をまとめて配列にコピーしてから使う設計になる。1本だけ欲しいときも、要素数1の配列としてコピーする。