期权交易成本是多少
期权佣金可能为零,但买卖价差是真实成本。查看 SPY, QQQ, IWM, GLD 和 TSLA 期权的基点成本。
Commissions on listed options are zero at most brokerages, but every marketable options order still pays the bid-ask spread — the gap between the best price a buyer will pay and the best price a seller will accept. Options usually trade at far lower dollar prices than the stock they reference, so the same cents-wide gap is a much larger share of the trade. On 2026-07-02, SPY options (every 2026-expiry contract) quoted a median spread of 80.97 basis points during regular hours, while SPY stock itself quoted 0.27 bps — a gap of roughly 299.9×. Every figure below is measured from the consolidated options quote and trade tapes, with the exact SQL behind each number attached.
为什么期权价差与股票价差看起来不同
假设某股票的买入价为 $745.00,卖出价为 $745.02。两美分的价差约为股价的 0.27 bps。同一只股票的平值看涨期权报价可能为 $7.20 买入 / $7.30 卖出——即 10 美分的价差。相对于 $7.25 的中值,这大约是 138 bps。期权的绝对价差金额更高,但若按实际支付价格的比例计算,其价差要宽出数百倍。这是由于期权单价较低导致的:10 美分虽然绝对金额很小,但占 $7.25 合约价格的比例却很高。
在不同金融工具之间比较成本时,专业的计量单位是基点 (bp)——即万分之一(0.01%)。标准期权合约涵盖 100 股标的股票,因此交易的美元金额随标的资产规模而变化,但价差是相对于期权自身的报价来衡量的。本页面全文均使用该单位。
SPY 期权与 SPY 股票:对比分析
SPY 是美国流动性最强的期权产品,但其成本差异依然巨大。下表对比了 SPY 期权与 SPY 股票在同一交易时段的表现:包括报价流量、成交笔数以及各自的报价中值价差。
每个数字背后的完整 SQL
WITH
opt_q AS (
SELECT
count() AS opt_updates,
quantileDeterministic(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2), cityHash64(ticker, sip_timestamp)) AS opt_median_spread_ratio
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
),
stock_q AS (
SELECT
count() AS stock_updates,
quantileDeterministic(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2), cityHash64(ticker, sip_timestamp)) AS stock_median_spread_ratio
FROM global_markets.cache_stocks_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker = 'SPY'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
),
opt_t AS (
SELECT count() AS opt_trades FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
),
stock_close AS (
SELECT round(argMax(toFloat64(close), window_start), 2) AS spy_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-07-02 13:30:00' AND window_start < '2026-07-02 20:00:00'
)
SELECT
'2026-07-02' AS session_date,
opt_q.opt_updates AS spy_opt_updates,
stock_q.stock_updates AS spy_stock_updates,
round(opt_q.opt_updates / stock_q.stock_updates, 1) AS opt_to_stock_update_ratio,
opt_t.opt_trades AS spy_opt_trades,
round(opt_q.opt_updates / opt_t.opt_trades, 1) AS quotes_per_trade,
round(opt_q.opt_median_spread_ratio * 10000, 2) AS spy_opt_median_spread_bps,
round(stock_q.stock_median_spread_ratio * 10000, 2) AS spy_stock_median_spread_bps,
round(opt_q.opt_median_spread_ratio / stock_q.stock_median_spread_ratio, 1) AS ratio_opt_to_stock_spread,
stock_close.spy_close AS spy_underlying_close
FROM opt_q CROSS JOIN stock_q CROSS JOIN opt_t CROSS JOIN stock_closeSPY 期权的中值价差为 80.97 bps。这意味着进行一次往返市价单(以卖价买入,随后以买价卖出)——相对于中值价格而言,其成本几乎等同于整个报价价差,即交易的每一侧各损失约一半的价差。相比之下,SPY 股票的同类往返交易成本约为 0.27 bps。报价流量从另一个维度反映了流动性状况:每成交一笔 SPY 期权,做市商就会发布 256.5 次 SPY 期权报价更新,对数千种行权价与到期日的组合进行逐笔重新定价。
SPY 期权价差分布:并非单一数值
中位数虽有参考价值,但个人交易者支付的价差取决于具体合约。临价(near-the-money)且临期(near-expiration)的 SPY 期权报价通常最窄;而虚值(far out-of-the-money)或远期合约的价差可能大得多。下表展示了本交易日内所有有效的 SPY 期权双向报价的完整分布情况。
每个数字背后的完整 SQL
WITH opts AS (
SELECT
(toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps,
cityHash64(ticker, sip_timestamp) AS det
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
)
SELECT
round(quantileDeterministic(0.10)(spread_bps, det), 2) AS p10_bps,
round(quantileDeterministic(0.25)(spread_bps, det), 2) AS p25_bps,
round(quantileDeterministic(0.50)(spread_bps, det), 2) AS median_bps,
round(quantileDeterministic(0.75)(spread_bps, det), 2) AS p75_bps,
round(quantileDeterministic(0.90)(spread_bps, det), 2) AS p90_bps,
count() AS valid_two_sided_quotes
FROM optsSPY 期权报价的中位数区间位于 49.65 bps 至 147.12 bps 之间。十分之一的报价窄于 35.51 bps,十分之一的报价宽于 316.51 bps。宽尾部分反映了流动性较低的行权价和远期到期日——这正是普通买家最容易遇到的合约类型。
热门产品的成本差异
SPY 是基准,但并非所有期权产品的报价价差都足够窄。下表衡量了五种热门期权标的的常规交易时段中值价差(以基点为单位),包括三种指数 ETF (SPY, QQQ, IWM)、一种黄金 ETF (GLD) 以及一只具有极高期权流动性的个股 (TSLA)。每个标的均已过滤至 2026 年到期的交易代码范围,以优化查询效率;行按字母顺序排列,确保各产品位置固定。
每个数字背后的完整 SQL
SELECT
root,
round(count() / 1e6, 1) AS quote_updates_millions,
round(quantileDeterministic(0.5)(spread_bps, det), 2) AS median_spread_bps,
round(quantileDeterministic(0.5)(width_cents, det), 2) AS median_width_cents
FROM (
SELECT 'SPY' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
UNION ALL
SELECT 'QQQ' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:QQQ26' AND ticker < 'O:QQQ27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
UNION ALL
SELECT 'IWM' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:IWM26' AND ticker < 'O:IWM27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
UNION ALL
SELECT 'GLD' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:GLD26' AND ticker < 'O:GLD27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
UNION ALL
SELECT 'TSLA' AS root, (toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000 AS spread_bps, (toFloat64(ask_price) - toFloat64(bid_price)) * 100 AS width_cents, cityHash64(ticker, sip_timestamp) AS det
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:TSLA26' AND ticker < 'O:TSLA27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
)
GROUP BY root
ORDER BY root ASC指数 ETF 的成本最低:SPY 的中值价差为 80.97 bps,QQQ 为 123.71 bps,IWM 为 130.72 bps。成本最高的是 TSLA 期权,报价为 309.93 bps,GLD 期权为 786.75 bps —— 两者属于完全不同的成本区间。报价更新量(单位:百万)反映了另一层逻辑:报价最频繁的产品,其价差通常也最窄。
0DTE 与周权效应:期限越短,价差越大
剩余时间较短的合约,其美元价格通常较低。即使美分差额保持不变,基点(bps)价差也会随之机械性上升。下表按到期日对 SPY 平值期权报价(行权价 730–760)进行了分组——涵盖本交易日内至少出现过一百万次报价更新的所有 2026 年到期合约,并按日期顺序排列。
每个数字背后的完整 SQL
WITH opts AS (
SELECT
toFloat64(ask_price) - toFloat64(bid_price) AS width,
(toFloat64(ask_price) + toFloat64(bid_price)) / 2 AS mid,
substring(ticker, -15, 6) AS expiry_code,
toUInt32OrZero(substring(ticker, -8)) / 1000 AS strike,
cityHash64(ticker, sip_timestamp) AS det
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
AND bid_price > 0 AND ask_price > 0 AND ask_price > bid_price
AND strike BETWEEN 730 AND 760
)
SELECT
expiry_code,
round(count() / 1e6, 1) AS quote_updates_millions,
round(quantileDeterministic(0.5)(width / mid * 10000, det), 2) AS median_spread_bps,
round(quantileDeterministic(0.5)(width * 100, det), 2) AS median_width_cents
FROM opts
GROUP BY expiry_code
HAVING count() >= 1000000
ORDER BY expiry_code ASC当日到期合约(到期代码 260702,即 0DTE)的中位价差为 113.64 bps,而其中位美分差仅为 2。对比之下,到期日最长的合约 261231 的美分价差较宽(11),但基点价差明显更窄,仅为 37.16 bps。这是期权交易成本的核心逻辑:当期权本身价格仅为几美元时,一两美分的价差并不一定意味着成本低廉。什么是 0DTE 期权 解释了当日到期合约的运作机制。
交易规模数据揭示了成本承担者
期权交易以合约为单位,标准合约涵盖 100 股。2026-07-02 的期权成交中位数仅为 1 合约;即使是第 90 百分位数的成交量也仅为 10 合约。大多数期权交易规模较小,散户交易者受报价价差的影响最大——大型机构订单通常可以通过议价获得更优价格,或通过分批下单来降低成本。
每个数字背后的完整 SQL
WITH trades AS (
SELECT toFloat64(size) AS size FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
)
SELECT
round(quantileExact(0.50)(size), 0) AS median_contracts,
round(quantileExact(0.90)(size), 0) AS p90_contracts,
round(avg(size), 1) AS avg_contracts,
count() AS total_prints
FROM trades常见问题
期权交易成本是否比股票更高?
通常是的,若按交易价格的比例计算。像 SPY 这样流动性极高的 ETF,其股票本身的报价价差远低于 1 个基点;而同一标的的期权价差通常高达数十个基点。虽然具体金额取决于期权价格和合约数量,但价差占期权价值的百分比几乎总是高于股票。
为什么 0DTE 期权的基点价差如此之大?
当日到期和周到期期权在临近到期时,单价通常很低(有时低于 1.00 美元)。对于 0.50 美元的期权,1 到 2 美分的价差即占价格的 2%–4%,即 200–400 个基点。虽然美分看起来很少,但百分比成本很高。因此,交易者通常比较基点而非美分。
佣金是否比价差更重要?
对于单手零售交易,价差通常是主要成本。以 1.00 美元 / 1.05 美元的报价为例,在计入任何佣金前,单手合约(每手 100 股)的完整往返成本为 5.00 美元。对于低价或宽价差产品,仅价差成本就可能超过任何合理的佣金。
我可以通过使用限价单来避免价差吗?
在价差区间内下达限价单可能以低于全额价差的价格成交,但无法保证成交。市价单的定义即支付价差。价差是为即时成交支付的成本,而非经纪商收取的费用。
哪些期权产品的价差最窄?
根据本页的统计数据,大型指数 ETF(SPY、QQQ、IWM)的中位数价差最窄,且报价交易量最大。商品 ETF (GLD) 和个股期权的价差可能宽得多。价差因合约而异——即使标的相同,不同的行权价和到期日也会导致价差不同——因此单一的中位数数值掩盖了巨大的差异。
数据说明
所有时间戳均以 UTC 存储;2026 年 7 月 2 日的常规交易时段已过滤为 sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00' (美东时间上午 9:30–下午 4:00)。价差统计仅使用有效的双向报价 (bid_price > 0, ask_price > 0, ask_price > bid_price);在除法运算前,将 Decimal 价格转换为 Float64;并使用确定性中位数估计器 (quantileDeterministic,通过代码和时间戳的哈希值进行键值化),以确保重新生成时结果一致。下文的普查统计了该窗口内所有的 SPY 期权记录,并展示了有效双向报价在原始数据流中所占的比例。
报价质量普查与完整方法论
每个数字背后的完整 SQL
WITH opts AS (
SELECT
bid_price,
ask_price
FROM global_markets.cache_options_quotes
WHERE sip_timestamp >= '2026-07-02 13:30:00' AND sip_timestamp < '2026-07-02 20:00:00'
AND ticker >= 'O:SPY26' AND ticker < 'O:SPY27'
)
SELECT
count() AS total_updates,
countIf(bid_price > 0 AND ask_price > 0 AND ask_price > bid_price) AS valid_two_sided,
round(100.0 * countIf(bid_price > 0 AND ask_price > 0 AND ask_price > bid_price) / count(), 2) AS valid_pct,
countIf(bid_price = 0 OR ask_price = 0) AS one_sided,
round(100.0 * countIf(bid_price = 0 OR ask_price = 0) / count(), 2) AS one_sided_pct,
countIf(bid_price > 0 AND ask_price > 0 AND ask_price <= bid_price) AS locked_or_crossed,
round(100.0 * countIf(bid_price > 0 AND ask_price > 0 AND ask_price <= bid_price) / count(), 2) AS locked_or_crossed_pct
FROM opts该交易时段内,超过 99.94% 的 SPY 期权报价记录为有效的双向报价;单向报价占数据流的 0.06%,锁定或交叉报价的比例可以忽略不计。上述所有价差数值均基于有效的双向报价子集计算得出——即交易者在 NBBO 中实际可以观察到的成本。
- 市场数据源:整合的 OPRA 式期权报价行情 (
global_markets.cache_options_quotes)、相应的股票报价行情,以及整合的期权成交行情 (global_markets.options_trades;成交量面板刻意覆盖了整个行情,而非仅限 SPY)。 - OCC 代码格式:
O:+ 根代码 + 六位到期日 (YYMMDD) +C/P+ 七位行权价 ×1000。0DTE 面板通过代码解析到期日和行权价;价差计算将看涨和看跌期权合并计算。每个根代码的过滤范围涵盖其 2026 年到期范围 (O:SPY26..O:SPY27及同类),从而通过 (ticker, sip_timestamp) 索引对每次扫描进行精简。 - 价差定义:仅针对有效的双向报价,单位为基点 (
(ask − bid) / midpoint × 10,000)。 - 中位数与百分位数:基于
cityHash64(ticker, sip_timestamp)键值化的quantileDeterministic蓄水池估计器——占用固定内存,且每次重新生成的结果均一致。 - 标的收盘价:来自
delayed_stocks_minute_aggs的最后一个常规交易时段分钟线。 - 交易时段窗口:UTC 时间 13:30–20:00,通过观察到的 SPY 分钟线进行校验,而非基于日历计算。
- 固定时段:2026 年 7 月 2 日——这是一个完整的交易日,在撰写本文时(2026 年 7 月 9 日),该数据已完全通过仓库的 ~1–2 天入库延迟。日期是固定的,因此重新生成会产生相同的结果。
想了解特定合约的成本吗?上述每个面板都是已存储的查询——您可以在 Strasmore 终端上运行它们或您自己的变体。欲了解更多机制细节,请参阅 股票交易成本、什么是买卖价差、0DTE 期权、期权报价数据流规模 以及 期权成交量与持仓量。