October 28, 2026·6 min read

How to Export Your NinjaTrader Trades and Import Them into a Journal

GuideImportFuturesBrokers

NinjaTrader keeps every trade you take in its Trade Performance window. The Trades grid lists them one per row — instrument, direction, size, entry and exit with their times, profit and commission — and exports them to a CSV file that SniperJournal turns into a journal in about two minutes. No API key, no subscription.

This guide covers which NinjaTrader grid to export, how to export it from NinjaTrader Desktop (NinjaTrader 8), how to import it and how to add the fees the grid may leave out.

Which NinjaTrader grid to export

SniperJournal recognizes these NinjaTrader grids on its own. You pick the file; the format is detected for you.

  • Trades — recommended. One row per closed trade, with the profit and the commission NinjaTrader recorded, so nothing has to be rebuilt. NinjaTrader pairs entries and exits by quantity, so scaling out of a position gives one row per exit.
  • Executions — every fill, with its commission. SniperJournal turns each position into a single trade, from the first fill until you’re flat, with every entry and exit inside.
  • Orders — the order list. Only filled orders count, and the trades are rebuilt from them. The file has no fees, so the import asks for a fee per contract.

Skip the Summary and Analysis views: they hold statistics, not trades. If you upload a Summary export, the importer explains why it can’t import it.

Step 1 · Export the Trades grid from Trade Performance

  1. In the NinjaTrader Control Center, click New → Trade Performance.
  2. Set the From and To dates and click Generate.
  3. Click the Filter icon and tick only the account you want to journal.
  4. In Display, pick Trades and keep the units in Currency, so the profit comes in dollars.
  5. Right-click the grid, choose Export... and save it as a CSV file. An Excel file works too.

These steps are for NinjaTrader Desktop (NinjaTrader 8). Evaluation and funded prop-firm accounts connected to it show up in the same window, each under its own account name.

Step 2 · Import it into SniperJournal

In SniperJournal, select the account (portfolio) the trades belong to, click the + button in the top bar and choose Import CSV File.

Pick the account in the sidebar first, then + → Import CSV File.

Leave File’s timezone on Automatic and drop the file in, or click Select CSV File.

Automatic reads the times in the timezone set in your Preferences.

Step 3 · Check the preview

SniperJournal names the format it detected — here NinjaTrader at 99% — and shows how many valid trades it found and which column feeds each field. Nothing is saved yet.

18 valid trades from 18 rows, the times of the first trades and the column mapping.

Check the times in the box at the top. NinjaTrader writes them without a timezone, in the clock of the computer it runs on. If they look a few hours off, pick that timezone right there, and the preview updates before anything is saved.

Step 4 · Import

The Trades grid already carries the commission of each trade, so there is no fee to type. Click Import.

18 trades imported, with the $17.16 of commissions from the file subtracted in Net P&L.

What you get: every trade with NinjaTrader’s profit and commission

Each row of the grid becomes one trade: the contract, the direction, the number of contracts, the entry and exit with their times, the profit and the commission.

NinjaTrader’s Profit column usually has the commission already taken off. SniperJournal checks this for each file, so your net result matches NinjaTrader’s, and you see gross and net side by side.

A short on 1 MNQ contract: $0.78 in commission, $140.50 gross and $139.72 net, 70.25 points captured.

Your dashboard, calendar and journal update on their own, with the net P&L of each day.

October with the daily net P&L of the imported trades: +$648.84 over 18 trades.

Exchange and clearing fees

The Commission column holds what NinjaTrader recorded, from the commission template assigned to the account. If it shows $0.00, or your statement charges more per contract — exchange, clearing and NFA fees on top — set your full rate in SniperJournal.

In Trades, click Select, pick the trades (or Select all) and click Set fees. Type your all-in rate per contract, per side: each trade gets rate × contracts × 2 sides, replacing the commission that came with the file.

$0.62 per contract and side on 18 trades: 22 contracts, $27.28 in fees.

Exporting the Orders grid instead? It has no fees at all, so the import itself asks for your fee per contract and saves it on the account for your next imports.

Times, re-imports and prop-firm accounts

  • Times. NinjaTrader writes the clock of the computer it runs on, without a timezone. Automatic reads it in the timezone of your Preferences; if your computer uses another one, pick it in the preview before importing.
  • Re-imports are safe. Trades you already have are skipped, so you can export the last week every Friday and import it without duplicates. If you change the file’s timezone after an import, delete those trades first: with new times they count as different trades.
  • One trade per position. The Trades grid splits a scale-out into several rows. To keep each position as one trade, with every entry and exit inside, export the Executions view of Trade Performance instead.
  • Prop-firm accounts. Import each evaluation or funded account into its own portfolio to compare them, or select several portfolios to see them together.

Export, import, check. A weekly export takes a minute, and your journal stays complete without typing a single trade.

Watch it on video: Tradovate, TopstepX and NinjaTrader

Follow SniperJournal on YouTube and X for new video walkthroughs and product updates.

FAQ

Which NinjaTrader grid should I export?

The Trades grid of Trade Performance. Each row is a closed trade with the profit and commission NinjaTrader recorded, so nothing has to be rebuilt. Executions works too and keeps each position as one trade; Orders works but has no fees.

Why are my times a few hours off?

Because NinjaTrader writes the clock of your computer without a timezone. Automatic reads it in the timezone of your Preferences; if your computer uses another one, pick it in the preview before you import.

Why does the Commission column show $0.00?

NinjaTrader fills that column from the commission template assigned to the account, and without one it stays at zero. Import the file anyway, then select the trades in Trades and use Set fees with your rate per contract, per side.

Why does one position show up as several trades?

The Trades grid pairs each exit with its quantity, so scaling out of a position gives one row per exit. Export the Executions view instead and SniperJournal keeps each position as a single trade, with every entry and exit inside.

Does SniperJournal connect to NinjaTrader directly?

Not today. NinjaTrader grants third-party API access only to approved vendors in its ecosystem, so you import the exported grid instead. It takes under a minute, and re-imports skip the trades you already have.

SniperJournal

Free trading journal — dashboards, imports, and AI-assisted insights.

Ready to try it?

Free to use. No credit card required.