MT5 ERROR GUIDE · UPDATED OCTOBER 2026

MT5 error 4756: trade request failed.

Error 4756 (ERR_TRADE_SEND_FAILED) reports a failure to send a trade request. On its own it does not identify the cause or prove that the broker received and rejected an order. Check Experts/Journal and, when logged by the EA, MqlTradeResult.retcode and its comment. The three usual causes: SL or TP inside the broker's stops level, a lot below the symbol minimum, or a symbol name your broker does not use in the alert JSON. A TradingView-to-MT5 bridge like SignalForge AI (from $4.99/month) validates all three before sending an order.

BBenjamin SF · Founder Published Jul 26, 2026 Read 7 min
Quick answer
Error 4756 (ERR_TRADE_SEND_FAILED) reports a failure to send a trade request. On its own it does not identify the cause or prove that the broker received and rejected an order. Check Experts/Journal and, when logged by the EA, MqlTradeResult.retcode and its comment. The three usual causes: SL or TP inside the broker's stops level, a lot below the symbol minimum, or a symbol name your broker does not use in the alert JSON. A TradingView-to-MT5 bridge like SignalForge AI (from $4.99/month) validates all three before sending an order.

Update (Oct 20, 2026), new guides for failing orders: MT5 “No connection” and invalid price / off quotes (10015/10021).

The 60-second diagnosis

OPEN TOOLBOX → JOURNAL (OR EXPERTS), FIND THE 4756 LINE, AND MATCH IT BELOW

4756 with “invalid stops” (error 10016)
SL or TP too close to the price. The distance is smaller than the broker's stops level for that symbol. The classic case on XAUUSD with a wide spread. → Fix 1.
4756 with “invalid volume” / “invalid lots”
Lot size outside the rules of the symbol: below the minimum, above the maximum, or not aligned to the volume step (e.g. 0.005 on a 0.01-step symbol). → Fix 2.
4756 at rollover, news or market open/close
Market closed or quotes paused. Many brokers freeze execution around 00:00 server time and during major news. → Fix 3.
4756 with “no money” / “not enough margin”
Insufficient margin: free margin cannot cover the position at your leverage. → Fix 4.
4756 with “requote” / “price changed”
The price moved between your request and the broker's execution: fast markets and news spikes. → Fix 5.

Two 10-second sanity checks before anything else: the AutoTrading button in the toolbar must be green (toggle with Ctrl+E), and Tools → Options → Expert Advisors → “Allow algorithmic trading” must be checked. If either is off, orders never reach the broker and you will see different errors, but they take seconds to rule out.

Five checks guided by the log

FIX 1

Stops too close to the price (invalid stops, error 10016)

One possible cause of a failed request. Every symbol has a stops level: a minimum distance, in points, that your SL and TP must keep from the current price. If your stop lands inside it, the broker rejects the order. Gold is the classic offender: the stops level on XAUUSD is often wide, and when the spread spikes, a stop that was valid a minute ago falls inside the forbidden zone.

Find the limit: press Ctrl+U (Symbols), select your symbol, and read “Stops level” in points. Your SL/TP must be at least stops level + current spread away from the price.
If stops come from your alert: widen the sl/tp values in the TradingView alert JSON (see the payload reference in the docs).
If stops come from the EA: right-click the chart → Expert Advisors → Properties (or press F7) and increase the SL/TP points in the inputs, or set the overrides to 0 to trade without fixed stops.

Real support case: a client trading XAUUSD was getting 4756/10016 on every signal. His alerts carried no TP/SL at all, but MT5 had kept old EA inputs on the chart that placed stops inside the broker's stops level for gold during a high-spread window. Setting the SL/TP override inputs to 0 in F7 fixed it on the spot.

FIX 2

Lot size outside the symbol's min / max / step

Every symbol defines a minimum volume, a maximum volume and a volume step. A lot below the minimum, above the maximum, or off the step (0.005 on a 0.01-step symbol) is rejected. This bites alert users who hardcode a lot that works on one symbol but not on another: indices and crypto CFDs have very different rules from forex pairs.

