How to get today's IBKR trades in realtime with a Trade Confirmation query
4 min read · Updated 8 September 2026
You traded this morning, you synced, and nothing showed up. This is the single most common surprise with IBKR data, and it is not a bug — it is how the activity statement works. Here is why, and the second query that fixes it.
Why today's trades are missing
An Activity Flex Query reports up to the previous business day. IBKR finalises a trading day's activity after the market closes — reconciling fills, commissions, and corporate actions — and only then does that day appear in the activity statement. Until that happens, today is simply not in the report, and refreshing more often will not change it.
That is the right behaviour for a statement whose job is to be authoritative. It is the wrong behaviour for a journal you want to write in the same afternoon you traded.
The Trade Confirmation Flex Query
IBKR offers a second query type that reports trades as they execute rather than after the day is finalised. It carries less than the activity statement — it is about fills, not full account state — but it carries them immediately.
- 1
Go to Performance & Reports → Flex Queries
The same place you created your Activity query.
- 2
Create a Trade Confirmation Flex Query
Set the Delivery Format to XML, as with any query you intend to retrieve over Flex Web Service.
- 3
Copy its Query ID
This is a different ID from your Activity query. You will need both.
- 4
Paste it into the Trade Confirmation field
In PaprBoard, that is Upload Data → Flex Web Query → Trade Confirmation Query ID, alongside your token and Activity Query ID.
Why you want both queries, not one
The two queries do different jobs and neither replaces the other. The Activity query remains the source of truth for your history, positions, and P&L. The Trade Confirmation query adds only the part the activity statement cannot yet know about: what you did today.
The obvious worry is double counting — today's fill arrives from the confirmation query, and then tomorrow the same fill arrives again inside the activity statement. PaprBoard reconciles the two automatically, so a trade that appears in both is recorded once.
Related guides
How to set up an IBKR Flex Query and Flex Web Service token
Step-by-step guide to enabling IBKR Flex Web Service, generating a token, creating an Activity Flex Query in XML, and choosing a query period that never drops recent trades.
How to import more than one year of IBKR history
IBKR caps each statement export at one year. Here is how to export year by year, merge the files into one continuous record, and why overlapping ranges do not double-count.