thinkorswim trading journal
Export your thinkorswim trade history from Monitor > Account Statement > Export to File as CSV, then drop it into TradeStack. The importer recognises the thinkorswim layout, builds a daily P&L calendar and calculates win rate, profit factor and expectancy for free.
Exporting your thinkorswim trade history
thinkorswim keeps its trade export under Monitor > Account Statement > Export to File. Choose the widest date range you can and download the CSV file. You do not need to reorder columns, rename headers or delete rows first — TradeStack fingerprints the header row and maps the fields itself.
What the importer does with a thinkorswim file
One quirk worth knowing: account statements contain several tables, and only the trade history block is parsed. That matters because a journal that pairs fills incorrectly will report a win rate and average win that do not match your statement. After import you can open any trade, edit it, add a screenshot, tag a playbook and write the note that explains the decision.
Understanding the thinkorswim Account Statement
thinkorswim does not have a simple 'export trades' button — the trade history lives inside the Account Statement, a multi-section document that mixes cash movements, dividends, option assignments and actual trades into one file. That is why so many thinkorswim journal attempts fail: tools that expect a flat trade table choke on the statement's structure.
TradeStack parses only the trade history block of the statement and ignores the rest. Cash balances, journal transfers and assignment rows are filtered out, and the remaining buy and sell rows are paired FIFO per symbol into closed trades.
Journaling options trades from thinkorswim
Options are where thinkorswim traders live, and options are where journals usually fall apart. A vertical spread is two legs, an iron condor is four, and a statement lists every leg as its own row. On import, legs that belong to the same strategy roll up so you can review the position as one idea with one net result instead of four disconnected fills.
The review that changes options trading is per-instrument stats split by holding time. Premium sellers routinely find that their losers were held three times longer than their winners — the gamma squeeze they refused to close. That pattern is invisible in the thinkorswim monitor tab and obvious in a holding-time report.
Building the weekly review habit on Schwab's platform
Since the Schwab migration, account history depth varies by account age, so the safest habit is a weekly export: Monitor tab, Account Statement, pick the week, export, import. Duplicates are detected, so an overlapping week never double-counts.
Weekend review is where the journal earns its keep. Sort the week by P&L, open the three worst trades, and write one sentence each about what you saw before entering. After a month, those notes are a more honest picture of your decision-making than anything the platform's own analysis tab will show.
Common thinkorswim import problems and fixes
Expected — the Account Statement includes cash management, dividends and margin interest. Only the trade history section is parsed; the rest is skipped automatically.
Assignment rows are real executions in the statement and will appear as trades. That is correct accounting — the assigned shares are a real position with real P&L once sold.
Statement depth depends on account age and Schwab's migration. Export the furthest range available, then import weekly going forward so nothing is lost from now on.
Columns TradeStack looks for in a thinkorswim export
Detection is header-based. If your file's header row contains any one of these column combinations, the thinkorswim layout is recognised automatically and the remaining fields are mapped by name:
exec time + pos effect + net price
Column names are matched case-insensitively and extra columns are kept, so a renamed or re-ordered export still imports. If none of the combinations match, the file falls back to the universal mapper, which needs at minimum a date column, a symbol column and either a P&L column or entry and exit prices.
Metrics you get from thinkorswim trades
- Daily P&L calendar with the dollar result printed on each day
- Win rate, average win, average loss and profit factor
- Expectancy per trade and a running equity curve
- Stats per instrument and per holding time
- Consistency %, which prop firms check before paying out
New to the terminology? Profit factor, Expectancy, R multiple, Drawdown.
Who this is for
thinkorswim is used mainly by options and equity traders on Schwab, trading stocks, options and futures. If that is you, the fastest useful review loop is a weekly import: export the week, import it, and read P&L by session and by setup rather than by single trade.
Frequently asked
How do I export trades from thinkorswim?
Open Monitor > Account Statement > Export to File and download the CSV file. Drop that file straight into TradeStack — the importer detects the thinkorswim column layout, so there is no template to fill in.
Is the thinkorswim journal free?
Yes. TradeStack is free, including unlimited CSV imports, the daily P&L calendar, playbooks and every analytics report.
Does it handle thinkorswim fees and commissions?
Yes. Where thinkorswim reports fees in a separate column, they are netted into realized P&L so your journal matches your statement.
Can I edit trades after importing?
Yes. Every imported trade stays editable, and the original columns from your export are preserved so nothing is lost.
Does TradeStack handle thinkorswim multi-leg options?
Yes. Legs belonging to the same strategy are recognised in the statement's trade section and can be reviewed as one position with a single net P&L.
Can I import both thinkorswim desktop and web exports?
Yes. Both statement layouts are parsed; the trade history block is identified by its section headers in either version.
Questions traders ask about journaling
Keep reading
No card, no trial. Import a CSV export and see your edge in under a minute.
Start free