ThinkorSwim backtesting isn't one tool — it's three, they don't talk to each other, and picking the wrong one for the job is an easy way to end an evening feeling far more confident in a strategy than the testing actually earned. Here's the quick answer, then the honest detail behind each one. thinkBack lets you drop into a single historical options trade and see what it would have done — pick this for a fast, one-trade "what if" check. OnDemand replays the whole market in a virtual $100,000 account so you can trade a full session as if it were live — pick this when you want real execution practice, not just a single hypothetical. Custom Strategies, built with thinkScript, runs a fixed rule automatically across years of data and hands you a report — pick this when you have an actual rule worth testing at scale, and you're willing to write or paste the code for it. Which one suits you best depends on whether you need a quick what-if, real practice reps, or a proper test of a rule.
Photo by Mikhail Nilov on Pexels
The Three Ways to Backtest on ThinkorSwim
All three ship free with the thinkorswim platform — now run by Charles Schwab since the TD Ameritrade migration — no separate subscription required. Think of it less as one all-purpose tool and more like a mechanic's three separate wrenches: grab the right one and the job is quick, grab the wrong one and you'll be there a while wondering why nothing fits. Here's how they actually split the job:
| Tool | What it does | Best for | Coding required |
|---|---|---|---|
| thinkBack | Enter a hypothetical options or stock trade on a past date and see the result | A quick "what if I'd taken this" check | No |
| OnDemand | Full historical market replay in a virtual $100,000 account | Practicing execution like it's live | No |
| Custom Strategies | thinkScript code generates buy/sell signals and a P&L report across years of data | Testing a fixed rule at scale | Yes (thinkScript) |
None of them share data with each other, and none of them remember you outside the session you're in. Worth knowing before you pick one and find it doesn't do what the other two do.
Method 1: thinkBack — Fast What-If Testing
thinkBack lives under the Analyze tab. Pick an option that was genuinely available on a past date, enter a hypothetical trade against it, and thinkorswim shows you the profit or loss for that position as if you'd actually held it — stored against close to a decade of historical options data.
It's built for one question, asked one trade at a time: "what would have happened if I'd taken this?" Good for sanity-checking a single idea. Not built for testing a rule across hundreds of setups — for that, you're already looking at one of the other two tools.

Method 2: OnDemand — Full Market Replay
Click the OnDemand icon in the top right and you're dropped into a virtual $100,000 account with the clock rewound. Move forward and backward through real historical price and time, at your own pace, and place trades with actual entries, stops, and targets — the closest thing on thinkorswim to rehearsing a live session.
Data runs over a decade deep across tick, minute, daily, weekly, and monthly timeframes. Two things catch people out: the date and time you pick has to fall inside real market hours or the chart simply sits idle, and dynamic watchlists and scans don't function in OnDemand mode. Click the OnDemand icon again to switch back to live — skip that step and you'll spend a confused minute wondering why your live account hasn't moved in four years.

Method 3: Custom Strategies — Automated Testing with ThinkScript
This is the only one of the three that runs a fixed rule automatically instead of you clicking through trades by hand. Add a Strategy to a chart, write it in thinkScript — buy and sell conditions, defined in code — and thinkorswim overlays the signals on the chart plus a report: win rate, profit and loss, and the full trade list.
The catch is thinkScript itself. It's a real, if simplified, scripting language, and writing one from scratch means actually learning it. I've pasted a stranger's script from a forum before and called the result "backtested" — it wasn't. I'd borrowed someone else's assumptions and hoped they matched mine.

Where ThinkorSwim's Backtesting Falls Short
We're judging each tool against the job it was actually built for, not against a journal it never claimed to be — same rule as the wrench analogy above: a wrench that's bad at hammering nails isn't a bad wrench. None of this makes thinkorswim's tools bad. A full-service brokerage platform is built for trading and options analysis, not for journaling, and it's honest to say so plainly rather than pretend that's a flaw.
But a few gaps are worth knowing before you build a habit around any of the three:
No live trade journal. thinkBack and OnDemand sessions don't get saved as journal entries with your own notes, screenshots, or tags. Whatever you learned in that replay stays in your head unless you write it down somewhere else.
Custom Strategies needs code. If your rule is as simple as "buy when price crosses the 50 EMA," you still need thinkScript to test it automatically. There's no no-code path to an automated backtest on thinkorswim.
Nothing connects to your real trades. A backtested session and the live trade you place the next day live in two completely separate places, with no shared record between them.
What About Tastytrade's Backtesting Tool?
Tastytrade launched its own options backtesting tool in October 2024, free and built into the platform for account holders — no separate purchase. It covers a narrower set than thinkorswim's three-tool spread: roughly 137 major symbols (SPY, AAPL, MSFT, NVDA, TSLA, QQQ, and GLD among them), with 10 to 13 years of historical data per symbol. You can test single-leg or multi-leg options strategies, set exit conditions like days-to-expiration or a target percentage of profit or loss, and read the results through win rate, average return, and max drawdown. Traders ran more than 200,000 backtests through it in its first week.
If the real question behind "thinkorswim vs tastytrade" is which one backtests better, the honest answer is: it depends what you're testing. Tastytrade's tool is purpose-built for one job — options strategies, no coding — where thinkorswim spreads a similar job across thinkBack, OnDemand, and thinkScript. Neither one logs your live trades either.
Photo by Rafael Minguet Delgado on Pexels
Backtesting Without Code: Traders Journal
Following a strategy was never quite enough for me either. I wanted to know its normal drawdown and the conditions it quietly fell apart in — and no amount of thinkScript was going to hand me that in an afternoon.
Traders Journal takes the OnDemand idea — replay real history, trade it like it's live — and skips the coding wall entirely. Backtesting sessions run bar by bar across 34 instruments (Indian and global indices, metals and energy, forex, and crypto), with daily data reaching back over two decades on the older forex and metals pairs and a few years deep intraday, depending on the instrument. No thinkScript, no forum scripts to trust blindly. And because the journal isn't a separate product bolted on afterward, every backtested session sits in the same place as your live trades — tagged, reviewable, and not lost the moment you close the tab.

| thinkorswim's three tools | Traders Journal | |
|---|---|---|
| Coding required for an automated rule | Yes (thinkScript) | No |
| Backtests saved next to your live trades | No | Yes |
| Cost | Free with the platform | Free forever, or $12/month (₹499) for Premium |
Pick thinkorswim's native tools if you're already trading options there and just want a fast what-if on one position — thinkBack does that in under a minute, and nothing else needs installing. Pick something like Traders Journal if the rule is simple enough to not need code, and you'd rather the session end up filed next to your actual trades instead of gone the second you close the window. Neither is the wrong wrench — it depends which nail you're hitting. See how Traders Journal's backtesting works, or compare it against other options in the no-code backtesting software roundup.
Common Backtesting Mistakes (ThinkorSwim or Otherwise)
- Ten trades prove very little, on any platform. Test across trending, ranging, and choppy stretches before trusting a rule with real size — a strategy that only survived three good months of an uptrend hasn't actually been tested yet.
- Only reviewing the wins. If your notes only cover the trades that worked, you haven't written a backtest — you've written a highlight reel.
- Confusing "the script ran" with "the rule is good." A thinkScript report finishing without errors tells you the code works. It says nothing about whether the win rate means anything without risk-to-reward and drawdown sitting next to it.
A backtest, on any tool, is a starting point. It's not a verdict, and it's not a substitute for the forward test before real money shows up. For the full five-step version of doing this properly, see how to backtest a trading strategy without coding.




