New tools are launching soon. Open any tool and choose Notify me to hear first.Chat with us on Telegram

EA not trading in MT4 or MT5? The checklist that finds the cause

Why an expert advisor opens no trades, in the order to check: Algo Trading, the EA's own permission, DLL and WebRequest, symbol and session, filters, prop-firm limits and the Journal messages that name the cause.

Getting started9 min readUpdated

An expert advisor that sits on the chart and never opens a trade is almost never broken. Nine times out of ten MetaTrader has told you why, in a corner of the chart or a line in the Journal, and the fix takes a minute. Work through these checks in order. They start with the causes that account for most cases and end with the ones that need a message to your broker.

Read the corner of the chart first

When an EA is attached, its name appears in the top right corner of the chart with an icon next to it. The icon tells you whether MetaTrader is letting it trade:

PlatformAllowed to tradeNot allowed to tradeNo icon or no name
MT4Smiling faceSad faceThe EA is not attached or failed to load
MT5Blue hatGrey or crossed-out hatThe EA is not attached or failed to load

A sad face or grey hat means one of the first two checks below is the cause. A smiling face or blue hat means permission is fine and the EA is waiting for its own conditions, so skip to check 4. No name at all means the file did not load; the install guide covers that.

1. Algo Trading is off

The Algo Trading button (called AutoTrading in MT4) in the main toolbar is a master switch for every EA in the terminal. Red or grey means off, green means on. Click it once. The Journal logs the change as “automated trading enabled”.

It switches itself off more often than people expect: after a terminal update, when you restart MetaTrader with the option “Disable automated trading when the account has been changed” ticked, and on some VPS images after a reboot. If it goes off on its own, check Tools, Options, Expert Advisors for the tick boxes that disable it on account or profile changes.

2. The EA's own permission

Each EA also has its own permission on the Common tab of its settings: Allow Algo Trading (MT5) or Allow live trading (MT4). If you clicked OK without ticking it, the EA loads with a sad face and MT5 writes error 4752, “trade is not allowed”, to the Experts tab on its first attempt.

Press F7 on the chart to open the settings, tick the box and click OK. In MT5 you can make it the default for every EA under Tools, Options, Expert Advisors, Allow algorithmic trading.

3. DLL imports and WebRequest

Some EAs need two more permissions on the same Common tab or in Options. If the Experts tab shows “cannot load”, “DLL imports are not allowed” or “WebRequest… is not allowed”, that is why nothing trades:

  • Allow DLL imports is needed by EAs that call a Windows library, for licensing or a news feed. Tick it on the Common tab only for EAs you trust, because a DLL can do anything on your computer.
  • Allow WebRequest for listed URL lives under Tools, Options, Expert Advisors. EAs that check a license server or download a news calendar need their URL added there. The error message in the Experts tab names the URL to add.

After changing either option, remove the EA from the chart and attach it again so it starts with the new permissions.

4. Wrong symbol, suffix or timeframe

With permissions fixed and a happy icon, the next question is whether the EA can see the market it was built for.

  • Symbol suffix. Your broker may quote EURUSD.m, EURUSDpro or GOLD. An EA that looks for a hard-coded EURUSD or XAUUSD never finds a price and either stays silent or logs “unknown symbol”. Look for a symbol or suffix input, or attach the EA to the chart with your broker's exact symbol name.
  • Symbol not in Market Watch. Multi-symbol EAs can only trade symbols shown in Market Watch. Right-click there, choose Show All, or add the symbols the EA needs.
  • Timeframe. Many EAs trade only on the timeframe they were designed for and ignore every other chart. Check the product page or the set file name for the intended one.
  • Digits and points. An EA whose stops are in points can produce an invalid stop on a broker with different digits, and the order is rejected with “invalid stops” in the Journal. Our set file guide explains how digits change what an input means.

5. The market is closed or the account is read-only

Obvious once said, but it catches everyone: forex closes from Friday evening to Sunday evening in server time, gold and indices have their own daily breaks, and some brokers close for an hour at rollover. The market hours tool shows the sessions in your time zone. An EA attached on Saturday will not do anything until Monday and that is correct behaviour.

Also check the bottom right corner of the terminal. “No connection” or “Invalid account” means the EA has no prices at all. If you logged in with the investor (read-only) password, everything looks normal but every order is refused with “trade disabled” or “AutoTrading disabled by server”. Log in again with the main password.

6. The EA's own filters are holding it back

An EA with a happy icon and an open market may simply be following its rules. Open its inputs (F7) and look for anything that gates trading:

  • Time filter. Start and end hours are in your broker's server time, not your clock. A London-session EA on a GMT+3 server trades at different numbers than the seller's GMT+0 example.
  • Day filter. Some EAs do not trade on Monday morning or Friday afternoon, or skip the first and last days of the month.
  • Spread filter. A maximum spread of 15 points will block a gold EA all day at a broker whose spread is 25 points. Compare the filter with the spread shown in Market Watch.
  • News filter. Around high-impact releases the EA pauses, sometimes for hours either side. If the filter cannot download the calendar (see WebRequest above) some EAs stay paused permanently to be safe.
  • Maximum trades or one trade per bar. If a position is already open on another chart with the same magic number, the EA may be waiting for it to close.
  • Signal conditions. Trend EAs can wait days for a setup. A quick way to tell: run the same settings in the strategy tester over the last month and count the trades. Our backtesting guide shows how.

7. Not enough margin, or the lot is wrong

