How to Copy Trades from MT5 to NinjaTrader 8: Every Way Compared

MetaTrader 5 and NinjaTrader 8 side by side: the MT5 copier panel lists five copied trades with their latency and a 21.6 ms average, and the NinjaTrader Receiver shows the same tickets filled with position 5 synced

In April 2026 a developer posted on the NinjaTrader forum with an unusual problem. He had already built a trade copier, and it worked across six platforms. The seventh was the one he couldn’t crack. “I have built a trade copier application that currently supports platforms including MT4, MT5, cTrader, DXtrade, MatchTrader, and TradeLocker. We are looking to integrate NinjaTrader into our system” (shiva_build, NinjaTrader forum, Apr 2026).

The only concrete reply sent him to a third-party vendor. That thread is the short version of this article. NinjaTrader is often where a trade copier’s platform list ends.

If your strategy runs in MetaTrader 5 and you want the trades on NinjaTrader 8, you’re in the same spot. Maybe your EA is on MT5 and your funded account is on a futures prop firm. Maybe you just trust your MT5 logic and want it on CME futures. In this article, I’ll show you every way to get MT5 trades into NT8 and what each one costs you. Then what looks like a solution but isn’t, and the five problems a copier has to solve between these two platforms. By the end you’ll have a checklist you can hold against any copier, ours included.

Why MT5 and NinjaTrader Don’t Talk to Each Other

NinjaTrader doesn’t ship a way to receive trades from another platform. It doesn’t even ship a copier between its own accounts. When a trader asked for one, a forum member put it plainly: “NT doesn’t have a built-in one that does this” (Sachin_Kumar, NinjaTrader forum, Jul 2026).

So any MT5 to NT8 link is something you add. That part everyone knows. The part people find out later is that the two platforms describe a trade differently.

Positions.
MT5 accounts come in two modes. A netting account holds one position per symbol. A hedging account can hold a long and a short on the same symbol at the same time. NinjaTrader 8 only knows netting: one instrument, one net position per account.
Orders.
MT5 attaches stop loss and take profit to the position itself. In NinjaTrader they are two separate working orders. They have to be linked so that when one fills, the other is cancelled. That link is called OCO, one-cancels-other.
Instruments.
On MT5 you often trade a CFD or a broker’s index symbol. On NT8 you trade a futures contract with its own tick size, tick value and expiry. “1 lot” on MT5 has no fixed meaning in contracts.

The same trades, as MetaTrader 5 and NinjaTrader 8 see them A hedging MT5 account shows two positions, a buy of 2.00 and a sell of 1.00. NinjaTrader 8 holds one net position, long 1. A copier between them has to translate one model into the other. MetaTrader 5 hedging account #1 BUY 2.00 US500 #2 SELL 1.00 US500 Two positions on one symbol NinjaTrader 8 netting only LONG 1 ES 12-26 One net position per instrument MT5 → NT8 two positions become one Illustration. Sizes are examples, Lot Multiplier 1.0.

None of this is a bug on either side. It just means a copier between them can’t simply forward “buy 1”. It has to translate. How well it translates is what you’re really choosing when you choose a copier.

Four Ways to Get MT5 Trades into NinjaTrader 8

Four routes actually move a trade from MT5 into NinjaTrader. Here they are with the honest cost of each. Below them is one popular kind of copier you’ll find while searching that doesn’t do this job at all.

Way 1. Re-enter trades by hand

You watch MT5 and click the same trade in NT8. It’s free, and you see every trade yourself. But you are the latency. Night trades and fast exits get missed or mistyped, and an EA that trades while you sleep is off the table.

Way 2. Build your own bridge

Your own code reads MT5 and sends orders to NinjaTrader, or to a prop platform’s API. You control every rule the copier follows. You can even route it through a server if your two platforms sit on different machines. The cost is weeks of work, and you own every edge case in the next section. Some platform APIs are a paid add-on.

