Slippage in Forex Trading: Why MT5 EAs Fail Live + Practical Fixes

avatar

What is slippage?
Sometimes my order gets filled at a different price than I expected…

avatar

Slippage occurs when your order is executed at a different price than the one you requested.

It typically happens during fast market moves or when liquidity is low.
The execution price can move in your favor (positive slippage) or against you (negative slippage).

For strategies like scalping that target only a few pips, even small slippage can significantly impact performance.

Written by

Tetsushi O-nishi

System trader in the FX market / MQL5 programmer / EA (automated trading system) developer
Started developing EAs in 2021. Builds and backtests a wide range of strategies, focusing on robustness (resilience to changing market conditions).
Currently running 10+ self-developed EAs on real trading accounts.

Disclaimer
This article is for informational purposes only and does not constitute financial advice. Trading Forex involves significant risk. Please consult with a professional before making any investment decisions.

What Is Slippage? (When Your Fill Price Shifts)

Definition (What’s actually happening)

Slippage is when the price moves during the tiny time gap between sending an order and getting filled, and you end up with a different fill price than you expected.

Slippage infographic: expected price vs actual execution price (positive/negative slippage).
Slippage occurs when your order is filled at a different price than expected—often during fast markets—resulting in positive or negative slippage.

In simple terms, it’s the gap between the price you tried to trade and the price you actually got filled at.
(It’s especially common with market orders and when a stop order turns into a market order.)

That gap can work in your favor—or against you.

  • Negative slippage: filled at a worse price (higher cost)
  • Positive slippage: filled at a better price (price improvement)

Example: You plan to buy EURUSD at 1.10000 with a market order, but you get filled at 1.10003 (you paid more—worse for a buy).
If you get filled at 1.09998 instead (you paid less—better for a buy), that’s positive slippage.

When slippage tends to happen

  • Right after major news (volatility spikes and price can jump)
  • Low-liquidity hours (thin trading, early morning, right after the weekly open, etc.)
  • Large order sizes (your order “eats into” available liquidity and the average fill shifts)
  • High latency (slow connection/VPS/server) (your order arrives later, and price moves in the meantime)

Slippage vs. spread (they’re different)

Spread is the difference between the Ask (buy price) and the Bid (sell price). It’s a trading cost that always exists.

Slippage is the price shift that happens between sending the order and getting filled. It may happen—or may not.

In live trading, your real cost is roughly the combined impact of spread + commissions + slippage.

Slippage vs. requotes (similar, but not the same)

A requote means: “We can’t fill you at that price, so we offer a new price.” (a re-quote)

Slippage means: there is no new quote—you simply get filled at a shifted price.

Because the behavior is different, it’s important not to treat them as the same “execution problem.”

Related:What Is a Requote in MT5? Why It Happens, How It Affects EAs, and Fixes

How Slippage Affects EAs (Automated Trading)

Slippage is not “a small error that happens sometimes.” It’s a hidden cost that matters more as your trade count increases.
EAs (Expert Advisors: automated trading systems) often trade frequently, so small price shifts can add up and quietly reduce your edge.

Scalping / short-term breakout systems get hit the hardest

The smaller your target profit, the easier it is for just ±0.2–0.5 pips of slippage to break performance.
A trade that “should have been a win” becomes break-even. Break-even becomes a loss. That difference stacks up over time.

Example: EURUSD, 1 lot, average negative slippage of -0.2 pips, happening 1,000 times

0.2 pips × $10/pip × 1,000 trades = $2,000

Even -0.2 pips can eat your edge when an EA trades a lot.

Frequent stop orders tend to slip more

A stop order often gets filled in a way that’s close to a market fill the moment price touches the level.
During fast moves, gaps, or thin liquidity, stops are more likely to suffer slippage.

  • Stop-loss exits: worse fills can increase losses
  • Stop-entry breakouts: slippage can turn into “buying the top / selling the bottom”

A common reason backtests and live results don’t match

Most backtests cannot fully reproduce real-account execution (slippage, requotes, latency, thin liquidity).
So even if an EA looks strong in a backtest, it may perform noticeably worse in forward testing (demo/live).

The key is to measure slippage in live trading logs—not just averages, but also bias, frequency, and how it changes by time of day.

Why results deteriorate slowly over time