If the Journal shows “not enough money”, “invalid volume” or “no money”, the EA is trying to trade and the broker is refusing:

  • Not enough money. The lot size needs more margin than your free margin. Lower the lot or risk input, or check the EA is not sized for a $10,000 account on a $500 one. The margin calculator shows the margin per lot at your leverage.
  • Invalid volume. The lot is below the broker's minimum, above its maximum or not a multiple of its lot step. A risk-percent EA on a small account can compute 0.004 lots and get this error every time. Use the position size calculator to see what lot your risk setting implies.
  • Invalid stops. The stop loss or take profit is inside the broker's minimum stop distance. Widen the stop input or check the points-versus-pips setting.
  • Trade context busy or requote. Momentary refusals during fast markets. If they repeat constantly, another EA on the same terminal may be flooding the server with modifications.

8. Prop-firm and broker restrictions

Some accounts do not allow expert advisors at all, and the symptoms look like a permission problem you cannot fix:

  • “EA execution is prohibited” or “AutoTrading disabled by server” in the Journal, with the Algo Trading button greyed out so you cannot turn it on. The broker or prop firm has disabled algorithmic trading for the account type. No setting on your side changes this.
  • Prop-firm challenge rules. Some firms forbid EAs on certain challenge types, some allow them only as trade or risk managers, and some charge an EA usage fee or restrict them above a certain account size. Our prop-firm rules guide has a firm-by-firm table.
  • Demo accounts from some brokers expire after 30 days or block algorithmic trading unless you ask for it. Check the account's expiry in the Journal at login.

9. Read the Journal and Experts tabs

Everything above is logged. In the Toolbox (Terminal in MT4) at the bottom of the screen:

  • The Experts tab shows what the EA itself printed: its initialisation, its reasons for waiting, its own error messages and the error codes from any rejected order.
  • The Journal tab shows what the terminal did: the Algo Trading state, login results, “automated trading disabled by server”, and every order request with the server's reply.

Right-click either tab and choose Open to see the full log files, which keep more history than the tab. Search the file for the EA's name and for “failed” or “error”. The MT5 error codes you will see most are 4752 (algo trading disabled for this EA), 4753 (disabled in the terminal), 4754 (disabled for the account), 10019 (not enough money), 10014 (invalid volume) and 10016 (invalid stops). If you need to ask a seller or your broker for help, copy those lines; they shorten the conversation considerably.

Trades in the tester but not live

This is the case that frustrates people most, and it has a short list of causes. The strategy tester ignores the Algo Trading button and the Allow Algo Trading tick box, trades at any hour, never has a closed market, uses a modelled spread and always has enough margin. On a live chart, every one of those can stop the EA. Check them in this order: Algo Trading and the EA's permission, the time filter against server time, the spread filter against the live spread, the symbol name, and the margin for the configured lot. Finally, confirm the live chart carries the same set file as the test. The set file guide covers loading one.

The one-minute checklist

  1. Algo Trading (AutoTrading) button in the toolbar is green.
  2. The EA shows a smiling face or blue hat. If not: F7, Common tab, tick Allow Algo Trading.
  3. No red lines in the Experts tab about DLLs or WebRequest.
  4. The chart's symbol and timeframe match what the EA was built for, suffix included.
  5. The market is open, the terminal is connected and you are logged in with the main password.
  6. The EA's time, spread and news filters allow trading right now, in server time.
  7. The lot size fits your margin and the broker's minimum lot.
  8. The account type allows EAs at all.
  9. The Journal and Experts tabs show no refused orders.

If every line passes and the EA still has not traded, it is waiting for a signal. Leave it running on a VPS so it does not miss the signal when it comes, and judge it after a few weeks of trades rather than a few hours.

Frequently asked questions

Why is my EA not trading in MT5?

The commonest causes, in order: the Algo Trading button in the toolbar is off, the EA was attached without Allow Algo Trading ticked on its Common tab, the market is closed or the symbol is not tradable, the EA's own time, spread or news filter is blocking it, or the account has no margin for the lot it wants. The Experts and Journal tabs in the Toolbox name the exact cause.

Why does my EA show a sad face or a grey hat?

On MT4 a sad face in the top right corner means the EA is attached but not allowed to trade: either AutoTrading is off or Allow live trading was not ticked. On MT5 a grey or crossed-out hat means the same thing. A smiling face or a blue hat means the EA is allowed to trade and is simply waiting for a signal.

What does 'ea execution is prohibited' mean?

The account or server does not allow expert advisors to send orders. You see it on some prop-firm challenge accounts and some broker account types. The EA cannot be made to work on that account; the firm or broker has to permit algorithmic trading, or you need a different account type.

What does 'AutoTrading disabled by server' mean?

Your broker has switched off automated trading on the account, usually for the account type or during maintenance. The Algo Trading button cannot override it. Contact the broker, or check whether your account type allows EAs.

What is MT5 error 4752 or 'trade is not allowed'?

Error 4752 means algorithmic trading is disabled for the running program, which is the Allow Algo Trading tick box on the EA's Common tab. Error 4753 means trading is disabled for the whole terminal, which is the Algo Trading toolbar button. Error 4754 means the account itself does not permit trading.

Why does my EA trade in the strategy tester but not on a live chart?

The tester ignores the Algo Trading button, trades at any hour and never runs out of margin. A live chart does none of those things. Also check that the live chart uses the same symbol, timeframe and set file as the test, and that the EA's time filter is set for your broker's server time.

Educational information only, not financial advice. Trading forex and CFDs on margin carries a high risk of losing money. Read our risk warning.

Hear about new tools first

One short email when a tool launches or a big update ships.