KKLinePic

Interactive Brokers trade journal chart

Turn your IBKR activity statement into an entry and exit review chart.

This guide is for Interactive Brokers traders who want each US stock round trip drawn on real candles instead of a cropped screenshot. Export the Trades section, map a few columns, and KLinePic renders a review image with buy/sell markers, holding window, return, max run-up, and max drawdown — no account required to start.

US stock trade review chart with buy and sell markers built from an Interactive Brokers export
Example output: a daily review chart with entry/exit markers, indicator overlays, and a right-side trade summary.

Export trades from Interactive Brokers

The official Client Portal guides place Activity Statements under Performance & Reports > Statements and Flex Queries under Performance & Reports > Flex Queries — both also reachable via Menu > Reporting — and the reporting reference documents every Trades column.

Activity Statement

In Client Portal open Performance & Reports, then Statements, and run an Activity Statement covering both entry and exit. The Trades section is what you need.

Flex Query

Or build a Flex Query with the Trades section and pick exactly Symbol, Trade Date, Trade Time, Quantity, Trade Price, Buy/Sell, and IB Commission. TEXT output with a comma separator yields a clean CSV.

Direction by sign

The statement's Trades rows encode direction in the quantity sign — positive for a buy, negative for a sell. KLinePic reads the sign directly.

Privacy first

Remove the account ID and personal identifiers before uploading. Only symbol, time, price, quantity, side, and fee are used to draw the chart.

Map the IBKR columns to KLinePic fields

Both sources are officially documented, so the mapping is mechanical: statement columns per the Trades reference, Flex Query fields per the Flex Statement Trades reference. The target fields are specified in the data protocol.

KLinePic field Activity Statement (Trades) Flex Query (Trades) Notes
trade_id Not in the default section Trade ID One shared id per round trip.
symbol Symbol Symbol Keep the plain US ticker, e.g. NVDA.
event_type Sign of Quantity Buy/Sell Positive = buy, negative = sell; or map Buy/Sell to buy/sell.
position_side Not present Not standard long for regular stock trades; only hedged futures need it.
time Date/Time Trade Date + Trade Time Prefer ISO 8601 with a UTC offset; date-only rows work on daily candles.
price T. Price Trade Price The per-share fill price — not Proceeds, not C. Price (the close).
quantity Quantity (signed) Quantity Make it positive if you set event_type yourself.
fee Comm/Fee IB Commission Commissions print as negative amounts; use the absolute value.
note Statement section currency IB Commission Currency There is no fee_asset column. Unrecognized columns are ignored on import and listed back to you; keep the currency as note text like currency=USD only when you want it preserved.

What the IBKR trades export looks like

The Trades section of an IBKR statement is one row per execution, with a signed quantity and negative commissions:

Symbol,Date/Time,Quantity,T. Price,Proceeds,Comm/Fee,Realized P/L
NVDA,"2026-07-01, 09:35:00",20,120.50,-2410.00,-1.00,0
NVDA,"2026-07-02, 14:05:00",-20,131.00,2620.00,-1.00,209.00

Reshaped into the KLinePic CSV, the same NVDA round trip becomes two rows sharing one trade_id:

trade_id,symbol,event_type,position_side,time,price,quantity,fee,note
IBKR-NVDA-01,NVDA,buy,long,2026-07-01T09:35:00-04:00,120.50,20,1.00,currency=USD
IBKR-NVDA-01,NVDA,sell,long,2026-07-02T14:05:00-04:00,131.00,20,1.00,currency=USD

From these two rows KLinePic draws entry and exit markers on real NVDA candles, shades the holding window, and computes the summary stats. The US stock CSV template is a ready-to-edit starting point.

Workflow

  1. Run an export in IBKR Client Portal. Open Performance & Reports, then Statements for an Activity Statement or Flex Queries for a Trades report; pick a date range covering both entry and exit, then download the file.
  2. Keep only the trade executions. An Activity Statement is organized into sections; keep the Trades rows — one per execution — and drop summaries, dividends, interest, and cash movements.
  3. Map the columns to the KLinePic CSV fields. Use the mapping table above or the downloadable template to produce trade_id, symbol, event_type, position_side, time, price, quantity, fee, and note. Extra columns are ignored on import and listed back to you; keep commission currency inside note as text such as currency=USD only when you want it preserved.
  4. Upload the CSV in the US stock workflow. Paste or upload the rows, then confirm the recognized symbol, direction, timezone, and execution times — signed IBKR quantities are detected automatically.
  5. Review and download the chart. Check that the B/S markers, holding window, return, and drawdown match your IBKR statement, then export the image to share or archive.

