(‘mt4’, ‘MQL4’)注文の管理
目次
OrderCloseTime選んだ注文を決済した時刻を読む
OrderSelectで選んだ注文の決済時刻を返す。まだ決済されていなければ0。
1書式
datetime OrderCloseTime();
先にOrderSelectで対象を選んでおく。
2引数
無し。
3戻り値
決済時刻。保有中は0が返る。
4使用例
if(OrderSelect(ticket, SELECT_BY_TICKET))
if(OrderCloseTime() > 0) Print("決済済みです");
else Print("まだ保有中です");
MetaEditorでコンパイル0エラー・0警告を確認済み。
5MQL4→MQL5の違い
🔁 差分
MQL5には「いま持っている注文を選ぶ」という考え方自体が無い。保有中はポジション(PositionGetDouble等)、決済済みは取引履歴(HistorySelect等)という別のAPIに分かれる。くわしい対応はOrderSelectのページの対応表を参照。
6よくある罠
⚠ 実務で踏んだもの
- 戻り値が0かどうかで「まだ保有中か、決済済みか」を判定できる。この性質を使った判定はよく見る書き方。