Fintech 535 · Wheel strategy backtest
SPY Wheel Backtest
Cash-secured puts, then covered calls, then puts again · payoffs, Greeks and 52 SPY weeklies on real LSEG quotes
A full backtest of the wheel on SPY, from to , with of starting capital: every trade on the blotter, the account at every close, and the Greeks of the position each day. Part 1 explains how the strategy works, using this backtest's own trades. Part 2 states the thesis and tests it. Part 3 looks at the risk the strategy carried, through its Greeks.
Loading data…Part 1How the wheel works
Two states, two trades
The account is always in one of two states, and each state has exactly one trade. Every week, at the close of its first trading day (usually Monday), it sells one SPY option expiring at the close of the next week's first trading day, so each option is held for one week, weekend included.
Leg 1: the cash-secured put
Selling a put means taking on an obligation: if SPY closes below the strike K at expiry, the account must buy 100 shares at K. In exchange the buyer pays a premium P up front, which the seller keeps whatever happens. "Cash-secured" means the account holds 100 × K in cash the whole time, so the purchase can always be paid for: no borrowing, no margin call.
The seller wins if SPY stays above the breakeven, and loses one-for-one below it, so the premium only cushions a fall. In practice nothing is "lost" at assignment; the account simply owns shares bought at K while SPY trades lower, and moves to State B.
Leg 2: the covered call
With 100 shares, the account sells a call: an obligation to sell the shares at K if SPY closes above it at expiry, in exchange for a premium C. "Covered" because the shares to deliver are already owned. Measured from the week's opening price S0:
The call strike is never set below what the shares cost (put strike − put premium), so being called away never locks in a loss on the shares. The price of that rule is visible after a selloff: the nearest call at or above cost can sit far above SPY and pay almost nothing.
Payoff diagrams, from this backtest's trades
Pick any week the wheel traded. The solid line is the payoff at expiry; the dashed line is the position's value with the chosen number of days still to go, priced with Black-Scholes at that option's own implied volatility. The dot is where SPY actually closed at expiry and what the position actually made. Tick the box to overlay the other leg at the same strike.
Why it is really one trade: put-call parity
For the same strike and expiry, a call and a put are tied together by
C − P = S·e−qT − K·e−rT. Rearranged, owning the shares and
selling the call has the same payoff as holding cash and selling the put:
Tick the overlay box above and the two lines sit on top of each other. So the wheel never really switches strategies: it is short one put the whole year. What changes at assignment is which put. In State A it is an out-of-the-money put (about shares of SPY exposure on average). In State B a -delta call on 100 shares is the same as a short in-the-money put (about shares). The wheel's market exposure more than doubles right after SPY falls through a put strike.
The Greeks of a short weekly option
The Greeks measure how the position's value responds to each thing that moves it, here from the seller's side, per contract. The curves use Black-Scholes at a typical setting from this backtest: SPY at , implied vol , strike ( delta with 7 days left). Each line is a different number of days to expiry.
Delta (shares of SPY the position behaves like). Positive: the seller of a put is long the market. Far above the strike it is near 0; far below, near 100. Close to expiry the change from 0 to 100 becomes a cliff right at the strike.
Gamma (how much delta changes per $1 in SPY). Always negative for a seller: the position gets longer as SPY falls and shorter as it rises, the wrong way both times. It spikes at the strike as expiry nears: weekly options are mostly a gamma bet.
Theta (dollars earned per day as time passes, all else equal). Positive for the seller, largest at the strike, and accelerating into expiry. This is what the seller is paid.
Vega (dollars per 1-point rise in implied vol). Negative: the seller loses when volatility rises. It shrinks as expiry nears, so a weekly option is far less exposed to vol than to the spot moves that gamma measures.
The trade in one sentence: the wheel collects theta and pays for it in gamma. It makes money when SPY moves less than the option price implied. Part 3 measures exactly that split on the real positions.
One full turn of the wheel, from this backtest
Part 2Thesis, then the result
The thesis
Why it should make money. The wheel works like an insurance company. Every week I sell one option on SPY and collect the premium up front: a put while I hold cash, a call while I hold shares. At 0.25 delta, each option starts with approximately a 25% chance of finishing in the money, so most weeks it expires worthless and I keep the whole premium. But winning most weeks is not what makes it profitable, because when an option does finish in the money, the payout is usually bigger than the premium. What actually makes money is when the volatility implied by option prices is higher than the volatility SPY actually delivers. Theta is the premium I earn every day, gamma is the claims I pay when SPY moves, and the wheel works when the first is bigger than the second.
What it should beat. I expect a better Sharpe ratio than buying and holding SPY, but not necessarily a higher return. The wheel holds less than 100 shares' worth of exposure most of the time, which should lower volatility, while the premiums add income. The upside is capped: in a strong rally I only keep the premium and the gain up to the strike, so it should lag SPY in a big up year. It can beat SPY's return when the market goes sideways or drifts down, especially if it moves less than options priced in. Big swings hurt it, because they trigger payouts and whipsaw: assigned after a drop, then called away on the bounce. That is what I saw with IBM in my covered-call regime analysis.
What would prove it wrong. Two results would contradict this thesis:
- The options pay out more than they collect over the year, so the option leg loses money. That would mean implied volatility was not above realized.
- The wheel's Sharpe ratio comes in at or below SPY's.
A weaker test: in a year when SPY rises strongly, the wheel should not beat it on return. If it does, the cap cost less than expected, and I need to explain why. Either way, one year can be consistent with this thesis but cannot prove it: a Sharpe ratio estimated from one year is uncertain by roughly ±1.
What happened
Same start for every column. SPY 100 sh holds the same maximum share count as the wheel, with the rest in cash. SPY all-in holds as many whole shares as the capital buys. Both earn the same interest on cash as the wheel ( a year) and reinvest their dividends in SPY on the pay date. Sharpe = (annualized return − risk-free) / annualized volatility; risk-free = the same cash rate.
Where the money came from
Daily NAV at the close: cash, accrued interest, dividends receivable, shares at the close, minus the cost of buying back the open option at its mid. Filled markers: puts assigned. Hollow: shares called away.
Part 3The Greeks of the actual position
Every close an option was open, its implied volatility is backed out of the closing mid with Black-Scholes (time = calendar days to the 4:00 pm expiry, r = 3-month T-bill, q = SPY dividend yield), and the Greeks follow from it. Position Greeks add the 100 shares when held.
Market exposure: position delta
Shares of SPY the account behaves like. Put phase in blue, call phase in pink; SPY in the strip above. The jumps are assignments: exposure rises right after SPY falls through a put strike and drops after a call-away, which is the short-put-the-whole-time view from Part 1.
P&L attribution: theta earned vs gamma paid
From one close to the next, four things change the price of the option the account is short. The chart splits each day's gain or loss between them:
- Time (theta). With one day less to expiry, the option is worth a little less. The seller earns that every day.
- Direction (delta). SPY going up or down. A short put gains when SPY rises; a covered call gains on the shares.
- Size of the move (gamma). Big moves cost the seller more than the direction alone suggests, whichever way SPY goes. These are the insurance claims.
- Implied volatility (vega). When the market prices in less volatility, the option gets cheaper and the seller gains; when it prices in more, the seller loses.
The four are measured one after the other with Black-Scholes, so together they add up to almost exactly what the option's price actually did. The commission paid at each sale is shown separately.
Portfolio on any date
Pick a trading day to see exactly what the account held at that day's close: cash, shares, the open put or call and what it would cost to buy back, collateral, Reg T requirement, the position's Greeks, and the trades booked that day.
| Instrument | Side | Qty | Fill | Cash Δ | Notes |
|---|
Fill assumption, and the data behind it
Assumption: every option is sold at the closing mid, (bid + ask) / 2, of the day it is sold, minus a commission per contract, which is the market convention for options at US retail brokers. Open options are valued at the mid. Shares change hands only through assignment, at the strike.
Why it is safe for SPY. Across daily quotes on near-the-money weeklies (|delta| 0.15 to 0.45), the median spread is , and on the options the wheel actually sold it is , about of the premium. Selling at the bid instead of mid would have cost over the whole year, against of premium at mid.
Why mid and not the bid. The day's last trade (TRDPRC_1) printed at the middle of the spread on median (position , where 0 = bid and 1 = ask), and mid explains trade prices with R² = (slope ), so options really do trade around the mid.
Caveat: daily bars pair the day's last trade with the closing quote, which are not simultaneous, so some prints fall outside the closing bid and ask ( below the bid, above the ask). Prints repeated from the previous day (no trade that day) were dropped.
Week by week
One row per option sold: the phase of the wheel, the strike rule's inputs, what was collected, how it ended, and whether SPY moved more or less than the option's price implied.
| Week of | Phase | Spot | Floor | Strike | Delta | Bid / Ask | Premium | Outcome | Close at exp. | Payout | Option P&L | Implied move | Realized move |
|---|
Blotter
Every cash movement and every trade, in order: the starting deposit, each option sold, each expiry and assignment, every share purchase and sale at the strike, dividends on their pay date, and monthly interest. The Cash Δ column adds up to the ending cash to the cent. There are no rolls: every option is held to expiry by rule.
| Time | Instrument | Side | Qty | Limit | Fill | Cash Δ | Notes |
|---|
Ledger
The account at every close. Reg T: initial requirement = 50% of the stock's market value plus the full strike of a short put (cash-secured); maintenance = 25% plus the same collateral; a covered call adds nothing. Available = NAV − initial. Excess = NAV − maintenance. Free cash = cash not tied up securing a put. Δ = position delta in shares; Θ = theta in $ per day.
| Date | SPY | Cash | Shares | Stock MV | Short put | Short call | Opt. value | Div. rec. | NAV | Collateral | Free cash | Initial | Maint. | Available | Excess | Δ | Θ $/d |
|---|
Write-up
Why SPY
The wheel is used when people are happy to hold the asset after a put is assigned. I chose SPY because it takes away the risk that comes with a single company, and in most cases it is hard to argue that someone would not be happy to hold some shares of SPY. SPY options are also heavily traded, so the fill assumption is easy to defend.
How the strike is chosen
The strike is the listed strike whose delta is the closest to when the option is sold. Delta is approximately the market's probability of the option finishing in the money, and I wanted this probability to be under 30%, because I am risk averse in this strategy.
The cost-basis floor on calls
After being assigned, calls cannot be written below what the shares cost, so being called away never locks in a loss on the shares themselves. The cost of this rule is visible in the weekly table: after a drop, the nearest call at or above the cost basis is far out of the money and pays very little, so the wheel can sit on shares for weeks collecting almost nothing until SPY recovers.
No rolls, no early closes
Every option runs to expiry.
Cash, interest and Reg T
Every put is cash-secured: the account holds the whole strike in cash, which is why the starting capital is (SPY's highest close in the year was near $779, so one put needed up to about $78,000). Cash earns a flat a year, the risk-free rate. Reg T is used rather than portfolio margin because no position here uses leverage.