Interactive Brokers LogoInteractive Brokers integration

Interactive Brokers Trading Journal

Set up a Flex Query once and your IBKR trades arrive automatically. If you prefer uploading files, use the Transaction History export instead.

  • Free for your first 25 trades
  • Read access to your statements only, no trading access
  • No credit card required
Synced Interactive Brokers trades in the Momentum Trading Hub

Can you import your IBKR trades?

Yes, in two ways. The Flex Web Service is the recommended one: you create an Activity Flex Query in the Client Portal, store the token and query ID, and your trades are fetched automatically from then on. Alternatively you can upload the Transaction History export as CSV.

Both routes produce the same trades and deduplicate against each other. You can start with CSV uploads and move to the automatic sync later without your history appearing twice.

Automatic sync

The Flex Web Service fetches new trades daily without your involvement.

Two routes, no duplicates

CSV upload and API sync build identical identifiers and do not exclude each other.

Account currency

Amounts arrive FX converted and are therefore directly comparable.

Two ways to import IBKR trades

The Flex Web Service is the lasting solution and costs a little more setup once. The CSV route is quicker to start but has to be repeated for every new period.

Route 1: set up the Flex Web Service

About 10 minutes once, automatic afterwards

IBKR does not use a conventional API key but a Flex token together with a query ID, both created in the Client Portal. The query must include the "Trades" section with the "Executions" option, otherwise no fills arrive.

  1. 1

    Flex Web Service aktivieren

    Melde dich im IBKR Client Portal an und öffne "Performance & Berichte" → "Flex-Queries" → "Flex Web Service Konfiguration". Aktiviere den Flex-Web-Service-Status.

  2. 2

    Flex Token generieren

    Wähle bei "Should Expire After" eine lange Gültigkeit (z. B. 1 Jahr) und klicke auf "Generate New Token". Kopiere den angezeigten Token — das ist dein Flex Token für Momentum.

  3. 3

    Activity Flex Query anlegen

    Erstelle unter "Flex-Queries" eine neue Activity-Flex-Query. Wähle die Sektion "Trades" mit der Option "Executions" und aktiviere "Select All" bei den Feldern.

  4. 4

    Query konfigurieren

    Setze das Format auf "XML" oder "CSV" (beide werden unterstützt), den Zeitraum auf "Last 365 Calendar Days", das Datumsformat auf "yyyy-MM-dd" und das Zeitformat auf "HH:mm:ss". Speichere die Query.

  5. 5

    Query ID kopieren

    Nach dem Speichern zeigt die Query-Übersicht die Query-ID an. Kopiere sie und trage Flex Token + Query ID hier in Momentum ein.

  6. 6

    Hinweise zum Sync

    Trades erscheinen im Flex-Statement erst ca. einen Tag nach der Ausführung. Duplikate zwischen API-Sync und CSV-Import werden erkannt — Voraussetzung ist das Datumsformat "yyyy-MM-dd" aus Schritt 4.

Route 2: Transaction History as CSV

About 3 minutes, repeated per periodCSV

The Client Portal export is a multi section file without a single header row. The importer evaluates the "Transaction History" section and its Buy and Sell entries.

  1. 1

    Transaction History öffnen

    Melde dich im IBKR-Client-Portal an und öffne "Performance & Reports" → "Transaction History".

  2. 2

    Zeitraum wählen & als CSV exportieren

    Wähle den gewünschten Zeitraum, sodass beide Seiten deiner Trades (Eröffnung und Schließung) enthalten sind, und exportiere die Übersicht als CSV. Positionen, deren Eröffnung vor dem Zeitraum liegt, lassen sich nicht auswerten und werden übersprungen.

  3. 3

    CSV hochladen

    Lade die Datei hier hoch. Ausgewertet wird die Sektion "Transaction History" mit den Typen "Buy" und "Sell"; Ein- und Auszahlungen, Gebühren und FX-Komponenten werden ignoriert. Alternativ kannst du deine Trades über den Flex-Web-Service automatisch synchronisieren.

What gets imported from the IBKR statement

IBKR delivers individual executions rather than finished positions. A trade emerges when the net quantity of a symbol returns to zero. Partial closes are merged into a single position along the way.

IBKR fieldJournal fieldNote
symbolSymbolFor options and future options the readable description is used
Transaction Type (Buy, Sell)DirectionOther types such as Withdrawal or Other Fee are skipped
Net Amount or netCashResult (net)In account currency, commission already included
CommissionFeesInformational only, already deducted in the result
Execution timestampsOpen and close timeFirst and last execution of the round trip
Quantity per executionPosition build upBuy counts positive, sell negative, a zero crossing closes it

What to watch out for with Interactive Brokers

IBKR is the most technically demanding provider on this list. Four points decide whether the import comes out clean.

The query date format decides whether duplicates are caught

The query must use the date format with a four digit year, month and day separated by hyphens. A trade identifier is built from symbol, timestamps, quantity and result. A different date format produces a different identifier, so the same trade would appear twice when you switch between CSV and sync.

Trades only appear about a day later

IBKR generates the Flex statement once a day rather than maintaining it in real time. A trade from this morning therefore shows up in the sync the next day at the earliest. That is a property of the statement rather than a fault in the connection, and syncing more often will not speed it up.

Positions without a zero crossing are skipped

Since a trade only exists once the net quantity of a symbol returns to zero, two cases drop out: positions still open, and positions whose opening predates the statement period. Set the query period generously, for example to the last 365 calendar days.

Amounts are in account currency, not trading currency

IBKR converts the net amount into your account base currency for you. A trade in US dollars therefore appears in euros on a euro account, at the rate applying at execution. That is intended and makes trades comparable across currencies, but it differs from what the trading screen shows.

Which analysis pays off at IBKR

IBKR accounts are rarely homogeneous. Stocks, options and futures sit in the same account while carrying completely different cost structures and holding periods. A single overall performance figure blends things that ought to be looked at separately.

The first worthwhile cut is therefore by instrument type and the second by holding period. With options it also pays to watch the ratio of commission to result: at small position sizes commission eats a substantial share of the profit, which stays invisible in a totals view.

Because results already arrive in account currency, trades can be compared directly across venues and currencies. That is worth more at IBKR than at most other providers, since accounts there are typically traded genuinely internationally.

Trading journal: What a trading journal does, which metrics matter and how it differs from a spreadsheet template.

Flex Web Service or CSV upload

Both routes deliver the same trades. The difference is ongoing effort.

CriteriaFlex Web ServiceCSV upload
SetupAbout 10 minutes once in the Client PortalReady immediately
Ongoing effortNone, the sync runs by itselfA new export per period
FreshnessDaily, as soon as IBKR generates the statementAs current as your last upload
Gaps in the periodThe query covers a rolling 365 daysYou pick the range on every export
Switching routesAny time, without duplicate tradesAny time, without duplicate trades
Also supported

More providers

FAQ

Common questions about connecting IBKR

Momentum Trading Hub
6+ exchanges
Unlimited trades
20+ features

Supercharge yourtrading performance

Start from zero with Momentum. Use our tools to improve your trading performance.