ThinkorSwim SPX & XSP CSV Import & Import History

Introduction: Stop Hand-Entering Your ThinkorSwim Trades

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.

What you'll learn: How to export a ThinkorSwim account statement, why that CSV breaks ordinary parsers, how MyATMM's AI import handles it anyway, how automatic duplicate detection protects you from double-booking, and how Import History gives you a complete, deletable audit trail of every CSV you've ever imported—from any broker.

Step 1: Export Your ThinkorSwim Account Statement

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:

  1. Go to the upper right-hand corner of the Account Statement.
  2. Click the little export button.
  3. Choose Export to File.
  4. Keep the default file name (or rename it) and click Save.

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.

Why ThinkorSwim CSVs Break Normal Parsers

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:

  • A header block at the very top before any real data begins.
  • Another header before the actual transaction columns start.
  • The detail rows you actually care about.
  • And then, partway down, the file literally breaks and starts a whole new section—futures statements and other account data stapled onto the same 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.

A bit of history: Earlier versions required a workaround—you'd copy the header row, highlight just the transaction rows you wanted, copy them to the clipboard, and right-click paste directly into the drop zone. That clipboard-paste path still works if you ever want it. But you no longer need it: you can now drag and drop the raw ThinkorSwim CSV exactly as it exports, and the importer figures out the rest.

Step 2: Drag and Drop Into MyATMM

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:

  • Source: ThinkorSwim CSV
  • Imported: 219 option transactions
  • New symbols created: 2 (SPX and XSP)—the account had been trading both heavily over the prior 30 days, so MyATMM created those tickers automatically.

No retyping, no reformatting, no clipboard gymnastics. The messy export went in raw and came out as 219 properly structured transactions.

Step 3: Review the Import Details and Filter by Symbol

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.

Step 4: Automatic Duplicate Detection

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.

Why this matters: Daily importers constantly pull overlapping date ranges. Without duplicate detection, every overlap would double-count premium and corrupt your cost basis. MyATMM treats duplicates as a first-class problem and surfaces them so you stay in control of what actually gets booked.

Step 5: Clearing Duplicates—Row by Row or in Bulk

When an import contains duplicates, you decide how to handle them. Open the details and you have two options:

  • Manual, one row at a time: Go row by row, confirm "yes, that's truly a duplicate," and delete each one individually. Best when you want to inspect every flagged row before removing it.
  • Bulk delete: One click removes every flagged duplicate at once. Fast and clean when you trust the detection.

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.

Step 6: Delete an Entire Import Batch

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.

Important—read before you delete: Deleting an import history record does not just clear a log entry. These records are the actual imported transactions. Deleting the header deletes those transactions out of your portfolio. Once an import is correct and official, leave it in your history—don't "clean up" old imports to tidy the screen. Only delete a batch when you genuinely want those transactions removed from the system (a bad or wrong import). In the example, deleting the 30-day batch would have wiped all 219 transactions, which is exactly what you'd want to keep.

The Real-World Daily Workflow

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:

  1. After the trading day, open the ThinkorSwim Account Statement.
  2. Export to file.
  3. Drag and drop it into MyATMM's Import / Export screen.
  4. Hop to the dashboard and confirm the brokerage amount matches what your ThinkorSwim account statement shows.

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.

Where Your Imported Trades Land: The Cost Basis Screen

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:

  • View every imported transaction individually.
  • Edit or delete an individual transaction if something needs correcting.
  • Add new transactions manually—all the usual functionality is intact.
  • See the overall credits received and the realized gain or loss for the symbol.

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.

Why This Workflow Wins

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:

  • Speed: Raw ThinkorSwim exports go in as-is—no reformatting, no clipboard tricks.
  • Safety: Duplicate detection means overlapping daily exports never double-count.
  • Accountability: Import History is a complete, per-batch audit trail of every CSV you've imported from any broker—with a clean undo when you need one.
  • Accuracy: Imported trades feed your real cost basis, so your tracked portfolio reconciles against your broker every single day.

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.

Risk Disclaimer

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.

Import Your ThinkorSwim Trades in Seconds

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 Today

Spend your time trading—not retyping trades into a spreadsheet

Original Content by MyATMM Research Team | Published: June 21, 2026 | Educational Use Only