New

11 tools. $557.98 if bought one by one. 5 new Premium desks inside.$557.98 one by one

$97 once$97See all 11See it
ProEA Lab · MT5, TradingView and trading research · Evidence standards
Journal

How to Import MT5 Trades into a Trading Journal — All 3 Routes

Report file, CSV, or auto-sync: every MT4/MT5 journal import comes down to one of three routes, and each has a failure mode that quietly corrupts your stats — timezones that shift your sessions, partial closes that double-count, deposit rows that read as trades. Here's how each route works and the checks that keep the data honest.

PL · 5 min readUpdated
Three glass pneumatic tubes carrying glowing paper slips into an open brass ledger book — poster titled Three Routes In.

Getting trades into a journal is a one-time setup decision, and it decides whether your statistics mean anything for years. There are exactly three routes. Pick by how you trade, then run the honesty checks at the end no matter which you chose.

For a quick check before choosing a journal, use the free browser-local MT5 report analyzer. It reads supported statement tables and explicit CSV postings, separates deposits from trading results, and shows diagnostics before you rely on a calculation. Its posting statistics are not a completed-trade win rate or a floating-equity history.

Route 1 — a supported report file

Export the HTML statement from your platform — the full export walkthrough is here — and check that the journal supports that particular layout. MT5 Deals and Positions tables represent different records; a visual Overview/PDF is a separate export. Field availability varies, and a statement does not automatically contain your later journal notes, setup tags or attachments. Tradervue, for example, documents its MT5 import as exactly this route: save the History report as HTML, then upload it (our Tradervue comparison covers the rest).

This route is the most reliable because the file is the broker's own accounting. Its one weakness is cadence: the journal only knows what you've exported, so pair it with a habit — end of week, export the week, import, done. Two minutes.

Hand-drawn sketch of an exported account statement — header, summary strip, and a long ruled table — flowing along an orange arrow into a web journal's dashed import drop-zone.
Route 1 in one picture: the broker's own statement, dropped into the journal's importer.

Route 2 — CSV (for everything else)

If your data lives anywhere non-MetaTrader — a prop platform's dashboard, an old spreadsheet, another journal you're leaving — CSV is the bridge. A journal importer needs, at minimum: symbol, direction, volume, open time, open price, close time, close price, profit. Stops, commission and swap make the stats sharper but aren't required to start.

The route's failure mode is mapping: importers guess which column is which, and a swapped open/close or a European decimal comma corrupts everything downstream silently. Import ten trades first, check them against the platform, then do the rest.

Editorial panel on ivory paper reading: A journal is only as truthful as its import — with an orange marker underline.
Whichever route you pick, the four checks below keep it honest.

Route 3 — auto-sync via the investor password

MetaTrader's investor password grants read-only access (no trading, no withdrawals), and sync-capable journals use it to pull trades automatically. Setup is one form: server, login, investor password. From there closed trades appear on their own.

Honesty first, since we sell one of these: TradeLens Cloud syncs closed trades only through this route, and the $47 download edition has no live connection at all — it imports Routes 1 and 2. Some competitors sync open positions too; we've said plainly where theirs is stronger. Whatever tool you use: supply the investor password, never the master, and rotate it if you ever stop using the service.

The four checks that keep imported data honest

