ladder
Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-09-11, from options-expiration-vocabulary.
| expiry | expiry_zh | dow | dte | cycle |
|---|---|---|---|---|
| 2026-07-15 | 2026年7月15日 | 周三 | 2 | 周期权 |
| 2026-07-17 | 2026年7月17日 | 周五 | 4 | 月期权 |
| 2026-07-20 | 2026年7月20日 | 周一 | 7 | 周期权 |
| 2026-07-22 | 2026年7月22日 | 周三 | 9 | 周期权 |
| 2026-07-24 | 2026年7月24日 | 周五 | 11 | 周期权 |
| 2026-07-27 | 2026年7月27日 | 周一 | 14 | 周期权 |
| 2026-07-31 | 2026年7月31日 | 周五 | 18 | 周期权 |
| 2026-08-07 | 2026年8月7日 | 周五 | 25 | 周期权 |
| 2026-08-14 | 2026年8月14日 | 周五 | 32 | 周期权 |
| 2026-08-21 | 2026年8月21日 | 周五 | 39 | 月期权 |
| 2026-08-28 | 2026年8月28日 | 周五 | 46 | 周期权 |
| 2026-09-18 | 2026年9月18日 | 周五 | 67 | 月期权 |
| 2026-10-16 | 2026年10月16日 | 周五 | 95 | 月期权 |
| 2026-11-20 | 2026年11月20日 | 周五 | 130 | 月期权 |
| 2026-12-18 | 2026年12月18日 | 周五 | 158 | 月期权 |
| 2027-01-15 | 2027年1月15日 | 周五 | 186 | 月期权 |
| 2027-02-19 | 2027年2月19日 | 周五 | 221 | 月期权 |
| 2027-03-19 | 2027年3月19日 | 周五 | 249 | 月期权 |
| 2027-06-17 | 2027年6月17日 | 周四 | 339 | 月期权 |
| 2027-09-17 | 2027年9月17日 | 周五 | 431 | LEAPS |
| 2027-12-17 | 2027年12月17日 | 周五 | 522 | LEAPS |
| 2028-01-21 | 2028年1月21日 | 周五 | 557 | LEAPS |
| 2028-03-17 | 2028年3月17日 | 周五 | 613 | LEAPS |
| 2028-12-15 | 2028年12月15日 | 周五 | 886 | LEAPS |
- Rows × columns
- 24 × 5
- Period covered
- to
- Computed
- Completeness
- No missing values
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
expiry |
date | 2026-07-15 to 2028-12-15 | |
expiry_zh |
text | 24 distinct values (2026年10月16日, 2026年11月20日, 2026年12月18日…) | |
dow |
text | 4 distinct values (周一, 周三, 周五…) | |
dte |
number | 2 to 886 | |
cycle |
text | 3 distinct values (LEAPS, 周期权, 月期权) |
Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.
Run it yourself
This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.
SELECT
toString(toDate(expiration_date)) AS expiry,
concat(toString(toYear(toDate(expiration_date))), '年',
toString(toMonth(toDate(expiration_date))), '月',
toString(toDayOfMonth(toDate(expiration_date))), '日') AS expiry_zh,
arrayElement(['周一', '周二', '周三', '周四', '周五', '周六', '周日'],
toDayOfWeek(toDate(expiration_date))) AS dow,
min(days_to_expiry) AS dte,
multiIf(min(days_to_expiry) > 365, 'LEAPS',
toDayOfWeek(toDate(expiration_date)) = 5
AND toDayOfMonth(toDate(expiration_date)) BETWEEN 15 AND 21, '月期权',
toDayOfWeek(toDate(expiration_date)) = 4
AND toDayOfMonth(toDate(expiration_date)) BETWEEN 14 AND 20, '月期权',
'周期权') AS cycle
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND toDate(date) = toDate('2026-07-13')
AND volume > 0
GROUP BY expiration_date
ORDER BY expiration_date
在你的 AI 助手中使用这些数据
打开即可查询,已带上本页数据。免费,无需账号。