If you trade options actively, you already know the worst part of staying organized isn't the trading—it's the bookkeeping afterward. Every fill has to land somewhere: a strike, an expiration, a premium, a commission, a fee. Type all of that by hand, trade after trade, and two things happen. You burn time you'd rather spend trading, and sooner or later you fat-finger a number that quietly throws off your cost basis for weeks.
That manual-entry tax is exactly what MyATMM's ThinkorSwim CSV import removes. You export your account statement from ThinkorSwim, drag the file into MyATMM, and the platform reads it, parses it, and books every option transaction for you—in seconds. This tutorial walks through the full workflow using a real account that traded a heavy dose of SPX and XSP over the last 30 days, and it covers the companion feature that makes the whole thing safe to lean on every day: Import History.
Everything starts on the ThinkorSwim side. Open the Account Statement tab and set the date range you want to bring over. In the video example, the range is set to the last 30 days deliberately—a big sample set so there's plenty of data to work with, and enough overlap to demonstrate duplicate detection later.
Once your range is set, the export itself is quick:
That's it—you now have a ThinkorSwim CSV sitting in your downloads folder. Don't open it expecting something tidy, though. This is where most tracking tools fall apart.
Open a ThinkorSwim account statement export in Notepad and you'll see why a plain CSV importer chokes on it. It is not a straightforward, single-table CSV. It's a combination export that dumps everything from your account statement into one file:
Feed that to a generic CSV parser and it falls over. The column counts shift mid-file, the section breaks look like corrupt rows, and you end up with garbage or an outright error. This is the single biggest reason traders give up on automated imports and go back to typing trades by hand.
MyATMM solves it with an AI-powered CSV import. Instead of assuming a rigid format, the importer actually reads the file, recognizes the ThinkorSwim layout, figures out where the real transaction section lives, and grabs just that piece— ignoring the headers and the futures block it doesn't need. If you've ever struggled with tracking ThinkorSwim options trades without spreadsheets, this is the feature that finally makes it painless.
Back in MyATMM, head to Tools → Import / Export. (In the example, a dedicated "Import History Demo" portfolio was created first, so the sample imports wouldn't touch any real portfolios—a smart habit any time you're experimenting.)
The Import / Export screen gives you a drop zone. You can click Browse Files and navigate to your CSV, or simply drag the file onto the drop zone. The moment you drop it, MyATMM pre-parses the file and tells you how many rows it sees— in the demo, 2,219 rows. That pre-parse is your sanity check before anything gets booked.
Click Parse, and the import runs. When it finishes, you get a clean summary:
No retyping, no reformatting, no clipboard gymnastics. The messy export went in raw and came out as 219 properly structured transactions.
The summary is the high-level view. When you want the nitty-gritty, click View Import Details and MyATMM loads every imported transaction into a detail screen, with totals carried on the header record at the top.
With a couple hundred transactions, the grid only shows the first batch at a time, so the fastest way to drill in is the symbol filter. Type XSP and the grid instantly filters down to just those—20 transactions in the example. Clear the filter and the total row count jumps right back up to the full 200+. Type SPX and it narrows to the 210 SPX rows. From there you can scroll and navigate through individual transactions to confirm everything came in exactly as expected.
This is the verification layer. Before you trust an import, you can see precisely what landed, by symbol, down to the individual fill. It's the kind of transparency you want from any options trading journal software: summary numbers backed by drillable detail.
Here's where the workflow gets genuinely smart. Back on the ThinkorSwim side, the date range gets narrowed from 30 days to the last 7 days and re-exported as a second file (named "account statement 2" so it doesn't overwrite the first). Those 7 days are already inside the 30 days you imported earlier.
Drag the new file in, watch it pre-parse (162 rows this time), and click Parse. MyATMM imports fewer transactions than the row count suggests—and flags them as duplicates, because it recognizes they were already imported in the first pass. No silent double-booking. No inflated premium totals. The system catches the overlap automatically.
When an import contains duplicates, you decide how to handle them. Open the details and you have two options:
After a bulk delete, the import "shell" stays in your history even though its duplicate rows are gone. Back on the Import History screen, the duplicate indicator updates: once you've handled all the dupes it found, it shows 0 of 13. If duplicates remain, it stays an amber color and shows something like 5 of 13—a persistent nudge that there's still cleanup to do. You always know where you stand.
Sometimes the problem isn't a few duplicate rows—it's the whole file. Maybe you grabbed the wrong dates, exported the wrong account, or the file is just trash. You don't have to crawl through and delete rows one by one.
Instead, delete the Import History header for that batch, and MyATMM removes the entire import back out of the system in one move. It's the clean "undo" for an import gone wrong.
Once you switch to a portfolio with a lot of import history, you can see how this looks in day-to-day use. The routine is dead simple and takes seconds:
When the MyATMM brokerage figure lines up with ThinkorSwim, you know you've reconciled completely—every fill accounted for, nothing missed. That daily reconcile is the payoff: a tracked portfolio that always matches your broker, built in seconds instead of minutes of typing. It's the same discipline that separates a real options portfolio tracker for sellers from a spreadsheet that slowly drifts out of sync.
Remember those two new symbols the import created? They're not stuck inside the Import History screen—they flow straight into the rest of the platform. Head to the Cost Basis screen and both SPX and XSP are right there.
Select XSP (or SPX) and you can drill in to the full position:
In other words, a CSV import isn't a dead-end log. It populates your live cost basis tracking, so the data you imported in seconds immediately powers the same position analysis you'd get from hand-entered trades—just without the hand-entering.
The combination of AI CSV import, duplicate detection, and Import History turns the most tedious part of options tracking into a few seconds of drag-and-drop. You get speed without sacrificing control:
Whether you're running high-volume SPX and XSP trades or just keeping a handful of covered calls organized, the import workflow scales with you—and the data lands exactly where you need it for accurate cost basis tracking.
Options trading involves significant risk and is not suitable for all investors. Index options such as SPX and XSP carry their own risks, including the potential for rapid losses. Past performance does not guarantee future results.
MyATMM is a tracking and record-keeping tool. It is not a broker, and importing or deleting transactions within the platform does not place, modify, or cancel any trades at your brokerage. Always verify your records against your official brokerage statements.
This content is for educational purposes only and should not be considered financial advice or a recommendation to trade any specific security or implement any particular strategy.
Drag and drop your ThinkorSwim account statement and let MyATMM parse it, catch duplicates, and keep a full Import History—so your portfolio always matches your broker.
Track up to 3 tickers completely free. No credit card required.
Start Tracking Your Options Trades TodaySpend your time trading—not retyping trades into a spreadsheet