In short. Most often an EA does not trade because the «AutoTrading» button is off (newer builds label it «Algo Trading») or «Allow Auto Trading» is not ticked in its properties. The answer is almost always in the «Experts» tab of the Toolbox: the EA writes why it refused, and the server returns a code — for example, 10027 «Autotrading disabled by client terminal». Below: a two-minute check, a table of codes and the reasons that produce no error at all. Codes and names follow the MetaTrader 5 and MQL5 help as of 12 October 2026.
A two-minute check
- The «AutoTrading» button on the toolbar is on. It is the master switch: with it off, no EA in the terminal trades.
- «Allow Auto Trading» is ticked in the EA's properties: F7 on the chart or right-click → «Expert Advisors» → «Properties», «Common» tab.
- The icon in the top right corner of the chart. Hover over it: it says whether trading is allowed. If it is not, go back to steps 1–2. No icon and no EA name — the EA is not running on this chart.
- Connection to the server. The bottom right corner of the terminal does not say «No connection», and quotes in «Market Watch» are moving.
- Not the investor password. With it the terminal only shows the account; neither you nor an EA can trade — more in «MT5 investor password».
- The market is open. Right-click the symbol in «Market Watch» → «Specification» — trading sessions; on weekends and holidays the EA waits.
A trap: «Tools» → «Options» → «Expert Advisors» has options that disable automated trading when you switch accounts, profiles, or a chart's symbol or period. Switch from demo to live or change the timeframe — and the EA that traded yesterday is silent today.
Where to look for the answer
- Toolbox → «Experts» tab — EA messages: refusals, error codes, their own explanations («spread above limit», «outside trading hours»).
- The «Journal» tab — terminal events: connection to the server, trade requests and server replies.
- Older entries are in files: «File» → «Open Data Folder» → MQL5\Logs (EAs) and Logs (terminal), one file per day.
Trade server return codes
| Code | Meaning | What to do |
|---|---|---|
| 10027 | autotrading disabled by client terminal | turn on the «AutoTrading» button and the option in the EA's properties |
| 10026 | autotrading disabled by server | the broker or prop firm blocked it for the account — ask the broker's support |
| 10017 | trade is disabled | trading is closed for the account or symbol: check how you logged in and the symbol specification |
| 10018 | market is closed | wait for the session; check the symbol's trading hours |
| 10019 | not enough money | lower the lot or the risk; check free margin |
| 10014 | invalid volume | the lot is below the minimum, above the maximum or not a multiple of the step — compare with «Specification» |
| 10016 | invalid stops | stop loss or take profit is closer than the broker's stops level — move it further |
| 10030 | invalid order filling type | the EA sends a filling type (FOK, IOC or Return) the symbol does not support — it needs a filling setting in the EA |
| 10031 | no connection with the trade server | check the internet and the server in the login window |
| 10021 | no quotes to process the request | the symbol has no prices: the market has not opened yet or the quote feed dropped |
| 10040 | the limit of open positions on the account is reached | the limit is set by the broker — close what is not needed or ask for the limit |
No errors, and no trades either
Then the EA is running but finds no reason to enter. Common causes:
- Its own filters: trading hours, maximum spread, news, a limit on positions or daily loss, a pause after a losing streak. Check the inputs and the EA's description.
- The wrong symbol. The EA expects EURUSD while the broker calls it EURUSD.m or EURUSDx; or the inputs name one symbol and the EA sits on another chart.
- The wrong timeframe, or waiting for a bar. Many strategies check the signal only when a candle closes: on H4 the first trade can take hours.
- Account type. Grid and hedging EAs are written for hedging accounts; on a netting account an opposite trade reduces or closes the position instead of opening a new one.
- The lot is computed from risk and comes out below the minimum — on a small deposit the EA silently skips the signal. The lot size calculator helps check the math.
- The terminal is not running. The computer went to sleep, Windows restarted after an update, the VPS shut down. On start the terminal puts EAs back on the charts of the saved profile, but until then they do not trade — more in «VPS for an EA».
How Davinchu tells you about a silent EA
The worst thing about a silent EA is that you cannot see it: no drawdown, no alerts, everything is green. Davinchu Trade Monitor on the same terminal and the Davinchu server cover this with three messages in Telegram, email or Discord:
| Message | When it arrives |
|---|---|
| «The EA is silent» | connected, but no new trades on the account for longer than the threshold you set in hours (up to 720); one warning per quiet period. Weekends are not excluded from the count: with a threshold under two days the warning also arrives over an ordinary weekend |
| «Account connection lost» | the terminal has not checked in for 10 minutes: the VPS shut down, the terminal froze, the internet dropped. Critical — it arrives during quiet hours too; then «Account connection restored» with the outage length |
| «Monitor deactivated» | the EA was removed from the chart or the terminal was closed — with the reason |
The «EA is silent» threshold is set in the account settings, «Notifications» tab; it is off by default. The monitor is read-only and does not need AutoTrading: a disabled «AutoTrading» button stops your robots, not the monitor. The Free plan connects two accounts at no cost. How to connect it — in «MT5 notifications in Telegram»; what else Davinchu does for robots — on «Davinchu for algo traders».