格式
以 O:AAPL261023C00345000 为例,它表示 AAPL 在 2026 年 10 月 23 日到期、行权价 345 美元的看涨期权:
| 部分 | 示例 | 含义 |
|---|---|---|
| 前缀 | O: | 表示这是期权代码,用来和股票代码区分 |
| 标的 | AAPL | 标的股票或 ETF 的代码 |
| 到期日 | 261023 | 年月日各两位(YYMMDD),即 2026-10-23 |
| 类型 | C | C = 看涨(call),P = 看跌(put) |
| 行权价 | 00345000 | 行权价 × 1000,左边补 0 到 8 位,即 345.000 |
去掉 O: 前缀后,剩下的部分就是美国期权清算公司(OCC)的标准期权代码,券商和各数据商普遍使用。
行权价带小数怎么写
行权价乘以 1000 后取整,所以小数也能表示:
- 322.5 →
00322500,如O:AAPL261021P00322500 - 600 →
00600000,如O:QQQ261016C00600000 - 7.5 →
00007500
用 Python 拼接和解析
import re
from datetime import date
def build_option_symbol(underlying, expiration, contract_type, strike):
"""build_option_symbol("AAPL", date(2026, 10, 23), "call", 345) -> "O:AAPL261023C00345000" """
cp = "C" if contract_type.lower() in ("c", "call") else "P"
return f"O:{underlying.upper()}{expiration:%y%m%d}{cp}{round(strike * 1000):08d}"
PATTERN = re.compile(r"^O:([A-Z0-9.]+?)(\d{6})([CP])(\d{8})$")
def parse_option_symbol(symbol):
"""把期权代码拆回 (标的, 到期日, 类型, 行权价)。"""
m = PATTERN.match(symbol)
if not m:
raise ValueError(f"不是有效的期权代码: {symbol}")
underlying, yymmdd, cp, strike = m.groups()
expiration = date(2000 + int(yymmdd[:2]), int(yymmdd[2:4]), int(yymmdd[4:]))
return underlying, expiration, "call" if cp == "C" else "put", int(strike) / 1000
print(build_option_symbol("AAPL", date(2026, 10, 21), "put", 322.5)) # O:AAPL261021P00322500
print(parse_option_symbol("O:QQQ261016C00600000")) # ('QQQ', datetime.date(2026, 10, 16), 'call', 600.0)
在 API 里怎么用
期权代码可以直接放进接口路径:
- 合约详情:
/v3/reference/options/contracts/O:AAPL261023C00345000 - 单个合约快照:
/v3/snapshot/options/AAPL/O:AAPL261023C00345000 - K线:
/v2/aggs/ticker/O:AAPL261023C00345000/range/1/day/2026-10-01/2026-10-16 - 逐笔成交、报价:
/v3/trades/O:AAPL261023C00345000、/v3/quotes/O:AAPL261023C00345000
代码里的冒号可以直接写,也可以编码成 %3A。
注意
- 不确定合约存不存在,先用合约列表接口
/v3/reference/options/contracts按标的、到期日、行权价区间查,再用返回的ticker,不要凭空拼。不是每个行权价、每个日期都有合约。 - 查已到期的合约,合约列表接口要加
expired=true。 - 公司行为调整过的合约:遇到拆股、特殊分红等情况,少数调整过的合约,代码里的标的部分可能和股票代码不完全一样。以合约列表接口返回的
ticker为准。
相关阅读
开始使用:注册账号后用兑换码激活,API Key 立即生成;股票入门版 ¥39 起,期权套餐 ¥99 起,人民币付款。查看套餐 →