On the same forum, a trader asked how to copy trades into several prop accounts. The practical advice was that “you will have to figure out how to send the trade information from NinjaTrader to TopStep’s API” (WaleeTheRobot, NinjaTrader forum, Nov 2025). That’s a fair answer. It’s also a small software project.

Way 3. Use a cloud copier

A server sits between the platforms. MT5 sends each trade to it, and it passes the order on to NinjaTrader. The two terminals can run on different machines, even in different countries. The price is an internet hop in the path, so the delay depends on your connection and the server’s location, not only on your PC. Fewer cloud copiers support NinjaTrader than MetaTrader, so check that the NT8 side works today and that it answers the five questions in the next section.

Way 4. Use a local MT5 to NT8 copier

A sender sits on the MT5 chart and a receiver on the NT8 chart, on the same computer. It’s built for exactly this pair, with no server in the middle, so nothing leaves your machine on the way between the platforms. The catch is that both must run on one computer or one VPS. This is the route our MT5 to NinjaTrader copier takes. Whichever route you pick, the next section shows what it has to get right.

What you’ll find that doesn’t do this job

Search for “NinjaTrader trade copier” and much of what comes back solves a different problem. It’s worth knowing which, so you don’t spend a week on a trial that was never going to work.

NinjaTrader account-to-account copiers. These are the popular ones, because the demand is huge: traders running several funded futures accounts want one click to hit all of them. But the source is an NT8 account. If your strategy is in MT5, there is nothing for them to read. A few of them advertise an MT5 bridge as an extra. Then judge that bridge by the five questions below, not by the copier around it.

The Five Problems Every MT5 to NT8 Copier Has to Solve

Speed is the number on every product page. In our support experience it’s rarely what breaks. These five are. Each one ends with the question to put to whoever sells you a copier, ours included. Copy them into your notes and make the vendor answer all five before you pay anyone.

1. What happens to a hedged position?

Say your MT5 account is in hedging mode. Your EA opens 2 lots long, then 1 lot short on the same symbol. MT5 shows two positions. NinjaTrader can only hold one number: 1 long.

Notice what the copier is not doing here. It isn’t picking which of your two MT5 positions to mirror, because NinjaTrader has nothing to pick from. There is no first position and no last one over there, only that single number. The job is to keep that number right after every trade you make.

That sounds simple until your EA does something unusual. A short signal larger than everything you hold long has to close the position and open the opposite one in the same move. There is no industry standard for any of it, and two copiers can describe this the same way and still leave you with different positions after the same week of trading.

There is a second rule that is easy to miss and worth asking about, because it’s where copiers quietly differ. A close in MT5 never opens a position in NinjaTrader. Close one leg of a hedge and the arithmetic says your net exposure just grew, but the copier doesn’t chase that with a new order on the NT8 side. Whether you like that behaviour or not, you want to know which one you bought.

Here is what that looks like on a real screen. The MT5 account is in hedging mode. Two buys of 0.1 on US500, then a sell of 0.1, and MT5 lists three open positions. On the NinjaTrader side the Receiver went long 1, long 2, then back to 1 on the sell. The copier panel reads “Current position: 1 (synced)”. Click any screenshot in this article to open it full size.

MetaTrader 5 hedging account with three open US500 positions, two buys and one sell of 0.1, next to NinjaTrader 8 holding one ES long, both copier panels showing position 1, synced

Ask the vendor: does the copier support MT5 hedging accounts, and how does it keep the NinjaTrader position matched when you close one leg of a hedge?

2. What happens to a pending order?

A buy stop on MT5 is waiting at a price. Should the copier place the same buy stop on NT8 right away?

It sounds right, but the two prices are not the same market. A CFD quote on MT5 and a futures quote on NT8 move together, but not tick for tick. Their bid and ask differ. A stop placed on both can trigger on one side and not the other. Now you have a position on MT5 and nothing on NT8.

