October 27, 2026·7 min read

How to Export Your Interactive Brokers Trades and Import Them into a Journal

GuideImportBrokersSync

Interactive Brokers gives you two ways to get your trades out: a statement you download, or a Flex Query that SniperJournal can pull for you every day. This guide covers both, so you can pick the one that fits how you work.

Stocks, options and futures come in with IBKR’s commissions, and nothing you connect can place an order or move money.

Three ways to get your IBKR trades in

  • Activity Statement — the statement you download from Client Portal. The quickest file: SniperJournal pairs the opening and closing orders into one trade per position, with both commissions.
  • Flex Query CSV (Trades) — a report you define once and download whenever you want. One row per fill; SniperJournal pairs the fills position by position.
  • Flex Web Service sync (beta) — the same Flex Query, pulled by SniperJournal on its own with a read-only token. New trades arrive without exporting anything.

The Transaction History statement imports too. The HTML version of the Activity Statement doesn’t: it is a web page, not data, and the importer asks you for the CSV of the same statement.

Option 1 · Export the Activity Statement

  1. In Client Portal, open Performance & Reports → Statements.
  2. Run the Activity statement for the period you want.
  3. Download it as CSV. XLSX works too; HTML doesn’t.

Then import it like any file: select the account in SniperJournal, click + → Import CSV File and drop it in. SniperJournal detects it as Interactive Brokers (Activity Statement).

Detected at 97%: 6 trades, with the times read in US Eastern time and shown in yours.

IBKR writes its times in US Eastern time, and SniperJournal reads them that way automatically, wherever you are. The preview shows them converted to your timezone, so you can check them before anything is saved.

Option 2 · Download a Trades Flex Query

  1. In Client Portal, open Performance & Reports → Flex Queries.
  2. Create an Activity Flex Query that includes the Trades section and set its format to CSV. Save it: you only do this once.
  3. Run the query for the period you want and download the file.
  4. Import it like any file. SniperJournal detects it as Interactive Brokers (Flex).
Detected at 99%: 6 trades rebuilt from 12 fills, with the times read in US Eastern time.

Keep that query: it is the same one the automatic sync uses.

Option 3 · Let the Flex sync bring your trades (beta)

  1. On the same Flex Queries page, enable the Flex Web Service and generate a token. It only lets SniperJournal download the reports you defined; it can’t place orders or move funds.
  2. In SniperJournal, open Settings → Connections, click Connect account and choose Interactive Brokers.
  3. Paste the token and the Query ID of your Trades Flex Query, pick the portfolio your trades will land in and connect.
  4. Click Sync Now to import right away. After that, the sync runs on its own.
A read-only Flex Web Service token, the Trades Flex Query ID and the portfolio. Your credentials are stored encrypted.

IBKR updates the Activity Flex Query once a day, after the close, so a day’s trades usually arrive the next day. A position that is still open shows up once it closes.

Commissions, times and duplicates

  • Commissions come from IBKR. With the Activity Statement, the net result of each trade is IBKR’s Realized P/L; with the Flex Query CSV, the P&L comes from the net cash, which already includes commissions; with the Flex sync, SniperJournal keeps the realized P&L IBKR reports and stores each commission separately.
  • Times are read in US Eastern time, the zone IBKR reports in, and shown in yours. If a file looks shifted, pick its timezone in the preview.
  • Duplicates are skipped, whether a trade came from a file or from the sync, so you can mix both.
  • Other currencies. Create the portfolio in the currency of your IBKR account and the trades keep their own units.

Use a file for a one-off import or a weekly routine, or connect the Flex sync once and let new trades come in on their own.

Watch it on video: thinkorswim and Interactive Brokers

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

FAQ

Is the Flex Web Service safe?

Yes. The token only lets SniperJournal download the Flex report you defined; it cannot see your password, place orders or move funds. Your token and Query ID are stored encrypted and you can revoke the token in Client Portal at any time.

Activity Statement or Flex Query: which should I use?

For a one-off or weekly import, the Activity Statement is the quickest: download it and drop it in. Create a Trades Flex Query if you want the automatic sync, or a file with one row per fill.

Why don’t today’s trades show up yet?

IBKR updates the Activity Flex Query once a day, after the close. A day’s trades arrive with the first sync after that update, usually the next day, and a position that is still open shows up once it closes.

Can I import the HTML statement?

No. The HTML version is a styled web page, not data. Download the same statement as CSV or XLSX; if you upload the HTML, the importer tells you to.

My account is not in USD

Create the portfolio in the currency of your IBKR account and the trades keep their own units. Multi-currency statements import with the currency of each trade.

SniperJournal

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

Ready to try it?

Free to use. No credit card required.