How to Migrate an EA Between Brokers on the Same VPS Without Losing a Trading Day

person
FXVPS
Share
How to Migrate an EA Between Brokers on the Same VPS Without Losing a Trading Day

Switching VPS providers and switching brokers are two different problems that get conflated because both involve the word “migration.” We already cover the first one — moving your existing setup from another VPS provider to FXVPS — in our EA migration to FXVPS guide. This guide covers the second, genuinely different problem: staying on the same VPS but moving a live EA from one broker’s server to another’s, whether because of better spreads, a regulatory change, an account closure, or simply outgrowing your current broker.

The two problems look similar on the surface — copy some files, log in somewhere new — but broker migration carries risks that VPS migration does not: different symbol names, different contract specifications, different server time offsets, and a live risk-management system that has to keep working correctly the entire way through.

Why This Is Riskier Than a VPS Move

When you move VPS providers, the broker relationship stays constant — same account, same symbol names, same server time, same margin rules. Only the physical machine underneath changes. When you move brokers, all of those things can change simultaneously, and your EA’s logic may have implicit assumptions baked in about every one of them.

⚠️ Warning: An EA that references a symbol as “EURUSD” will fail silently or throw an invalid-symbol error on a broker that lists it as “EURUSD.a,” “EURUSDm,” or with any other suffix. Symbol suffix mismatches are the single most common cause of a “working” EA doing nothing at all on a new broker.

Step 1: Audit Every Broker-Specific Assumption in Your EA

Before touching any file, go through your EA’s inputs and hard-coded logic looking for anything that assumes facts about your current broker specifically:

  • Symbol names and suffixes. Does the code reference “EURUSD” directly, or does it read the symbol dynamically from the chart it’s attached to? Hard-coded symbol strings are the first thing to check.
  • Server time offset. If your EA has session or news-window hour filters, they are calibrated to your current broker’s server GMT offset. A new broker may run a different offset entirely — see our daylight saving time and EA trading hours guide for the related timezone problem that compounds this.
  • Lot size and volume step. Minimum lot sizes, lot steps, and maximum position sizes vary by broker and even by symbol within a broker. An EA with hard-coded lot sizing can violate a new broker’s limits or size positions incorrectly.
  • Stop level and freeze level distances. Brokers set different minimum distances for stop-loss and take-profit placement relative to current price. An EA that places stops too close for a new broker’s rules will get order-rejected errors.
  • Contract specifications. Pip value, tick size, and margin requirements can differ between brokers even on the same nominal instrument, particularly for CFDs on indices, commodities, and crypto.
  • Account mode: hedging vs netting. MT5 accounts can run in either hedging or netting mode depending on the broker and jurisdiction. An EA built assuming hedging (multiple simultaneous positions on one symbol) will behave differently or fail on a netting account.

📊 Key Stat: Broker platform documentation and account-type pages almost always publish minimum lot size, stop level, and margin requirements per instrument. Pull these for your new broker before go-live, not after your first order gets rejected.

Step 2: Run Both Brokers in Parallel on the Same VPS

The zero-downtime principle that applies to VPS provider migration applies equally here, and it is easier to execute since you are not even changing machines. Install the new broker’s platform as a second instance alongside your existing one, rather than replacing it outright.

  1. Install the new broker’s MT4/MT5/cTrader client in a separate directory from your current platform, so both can run simultaneously.
  2. Log in to the new broker on a demo account first, using the same lot sizing, symbols, and hour filters your live EA currently uses.
  3. Attach the EA to the demo account and let it run through at least one full trading week, covering both quiet sessions and at least one high-volatility event, before trusting the numbers.
  4. Compare demo fills against your existing live broker’s fills for the same period where possible — spread, slippage, and rejected-order rates all matter, not just whether trades executed.

💡 Tip: Pay particular attention to how the new broker’s demo account handles the exact hour-filter boundaries your EA uses. A demo account inherits the broker’s real server time offset, which is exactly the variable most likely to differ from your old broker.