The safer design waits. The pending order stays on MT5, and when it triggers there, the copier sends a market order to NT8. You give up a little price precision. In exchange the two accounts don’t end up disagreeing about whether you’re in a trade at all.

Ask the vendor: are pending orders copied as pending, or as market orders on trigger? And why?

3. Where do the stop loss and take profit go?

On MT5 they sit on the position. On NT8 they must become two linked orders. If the copier sends only the entry, your NT8 position is naked until something else protects it.

What you do in MT5 What NT8 has to show
Open long 1 with a stop loss and a take profit on the position Long 1, plus a sell stop and a sell limit, linked as one-cancels-other
Move the stop loss closer The sell stop moves to the new level. The limit stays
Remove the take profit The sell limit is cancelled. The stop stays
Price hits the stop The stop fills, the limit is cancelled with it, and NT8 is flat

Here it is with our copier. A buy of 0.1 on US500 in MT5, then a stop loss and a take profit added to the position a few seconds later. The NinjaTrader Receiver logs “SL/TP [SL+TP], submitted”, and the ES chart shows a sell stop below the long and a sell limit above it.

MT5 buy on US500 with a stop loss and take profit on the position, and in NinjaTrader 8 the copied ES long with a sell stop below and a sell limit above, logged by the Receiver as SL/TP submitted

Ask the vendor: are SL and TP copied, and as OCO orders? Can you set them in ticks, percent or exact price if the MT5 levels don’t translate?

4. What happens when the two sides disagree?

Sooner or later they will. You close a trade by hand on one side, NT8 restarts during a trade, or a connection drops for ten seconds. The question isn’t whether a copier ever goes out of sync. It’s whether it tells you, and how fast you can fix it.

A good copier treats this as a state you can see, not a surprise in your P&L. There are three states worth naming.

State What it means What should happen
In sync Both accounts hold the same net position Nothing. Keep copying
Out of sync The sizes differ, usually after a manual close or a restart You see it on screen and correct it with one order for the difference, without flattening what’s already right
Synced in reverse The positions are mirrored on purpose, because Reverse Direction is switched on Nothing, as long as you meant to reverse

This is the second state in one of our test sessions. The NinjaTrader long was closed by hand while the MT5 buy stayed open. The MT5 panel turns the NinjaTrader position red, “0 (out of sync)”, and offers a sync of the position and SL/TP. After the sync the Receiver logs “sync long, qty=1, filled”, and the two sides agree again.

MetaTrader 5 window: the copier panel on the US500 chart shows the NinjaTrader position in red as 0, out of sync, with a prompt to click to sync position and SL/TP
NinjaTrader 8 window: the Receiver on the ES chart logs sync long, qty 1, filled, and the position is back to long 1

Ask the vendor: will I see a desync on screen, and can I fix it without closing and reopening positions by hand?

5. How does 1 lot become contracts?

A lot on your MT5 symbol and a contract on NT8 are different sizes. The copier needs a multiplier you control. And it needs to let your NT8 chart decide which contract you trade, including the expiry month.

Ask the vendor: can I scale volume independently of MT5? Do I have to maintain a symbol map?

Now look at your own setup. Is your MT5 account hedging or netting? If you don’t know, check the account type in MT5 before you pick any copier. It changes which of these five questions matters most to you.

What We Don’t Know, and Nobody Else Does Either

One question we get often: “Will my NT8 fill match my MT5 fill?” The honest answer is no, and no copier can promise it.

A copier copies the decision, not the price. Your MT5 trade fills at your broker’s CFD price. Your NT8 trade fills at the exchange price for the futures contract, a moment later. The gap depends on the instrument, the time of day and your two brokers. We haven’t published a measured average for it, because it belongs to your pair of markets, not to us. Treat the MT5 account as the signal and the NT8 account as its own P&L.

How Our MT5 to NinjaTrader Trade Copier Handles It

We build the MT5 to NinjaTrader Trade Copier. Here is how it answers the five questions above, with what you’ll see on screen. Where it doesn’t, I’ll say so.

