{"slug":"the-heston-model-and-the-volatility-smile","qid":"vol_swing","label":"How far at-the-money implied volatility itself travelled (Jan to Jun 2026)","post_title":"Heston Model and the Volatility Smile","post_url":"/blog/the-heston-model-and-the-volatility-smile#q-vol_swing","columns":["symbol","low_iv_pct","high_iv_pct","swing_pts"],"rows":[{"symbol":"AMZN","low_iv_pct":28.21,"high_iv_pct":74.42,"swing_pts":46.22},{"symbol":"MSFT","low_iv_pct":24.49,"high_iv_pct":50.5,"swing_pts":26.01},{"symbol":"NVDA","low_iv_pct":34.49,"high_iv_pct":53.94,"swing_pts":19.45},{"symbol":"SPY","low_iv_pct":12.86,"high_iv_pct":26.3,"swing_pts":13.44},{"symbol":"AAPL","low_iv_pct":21.91,"high_iv_pct":33.47,"swing_pts":11.56},{"symbol":"KO","low_iv_pct":14.31,"high_iv_pct":25.06,"swing_pts":10.75}],"shape":"ranking","sql":"SELECT\n    symbol,\n    round(min(daily_iv) * 100, 2)                   AS low_iv_pct,\n    round(max(daily_iv) * 100, 2)                   AS high_iv_pct,\n    round((max(daily_iv) - min(daily_iv)) * 100, 2) AS swing_pts\nFROM\n(\n    SELECT\n        underlying_symbol      AS symbol,\n        date,\n        avg(implied_volatility) AS daily_iv\n    FROM global_markets.options_greeks\n    WHERE underlying_symbol IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'AMZN', 'KO')\n      AND date BETWEEN '2026-01-02' AND '2026-06-30'\n      AND iv_converged = 1\n      AND volume > 0\n      AND days_to_expiry BETWEEN 20 AND 45\n      AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) <= 0.05\n    GROUP BY symbol, date\n)\nGROUP BY symbol\nORDER BY swing_pts DESC","computed_at":"2026-08-12T15:51:34.476259+00:00","elapsed":0.002921216}