How the expected move is calculated
Every figure on this site is derived from listed option prices with the formulas below. Nothing is a forecast; the site reports what the options market is pricing and shows the working.
1. Expected move is one standard deviation
The expected move is the one-standard-deviation range of the stock price at expiry, as implied by at-the-money option prices. Under a lognormal model that means roughly a 68% chance of closing inside the range and a 32% chance of closing outside. The same definition is used on every row, so a 4-day range and a 30-day range are directly comparable.
Under 8 days to expiry: the weighted straddle
Very short-dated option prices are more reliable than very short-dated implied volatility numbers, so the calculator prices the range directly from the at-the-money straddle.
Every call-put pair with a strike within 2% of the last price is priced at a spread-aware mid (bid/ask mid weighted against the last trade, with stale last trades down-weighted), then the straddles are averaged with weights of volume + 0.3 × open interest taken as the smaller of the two legs, so an illiquid leg cannot dominate. The 1.2533 factor is √(π/2): for a normally distributed move, the price of the ATM straddle is σ√T × √(2/π) ≈ 0.7979 σ√T, so dividing by 0.7979 recovers one standard deviation.
8 days and beyond: implied volatility
The implied volatility is the average of the at-the-money call and put, taken from the chain. Days to expiry are fractional, counted to the 4:00 pm ET close on the expiry date.
2. Upper and lower bounds
The bounds are the last price plus and minus the expected move in dollars, then tilted by skew. When out-of-the-money puts carry more implied volatility than at-the-money options (the normal state for equities), the lower bound is widened and the upper bound tightened by the same fraction, capped at 20%. Skew is measured as the ratio of average OTM put IV to average ATM IV, minus one, halved.
3. Probability of staying inside
The probability that the stock closes between the bounds is computed under a lognormal distribution with drift equal to the risk-free rate and the chain's implied volatility. By construction it sits near 68%; it moves when skew makes the range asymmetric. The confidence band reported in the API re-evaluates the probability at implied volatility plus and minus 1.96 times a 10% relative uncertainty scaled by √T.
4. Max pain
For each candidate settlement price, the intrinsic value that would be paid to every call and put holder is summed using open interest; the strike with the smallest total is max pain. Contracts with fewer than 10 open interest are ignored and an expiry needs at least three strikes and 100 total open interest before a value is shown. Call and put legs are identified from the OCC option symbol's type character, never from the ticker text.
5. Put/call ratio, support and resistance
The put/call ratio blends volume and open interest for the expiry. Support and resistance are the strikes carrying the heaviest put and call open interest respectively, weighted by distance from the current price; when both land on the same strike the page shows it as a pin.
6. Risk-free rate
The risk-free rate feeds the lognormal drift and the Greeks. It is read from the Federal Reserve's FRED database as the Treasury constant-maturity yield closest to the expiry tenor (1-month, 3-month, 6-month, 1-year or 2-year series), cached for the trading day. If FRED is unavailable the 13-week T-bill index (^IRX), 5-year (^FVX) or 10-year (^TNX) yield is used as published, without scaling. If no source answers, the calculation reports an error rather than assuming a number.
7. Data source and freshness
- Option chains and quotes come from public Yahoo Finance market data and are delayed at least 15 minutes.
- The five nearest expiries are analysed for each symbol.
- Results are cached from a few minutes during market hours to several hours overnight and at weekends; every panel shows the timestamp of the chain it used.
- Quotes for options that have not traded recently are adjusted for the stock's move since the chain timestamp using the option's delta.
8. Options flow score and setup labels
The options flow score combines open-interest changes, volume-to-open-interest ratios, dealer gamma and vanna exposure estimates, IV skew and term structure, and premium paid relative to realised volatility into a number between -1 and +1. The setup label summarises implied-volatility, momentum and breakout conditions. Both are descriptive summaries of the chain and have not been validated as predictive signals; the expected move, max pain and put/call ratio are the primary outputs.
Worked example
AAPL last price 319.70 on a Friday close. The 4-day expiry's most liquid at-the-money straddle at the 320 strike costs 4.00. Weighted across the 315 to 325 strikes the straddle is 4.00, so the raw ratio is 4.00 / 319.70 = 1.25%. Multiplying by 1.2533 gives an expected move of 1.57%, or about $5.02, and a range of 314.68 to 324.72 before skew. With mild put skew the published range tilts to 313.68 to 323.71. Max pain from open interest for that expiry is 315.
Limitations
- The lognormal model underestimates the frequency of large moves; real markets have fat tails.
- Wide bid/ask spreads on illiquid names widen the uncertainty of every figure.
- Earnings and other scheduled events are priced into the chain but not separated out; see the earnings guide for how to isolate them.
- Nothing here is investment advice. The market closes outside a one-standard-deviation range roughly one time in three.
Questions or corrections: open an issue on the project's GitHub or use the contact address in the footer.