Two indicators, not two robots

The MT5 side is a sender that runs as an indicator. That matters because an MT5 chart can hold only one EA. Your own EA keeps its chart, and the sender sits beside it.

The NT8 side is the Receiver, also an indicator rather than a strategy. So a trade the copier opens is an ordinary position in your account. You can close it by hand on the chart, and the copier keeps running. With a strategy-based receiver, manual intervention often means stopping the strategy.

The five problems, answered

Hedging.
Hedging and netting MT5 accounts are both supported. On a hedging account the Receiver keeps the NinjaTrader position matched to your MT5 net, and a close in MT5 never opens a position in NinjaTrader.
Pending orders.
They aren’t copied when placed. They’re copied as market orders at the moment they trigger in MT5.
SL and TP.
Copied to NT8 as OCO orders. You can set them by distance, percent or price, and a change to SL or TP in MT5 is mirrored in NT8. This works without an ATM strategy: with ATM on, the ATM manages stops and targets instead.
Desync.
The dashboard shows sync status. If the accounts drift, a sync button brings NT8 back in line. It takes two clicks, the second to confirm, so you don’t fire it by accident.
Volume.
A Lot Multiplier scales NT8 size independently of MT5. The Receiver trades the instrument of the NT8 chart it sits on, so there’s no symbol map to maintain.
Filters.
The Magic Number filter copies only one EA’s trades when several run on the same MT5 account. Reverse Direction mirrors every trade, if you ever need that.

What you see while it runs

The MT5 dashboard shows the connection to NT8, the sync status, the recent trades and NT8’s position and P&L. It also shows the average delay across your last five copied trades. The copier is local, so there’s no internet hop between MT5 and NT8, and the number you see there is measured on your own machine, not on ours. When a trade is blocked or fails, the same panel names the reason next to it.

MetaTrader 5 window with the copier panel on the US500 chart: Connected, average latency 21.6 ms, NinjaTrader position 5 synced, and five recent trades copied in 56, 1, 13, 22 and 16 ms

Here is what that looked like in one test on 29 September 2026: a demo MT5 account copying into NinjaTrader’s Sim101 account on the same PC. Five buys were copied in 56, 1, 13, 22 and 16 ms. Add them up and you get 108 ms over five trades, which is the 21.6 ms average on the panel. The same five tickets appear on the NinjaTrader side as filled, and the position reads 5, synced.

Be clear about what that number is. It is copy latency, the time from the trade in MT5 to the NinjaTrader side acting on it. A simulation account fills instantly, so on a live account the exchange adds its own fill time on top. And five entries is a small sample. Read 21.6 ms as what one test showed, then read your own number off the same panel.

A second session on 30 September went further: hedging, stops and targets, an ATM strategy and two instruments at once. Across the 23 copied trades visible in that session’s screenshots, the panel logged delays from 1 to 53 ms, with a median of 12 ms. Same caveats: a demo account, simulation accounts, one PC. It isn’t a benchmark. It does show the first test wasn’t a lucky five.

NinjaTrader 8 window with the Receiver panel on the ES chart: Connected, and the same five MT5 tickets listed as long, qty 1, filled, position 5

The NT8 side has its own panel. It lists the last five MT5 tickets it received, each with its result: filled, blocked and by which limit, timed out, or already closed. Green means it went through, red means it didn’t. You can match the two logs line by line.

Prop account limits

If your NT8 account is a prop account, the Receiver can enforce limits before a trade reaches it. There are five: daily P&L, allowed trading hours, maximum open size, minimum balance and a news filter.

Limit on the Receiver What you set What happens when it’s hit
Daily P/L Limit Separate daily loss and daily profit thresholds New trades are blocked, or open positions are closed, per your setting
Allowed Trading Time A window for trading Trades outside it are blocked, with optional automatic flatten
Maximum Open Lots A cap on open size Trades that would exceed it are blocked
Minimum Account Balance A balance floor Optional flatten and stop below it
News Filter A window before and after high-impact news New entries blocked, open positions flattened, or both

