MQL4 たまに見るエラーコードERR_TRADE_CONTEXT_BUSY
目次
エラー146ERR_TRADE_CONTEXT_BUSY ― 取引処理が混み合っている
直前の発注・決済処理がまだ終わっていないところに、次の取引処理を重ねて呼んだときに出る。複数のEA・複数チャートを同時に動かしていると起きやすい。
1主な原因
- 同じ口座で複数のEAが、ほぼ同時に発注しようとした
- 1つのEAの中で、決済処理が終わる前に次の注文を送ろうとした
2対処法
✓ 空くまで少し待ってから再試行する
IsTradeContextBusy()で込み合っているか確認し、trueなら少し待ってから再試行する。複数EA運用では、取引処理どうしが重ならないよう設計しておく。
3発生する例と直し方
// 悪い例:混んでいても構わず送る int t = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 3, 0, 0); // 直した例:空くまで少し待ってから送る int wait = 0; while(IsTradeContextBusy() && wait < 10) { Sleep(200); wait++; } int t2 = OrderSend(Symbol(), OP_BUY, 0.1, Ask, 3, 0, 0);
4MQL5では
🔁 差分
MQL5には「取引コンテキストの占有」という概念自体が無い。複数の取引要求を送っても内部で順に処理される設計のため、このエラーに相当するものは実質的に存在しない。
5関連するエラー
ERR_TOO_MANY_REQUESTS(141)IsTradeContextBusy
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▼きょうの指標重要指標なし