Broker Execution
Why Identical Trading Bots Can Produce Different Results
Updated: 25 September 2026
Evidence from live markets — not theory alone
Two accounts running the same Expert Advisor can produce different results even when the strategy and settings are identical. Real-world execution introduces variables such as latency, slippage, market movement, liquidity and order size. In an analysis of live MT5 logs from July to September 2026, we found that smaller and larger orders had almost identical median processing times — but the larger tickets experienced extreme delays much more frequently.
Traders often expect identical bots to behave identically. The setup can look the same on paper:
- Same trading bot / Expert Advisor
- Same settings
- Same broker
- Same market
- Same VPS environment
Yet equity curves diverge. This article explains the main execution factors behind that divergence, then presents a case study from live MT5 order logs that held several infrastructure variables broadly constant.
The Myth of Perfectly Identical Trading
Automation follows rules precisely. That does not mean two live accounts will experience the same fills.
If two trading bots receive the same signal at the same time, shouldn't they achieve the same outcome? In theory, perhaps. In practice, every order enters a live market where available volume, routing and timing keep changing.
Even small execution differences can compound across hundreds of trades and produce meaningfully different Expert Advisor results over time.
Trading Is Not Just About Price
Most traders focus exclusively on price.
However, real financial markets consist of two critical components:
- Price
- Available volume
A market quote only shows the best available price at that moment.
It does not reveal how much liquidity is available behind that price.
When an order enters the market, it must compete for available liquidity alongside thousands of other participants.
This is where execution differences begin — the mechanics are covered in market execution explained.
The Role of Liquidity
Liquidity refers to the availability of buyers and sellers in the market.
Highly liquid markets generally offer:
- Faster execution
- Smaller spreads
- Lower slippage
However, liquidity is never infinite.
Every price level has a limited amount of available volume.
Once that volume is consumed, the next order may be filled at a different price.
This can occur within milliseconds. Learn more in how liquidity affects trading bots.
Market Depth Explained
Imagine the following simplified order book:
| Price | Available Volume |
|---|---|
| 40,000 | 1 contract |
| 40,001 | 3 contracts |
| 40,002 | 5 contracts |
| 40,003 | 10 contracts |
If multiple traders attempt to buy simultaneously, not everyone will receive the same execution price.
Some orders will consume liquidity at the first level.
Others will be forced to execute at higher prices.
Even though the trading signal was identical, the outcome is different.
Why Timing Matters
Many trading strategies execute during periods of heightened activity.
Examples include:
- Market openings
- Breakouts
- News events
- Volatility spikes
During these moments, thousands of market participants may attempt to enter positions simultaneously.
A difference of only a few milliseconds can influence:
- Entry price
- Exit price
- Whether a pending order is accepted at all
- Subsequent strategy logic after a missed or delayed fill
For short-term strategies, these differences can be significant.
Latency and Slippage Are Not the Same Thing
These two concepts often get mixed together. They interact, but they measure different things.
Order-processing latencyis the time associated with processing an order request — including what MT5 may report as "done in X ms" for a request. That figure is about how long the order transaction took to process, not a complete picture of market quality by itself.
Slippage is the difference between the expected or requested executable price and the price at which the trade actually fills. See what is slippage for a full breakdown.
For pending orders, keep three ideas separate:
- Order-request processing latency
- Pending-order trigger and fill timing
- Execution price / slippage
A slow request can contribute to a worse fill, an invalid price, or a missed trade — but a delay is not automatically the same observation as adverse slippage. Likewise, the gap between a requested stop level and a later fill price is not automatically "bad slippage" in every situation; pending orders are designed to wait for the market to reach a level.
The Impact of Slippage
Slippage occurs when a trade is executed at a different price than expected.
Two accounts may receive:
- The same signal
- The same order type
- Broadly similar market conditions
Yet one account may experience slightly more slippage.
Over hundreds or thousands of trades, these small differences accumulate. Eventually, two previously similar performance curves begin to diverge.
Why Different Brokers Produce Different Results
Not all brokers access the market in the same way.
Brokers may differ in:
- Liquidity providers
- Market depth
- Routing technology
- Execution speed
- Server infrastructure
As a result, the same trading bot may produce noticeably different results across different brokers. This is particularly common among forex, CFD and index brokers.
Execution quality often becomes just as important as the trading strategy itself. The right broker setup can make a measurable difference. That said, broker choice is only one variable — the case study below shows meaningful differences even when the broker and trading server were the same.
Why Different Accounts at the Same Broker Can Differ
Even accounts held at the same broker can experience different results.
Possible reasons include:
Different Server Locations
Some brokers operate multiple trading servers.
Execution paths may differ slightly between them.
Different Account Types
Raw spread accounts and standard accounts often use different execution models.
Order Queue Position
If many orders arrive simultaneously, some orders will be processed before others. Arrival order can influence execution quality.
Order Size and How Requests Are Handled
When an EA scales position size with equity, two "identical" strategies can submit very different ticket sizes into the same market moment. Our live MT5 analysis below examines that scenario directly.
VPS Location Matters
For automated trading systems, server location can be surprisingly important.
Consider two traders:
Trader A
VPS located near the broker’s trading server.
Latency: 2 milliseconds.
Trader B
VPS located on another continent.
Latency: 120 milliseconds.
Although both traders use the same strategy, Trader A may consistently receive slightly better execution.
Over thousands of trades, these differences can become measurable. See VPS for trading, best VPS for MT5, and why trading bots need low latency.
Important caveat: matching VPS location and broker server does not guarantee identical internal routing or liquidity handling for every order. The case study below held those external factors broadly constant and still observed divergent processing tails.
Why Larger Accounts Sometimes Perform Differently
Many traders assume larger accounts automatically produce proportionally larger profits.
In practice, larger positions often need to interact with more of the available book. That can mean more slippage, greater liquidity consumption, or — as the logs below suggest — a higher chance of extreme order-processing delays during busy sessions.
This is related to, but not the same as, why bigger accounts sometimes perform worse. Order size is one plausible contributor among several; client-side logs alone cannot isolate a single cause.
Case Study: What Live MT5 Execution Logs Reveal
To move beyond general explanations, we analysed live MetaTrader 5 execution logs collected across multiple trading sessions between July and September 2026.
The compared accounts used the same automated US30 strategy, the same broker, the same MT5 trading server (CapitalPointTrading-MT5-4), the same VPS environment, and proportional position sizing. Trading was concentrated around the US market open.
Holding those external infrastructure variables broadly constant matters. It reduces the chance that a simple VPS-distance or different-broker story explains the whole picture. It does not prove that internal broker routing or liquidity handling was identical for every request.
Methodology
- Data period
- July–September 2026
- Platform
- MetaTrader 5
- Instrument
- US30
- Environment
- Same broker, trading server and VPS environment for the primary comparison
- Metric
- MT5-reported order-request processing time ("done in X ms")
- Comparison
- Approximately 2-lot vs approximately 8-lot tickets, plus matched examples involving 5.3 lots
This is observational real-world data from live trading sessions — not a controlled laboratory experiment.
What "Done in X ms" Means in MT5 Logs
MT5 log entries such as "order … done in X ms" report the processing / transaction time associated with that order request.
For pending orders, that is not the waiting time between placing a buy stop and the market later triggering it. A pending order can sit for minutes or hours and still have been accepted in a handful of milliseconds.
Keep these measurements separate:
- Order-request processing latency
- Pending-order trigger / fill timing
- Execution price / slippage
The statistics below describe category (1): how long MT5 reported the order request itself took to process.
The Dataset
Account identifiers are omitted. Publicly, the two primary datasets look like this:
Smaller-account dataset: typical ticket size approximately 1.8–2.1 lots; 133 successful pending-order placements; 1 failed buy-stop request.
Larger-account dataset: typical ticket size approximately 7.2–8.5 lots; 91 successful pending-order placements; 12 failed buy-stop requests.
Processing-Time Distribution
| Metric | ~2-lot account | ~8-lot account |
|---|---|---|
| Successful order placements | 133 | 91 |
| Median processing time | 14.2 ms | 15.4 ms |
| Mean processing time | 32.9 ms | 423.5 ms |
| 90th percentile | 48.9 ms | 955.8 ms |
| 95th percentile | 71.4 ms | 1,651.4 ms |
| Slowest observed request | 1,295.8 ms | 16,076.3 ms |
| Orders >100 ms | 3.0% | 23.1% |
| Orders >500 ms | 0.8% | 14.3% |
| Orders >1 second | 0.8% | 9.9% |
The most important result is easy to miss: the medians are almost identical. 14.2 ms versus 15.4 ms is not evidence that every larger order is slower.
The meaningful difference sits in the tail of the distribution. Many ~8-lot requests were still processed in only a few milliseconds. Extreme processing delays, however, appeared much more often in the larger-ticket dataset — which is why the mean and upper percentiles diverge so sharply from the median.
The Typical Execution Wasn't the Problem — the Outliers Were
If someone looked only at the median, they might conclude that order size made almost no difference. That would be incomplete.
- Only 0.8% of successful ~2-lot requests exceeded 500 ms
- 14.3% of successful ~8-lot requests exceeded 500 ms
- 9.9% of successful ~8-lot requests exceeded one second
For a short-term strategy operating around a fast-moving US open, occasional multi-second delays can change which pending level is accepted, whether a request is still valid, or how the strategy sequences the next decisions. That does not guarantee worse profitability on every delayed trade — it does help explain how paths diverge.
Comparing Like-for-Like Orders Across 21 Trading Days
Aggregate averages can mislead because market conditions differ from day to day. To reduce that noise, 59 comparable orders were identified across 21 trading days where the same or comparable US30 order level was requested at approximately the same market moment.
- Larger order slower: 32 of 59
- Smaller order slower: 27 of 59
- Larger order more than twice as slow: 17 of 59
- 10 cases where the larger request exceeded 100 ms while the smaller request remained below 100 ms
This does not show that the larger order was always slower. In fact, 27 of 59 comparisons went the other way. The evidence supports a narrower observation: severe delays occurred disproportionately in the larger-ticket dataset.
The Pattern Appeared on Multiple Dates
The finding was not confined to a single session. A few matched examples:
- 30 July 2026: smaller request ~17.9 ms; larger request ~1,479.8 ms
- 25 August 2026: smaller ~18.6 ms; larger ~1,026.1 ms
- 2 September 2026: smaller ~47.1 ms; larger ~603.0 ms
- 23 September 2026: particularly large divergence (see the matched example above)
- 24 September 2026: large divergence again
What About "Invalid Price" Errors?
Failed buy-stop requests also differed in frequency across the two datasets:
- Smaller account: 133 successful placements, 1 failed buy-stop
- Larger account: 91 successful placements, 12 failed buy-stops
These figures should not be read as a definitive broker "rejection rate." Failures can cluster during rapidly moving markets; retry attempts are therefore not necessarily statistically independent; and a requested pending-order level may no longer be valid by the time the request is processed.
Treat the higher failure count as additional contextual evidence alongside the latency tails — not as proof of a broker policy.
What This Data Cannot Tell Us
MT5 client logs can show:
- Request timestamps
- Acceptance or failure
- Reported processing time
- Order details
- Deal / fill prices
They cannot reveal:
- The broker's complete internal routing path
- Individual liquidity-provider conditions
- Internal broker risk checks
- Liquidity available to a particular request
- Exactly why one request took longer than another
In this live dataset, larger ticket sizes were associated with a substantially higher frequency of extreme order-processing delays. The MT5 logs alone cannot establish the underlying technical cause.
Why This Helps Explain Divergent Bot Results
Return to the original question: why can two accounts running the same algorithm produce different results?
If an EA scales position size proportionally with account equity — roughly 2 lots on $20,000, 4 lots on $40,000, 8 lots on $80,000 — the strategy logic may remain identical while the execution environment experienced by each order may not.
An occasional delay or failed request can cause:
- A different pending order to be accepted
- An order level to become invalid
- A different entry price
- Different subsequent strategy logic
- A missed trade
- Different exits
- Ultimately divergent P&L
That is one pathway by which two initially identical EAs can gradually follow different trade paths. It is not the only explanation — liquidity, slippage, timing, account type and infrastructure still matter — but it is a concrete, observed mechanism rather than a hypothetical one.
The Next Test: 8 Lots vs Two 4-Lot Accounts
The observation led to a new live experiment. Sufficient data has not yet accumulated, so no result is published here. This article will be updated when enough live observations are available.
Previous configuration: approximately 80k equity → approximately 8 lots on one account.
Test configuration: approximately 40k → approximately 4 lots on one account, and approximately 40k → approximately 4 lots on a second account. Where practical, smaller and larger accounts remain as comparison / control observations.
Research question: does reducing the individual ticket size from approximately 8 lots to approximately 4 lots reduce the frequency of extreme processing delays?
Metrics to compare once enough data exists:
- Median processing latency
- P90 / P95
- >100 ms frequency
- >500 ms frequency
- >1 second frequency
- Invalid Price events
- Entry slippage
- Exit slippage
- Missed trades
- P&L per lot
Until that dataset is ready, splitting a larger account should be treated as an open question — not an established execution fix, and not a claim about improved profitability.
The Importance of Trade Duration
Execution differences affect strategies differently.
Long-Term Strategies
Holding periods of days or weeks.
Minor execution differences usually have limited impact.
Short-Term Strategies
Holding periods of minutes or even seconds.
Execution quality can become a major performance driver.
The shorter the average trade duration, the more important execution typically becomes — especially around openings and volatility spikes like those in the US30 sessions examined above.
Why Backtests Cannot Capture This
Backtests assume perfect historical execution.
They generally cannot fully simulate:
- Market depth
- Liquidity shortages
- Real-world slippage
- Broker-specific routing
- Infrastructure differences
- Ticket-size-dependent processing tails
This is one reason live performance often differs from historical simulations — see backtest vs live trading and live vs backtest results.
The market environment is far more complex than historical price charts alone.
How Professional Traders Address Execution Differences
Institutional traders spend enormous resources optimizing execution quality.
Common practices include:
Low-Latency Infrastructure
Reducing delays between signal generation and execution.
VPS Optimization
Locating servers close to broker infrastructure.
Broker Selection
Choosing providers with strong execution quality.
Continuous Monitoring
Tracking:
- Slippage
- Fill quality
- Order-request processing times
- Failed / invalid-price requests
- Trade outcomes
Execution is treated as a core part of the trading process.
What Traders Can Do
While execution differences cannot be eliminated entirely, traders can improve consistency by:
- Using a reliable broker with transparent execution
- Running Expert Advisors on a VPS close to the trading server
- Avoiding low-liquidity periods when practical
- Monitoring processing latency and slippage separately — not as one metric
- Testing across multiple market conditions and reviewing risk management and position sizing carefully
- Treating ticket size as an execution variable, not only a risk variable
Small improvements in execution quality can produce meaningful long-term benefits. None of this guarantees identical results across accounts, and findings from one market or broker environment may not generalise universally.
Final Thoughts
Identical trading bots — and identical Expert Advisors — do not always produce identical results.
Trading takes place in a live market where liquidity, processing latency, market depth and slippage constantly change. Our analysis of live MT5 logs from July to September 2026 adds a specific observation: when strategy, broker, server and VPS environment were broadly the same, larger tickets were still associated with a much higher frequency of extreme order-processing delays, even though median times barely moved.
Understanding these variables helps traders move beyond the assumption that strategy logic alone determines success. In modern automated trading, execution quality is often just as important as the signal itself.
Frequently Asked Questions
Why can the same Expert Advisor produce different results?
Even with identical strategy settings, live accounts can diverge because of latency, slippage, liquidity, order size, timing, account type and infrastructure. Two bots can receive the same signal and still experience different fills, failed requests or subsequent trade paths.
Are larger trading orders always slower?
No. In our July–September 2026 MT5 dataset, median processing times for roughly 2-lot and 8-lot tickets were almost identical (14.2 ms vs 15.4 ms). Many larger orders were still processed in only a few milliseconds. The difference appeared mainly in the tail: extreme delays occurred much more often in the larger-ticket dataset.
What does "done in X ms" mean in an MT5 log?
It is the processing/transaction time MT5 reports for that order request. For pending orders, it is not the waiting time between placing the order and the market later triggering it. Keep request-processing latency separate from trigger/fill timing and from slippage.
Can account size affect an Expert Advisor's performance?
Yes, indirectly. If an EA scales lot size with equity, larger accounts submit larger tickets. That can change how orders interact with liquidity and — in our live logs — was associated with a higher frequency of extreme processing delays. Account size alone does not prove causation.
Is execution latency the same as slippage?
No. Order-processing latency measures how long a request takes to process. Slippage measures the difference between an expected/requested executable price and the actual fill price. They can interact, but they are different measurements.
Can splitting a large trading account improve execution?
That is currently being tested with an 8-lot versus two 4-lot live configuration. The present dataset does not yet establish that splitting an account improves execution, and it certainly does not establish that splitting improves profitability. Results will be published when enough observations accumulate.
Why do the same bots perform differently across brokers?
Different brokers may use different liquidity providers, execution models, server infrastructure and market depth. Those differences affect fills and slippage. Differences can also appear at the same broker when ticket size, timing or account type vary.
Is it normal for results to vary between accounts?
Yes. Small differences are normal in live trading. Over many trades they can accumulate, which is why monitoring both processing latency and slippage matters for automated systems.
Essential reading
Educational
Recommended
Important Disclaimer
This site publishes educational research and reviews of automated trading platforms. Content is for educational purposes only.
Nothing on this website is financial advice. Trading involves risk, and performance varies by market conditions, strategy, and user decisions.

