Days to Expiry — Options Portfolio Tracker logo
Days to Expiry

Public Wheel Backtest Recipe Catalog

One simulated recipe: 10 DTE / 2% OTM cash-secured puts and covered calls, ~2-year window.

These pages publish weekly snapshots of a single wheel recipe. They are historical simulations, not live trading results and not a prediction. When a snapshot exists, this page says what the simulation produced — never what you would have collected.

Live broker sync, true cost basis after rolls. No card.

Wheel strategy backtest showing assignment distribution and historical performance by strike and DTE

Tap to view full size

Best performers by risk-adjusted return

Published 21-Day Rule simulations ranked by annualized return divided by maximum drawdown. Simulated results, not a prediction.

#TickerAnnualized returnMax drawdownRisk-adjustedWheel snapshot
1KO12.3%7.5%1.6310 DTE / 2% OTM
2SMH26.9%19.9%1.3510 DTE / 2% OTM
3XLP8.6%8.0%1.0710 DTE / 2% OTM
4PG8.3%8.6%0.9710 DTE / 2% OTM
5AMD28.8%32.2%0.8910 DTE / 2% OTM
6XOM9.0%12.0%0.7510 DTE / 2% OTM
7XLF7.6%10.3%0.7410 DTE / 2% OTM
8JPM11.0%15.3%0.7210 DTE / 2% OTM
9GDX18.2%26.5%0.6910 DTE / 2% OTM
10NVDA19.5%28.9%0.6810 DTE / 2% OTM

Published snapshots

Recipe: 10 DTE / 2% OTM puts and calls · ~2 years · simulated. Listed only when the weekly job wrote a success row.

Problem

Most “backtest” landing pages invent a research store they do not have

Scanner-wide historical stores presented as if every ticker is pre-computed

Copy that treats simulated premium as cash you collected

Charts and trade tapes that cannot be refreshed without a live engine call

Stale success left up after the next run fails

Solution

A small allowlisted catalog, one recipe, table-only reads

One public recipe

10 DTE / 2% OTM puts and calls. Dates omitted so the engine uses its ~2-year default. Reinvestment comparison off.

Published rows only

The hub lists tickers that exist in the snapshot table. Missing or failed runs are omitted — no fake KPIs.

Simulated, labeled as simulated

Copy is “this simulation produced $X.” Limitations and pricing sources stay visible.

Interactive tool stays gated

Change DTE, OTM, or dates in the existing wheel backtest. These pages do not run Alpaca on request.

How it works

Get started in 3 simple steps

1

Read a published snapshot

Open a ticker below. You will see simulated premium, assignment rate, wheel P&L, and buy-and-hold P&L for the one public recipe.

2

Check the honesty block

Every snapshot stores limitations, synthetic-pricing flags, and pricing-source counts from the engine run.

3

Run your own parameters

Start a trial and open the interactive wheel backtest to change symbol, window, DTE, or OTM.

Limitations

  • Historical simulation only — not a prediction
  • Model fills may use mid / bar / BSM when market quotes missing
  • Ignores commissions and slippage
  • Simplified assignment at expiration
  • Past performance does not guarantee future results

Frequently Asked Questions

Everything you need to know about getting started

What recipe is published here?

A single wheel recipe: 10 DTE / 2% OTM cash-secured puts and covered calls, dates omitted so the engine uses its ~2-year default, reinvestment comparison off. There are no URL variants.

Why is my ticker missing?

The hub lists only success rows that exist in the snapshot table. A failed weekly refresh deletes that ticker’s row so a stale success is never labeled current.

Is this what I would have collected?

No. These are historical simulations. The copy is “this simulation produced $X,” not a claim that a ticker or you collected premium.

Can I change DTE or OTM?

Not on these pages. Use the interactive wheel backtest after starting a trial. Public pages stay table-only so they never hit Alpaca on request.

Ready to Get Started?

Join traders who are already using our tools to make better decisions.

Live broker sync, true cost basis after rolls. No card.