The universal import method: No API? No EA? No problem. If your broker has a "Download" or "Export" button on the trade history page — and they all do — you can import into any journal. 2-3 minutes per import. Works with nearly every broker, platform, and market.

Step 1: Find the Export Button (Every Broker Has One)

Find your broker's trade history export. Common locations:

PlatformWhere to Find ExportBest Format
MT4Account History tab → right-click → Save as Detailed ReportHTML (.htm)
MT5History tab → right-click → Report → SaveHTML or CSV
cTraderHistory → ExportCSV
TradingViewStrategy Tester → Export (paper trading)CSV
NinjaTraderAccount Performance → ExportCSV
TradovatePerformance → Export TradesCSV
ThinkorswimMonitor → Activity and Positions → ExportCSV
Interactive BrokersReports → Activity → ExportCSV
Any web brokerLook for: History, Statements, Reports, Activity → Download/ExportCSV

Pro tip: Set the date range to cover your entire trading period — don't just export this week. Import your full history for the most complete analysis.

Step 2: Upload to Your Journal

Most journal tools have an Import or Upload button. The process:

  1. Click Import / Upload
  2. Select your file (drag-and-drop usually works too)
  3. The tool reads the file and shows you a preview of the columns

Step 3: Map the Fields (This Is Where Most People Get Stuck)

This is the critical step — telling the journal which column in your file means what:

Your File ColumnMaps ToRequired?
Symbol / Instrument / PairInstrument✅ Yes
Type / Side / DirectionDirection (Buy/Sell)✅ Yes
Open Price / Entry PriceEntry Price✅ Yes
Close Price / Exit PriceExit Price✅ Yes
Open Time / Entry TimeEntry Timestamp✅ Yes
Close Time / Exit TimeExit Timestamp✅ Yes
Profit / P&L / Net ProfitP&L✅ Yes
Volume / Lots / SizePosition SizeRecommended
Commission / FeesCommissionRecommended
Swap / OvernightSwapOptional
SL / Stop LossStop LossOptional
TP / Take ProfitTake ProfitOptional

Smart mapping: Good tools auto-detect most fields by column name. "Profit," "P/L," "Gross P&L," "Net Result" all map to P&L automatically. You only need to manually map columns with unusual names.

Step 4: Review and Confirm

Before finalizing, check:

  • Trade count: Does the number match what your broker shows?
  • Total P&L: Does it roughly match your broker's P&L? (Small differences from rounding are normal)
  • Date range: Are the oldest and newest trades correct?
  • Spot check 3 trades: Open one trade in your journal and compare entry, exit, and P&L to your broker. Match? Good.

If everything checks out, confirm the import. Your trades are now in the journal. Start analyzing with tools like the position size calculator and risk-reward calculator.

Platform-Specific Export Tips

Not all broker exports are equal. Some give you clean CSVs with every field you need. Others give you messy HTML reports that need cleaning. Here are the gotchas per platform:

MetaTrader 4 / MT4

MT4's default export is HTML (.htm), not CSV. This is actually fine — most journal tools can parse MT4 HTML statements directly. Make sure you select "All History" in the Account History tab before exporting, or you'll only get the default 3-month window. Right-click → Save as Detailed Report gives you the most complete data including swaps and commissions.

MetaTrader 5 / MT5

MT5 offers both HTML and CSV export. CSV is cleaner for import. Go to History tab → right-click → Report → Save as CSV. MT5 also separates deals and positions — for journaling, you want the "Deals" report which shows individual executions. If your journal supports MT5 HTML, that works too.

Interactive Brokers (IBKR)

IBKR has the most detailed exports — sometimes too detailed. Use the Activity Statement (not the daily statement). Export as CSV. IBKR includes a header row with account info before the trade data — some tools handle this, others need you to delete the header rows manually. Flex Queries give you the most control over which fields to include.

Thinkorswim (TOS)

Export from Monitor → Activity and Positions. TOS exports include option spreads as multi-leg trades — if you trade options, check how your journal handles multi-leg imports. Stock and futures trades export cleanly.

Crypto Exchanges (Binance, Bybit, OKX)

