Covered Call Desk

Even though Ben Felix claimed using covered call to generate income is financial bullshit, you still feel the itch to collect some premiums while holding your equity, then you can use this tool to compare different strategies and equities. This runs your rule across 10 years of real prices and shows what the overlay would have earned, how often you'd be called away, and how much upside it caps.

Expiry rule: the call is always rolled at expiration. If it finished in-the-money (strike below the stock price), the strategy pays the difference — the gain above the strike is handed back — and a fresh call is written for the next cycle. You always keep the shares.
Methodology: daily prices are pulled from Yahoo Finance (split- and dividend-adjusted closes, up to ~10 years). There are no live option quotes — each option's price is modeled with the Black–Scholes formula, using a volatility estimated from the stock's own recent price history (chosen estimator above) and marked up by the vol-premium multiplier. Premiums are therefore modeled, not market — best for comparing strategies, not predicting exact dollars.

Strategy vs. just holding

Covered-call overlay Buy & hold

Estimated volatility & option premium over time

Estimated vol (annualized) Modeled premium ($ / contract)

Each point prices the call you'd sell that day under the current settings — volatility (left axis) comes from the stock's own recent history, and the premium it implies (right axis) rises and falls with it. This is the raw material behind every premium in the charts above.

Outcome of every cycle

Each expiry window, overlay P&L as % of stock price
Kept premium (finished OTM) Called away (capped)

One trade, at a glance

Covered call Own stock only

Compare strategies — click a row to load it

StrategyStrikeExpiry Income / yrBuyback cost / yrNet income / yrCalled away
How to read this. Income / yr is annualized premium collected; Buyback cost / yr is the intrinsic paid to roll in-the-money calls; Net income / yr = Income − Buyback cost, the overlay's standalone yield; Called away is the share of expiries that finished at or above the strike. Same decomposition as the ticker table below — here for one stock across different strikes and expiries.

Which tickers suit this strategy?

Overlay helped Overlay hurt dot size = how often called away
TickerRealized volStock ann. returnIncome / yr Buyback cost / yrNet income / yrCalled away
Reading the map. Every ticker runs the same strategy you set above across its own history (always-roll). Rightward = the stock rose faster. Above the line = net option income is positive (premium collected exceeds what you pay to buy back in-the-money calls); below = you hand back more than you collect. The sweet spot is upper-left — flat-to-down, high-vol stocks where calls rarely get run over. The lower-right is the trap: fast risers whose gains the calls keep capping. Click any row to load that ticker above.
Net income / yr = Income − Buyback cost. It's the standalone yield of the call-selling overlay: premium collected minus the intrinsic you pay to roll ITM calls. Since you always keep the shares, this — not lost stock upside — is what the strategy actually adds or subtracts.
Stock ann. return is the share's own annualized return (what plain holding gave you). Realized vol is the median trailing 21-day realized volatility over the ticker's history — a typical vol level, independent of the estimator above. COIN, PLTR, ABNB and RBLX have shorter histories (~4–6y), so their figures are noisier.
Modeled, not a broker backtest. Premiums are priced with Black–Scholes from real historical prices and an estimated volatility — not actual option quotes. Dividends, early assignment, taxes, and bid/ask beyond the haircut are ignored. Prices are split/dividend-adjusted daily closes. Treat this as a tool for comparing strategies, not for predicting exact dollars.
Volatility. "From history" estimates each cycle's vol point-in-time (no look-ahead): Tenor = rolling window matched to the option's life, 21-day = the classic HV20, EWMA = RiskMetrics λ=0.94. All are then scaled by the vol-premium knob, since real option IV runs a bit above realized.
The overlay P&L. Each cycle you keep the premium and give back anything above the strike: premium − max(0, price − strike). Cycles are non-overlapping for the equity curve, overlapping (every day) for the distribution.