The scary part about slippage isn’t usually a single huge loss. It’s how it can quietly erode performance.

  • Worse entries → smaller average wins / closer to stop-loss
  • Worse exits (especially stops) → larger average losses
  • Execution delays → more stop-outs and more missed fills

As a result, profits get shaved little by little, and many traders end up thinking, “Why is my forward test weaker than my backtest?”

MT5 Strategy Tester: “Emulate slippage and requotes”


MT5 Strategy Tester delay settings screen

Delay settings in MT5 Strategy Tester. This feature can “approximate” slippage and requotes during execution.

What this feature can (and can’t) do

It can’t: perfectly reproduce real-account slippage

MT5 explains this as “Emulate slippage and requotes during trade execution,” but it does not reproduce real-account slippage exactly.

It uses your chosen Delay and the price movement during that time to generate slippage/requotes with a simple approximation model.
That’s the right way to think about it.

It can: test whether an EA is fragile under latency

This feature is still useful to spot EAs that fall apart when execution gets worse.
If performance collapses the moment you add delay, that’s a strong sign the EA may struggle in real trading.

Important: use tick-based modeling, or the test loses meaning

To evaluate slippage/requotes, you should use tick-based modeling. Use one of these:

  • Every tick based on real ticks (real ticks)
  • Every tick

These modes do not include the full intrabar price path, so slippage evaluation becomes effectively unreliable (often underestimated or nearly ignored):

  • 1 minute OHLC
  • Open prices only

How to use Delay: test from realistic to pessimistic

Suggested test steps (example)

Increase delay in stages—realistic → pessimistic—to reveal weak spots:

  • 200 ms (realistic)
  • 500 ms (worse conditions)
  • 1000 ms (very harsh conditions)

If performance suddenly worsens, treat it as a warning

If performance (especially Profit Factor (PF)) drops sharply just by increasing delay,
it’s a sign you should revisit your design (entry/exit logic, order type, slippage limits) and your setup (trading hours, broker/account, VPS).

Bottom line: use MT5 Tester for robustness—not perfect execution reproduction

MT5 Strategy Tester is not a tool for perfectly reproducing real slippage.

The right use case is a robustness test: check how much your EA degrades under delay-driven slippage, and fix weak points before you trade live.

Use it as a stress test for execution risk, not as proof that live fills will match your backtest.

Avoid Slippage-Fragile Strategies First (Especially Scalping)

The most effective “slippage countermeasure” is not VPS tuning or parameter tweaks.
It’s choosing a strategy that doesn’t lose its edge when execution slips.

In particular, scalping EAs that target only a few pips can break easily when small price shifts stack up.

That’s why it’s crucial to choose EAs with a real-account forward test and results that haven’t collapsed under real execution.

Why scalping is vulnerable to slippage

Scalping targets small average profit per trade, so even 0.2–0.5 pips of slippage can change the whole payoff structure.

  • Winning trades earn less (small take-profits are sensitive)
  • Losing trades lose more (stops can slip worse)
  • Win rate, PF, and risk-to-reward (RR) can deteriorate slowly until the EA no longer works

So slippage isn’t “bad luck.” With high trade frequency, it becomes a cost that shows up almost inevitably.

Related:Scalping EAs: Why They Often Fail on Live Accounts (Costs, Slippage, Execution)

Why a great backtest can still fail in live trading

A backtest can’t fully reproduce real execution (slippage, requotes, latency, thin liquidity).
So even a scalping EA that looks great on paper can lose its edge in forward testing (running it in real conditions).

Don’t overtrust demo performance (demo and live execution can differ)

Even when “forward test” results are shown, it’s safer not to trust demo-only results too much.
Demo and live accounts may not share the same execution environment.

Why demos can look “better” (less slippage)

A demo account often does not send orders into the market the same way a live account does.
Some brokers fill demo orders through internal simulation.
That can make demo execution look better, such as:

  • Less frequent / smaller slippage
  • More stable fills (higher fill rate)
  • Less damage during fast markets

For scalping EAs, this gap matters a lot. A demo curve can look strong while live performance breaks down.

What to prioritize: real-account forward tests

  • Is there a real account forward test?
  • Is the track record long enough (not just a short winning streak)?
  • Do they provide execution details (slippage, fills, transparency)?

In short: use demo for basic checks, but judge profitability based on whether the EA holds up on a real account.

Related:How to Read Myfxbook: Spot Risky EAs (Balance vs Equity, Margin Spikes, Trade History)

