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
- In Client Portal, open Performance & Reports → Statements.
- Run the Activity statement for the period you want.
- 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).
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
- In Client Portal, open Performance & Reports → Flex Queries.
- Create an Activity Flex Query that includes the Trades section and set its format to CSV. Save it: you only do this once.
- Run the query for the period you want and download the file.
- Import it like any file. SniperJournal detects it as Interactive Brokers (Flex).
Keep that query: it is the same one the automatic sync uses.
Option 3 · Let the Flex sync bring your trades (beta)
- 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.
- In SniperJournal, open Settings → Connections, click Connect account and choose Interactive Brokers.
- Paste the token and the Query ID of your Trades Flex Query, pick the portfolio your trades will land in and connect.
- Click Sync Now to import right away. After that, the sync runs on its own.
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.