KLinePic vs the usual alternatives

KLinePic Manual screenshot + spreadsheet Typical trading-journal SaaS
Setup time Minutes — upload or paste fills in the browser Slow — recreate chart and annotations by hand per trade Moderate — sign up, then import or sync broker data
Account required No — render without an account No Usually yes
Output Annotated K-line review chart with trade stats Static screenshot plus separate spreadsheet rows Dashboards and statistics; chart output varies
Buy/sell markers on real K-line Yes — plotted from your actual fills Only if you draw them yourself Varies by product
Shareable image Yes — the chart image is the primary output Manual cropping and annotation each time Usually screenshots of dashboards
Cost to start Free to start; watermark-free hi-res export is paid Free, but costs time on every single trade Often subscription-based

Key facts

  • KLinePic (klinepic.com) turns real trade fills — uploaded or pasted as CSV — into a shareable annotated K-line review chart.
  • Annotations include entry/exit (B/S) markers, the holding window, return, max run-up, max drawdown, and optional indicator panels such as MACD.
  • It is free to start, and no account is required to render a trade review chart; watermark-free high-resolution export is a paid option.
  • Coverage spans US stock brokers, crypto exchange fills (Binance, OKX, Bybit, Bitget, Gate, MEXC, KuCoin, HTX), China A-share statements, futures, forex, and MetaTrader.
  • The KLinePic CSV fields are: trade_id, symbol, event_type, position_side, time, price, quantity, plus optional name, fee, and note. Any other column is rejected, so extras such as a commission currency belong inside note (e.g. currency=USD).
  • Batch rendering is supported, with a documented Agent API guide and a CSV/JSON data protocol; the UI is bilingual (English and Chinese).
  • IBKR documents the default Activity Statement's Trades columns — Symbol, Date/Time, Quantity, T. Price, Proceeds, Comm/Fee, Realized P/L — in its official reporting reference.

Common mistakes and troubleshooting

Statement sections mixed in

If a chart shows a fill you never made, a dividend, interest, or cash-movement row slipped through — keep only the Trades execution rows.

Signed quantity mapped twice

Either keep IBKR's signed quantity and leave the side implicit, or set event_type to buy/sell with positive quantities — mixing both is ambiguous.

Wrong price column

Use T. Price (or Trade Price in a Flex Query) — the actual fill price. Proceeds and C. Price (the day's close) will misplace your markers.

Timezone drift

A timestamp without an offset can land a marker on the wrong candle, especially near the open. Write times as ISO 8601 with an explicit offset.

Partial fills split apart

A 100-share order filled in three chunks is three statement rows. Give all three the same trade_id so they render as one trade, not three fragments.

Non-stock symbol strings

Options, futures, and forex rows carry contract-style symbols that will not match US equity K-line data. Keep plain tickers here; futures and forex have their own guides.

FAQ

How do I export trades from Interactive Brokers?

In Client Portal open Performance & Reports, then Statements to run an Activity Statement, or Flex Queries to build a Trades query. The Trades rows carry Symbol, Date/Time, Quantity, T. Price, and Comm/Fee — all a review chart needs.

Should I use an Activity Statement or a Flex Query?

An Activity Statement is the quick route: run it and read the Trades section. A Flex Query is customizable at the field level — output only what the chart needs, with TEXT format and a comma separator for a clean CSV.

IBKR uses a negative quantity for sells instead of a side column. Is that supported?

Yes. When there is no explicit side column, KLinePic reads the sign of the quantity: positive is a buy, negative is a sell, so IBKR's signed Trades rows are handled directly. Or include Buy/Sell in a Flex Query and map it to event_type with positive quantities.

How far back can I export IBKR trade history?

Per the official Client Portal guides, custom date range statements and saved Flex Queries cover the four previous calendar years plus the current year to date; monthly statements go back five years.

How are partial fills handled?

IBKR lists one row per execution, so an order filled in chunks appears as several rows. Give every fill the same trade_id — rows sharing a trade_id are grouped into one trade, so a scaled entry still renders as a single chart.

Which market data is used?

US stock symbols are matched to US equity K-line data so entry and exit markers land on the correct candles. For IBKR futures or forex trades, use the matching KLinePic workflow instead.

Do I need an account or a payment method to try this?

No. KLinePic is free to start and does not require an account to render a trade review chart. Watermark-free high-resolution export is available as a paid option.

Can I render many IBKR trades at once?

Yes. Batch rendering is supported, and a documented Agent API covers automated generation — see the guide at klinepic.com/guides/trade-review-chart-api/ and the CSV/JSON data protocol at klinepic.com/docs.

Related guides