(‘mt5’, ‘MQL5’)発注前チェック
目次
OrderCheck発注前にエラーになるかを事前確認する(MQL5)
OrderSendに渡す注文内容(MqlTradeRequest)を、実際に送らずに事前チェックする。証拠金不足・ロット刻み違反などをあらかじめ検出できる。
1書式
bool OrderCheck(
MqlTradeRequest &request,
MqlTradeCheckResult &result // チェック結果を受け取る構造体
);
MQL4に直接の対応関数は無い。
2引数
| 引数 | 内容 |
|---|---|
| request | OrderSendに渡すのと同じ内容の注文リクエスト |
| result | チェック結果(余剰証拠金等)を受け取る構造体 |
3戻り値
通ると見込まれればtrue。
4使用例
MqlTradeRequest req = {};
MqlTradeCheckResult res = {};
req.action = TRADE_ACTION_DEAL;
req.symbol = _Symbol;
req.volume = 0.1;
req.type = ORDER_TYPE_BUY;
req.price = SymbolInfoDouble(_Symbol, SYMBOL_ASK);
if(!OrderCheck(req, res))
Print("事前チェックNG: ", res.comment);
MetaEditorでコンパイル0エラー・0警告を確認済み。
6よくある罠
⚠ 実務で踏んだもの
MqlTradeRequestの各メンバーを初期化し忘れると、ゴミ値のまま判定されて意図しない結果になる。= {}で必ずゼロ初期化してから値を詰める。
7関連する関数
MORNING BRIEF平日 毎朝7時までに更新
今日はどこを見ればいいか。
ドル円とユーロドルの主要ライン・予想高値安値を、平日の朝に図1枚にまとめています。
朝刊を見る→9/25 8:27 時点ドル円158.78▼-7 pipsドル円 予想レンジ158.41 〜 159.23ドル円 上の節目158.90▲ドル円 下の節目157.80▼ユーロドル1.1378▼-2 pipsユーロドル 予想レンジ1.1351 〜 1.1408ユーロドル 上の節目1.1403▲ユーロドル 下の節目1.1359▼きょうの指標重要指標なし