
MT4 MT4 実行時エラー
4109
- 定数名
ERR_TRADE_NOT_ALLOWED- メッセージ
trade is not allowed in the expert properties- 意味
- EAの自動売買が許可されていない
MT4エラー4109とは
EAが注文を出そうとしたが、自動売買が許可されていないときのエラーです。MT4上部の「自動売買」ボタンか、EAのプロパティの「自動売買を許可する」がオフになっています。「EAが動かない」原因として最も多いもののひとつです。
ログの表示例
OrderSend error 4109
「エキスパート」タブまたは「操作履歴」タブに表示されます。数値や表記の細部は、ビルド・ブローカー・EAの作りによって異なります。
MT4エラー4109の主な原因
- MT4上部ツールバーの「自動売買」ボタンがオフ(赤い停止マーク)
- EAのプロパティ「全般」タブの「自動売買を許可する」にチェックがない
- 「ツール」→「オプション」→「エキスパートアドバイザ」の「自動売買を許可する」がオフ
- 口座を切り替えたときに自動売買が自動でオフになった(オプションの設定による)
MT4エラー4109の対処法
- ツールバーの「自動売買」ボタンを押して緑の再生マークにする
- チャート右上のEA名の横が笑顔マークになっているか確認する
- EAをチャートに入れ直し、「全般」タブで「自動売買を許可する」にチェックを入れる
- EA側では IsTradeAllowed() で許可状態を確認してから注文する
コード例(MQL4)
// 自動売買が許可されているか確認してから注文する(MQL4)
bool CanTrade()
{
if(!IsConnected()) { Print("サーバーに接続していません"); return false; }
if(!IsExpertEnabled()) { Print("ツールバーの「自動売買」がオフです"); return false; }
if(!IsTradeAllowed()) { Print("EAのプロパティで「自動売買を許可する」がオフ、または取引スレッドが使用中です"); return false; }
return true;
}MetaEditor(MT4)でコンパイルできることを確認済みです。自分のEAに組み込むときは、変数名や設定値を合わせてください。












