{"slug":"vix-settlement-and-the-soq","qid":"settlement_ladder","label":"settlement_ladder","post_title":"vix-settlement-and-the-soq","post_url":"/blog/vix-settlement-and-the-soq#q-settlement_ladder","columns":["settlement_date","weekday","settlement_label","strip_expiry_label","days_away"],"rows":[{"settlement_date":"2026-10-21","weekday":"Wed","settlement_label":"Oct 21, 2026","strip_expiry_label":"Nov 20, 2026","days_away":25},{"settlement_date":"2026-11-18","weekday":"Wed","settlement_label":"Nov 18, 2026","strip_expiry_label":"Dec 18, 2026","days_away":53},{"settlement_date":"2026-12-16","weekday":"Wed","settlement_label":"Dec 16, 2026","strip_expiry_label":"Jan 15, 2027","days_away":81},{"settlement_date":"2027-01-20","weekday":"Wed","settlement_label":"Jan 20, 2027","strip_expiry_label":"Feb 19, 2027","days_away":116},{"settlement_date":"2027-02-17","weekday":"Wed","settlement_label":"Feb 17, 2027","strip_expiry_label":"Mar 19, 2027","days_away":144},{"settlement_date":"2027-03-17","weekday":"Wed","settlement_label":"Mar 17, 2027","strip_expiry_label":"Apr 16, 2027","days_away":172},{"settlement_date":"2027-04-21","weekday":"Wed","settlement_label":"Apr 21, 2027","strip_expiry_label":"May 21, 2027","days_away":207},{"settlement_date":"2027-05-19","weekday":"Wed","settlement_label":"May 19, 2027","strip_expiry_label":"Jun 18, 2027","days_away":235},{"settlement_date":"2027-06-16","weekday":"Wed","settlement_label":"Jun 16, 2027","strip_expiry_label":"Jul 16, 2027","days_away":263},{"settlement_date":"2027-07-21","weekday":"Wed","settlement_label":"Jul 21, 2027","strip_expiry_label":"Aug 20, 2027","days_away":298},{"settlement_date":"2027-08-18","weekday":"Wed","settlement_label":"Aug 18, 2027","strip_expiry_label":"Sep 17, 2027","days_away":326},{"settlement_date":"2027-09-15","weekday":"Wed","settlement_label":"Sep 15, 2027","strip_expiry_label":"Oct 15, 2027","days_away":354}],"shape":"series","sql":"SELECT\n    toString(settle_date)                     AS settlement_date,\n    formatDateTime(settle_date, '%a')         AS weekday,\n    formatDateTime(settle_date, '%b %e, %Y')  AS settlement_label,\n    formatDateTime(strip_expiry, '%b %e, %Y') AS strip_expiry_label,\n    dateDiff('day', today(), settle_date)     AS days_away\nFROM\n(\n    SELECT\n        third_friday - 30 AS settle_date,\n        third_friday      AS strip_expiry\n    FROM\n    (\n        SELECT\n            addMonths(toStartOfMonth(today()), n) AS month_start,\n            month_start + (((12 - toInt32(toDayOfWeek(month_start))) % 7) + 14) AS third_friday\n        FROM\n        (\n            SELECT arrayJoin(range(14)) AS n\n        )\n    )\n)\nWHERE settle_date >= today()\nORDER BY settle_date","computed_at":"2026-09-26T15:02:35.857632+00:00","elapsed":0.012523644}