Step 3: Reconcile Symbol Names and Update Your EA’s Inputs

Once you have the new broker’s exact symbol list, update every reference in your EA’s settings:

  • Update the chart symbol the EA is attached to, matching the new broker’s exact naming (including any suffix)
  • Update any input parameters that reference symbol names as text strings, not just the chart it’s running on
  • Re-verify magic numbers if you run multiple EAs or multiple instances of the same EA — a collision between an old broker’s EA and a new broker’s EA sharing a magic number on the same VPS can cause one to interfere with the other’s position tracking

Step 4: Recalculate Risk Parameters for the New Broker’s Terms

Do not assume your existing lot sizing or risk-per-trade settings transfer cleanly. Recalculate based on the new broker’s:

  • Minimum lot size and lot step
  • Margin requirement per lot (which affects how many concurrent positions your account can actually support)
  • Stop level and freeze level minimums
  • Spread and typical slippage, which affect whether a strategy’s edge survives the move at all

⚠️ Warning: A strategy’s backtested edge is calculated against a specific spread and slippage assumption. Moving to a broker with meaningfully wider spreads or worse execution can erode or eliminate an edge that looked solid under your old broker’s conditions — verify this on the demo run in Step 2 before going live, not after.

Step 5: Cut Over Without a Gap

With the new broker validated on demo and your EA’s parameters updated:

  1. Close out or hand off open positions on the old broker according to your own risk plan — do not let this migration itself become a reason to rush an exit.
  2. Switch the EA to the new broker’s live account, using the updated symbol names and recalculated risk parameters from Steps 3 and 4.
  3. Monitor closely for the first full session, watching specifically for rejected orders (often a sign of a missed stop-level or lot-size difference) and for hour-filter behavior around the session open and close.
  4. Keep the old broker’s platform installed but idle for a week or two after cutover, in case you need to reference historical settings or reopen it briefly.

Best Practice: Do not decommission the old broker’s account or platform installation until you have watched the new broker’s live execution through at least one full week, including a high-volatility event. If something is subtly wrong with the new broker’s fills, you want the option to fall back without having to rebuild from scratch under pressure.

This Is Also the Right Time to Reassess Your VPS Location

A broker migration is a natural checkpoint to re-verify your VPS is still optimally located, since your new broker’s execution infrastructure may sit in a different datacenter than your old one. See our guide to what “London server” actually means for how to verify this rather than assume it carried over. FXVPS operates in 15+ locations, including London (LD4), New York (NY4), Tokyo (TY3), and Hong Kong (HK1) — if your new broker’s infrastructure sits in a different facility, this is the moment to switch your VPS location alongside your broker.

Running two platforms in parallel during the migration window temporarily increases resource usage beyond your normal single-broker footprint. The Pro Plan ($39/mo) with 4GB RAM and 2 vCPUs comfortably covers running old and new broker platforms simultaneously through the validation period; you can step back down to Core once the old platform is decommissioned, or stay on Pro if you intend to keep both accounts active long-term.

Frequently Asked Questions

Can I run my old and new broker on the same VPS at the same time?

Yes, and you should — running both in parallel during validation, rather than replacing one with the other outright, is the safest way to confirm the new broker’s execution before committing your live capital fully.

Will my EA’s backtest results still be valid after switching brokers?

Not automatically. A backtest is calculated against a specific spread, slippage, and execution model. A new broker with different conditions can change whether the strategy’s edge holds — validate on the new broker’s demo account before trusting old backtest numbers.

What is the most common mistake in a broker migration?

Symbol suffix mismatches. An EA hard-coded to a symbol like “EURUSD” can fail silently or throw errors on a broker that lists the same pair with a different suffix — always confirm exact symbol names on the new broker before go-live.

Does switching brokers mean I should also switch my VPS location?

Not necessarily, but it’s worth checking. Your new broker’s execution infrastructure may sit in a different datacenter than your old broker’s — verify rather than assume your existing VPS location is still optimal.