Methodology
How every
number is computed.
Data sources, formulas, backtest assumptions and where the model breaks. Written so you can check our work, not take it on trust. Last revised 2026-06-19.
1. Data sources
Primary feed: an institutional options-data provider, the same class of vol-data source used by professional options desks, market-making firms, and academic researchers. We pull live option chains, pre-computed IV rank, vol surface points, and historical OHLCV from their API.
- /strikes — live option chain with bid/ask/IV/Greeks per strike (refreshed continuously during market hours).
- /hist/ivrank — daily IV, IV rank (1m + 1y), and IV percentile (1m + 1y) per ticker.
- /hist/dailies — OHLCV back to 2007 for historical and backtest work.
- /cores — 340+ fundamental fields including earnings dates and dividend schedules.
- /live/monies/implied + /forecast — moneyness-based vol surface points for the 3D viewer.
Secondary feeds: yfinance for VIX (^VIX), 10-year Treasury (^TNX) for the risk-free rate, and 90-minute intraday bars. Greeks come pre-computed from the feed; we do not re-derive them from market prices on the SEO pages. Backtest stats and "typical win rate" numbers are computed in-house against the feed's historical chain.
2. IV Rank & IV Percentile
IV rank and IV percentile both contextualise today's IV against a one-year lookback of the 30-day ATM implied volatility. They are not the same metric, and the difference matters in spike-prone names.
IV Rank
IV Rank = (IVtoday − IV52w low) / (IV52w high − IV52w low) × 100
Pure min-max score. A single IV spike during the year drags the high to that value and compresses every subsequent reading.
IV Percentile
IV Pctile = count(IVday < IVtoday) / 252 × 100
Distribution-based. Smoother than rank, less prone to single-day distortion. Better for spike-prone names like TSLA, NVDA, MARA.
Lookback: 252 trading days (≈ 1 calendar year). ATM IV is anchored to the 30-day constant-maturity contract, interpolated from the surface — not a single listed expiration.
Both metrics arrive pre-computed from our data feed. We don't re-derive them client-side. The number you see on /tools/iv-calculator is the same number a hedge fund's vol desk sees that morning.
3. Greeks
All Greeks are computed from the Black-Scholes-Merton model with continuous dividend yield. Inputs: spot price, strike, time to expiration in years, risk-free rate (10y Treasury yield from yfinance), continuous dividend yield (from the data feed), and implied volatility (from the live chain).
- Delta: N(d1) for calls, N(d1)−1 for puts.
- Gamma: φ(d1) / (S σ √T).
- Theta: reported per calendar day (annual θ ÷ 365). The /tools/greeks-calculator displays the dollar value: θ × 100 for a single 100-share contract.
- Vega: S φ(d1) √T / 100. Already scaled per 1% IV move, not per absolute σ.
- Rho: K T e−rT N(d2) / 100. Reported for completeness; only materially affects LEAPS (>6 months).
Higher-order Greeks (Charm, Vanna, Volga) are computed via finite-differences on the BSM PDE for premium tiers only.
4. Probability of Profit & Probability of Touching
Probability of Profit (POP) is the model-implied probability that the trade closes profitable at expiration. We compute it from the cumulative normal distribution evaluated at d2 — the same N(d2) term that appears in Black-Scholes.
For a short single option:
POP ≈ 1 − N(d2)
For an iron condor (two short legs):
POP ≈ 1 − (|short put delta| + |short call delta|)
Probability of Touching (POT) is the probability the underlying touches the strike at any point before expiration — not just at expiration. The textbook approximation is POT ≈ 2 × POITM, which assumes geometric Brownian motion and continuous monitoring. POT is always higher than POITM for the same strike.
Where these break: POP and POT assume log-normal returns and constant volatility. Both assumptions fail around earnings and macroevents. We never use the model POP as a forecast — it is a probability under the model's assumptions, not the world's.
5. Backtest framework
Every "typical win rate" or "managed return" number on the site comes from a transparent backtest framework with the following rules:
- Universe: SPY, QQQ, IWM as the index proxies; AAPL, MSFT, GOOGL as the mega-cap single-name proxies.
- Period: 2014-01-01 to most recent month-end. Excludes the 2020 COVID quarter (March 2020) when reported as "ex-COVID."
- Slippage: 1¢ per option leg on entry and exit. 4-leg iron condors therefore eat 8¢ of edge per round-trip.
- Commissions: $0.65 per contract (Schwab/IBKR retail rate). Some tables also publish the commission-free variant.
- Fills: mid-price at the trade time. We do not assume the natural; for short premium we assume a 1¢ improvement on entry, 0¢ on exit.
- Sizing: equal capital allocation. Each trade risks the full capital at risk (max loss) per unit; the test does not optimise sizing.
- Management: the default exit rule is 50% of max profit on credit spreads / iron condors. Where alternative exits are quoted (25%, 75%, hold-to-expiration), they are labelled.
What we don't claim: these tests are not live performance, do not include taxes, and use after-hours mid-price marks. Past returns under any backtest are not predictive of future returns under live trading.
6. How "best" lists are ranked
Pages like /best/stocks-for-wheel-strategy and /best/etfs-for-options-trading rank candidates against a published rubric. The rubric is updated monthly; the underlying live numbers (IV rank, IV) refresh on each page load from the daily feed.
- Wheel-strategy stocks: ranked by composite of fundamental quality (would you hold if assigned), 30-delta put yield annualised, options liquidity (bid-ask spread), share-price accessibility, and historical drawdown recovery.
- ETFs for options trading: ranked by daily options volume, bid-ask tightness at the front-month ATM, weekly-expiration availability, and IV regime range.
7. Known limitations
Where our model and our data can break:
- Earnings IV inversion: the term structure inverts in the week before earnings. Constant-maturity 30-day IV becomes a blended number that doesn't reflect the front-week event premium.
- Halt / circuit-breaker days: the feed still publishes closing data, but the IV calculation can be stale during long halts.
- Low-liquidity strikes: when bid-ask spreads exceed 20% of mid, our Greek and IV calculations carry larger error bars. We try to filter these but cannot guarantee.
- Backtest data on options: historical option chains go back to 2007 but coverage is sparse pre-2014 for non-index names. Single-name backtests for stocks like NVDA before 2014 are not statistically meaningful.
- Live mid-price assumption: the actual fill price is rarely the natural mid. Slippage in our backtests approximates retail execution; HFT and market-makers achieve better fills.
8. How often we refresh
| Surface | Refresh cadence |
|---|---|
| Live option chain (Greeks, IV, bid/ask) | ~15 second polling during market hours |
| IV rank / IV percentile | Daily after the close (published ~5:30 PM ET) |
| Vol surface points (3D viewer) | Hourly during market hours; EOD overnight |
| Best-of lists (wheel stocks, ETFs) | Editorial review monthly; live IV refreshes per page load |
| Strategy guides (win rates, examples) | Quarterly editorial review |
| Backtest results | Re-run monthly; tagged with the run-date in the relevant content |
9. Primary references & standards
The rules, contract specifications, and pricing theory our calculations rely on come from primary, authoritative sources. Where our content states a market mechanic (assignment thresholds, settlement, contract specs), it traces back to one of these:
- Options Clearing Corporation (OCC) — exercise & assignment, auto-exercise ($0.01 ITM) threshold, settlement: theocc.com
- Cboe — contract specifications, expiration calendar, and the VIX methodology: cboe.com
- U.S. SEC — Investor.gov — regulatory definitions and investor guidance on options: investor.gov
- Black, Scholes & Merton (1973) — the option-pricing model underlying our Greeks and probability calculations.
- Options data: an institutional implied-volatility and historical options data feed
Check the numbers
on a live chain.
Every formula above runs on the same feed in the Terminal. A free account runs the Terminal on AAPL with no card.
Real market data, not a sandbox. See it live on AAPL.