Most crypto exchanges offer CSV export under Trade History or Order History. Watch out for spot vs futures separation — Binance exports spot and futures trades from different pages. If you trade both, you need two exports. For ongoing sync, API sync is better than repeated CSV exports.

6 CSV Problems and How to Fix Each One

IssueCauseFix
P&L shows as 0 or wrongColumn mapped incorrectly or uses different currencyRe-check field mapping. Ensure you're mapping NET profit, not just gross.
Dates are scrambledDate format mismatch (MM/DD vs DD/MM)Check journal settings for date format. Or reformat dates in Excel before upload.
Some trades missingFile only exported partial historyRe-export with wider date range. Check broker for separate spot/futures exports.
Buy/Sell not recognizedBroker uses different labels ("Long"/"Short", "B"/"S")Map direction field manually and specify the value mapping.
Commas in numbers (1,234.56)Locale formatting issueOpen CSV in text editor, find-replace commas in numbers, or adjust journal's locale setting.
Multi-line trades (partials)Broker exports each fill separatelySome tools auto-group by order ID. Otherwise, pre-process in Excel to merge fills.

Save Your Mapping for Future Imports

After your first successful import, save the field mapping. Next time you upload from the same broker, the mapping is pre-loaded — making future imports a 30-second click-and-confirm process.

This is important because CSV import becomes your weekly routine:

  1. Sunday evening: Export this week's trades from broker (30 sec)
  2. Upload to journal: Drag-and-drop the file (10 sec)
  3. Confirm mapping: Already saved → just click Import (10 sec)
  4. Add tags: Quick-tag each trade with setup name (2-3 min for the week)
  5. Total: 3-4 minutes per week

Grouped Import: Multiple Files at Once

If you trade on multiple platforms (e.g., MT5 for forex + Binance for crypto), you can import both files in the same session. The journal merges them into one unified timeline — all trades from all sources, sorted chronologically.

This is the superpower of CSV import: it's platform-agnostic. Any broker, any exchange, any platform that exports data can feed into one journal. Your analysis covers your entire trading activity, not just one account.

TSB's smart CSV import handles all of this. Upload any CSV, HTML, or JSON file. Smart field mapping auto-detects columns. Save mapping for future uploads. Group import from multiple brokers. Deduplication prevents doubles. Works with nearly any broker. Try the import →

When CSV Is Actually Better Than API

API sync is more convenient — but CSV wins in specific situations:

  • Privacy-first traders: CSV is a one-time file upload. No ongoing connection, no API keys stored, no credentials shared. You control exactly what data leaves your broker.
  • Broker doesn't support API: Many forex brokers, prop firm platforms, and smaller exchanges have no API. CSV is your only automated option.
  • Bulk historical import: Need to import 2 years of trades at once? CSV handles large datasets better than API pagination. Export once, upload once.
  • Multi-broker consolidation: Trading across 3-4 platforms? CSV lets you export all of them in the same format and import into one journal — regardless of whether each broker has API support.
  • Regulated accounts: Some institutional or prop firm accounts restrict API access. CSV export through the platform's built-in tools is always available.

Rule of thumb: use API when available for daily sync. Use CSV for historical backfill, unsupported brokers, and privacy-sensitive setups.

How We Built This Guide

  • Export paths — verified by testing actual exports from MT4, MT5, cTrader, Interactive Brokers, TradingView, and Thinkorswim.
  • Field mapping — based on TSB's import engine. Column names and mapping may vary by journal tool.
  • MT4/MT5 documentation — per MetaTrader 4 and MetaTrader 5 official help.
  • Time estimates — based on internal testing. Your times may vary by broker and file size.

Read our editorial methodology for how we create trading guides.

CSV Import: Not Glamorous, But It Works With Every Broker on Earth

CSV import isn't glamorous. It's not as seamless as API sync or EA auto-sync. But it's the universal fallback that works with nearly every broker — no API keys, no integrations, just a file. If your broker doesn't support API and you don't use MT4/MT5, CSV is your path to a complete journal.

3-4 minutes per week. Complete trade history. Full analysis capability. The friction is low enough that there's no excuse not to journal — and the insights from complete data are worth far more than the time invested.