They’re set in the Receiver’s properties in NinjaTrader, one switch and one value per limit, with a separate flatten option where it applies.

NinjaTrader 8 indicator properties for the Receiver, section Prop trading account limits: daily loss limit 1500, daily profit limit 3000, max position limit 5, min account balance 10000, trading hours 09:30 to 15:55, news limit on USD

When a limit blocks a trade, both panels say which limit and why. In the test below Max Position Limit was set to 5. With five contracts open, the next MT5 buy was refused: “blocked by Max position limit”, in red. Under the trade log the Receiver lists every active limit and where you stand against it, down to the time left before the next news event. MT5 now holds more than NinjaTrader, so the MT5 panel also flags the accounts as out of sync. That’s on purpose. You see the gap instead of finding it later.

NinjaTrader 8 window: the Receiver panel shows the latest MT5 buy in red, blocked by Max position limit, four earlier buys filled, and a Prop limits list with max position 5 of 5 in red

The limits protect you from breaking a rule by accident. They don’t make copying itself allowed. Prop firms treat trade copying differently from one another, and copying your own setups onto your own accounts is usually viewed differently from following someone else’s signals. Check your firm’s current rules before you connect a funded account. We cover this in more detail in Automated Trading on Prop Firm Accounts.

Ask the vendor: are my account’s limits enforced inside the copier, or am I only told it’s “prop-safe”? A label doesn’t block a trade. A setting does.

More than one pair

You can run several instruments at once. Each MT5 chart gets a sender with its own Sender ID, and each NT8 chart gets a Receiver listening for that ID. Multiple NT8 accounts don’t need a separate licence per MT5 terminal.

In this screen from the 30 September session, US500 in MT5 copies to ES on one NinjaTrader simulation account, and NAS100 copies to NQ on another. Each pair has its own panels and its own position.

Two MT5 charts, US500 and NAS100, each with a copier panel, and two NinjaTrader charts, ES and NQ on different simulation accounts, each Receiver showing its own copied trades

If you manage exits with ATM strategies, the copier can attach a Chart Trader ATM strategy to copied trades. Your usual stop and target template then works on MT5 signals. One thing to know: ATM and SL/TP sync don’t work together. With an ATM attached, its stops and targets manage the position, and the copier’s SL/TP sync is bypassed.

The order name field on the Receiver can also be left empty, so copied trades carry no separate tag in the NinjaTrader log.

What this copier doesn’t do

  • Both platforms on one computer. The copier works locally, with no server between MT5 and NT8, so it needs both terminals open on the same machine.
  • One direction. This copier sends trades from MT5 to NT8. It doesn’t send NinjaTrader trades back to MT5.
  • NT8 fills are NT8 fills. As covered above, your futures fill won’t match your MT5 price.

Setting It Up

Setup takes four steps. Install the sender in MT5 and the Receiver in NT8, put each on the chart of the instrument you trade, and match the Sender ID. The step-by-step instruction with screenshots covers every parameter.

Before you connect a live or funded account, run it on an NT8 simulation account for a few days. Let your EA do everything it normally does, including hedging and pending orders. Then compare the two trade logs. That’s the test that matters, and the trial is long enough for it.

Who This Is For, and Who It Isn’t

This fits you if your strategy already lives in MT5 and you want it on NinjaTrader 8 without rewriting it. That’s usually an EA you trust on MT5 and a futures or prop account on NT8.

It doesn’t fit if your strategy is in NinjaScript. Then an NT8 account-to-account copier is simpler and cheaper to run. It also doesn’t fit if you can’t keep MT5 and NT8 open on the same machine during trading hours. And be careful if your EA scalps a few ticks and its edge depends on the exact MT5 fill. The NT8 fill is another market’s price. One more, about money: most copiers on the market are sold as one-time licences. Ours comes only with a subscription. If you’d rather pay once and be done, a one-time licence will likely cost you less over a year.