Check the rules: Ctrl+U → select the symbol → read “Minimal volume”, “Maximal volume” and “Volume step”.
Align your alert or EA input to a valid volume, e.g. 0.10 instead of 0.05 if the step is 0.10, or 0.01 if the minimum is 0.01.
FIX 3

Market closed or quotes paused

If the alert fires while the market is closed (weekend, holiday) or while your broker pauses quoting (common around the 00:00 server-time rollover and during major news), the order is rejected. Check the time of the last tick in Market Watch: if it is frozen, nothing will execute until quotes resume.

For automated setups this is a retry problem, not a configuration problem: a bridge or EA with bounded retries will re-send the order once the market reopens instead of dropping the signal.

FIX 4

Insufficient margin

The broker calculates the margin needed for the position at your leverage and rejects the order if your free margin cannot cover it. Open Toolbox → Trade and compare Free margin against the position you are trying to open. The fix is a smaller lot, higher leverage (if your broker and ruleset allow it), or closing other positions first. On prop-firm accounts, remember the drawdown rules sit on top of plain margin math.

FIX 5

Requote: the price moved

Between your terminal sending the order and the broker executing it, the price moved beyond the allowed deviation, so the broker declines and offers a new price. It happens in fast markets and around news. The practical fixes: allow a larger deviation/slippage in the order settings, use market execution where the broker supports it, and retry, a single requote is normal in a volatile spike.

When it is NOT your broker

CHECK THE REQUEST AND THE EA LOG: BUT THE ROOT CAUSE CAN BE UPSTREAM IN YOUR ALERT

The alert, not the broker, sent something impossible

An incorrect symbol, unsupported volume or wrong SL/TP units can cause a request to fail. Compare the alert with the field reference and inspect the EA log before attributing the cause to the broker.

The fastest way to rule the payload in or out: paste your alert message into the free webhook tester. It validates the schema and shows you exactly what the bridge would send to MT5, before anything reaches your broker.

If the JSON is clean and 4756 persists

Then the cause is broker-side: stops level, volume rules, market state or margin, go back to the five fixes above. And if you want your alerts validated, routed and retried automatically instead of debugging payloads by hand, start the 14-day free trial, no card required.

FAQ

WHAT 4756 MEANS, 10016, GOLD, AND WEBHOOK ALERTS.

What is MT5 error 4756?

Error 4756 (ERR_TRADE_SEND_FAILED) reports a failure to send a trade request. On its own it does not identify the cause or prove that the broker received and rejected an order. Check Experts/Journal and, when logged by the EA, MqlTradeResult.retcode and its comment.

Is MT5 error 4756 the same as error 10016?

No. 4756 reports a request sending failure; 10016 (TRADE_RETCODE_INVALID_STOPS) identifies invalid stops. Check the return code and comment to distinguish the causes.

Why do I get error 4756 only on gold (XAUUSD)?

Many brokers set a wide stops level on gold and the spread spikes around news and rollover, so an SL/TP distance that works on EURUSD gets rejected on XAUUSD. Open Symbols with Ctrl+U, check the stops level in points, and place your stops at least stops level + current spread away from the price.

Can a TradingView webhook alert cause error 4756?

Indirectly, yes. A lot below the symbol minimum, SL/TP too tight, or a symbol name your broker does not use in the alert JSON all end as a broker rejection. Validate the payload in the webhook tester, a schema error normally fails earlier at the bridge, not at the broker.

Keep reading

More troubleshooting: PineConnector not working? 12 fixes (and when to switch). Payload reference: SignalForge docs.

Author

Benjamin SF is the founder of SignalForge and an expert in trading algorithm automation. He builds and operates the SignalForge bridge for prop-firm traders and answers support cases like the one in this guide.

Automate your TradingView signals on MT5

SignalForge routes your alerts to MetaTrader 5 in milliseconds, with payload validation and automatic retries. 14-day free trial, no card required.

SignalForge AI is an order-execution tool. We do not provide investment advice. Trading involves risk of loss.

Reference: MQL5 runtime error codes; trade server return codes. 4756 and 10016 are different codes; 10016 identifies invalid stops.