{"slug":"why-would-anyone-sell-a-put-option","qid":"iv_vs_rv","label":"iv_vs_rv","post_title":"why-would-anyone-sell-a-put-option","post_url":"/blog/why-would-anyone-sell-a-put-option#q-iv_vs_rv","columns":["month","implied_vol_pct","realized_vol_pct_next_month","vol_spread"],"rows":[{"month":"Jan 2024","implied_vol_pct":23.5,"realized_vol_pct_next_month":12.3,"vol_spread":11.1},{"month":"Feb 2024","implied_vol_pct":19.6,"realized_vol_pct_next_month":25.3,"vol_spread":-5.7},{"month":"Mar 2024","implied_vol_pct":21,"realized_vol_pct_next_month":23.5,"vol_spread":-2.5},{"month":"Apr 2024","implied_vol_pct":27.1,"realized_vol_pct_next_month":24.3,"vol_spread":2.9},{"month":"May 2024","implied_vol_pct":21.5,"realized_vol_pct_next_month":33.2,"vol_spread":-11.7},{"month":"Jun 2024","implied_vol_pct":22,"realized_vol_pct_next_month":24.7,"vol_spread":-2.7},{"month":"Jul 2024","implied_vol_pct":26.7,"realized_vol_pct_next_month":23.1,"vol_spread":3.6},{"month":"Aug 2024","implied_vol_pct":24.8,"realized_vol_pct_next_month":23.5,"vol_spread":1.4},{"month":"Sep 2024","implied_vol_pct":24.2,"realized_vol_pct_next_month":21,"vol_spread":3.1},{"month":"Oct 2024","implied_vol_pct":26.3,"realized_vol_pct_next_month":15.1,"vol_spread":11.2},{"month":"Nov 2024","implied_vol_pct":19.6,"realized_vol_pct_next_month":16.3,"vol_spread":3.3},{"month":"Dec 2024","implied_vol_pct":18.4,"realized_vol_pct_next_month":30.6,"vol_spread":-12.2},{"month":"Jan 2025","implied_vol_pct":27.8,"realized_vol_pct_next_month":26.1,"vol_spread":1.7},{"month":"Feb 2025","implied_vol_pct":23.2,"realized_vol_pct_next_month":30.9,"vol_spread":-7.7},{"month":"Mar 2025","implied_vol_pct":28.9,"realized_vol_pct_next_month":77.5,"vol_spread":-48.6},{"month":"Apr 2025","implied_vol_pct":41.8,"realized_vol_pct_next_month":33,"vol_spread":8.9},{"month":"May 2025","implied_vol_pct":30.3,"realized_vol_pct_next_month":18.3,"vol_spread":12.1},{"month":"Jun 2025","implied_vol_pct":27.2,"realized_vol_pct_next_month":14.4,"vol_spread":12.9},{"month":"Jul 2025","implied_vol_pct":29.9,"realized_vol_pct_next_month":28.7,"vol_spread":1.2},{"month":"Aug 2025","implied_vol_pct":25.7,"realized_vol_pct_next_month":28.5,"vol_spread":-2.8},{"month":"Sep 2025","implied_vol_pct":23.7,"realized_vol_pct_next_month":22.8,"vol_spread":0.9},{"month":"Oct 2025","implied_vol_pct":28.4,"realized_vol_pct_next_month":15.2,"vol_spread":13.2},{"month":"Nov 2025","implied_vol_pct":23.3,"realized_vol_pct_next_month":11.9,"vol_spread":11.5},{"month":"Dec 2025","implied_vol_pct":19.8,"realized_vol_pct_next_month":20.2,"vol_spread":-0.4},{"month":"Jan 2026","implied_vol_pct":27.9,"realized_vol_pct_next_month":35,"vol_spread":-7.2},{"month":"Feb 2026","implied_vol_pct":25,"realized_vol_pct_next_month":18.9,"vol_spread":6},{"month":"Mar 2026","implied_vol_pct":28.8,"realized_vol_pct_next_month":23.5,"vol_spread":5.3},{"month":"Apr 2026","implied_vol_pct":30.1,"realized_vol_pct_next_month":17.2,"vol_spread":12.9},{"month":"May 2026","implied_vol_pct":23.4,"realized_vol_pct_next_month":35.3,"vol_spread":-11.9},{"month":"Jun 2026","implied_vol_pct":24.3,"realized_vol_pct_next_month":39.3,"vol_spread":-15},{"month":"Jul 2026","implied_vol_pct":28.8,"realized_vol_pct_next_month":18.8,"vol_spread":10},{"month":"Aug 2026","implied_vol_pct":24.8,"realized_vol_pct_next_month":22.5,"vol_spread":2.4}],"shape":"series","sql":"SELECT\n    formatDateTime(i.m, '%b %Y')              AS month,\n    round(i.implied_vol, 1)                   AS implied_vol_pct,\n    round(r.realized_vol, 1)                  AS realized_vol_pct_next_month,\n    round(i.implied_vol - r.realized_vol, 1)  AS vol_spread\nFROM\n(\n    SELECT\n        toStartOfMonth(date)                AS m,\n        addMonths(toStartOfMonth(date), 1)  AS next_m,\n        avg(implied_volatility) * 100       AS implied_vol\n    FROM global_markets.options_greeks\n    WHERE underlying_symbol = 'AAPL'\n      AND delta < 0\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      AND date BETWEEN '2024-01-01' AND '2026-08-31'\n    GROUP BY m, next_m\n) AS i\nINNER JOIN\n(\n    SELECT\n        toStartOfMonth(d)                                      AS m,\n        stddevSamp(log(close_px / prev_px)) * sqrt(252) * 100   AS realized_vol\n    FROM\n    (\n        SELECT\n            date                                                               AS d,\n            close_px,\n            lagInFrame(close_px, 1) OVER (ORDER BY date ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_px\n        FROM\n        (\n            SELECT\n                date,\n                max(toFloat64(close)) AS close_px\n            FROM global_markets.stocks_daily_aggs\n            WHERE ticker = 'AAPL'\n              AND date BETWEEN '2023-12-01' AND '2026-09-26'\n            GROUP BY date\n        ) AS daily\n    ) AS lagged\n    WHERE prev_px > 0\n    GROUP BY m\n    HAVING count() >= 15\n) AS r ON r.m = i.next_m\nORDER BY i.m","computed_at":"2026-10-02T15:32:53.213861+00:00","elapsed":0.005167199}