How to backtest CFD daily options (without fooling yourself)
You have a trading idea. Maybe you've been selling options into the afternoon and it feels like it works. Maybe you read about a strategy and want to know if it's real. Either way, you face the same question every trader faces: how do I find out whether this makes money — before I find out with my own account? That's what a backtest is for. Here's how to do one properly on daily options, and the traps that catch almost everyone.
First, what are daily options?
Some CFD and spread-betting providers list options that expire every single trading day, on things like the S&P 500, gold, oil and the major currencies. Each contract is settled in cash at a fixed time — S&P 500 dailies, for instance, settle at 4pm New York time, 9pm in London. A fresh set appears every day, so every day offers a complete trade: open in the morning, know the result by evening.
That's why they've become the European answer to the American "0DTE" boom. You don't need a US broker or dollar account. Position sizes are small enough to trade sensibly. And for UK residents, spread-bet profits are currently tax-free (as ever, tax depends on your circumstances and rules change). The one real drawback: the difference between the buying and selling price is wider than on US exchanges — which brings us to why backtesting these things is so easy to get wrong.
The trap almost everyone falls into
There's no public database of historical daily-option prices from CFD providers. So people improvise. Some test on US exchange data and hope the results carry over. They don't — different prices, different costs, different settlement times. Others simulate prices with a formula and assume they'd have traded at the theoretical fair value.
That second assumption is the killer. On a daily option, the gap between the buying and selling price is a serious slice of the whole trade, and you cross that gap every time you deal. We ran an experiment on exactly this — the same strategy tested at fantasy prices and at real ones — and watched half the profit disappear. Whatever tool or data you use, the fills in your backtest must be prices somebody would genuinely have given you. Everything below assumes that.
Step 1: turn your idea into a rule
A backtest can only test something precise. "Sell options in the afternoon when it's quiet" isn't testable; "every day at 1:30pm New York, sell the call and put a fixed distance from the market, hold to settlement" is. Write your idea down so exactly that a robot could follow it. If you can't, you don't have a strategy yet — you have a mood.
Step 2: test every entry time, not just your favourite
Because a new option chain exists every day and trades nearly around the clock, when you enter is as much a part of the strategy as what you trade. This is where backtesting gets genuinely interesting, because the answer isn't guessable from the sofa.
Here's a real example. The strategy: each day, sell an S&P 500 daily call and put (a "strangle" — you're paid up front, and you keep the money if the market ends the day without a big move). Same trade, tested at different entry times, over the two years to August 2026, at real prices throughout:
| When you enter (New York time) | Trades | Total profit | Sharpe ratio |
|---|---|---|---|
| 11:30pm the night before | 490 | +857 pts | 1.28 |
| 4:30am | 490 | +856 pts | 1.28 |
| 8:30am | 493 | +747 pts | 1.15 |
| 11:30am | 491 | +365 pts | 0.74 |
| 1:30pm | 489 | +573 pts | 1.50 |
| 3:00pm | 450 | −58 pts | −0.21 |
| 3:30pm | 407 | −70 pts | −0.40 |
Notice two things you'd never learn from testing a single entry time. The strategy makes money at most hours of the day — which is much better evidence of something real than one good number would be. And the final hour is a consistent loser: by 3pm there's so little premium left in the options that the trading costs eat more than you collect. People sell that last hour every day, feeling clever. The data says they're paying for the privilege.
Step 3: look at the whole picture, not just the profit
Take your best entry and pull the full statistics. For the 1:30pm entry above: 491 trades, +573 points, three winners for every loser. But also: the average losing day (−12 points) was twice the size of the average winning day (+6), the worst single day cost 161 points, and the deepest losing stretch reached 250 points before recovering.
That lopsided shape isn't a flaw — it's what selling options honestly looks like. Lots of small wins, occasional bigger hits. The question a backtest lets you answer in advance is: could I sit through that worst stretch without abandoning the strategy? If the answer is no, better to learn it now, from a chart, for free.
Be suspicious of any backtest that shows a high win rate and tiny losses. Real strategies trade one off against the other; simulations with fantasy prices don't have to.
Step 4: test your exit rules — don't assume them
Maybe you'd rather take profits early, or cut losses at some threshold, or close an hour before settlement to sleep better. All reasonable. All testable. Just don't copy a rule from a US options course and assume it transfers: taking profit early on a CFD option means paying the trading costs twice, and a rule that helps elsewhere can quietly hurt here. Change one rule at a time and re-run; keep the changes that earn their place.
Step 5: try to break it
This is the step that separates finding an edge from fooling yourself. If you tried twenty variations before landing on the good one, some of its shine is luck — that's how odds work. So freeze the exact configuration and confirm it on data it has never seen: tune it on the older years, verify on the recent ones. Then check the ugly periods on their own — the 2020 crash, the 2025 tariff panic. A strategy that only worked in calm markets isn't wrong to trade, but you want to know that's what you own before the next storm, not during it.
The whole method in three questions. Did it trade at prices someone would really have given you? Does it hold up across nearby entry times, not just one lucky one? Does it survive on data you didn't tune it on? Three yeses and you have something. Any no, and you have a nice-looking chart.
Run this on your own idea
ThetaSmith does all of the above in a few clicks — 10+ years of real price history, every entry time tested in seconds, no coding. Free for 30 days on the S&P 500, no card.
Create free account →