Your Bot and Your Broker Are Lying to Each Other

Right now, your trading bot has a record of filled orders. Your broker has a different record. The two don't match.

Your bot logged a buy as "filled at 1.2050." The broker confirms the fill but reports only 0.8 lots instead of 1.0. Your bot thinks you're holding 1 lot. You're actually holding 0.8. Your risk calculation is wrong. Your exit plan is wrong. Your position math is corrupted.

Most traders don't know this is happening until they close the trade and the numbers don't reconcile.

Why DIY Bots Lose Position Awareness

A professional EA does one thing most DIY traders skip: live reconciliation. It asks "what does the broker confirm I own?" and compares that against "what does my bot think I own?" Every single tick.

DIY bots skip this because:

From idea to a system that trades for you1Your strategy2Custom build3Full backtest4Live automationNo code on your end. You get a working system, a backtest report, and ongoing support.
How Alorny turns a trading idea into a live, automated system.

What This Costs You

Being blind to your actual position means managing risk based on imaginary data.

Your bot thinks you're up 50 pips on a 1-lot position, so it holds for 100. You're actually up 50 pips on 0.6 lots. When it closes the "position," it closes 0.6 and leaves 0.4 open—bleeding pips while your bot thinks it's flat.

The small reconciliation gap compounds. Across 100 trades, across months of tiny discrepancies, you're leaking 5-15% of expected returns without knowing why. In extreme cases (network outages, broker resets, API limits), the gap widens fast. You go from "up 2K" to "down 5K" the moment you close and see what's actually in the account.

Here's the thing: If your DIY bot doesn't reconcile, it's not managing risk. It's gambling with incomplete information. And gamblers don't win long-term.

Brokers Aren't Transparent About This Either

Your broker isn't deceiving you. They're just not volunteering transparency.

When you place an order, the broker sends a fill confirmation. You assume it's final. In reality, it's provisional. The broker's risk engine might reverse it 100ms later if you've exceeded limits. Your bot never gets the reversal message because it didn't subscribe to the right API callback.

Different brokers use different APIs. MetaTrader 4 uses delayed callbacks—OnTrade() fires after the trade server finishes processing, not when the fill happens. MT5 is better but still lags. Binance, Bybit, OKX all have their own latencies. A bot coded for MT4 won't reconcile correctly on Bybit because the timing model is completely different.

Your broker also won't tell you when they're rationing liquidity. You hit 10 lots at once and they only have 6. They quietly fill 6 and leave 4 pending. Your bot doesn't know—it's still waiting for the order, holding a partial position, draining margin.

The Professional Approach to Live Reconciliation

A custom EA built by someone who understands order management does this on every tick:

  1. Query broker positions. "What does the server say I own right now?" Compare against the bot's internal ledger.
  2. Identify gaps. If the bot thinks 1.5 lots are open but the broker says 1.0, flag it immediately.
  3. Resolve the gap. Don't keep trading. Stop, reconcile, figure out what happened (partial? rejection? network loss?), update the ledger, then resume.
  4. Log everything. Every fill, every partial, every rejection gets timestamped. You can audit what happened post-trade.
  5. Use confirmed data for all decisions. Exit strategy, risk calculation, position sizing—all based on what the broker confirms, not what your bot guesses.

This reconciliation loop must run faster than your trading logic. If you're trading every 5 seconds, reconciliation must run every tick. Anything slower and you're back to being blind.

Why DIY Reconciliation Always Breaks

You might think: "I'll just add a check to my code."

Reconciliation is fragile across scenarios:

Order management systems used by institutional traders handle this with strict state machines and audit trails—but DIY bots skip all of it. They assume fills are always correct and move forward.

This Is Where Custom EA Development Makes the Difference

Order reconciliation is complex enough that DIY traders don't bother. They assume fills are correct and hope.

Professional reconciliation has to be built for your exact broker, your exact strategy, your exact risk model. You can't copy-paste it from GitHub. It has to be custom.

This is why Alorny builds custom EAs with reconciliation baked in from day one. We've completed 660+ projects on MQL5, and reconciliation is standard on every complex strategy. Here's what you get:

Tell us your broker, your strategy, and your risk model. We design reconciliation for your exact setup. You get a demo trading with live position tracking in 45 minutes. Full backtest report included.

A coded edge compounds while you sleepTime in market →Consistency
Illustrative: automated rules execute consistently, with no emotion gap.

Key Takeaways

If you're running a bot without live reconciliation, you're not managing risk. Fix it now, before it costs you real money.