Warning signs

  • The backtest is smooth, but the forward test results are poor
  • Only a demo forward test looks strong, while real-account results are missing—or clearly worse

A safer direction: M30–H1 “swing-leaning” systems

If you want more slippage resistance, choose strategies with more room per trade.
Systems based on M30–H1 (30-minute to 1-hour charts) often tolerate a few pips of slippage better than scalping.

What “slippage-resistant” EAs tend to have in common

  • Enough average profit per trade (higher cost tolerance)
  • Not excessively high trade frequency (less cost stacking)
  • Avoids chasing fast spikes (news filters / volatility filters)

Bottom line: choose a robust EA that won’t break when conditions change

Slippage changes with the market, but also with broker execution, trading hours, and your connection.
So for long-term trading, it’s best to choose an EA that doesn’t rely on one perfect condition—choose a robust EA that can handle realistic execution.

Related:What is EA robustness? How to choose an EA that won’t break, plus a pre-purchase checklist

Slippage Countermeasures (How to Reduce Losses When Running EAs)

As explained earlier, the most important step is choosing a strategy with strong cost tolerance—one that can handle spread + commissions + slippage.

After that, here are practical actions (from easiest to implement) that may help reduce slippage in real trading.

1) Trading setup and infrastructure

Lower latency (reduce delays)

Using a VPS close to your broker’s trade server (same region and ideally the same data center) can reduce order travel time,
which often lowers the chance of slippage.

  • Target: single-digit ms ping (closer is better)
  • Note: low ping is not magic—during fast markets or thin liquidity, slippage still happens

Related:VPS Location for MT4/MT5 EAs: Latency Targets, Equinix NY4/LD4/TY3, and How to Choose

Stabilize your connection and keep MT5 lightweight

Reduce heavy indicators and unnecessary processes in MT5 so your EA’s order handling stays responsive.
A “busy” setup can slow execution and increase slippage.

  • Remove unnecessary indicators and visual clutter
  • Run a reasonable number of charts/EAs at the same time
  • Leave enough CPU/RAM headroom on your VPS

Related:EA VPS Setup Guide: Prevent MT5 Lag, Freezes, and Unexpected Downtime

Split large orders (break size into pieces)

Bigger lots can consume liquidity and worsen the average fill. If you trade larger size, splitting into multiple orders can reduce total slippage.

However, be careful: it can increase the risk of missed fills and partial execution.

2) Broker and account choice (execution quality matters)

Slippage depends on the market, but also heavily on your broker’s execution quality.
Don’t choose based only on “tight spreads.” Compare brokers by execution quality.

3) EA settings and logic to avoid “big slippage”

Even with a solid VPS and broker, slippage spikes during fast moves and low-liquidity periods.
Design your EA to stay away from those conditions to reduce drawdowns and instability.

Time-of-day and volatility filters

  • Avoid major news windows (pause new entries for X minutes before/after)
  • Avoid low-liquidity hours (early morning, right after the weekly open, etc.)
  • Pause new entries during abnormal volatility (triggered by spread widening or sudden range expansion)

Set a maximum allowed slippage (a cap)

Some EAs allow you to set a maximum slippage allowance (maximum deviation) in the parameters.
A cap can help avoid unusually bad fills in extreme conditions.

Important warning: if you make the conditions too strict, results can get worse

  • You may miss valid entries (more skipped trades)
  • More delays and retries can hurt performance overall

Once you set a cap, always verify it with forward testing and logs:
check whether skipped fills are increasing too much and whether your total cost actually dropped.

Summary

Slippage is not as obvious as spreads or commissions. It’s a hidden cost that’s easy to overlook.

That’s why an EA can look great in a backtest or on a demo account, yet perform worse on a real account—because real execution includes latency, thin liquidity, and fast-market slippage.

The most effective “slippage fix” is choosing a strategy that doesn’t lose its edge when fills slip.
Scalping EAs that target a few pips are especially vulnerable, and the gap between backtest and live results can be large.

So the most reliable approach is to choose an EA with a real-account forward test and results that remain stable even with real-world slippage.

Author of this article

Tetsushi O-nishi

System trader in the FX market / MQL5 programmer / EA (automated trading system) developer
Started developing EAs in 2021. Designs and backtests a wide range of strategies with a strong focus on robustness. Currently runs more than 10 of his own EAs on real accounts.

Leave a Reply