Timezone. MetaTrader stamps trades in server time, which is rarely your wall clock. If your journal's session stats look shifted — London wins appearing as Asia wins — the import's timezone offset is wrong. Fix it before reading any time-of-day statistic (how to find your server's offset).

Partial closes. One position closed in three pieces arrives as three rows. Decide once whether your journal should merge them into one trade or count three, and confirm the importer did what you chose — it's the difference between a 40% and a 55% win rate on the same trading.

Non-trade rows. Statements include deposits, withdrawals and balance adjustments. A good importer skips them; a naive one books your $500 deposit as a winning trade. Scan the first import for rows with no symbol.

Duplicates. Re-importing an overlapping period should update, not double. Import the same file twice as a test — if your trade count doubles, the tool has no dedupe and every future import needs exact, non-overlapping ranges.

Check what survives the export

Before committing a full history, run the journal portability acceptance kit in an empty test workspace. It includes three fabricated trade rows, two declared position groups, a separate cash ledger and a notes/attachment sidecar. The ownership guide records our own field-level check, including known losses and untested operations.

  1. Import the UTC-normalized fixture, or map the original offset timestamps if supported. The first opening is 23:55 at +02:00, which is 21:55 UTC. Changing the clock display may be valid; changing the instant is not. Never strip an offset without converting it.
  2. Reconcile the expected figures: three trade rows, USD −2 net trading P/L after recorded costs, separate cash net USD 75, and USD 1,073 ending balance from USD 1,000. Do not import deposits as winning trades or assume the two partial exits were grouped automatically.
  3. Where the product supports it, add the note, planned risk, tags and attachment reference from the manifest. Record fields you cannot add. This sidecar is a checklist, not a supported analyzer or vendor import format.
  4. Export the complete test scope, restore it into a second empty workspace and compare each field. Also test a duplicate import in the same disposable workspace. Use the acceptance worksheet; mark untested steps instead of filling them with assumptions.

The free MT5 report analyzer handles supported postings, with a different CSV schema. It does not ingest this journal fixture's notes, attachments or grouping metadata. Keep original reports and separate annotation exports even when financial rows reconcile.

Then make the data earn its keep

Import is plumbing. The return comes from what the journal computes once the rows are in: R multiples instead of dollars, session and setup breakdowns, the leaks that memory smooths over. Run the four checks once, set the cadence, and the dataset stays honest for as long as you trade.

A journal is only as truthful as its import. Verify ten trades once, and every statistic after that inherits the trust.

Continue reading

How to Export Chart Data from MT5 to CSV (Bars and Ticks)

MT5 can save a symbol's price history as CSV in two ways: the chart's bars with File → Save, or any timeframe's bars and the raw ticks from the Symbols window. Where each one lives, what caps it, and how to read the tick flags.

Oct 8 · ProEA Lab

Explainer cover titled Export MT5 chart data: one hour, any timeframe. Sixty simulated 1-minute gold bars rebuilt into four 15-minute bars inside dashed boxes, above an export preview listing the four CSV rows with date, time, open, high, low and close.

MT5 Server Time: Why Your Trade Times Are Hours Off

MT5 stamps every trade in your broker's server time, not yours. How to find your server's offset in one minute, convert any trade time to your clock, and the two stretches a year when the usual New York + 7 hours is wrong by an hour.

Oct 8 · ProEA Lab

Explainer cover titled MT5 server time: 16:30 on the server is 09:30 in New York, except twice a year. A 2026 timeline with the server's UTC+2 and UTC+3 stretches on EU dates above New York's UTC−5 and UTC−4 on US dates, and a step line that drops from 7 to 6 hours in the shaded weeks from 8 to 29 March and 25 October to 1 November.

Free Trading Journal Template: Excel and Google Sheets, Formulas Included

A free trading journal template for Excel and Google Sheets: eighteen columns, R multiples and win/loss computed for you, and a Summary sheet with expectancy, profit factor and the plan-followed split. Download it, delete three example rows, log tonight.

Oct 7 · ProEA Lab

Explainer cover titled A free journal that counts in R. On the left, the template's Trades sheet with its three example rows: EURUSD risk $100, result +$196, R multiple +1.96R, Win; XAUUSD risk $100, −$112, −1.12R, Loss; GBPUSD risk $100, −$163, −1.63R, Loss, plan broken. The R multiple and Win/Loss columns have grey formula headers, and under the table the R multiple formula =K/ABS(J) turns 196 ÷ 100 into +1.96R. On the right, the Summary reads 3 trades, 33.3% win rate and −0.26R expectancy, with the formula win rate times average win minus loss rate times average loss, and a small equity curve in R steps from 0 to +1.96R, +0.84R and −0.79R.