Thinkorswim Trade History Cleaner
Last updated 12 July 2026
Upload your thinkorswim (TOS) trade history or Account Statement export and automatically extract ticker symbols for easier trade journaling. The tool adds a Ticker column so you can filter and summarize trades by underlying. Works with both TD Ameritrade-era and Schwab thinkorswim exports.
Your file stays on your device
Your file is processed locally in your browser. It is not uploaded to our server, stored, or shared.
Works with Thinkorswim .csv and .xlsx exports, up to 10 MB. Everything runs in your browser.
First time here? to preview the result, or download a sample CSV to try the upload flow.
How to export your trade history from thinkorswim
Both ways live in the desktop thinkorswim platform under Monitor › Account Statement (the web and mobile apps can't export one). The cleaner handles either:
Method 1 — Copy & paste (simplest)
- In Monitor › Account Statement, set your date range.
- Highlight the transaction rows you want, then copy them (right-click › Copy, or Ctrl/Cmd-C).
- Paste into a blank Excel or Google Sheets tab and save as .xlsx or .csv.
- Drag that file into the cleaner above. This is the cleanest route — you choose exactly which rows to keep.
Method 2 — Export to File
- In Monitor › Account Statement, set the date range. For a long history, export one quarter at a time — very large ranges can time out.
- Open the menu in the top-right of the panel and choose Export to File.
- Choose CSV and save it, then drag it into the cleaner above.
thinkorswim is now part of Charles Schwab (after the TD Ameritrade migration), but the Account Statement and its export work the same way.
What this tool does
Thinkorswim exports bury the useful ticker symbol inside a longer transaction description, which makes
the data hard to sort, filter, and summarize. This tool reads the description column, extracts the
underlying ticker, and inserts a new Ticker column right after it - so a row like
BOT +1 ORCL 100 19 JUL 24 140 CALL gets a clean
ORCL next to it. It is conservative on purpose:
cash, interest, dividend, and transfer rows are left blank rather than guessed.
| Transaction description | Extracted ticker |
|---|---|
BOT +1 ORCL 100 19 JUL 24 140 CALL | ORCL |
SOLD -1 VERTICAL QQQ 100 20 SEP 24 470/475 CALL | QQQ |
BOT +1 DIAGONAL AAPL 100 19 JUL 24 200 CALL | AAPL |
ASG 100 TSLA | TSLA |
INTEREST ADJUSTMENT | (left blank) |
Why extract ticker symbols from Thinkorswim exports?
A clean ticker column makes it far easier to:
- Filter and sort your trades by symbol
- Summarize profit and loss per ticker
- Import the data into a spreadsheet or trade journal
- Review your options strategies by underlying
Notes & limitations
- The tool looks for a Description column by header name, and falls back to column F if it cannot find one. It works whether or not your export has a header row - if the first row is already a trade, every row gets a ticker.
- The new column is inserted right after the description column; your original file is never modified.
- If a Ticker column already exists, the tool adds an Extracted Ticker column instead, so nothing is overwritten.
- Extraction is conservative - unusual or non-standard descriptions may be left blank rather than guessed wrong.
- Works with .csv and .xlsx. For Excel, the Ticker column is inserted into the first sheet of your original workbook - other sheets, cell values and number/date formats are kept (the new column is plain text; complex cell styling may not carry over). CSV files are preserved exactly.
Use a different broker or keep your journal in another format? This cleaner is built for thinkorswim, but the same idea works for other exports. Tell me which broker or format you'd like cleaned - request it here. If enough people ask for the same one, I'll build a tool for it.
Frequently asked questions
How do I export my trade history from thinkorswim?
In the thinkorswim desktop platform, open the Monitor tab, then the Account Statement sub-tab. Set your date range, open the menu in the top-right of the panel, and choose Export to File — save it as a CSV. The web and mobile apps cannot export a statement. For a long history, export one quarter at a time so the request does not time out.
Does the thinkorswim export already include the ticker symbol?
Sometimes. The trade-history section can have a Symbol column, but the consolidated transaction view buries the underlying inside a longer description like "BOT +1 ORCL 100 19 JUL 24 140 CALL". This tool reads that description and adds a clean Ticker column. If your file already has a Ticker column, it adds an "Extracted Ticker" column instead, so nothing is overwritten.
Can I export from the thinkorswim web or mobile app?
No — the Account Statement export lives in the desktop platform only. Open thinkorswim on desktop, go to Monitor then Account Statement, set the date range, and choose Export to File.
Does it work with the new Schwab (formerly TD Ameritrade) exports?
Yes. thinkorswim is now part of Charles Schwab after the TD Ameritrade migration, but the Account Statement export format is unchanged. The cleaner reads the description column whether the file came from a TD Ameritrade-era or a Schwab-era export.
Is my file uploaded anywhere?
No. The file is read and processed entirely in your browser — nothing is uploaded, stored, or shared. You can even go offline after the page loads and it still works.
What file formats does it accept?
CSV and XLSX, up to 10 MB. For Excel files the new Ticker column is inserted into the first sheet and the rest of your workbook is preserved; CSV files are kept exactly as they were.
Can I import the cleaned file into Excel, Google Sheets, or a trade journal?
Yes — that is the point of the Ticker column. Once every row has a clean symbol you can sort and filter by ticker, total profit and loss per underlying, or import the file into Google Sheets, Excel, or a trade-journal tool.
I used Export to File and some rows have no ticker — is that normal?
Yes. The cleaner reads only the Cash Balance transactions at the top of the export — your dated trades, expirations and assignments — and intentionally leaves cash and admin rows blank (balances, dividends, interest, cash sweeps, currency journals). The other statement sections (positions, profit and loss, order history) are not part of the cleaned file. To keep only your trades, use the copy-paste method and select just those rows.
Cleaning your export is step one of a journaling routine — see why keeping a trading journal matters, put it to work with the weekly options income routine, and browse the rest of the calculators & tools.
Educational utility only - not financial advice, and not affiliated with or endorsed by Thinkorswim or Charles Schwab. "Thinkorswim" is a trademark of its owner, used here only to describe file compatibility. Always keep your own backup of the original export.