Not sure which group you’re in? Ask whether your exits would survive a different price than the one MT5 printed.

Start your 5-day free trial →

€25 a month, one subscription, cancel whenever you like. Need something custom built? We develop automation to order → NinjaTrader developers

FAQ

Does NinjaTrader 8 have a built-in trade copier?

No. NinjaTrader 8 has no built-in way to copy trades from another platform or between its own accounts. Copying requires a third-party add-on or indicator.

Can I copy trades from an MT5 EA to NinjaTrader 8?

Yes. A sender on the MT5 side reads the EA’s trades and a Receiver on NT8 places them. A Magic Number filter lets you copy one EA’s trades only.

What happens to MT5 hedged positions on NinjaTrader?

NinjaTrader holds one net position per instrument, so several MT5 positions have to become one number. The copier keeps that number matched to your MT5 net. There is no first or last position to close on the NinjaTrader side, and a close in MT5 never opens a position there. There is no industry standard for this, so ask any vendor how theirs behaves.

Are MT5 pending orders copied to NinjaTrader?

It depends on the copier. Ours copies them as market orders when they trigger in MT5, so the two accounts never disagree about whether a trade is open.

Can MT5 and NinjaTrader run on different computers?

Not with this copier. It works locally, so MT5 and NinjaTrader 8 need to run on the same computer.

How fast is the copy from MT5 to NinjaTrader?

In our test on 29 September 2026 the copier’s panel showed 16, 22, 13, 1 and 56 ms for five trades, an average of 21.6 ms. A second session on 30 September showed 1 to 53 ms across 23 trades, median 12 ms. Both used a demo MT5 account and NinjaTrader simulation accounts on the same PC, so this is copy latency. On a live account the exchange adds its own fill time.

Can I use an ATM strategy and copy SL/TP at the same time?

No. When an ATM strategy is attached to copied trades, its own stops and targets manage the position and the copier’s SL/TP sync is bypassed. Choose one or the other.

Will my NinjaTrader fill price match my MT5 price?

No. MT5 usually fills a CFD at your broker, and NT8 fills a futures contract at the exchange. The copier copies the decision, not the price.

Sources referenced in this article:

  1. NinjaTrader Community Forum, “Integrate NinjaTrader”, Apr 2026, post by shiva_build (#1): discourse.ninjatrader.com/t/6398
  2. NinjaTrader Community Forum, “Trade Copier Add On for NinjaTrader”, Jul 2026, post by Sachin_Kumar (#5): discourse.ninjatrader.com/t/6704
  3. NinjaTrader Community Forum, “NinjaTrader Trade Copier with multiple TopStep accounts”, Nov 2025, post by WaleeTheRobot (#2): discourse.ninjatrader.com/t/4808
  4. Nordman Algorithms. MT5 to NinjaTrader Trade Copier, product documentation, installation instruction and test sessions of 29 and 30 September 2026 (demo MT5, NinjaTrader simulation accounts, same PC): nordman-algorithms.com

Nordman Algorithms provides software infrastructure for trade automation and does not offer financial advice, trading signals, or managed trading services. This article is for informational and educational purposes only. Illustrations and worked examples use example sizes and describe software behaviour. The screenshots show a demo MetaTrader 5 account and NinjaTrader simulation accounts, unedited. Their latency figures describe those tests and are not a guarantee of results on your machine or of live fill times. None of this is a record of trading results. Forum quotations are reproduced verbatim from public threads for illustration and do not constitute endorsement. Prop firm rules differ between firms and change over time. Check your firm’s current rules before connecting a funded account. Trading leveraged instruments such as Forex, CFDs and futures carries a high level of risk and may not be suitable for all investors. Only risk capital should be used. Full Risk Disclosure: https://www.nordman-algorithms.com/risk-disclosure/