期货上的 GEX:把 SPX 水平映射到 ES 与 NQ

你看到的公开 gamma 敞口水平,是在期权标的上算出来的——SPX、SPY、NDX 或 QQQ——而不是在你真正交易的 ES 或 NQ 合约上。因此,在期货上使用 GEX 的第一步是转换:把一个建模水平搬到 ES 或 NQ 上,并清楚知道哪些假设会跟着一起搬过来。

Senzoukria · 学习 · 更新于 2026 年 9 月


如果你已经知道 gamma 敞口衡量什么、又是怎么算出来的,那么在它落到期货图表之前,通常还缺一步。计算发生在期权标的上;你屏幕上的合约是另一个工具, 价格不同,最小变动价位也是它自己的。这一页讲的就是中间这道缝隙——转换——以及它的代价。

公开的 gamma 水平算在期权标的上,而不是期货合约上

gamma 敞口从期权链推导而来,所以它只存在于有期权的地方。流传中的 GEX 数字背后是指数与 ETF 期权链:标普 500 指数(SPX)、SPY ETF、纳斯达克 100 指数(NDX)或 QQQ ETF。gamma 本身是标的移动时期权 delta 的变化速度—— Options Industry Council 对这一希腊字母的说明——而敞口数字则用假设的持仓对它做了放大。

E-mini 标普 500(ES)与 E-mini 纳斯达克 100(NQ)期货并不是这些期权链的标的。CME 另有挂在期货本身上的期权,但人们引用的 GEX 水平并非由它们构建:它们来自指数与 ETF 期权链,而 ES 和 NQ 跟踪同样的指数,常常充当对冲工具。所以当一个看板在 ES 图上画出一道看涨墙时,一次映射已经发生了,不论它有没有被说明。诚实的读法是:一个在 SPX 上建模、按明示换算以 ES 口径表达的水平

把 SPX 或 SPY 的水平映射到 ES:基差

从指数点位换算到期货价格,靠的就是基差:同一瞬间期货价格与现货指数之间的差额, 它反映融资成本减去预期股息,并在到期时收敛到零。实际做法:

  1. 在水平自己的标的上读取这个建模值,连同单位和时间戳。
  2. 如果水平来自 SPY,先换算成指数口径。SPY 以指数点位的一个比例跟踪标普 500,但这个比例并非固定常数——它会随分红与跟踪误差漂移。请用两个实时报价去测量它, 不要把除数写死在代码里。
  3. 用同一时刻的期货实时报价与指数实时数值测量基差。
  4. 把基差加到指数点位上,然后取整到合约的最小变动价位。

有三个假设一路跟着,而且每一个都可能单独失效。第一,基差不是常数:它随利率与股息预期变动,并在季度换月时跳变——前月合约一换,同一个指数点位突然对应另一个期货价格。 第二,SPX 期权与 SPY 期权不是同一种工具——一个按指数现金交割,另一个可行权为 ETF 份额——所以两条链承载的持仓不同,不能互相替代作为输入。 第三,取整是破坏性的:取整到最小变动价位的价格,已经丢掉了映射中不足一跳的部分。

实际后果是:映射到 ES 的 gamma 水平是一条带,其宽度由你的基差不确定性加上一个最小变动价位决定,而不是一个价格。把它画成带,并说清楚带有多宽。

NQ 的 gamma 水平:NDX、QQQ 与另一种取整误差

同样的做法适用于纳斯达克 100,但有两点差别值得讲明。标的是 NDX,若用 ETF 链则是 QQQ,而指数与 ETF 的关系是这一对特有的——在这里沿用标普的比例根本就是错的。而且由于纳斯达克 100 的指数点位远高于标普 500,一美分的 ETF 对应更多的指数点,所以由 QQQ 推出的水平,分辨率比同一水平由 NDX 推出时更粗。

合约那一侧也不同。ES 的最小变动价位是 0.25 点,乘数为 50,因此一跳是 12.50 美元;NQ 的最小变动价位同样是 0.25 点,乘数为 20,所以一跳是 5.00 美元。这些数字来自 CME 的合约规格——在决定任何仓位大小之前请到那里去看,因为交易所有权更改它们。最小变动价位不改变映射, 但当止损只隔两跳时,它决定了一个映射错误要付多少代价。

gamma 水平在哪里计算,以及要跨过什么才能到达期货
所交易的合约期权标的需要跨越的步骤主要误差来源
ES(E-mini 标普 500)SPX指数 → 期货基差,再取整到最小变动价位基差漂移与季度换月
ESSPYETF → 指数比例,再基差,再取整到最小变动价位两次换算叠加;不同的期权链,不同的持仓
NQ(E-mini 纳斯达克 100)NDX指数 → 期货基差,再取整到最小变动价位基差漂移与季度换月
NQQQQETF → 指数比例,再基差,再取整到最小变动价位分辨率粗:一美分的 ETF 跨越好几个指数点

一个建模水平对成交意味着什么,又不意味着什么

gamma 水平不是期货订单簿里的一张委托。 它是把模型套用在期权链上、并加了持仓假设之后的输出。没有任何挂单因为它而停在那个价格上, 价格到达时也没有任何事情非发生不可。

这个水平能正当做到的,是告诉你该盯哪里。它做不到的是:

  • 它不显示挂着的量。展示出来的流动性由 DOM 阶梯 流动性热力图显示,数据来自期货订单簿本身。
  • 它无法把一笔成交认定为对冲。 墙附近的一笔大单,就只是墙附近的一笔大单。footprint 记录主动性与价格反应;它无法把一笔交易归到某个做市商头上。
  • 它不带方向。正如 gamma 墙指南 零 gamma 翻转都写明的,对冲这套说法取决于持仓、到期范围与波动率——而且其他资金流可以把它盖过去。

可用的流程很窄:在价格到达之前先标出映射好的带,然后在 footprint 上读那里究竟发生了什么——成交量、失衡、价格是停住还是穿过去。水平提出一个位置;盘口成交明细才是证据。

决定这个水平是否可用的时间戳

一个 gamma 水平会继承它最差那项输入的年龄。 有三个时钟要紧,而它们很少是同一个时钟。

任何映射水平旁边都该记下的三个时间戳
输入项要检查什么会导致的失误
未平仓合约通常是收盘数据,而非实时数据盘中持仓变化看不见;这个水平描述的是昨天
期权报价实时还是延迟,延迟多少用过期价格算出的 gamma;延迟的期权链被当成实时呈现
基差测量期货与指数的报价是什么时候一起读的基差一动,映射价格就悄悄漂移

当日到期只会让这件事更尖锐,而不是变成另一回事。当期权链中很大一部分在盘中到期时, 敞口结构变化最快的时刻,恰恰是未平仓合约那一列最不新鲜的时刻。这是把那些水平当作临时值、 并写下时间戳的理由,而不是把它们丢掉的理由。

一个用模拟数据走完的映射示例

下面的数字是为演示而编的。 它们不是市场数据,不是录制的交易时段,也不是建议;它们存在只是为了把算术摆明。

  1. 在 SPX 期权链上,一道看涨墙建模在指数点位 5,000.00,而该链的未平仓合约列日期为前一收盘。
  2. 读取的那一刻,近月期货报 5,012.75,现货指数打出 5,002.00:测得的基差为 +10.75 点。
  3. 映射水平 = 5,000.00 + 10.75 = 5,010.75,正好落在 0.25 的最小变动价位上。
  4. 基差不确定性写明为 ±1.00 点,因此这个水平画成从 5,009.75 到 5,011.75 的一条带,而不是一条线。
  5. 这条带连同三个时间戳一起记录下来,并在盘口成交明细上观察,事先不承诺任何操作。

注意这个示例没有产出什么:没有入场、没有目标、没有预期结果。它产出的是一条带和一组时间戳。

在依赖一次映射之前先检验它

  1. 把换算来回走一遍。 取映射出的期货价格,减去你用过的基差,确认能回到公开的指数点位。如果一个看板说不出它那条线是由哪个标的、 哪个基差算出来的,你就做不了这个测试——而这件事本身就是结论。
  2. 在整个交易时段中重新测量基差。 开盘、盘中、收盘前各读一次,换月之后再读一次。这几次读数的离散程度就是你那条带的宽度; 如果它比你的止损还宽,这个水平对你原本打算的用法来说就不够精确。
  3. 统计失败,而不只是反应。 按事先写好的规则,记录价格触及该带的每一个交易时段,包括什么都没发生的那些。 期货回测清单讲了成本与按时间顺序的验证。

Senzoukria 是怎么呈现的

Senzoukria 是一款原生 Windows 桌面应用,macOS 与 Linux 版本处于 beta。GEX 工作区按行权价呈现 gamma、看涨与看跌的集中度、零 gamma 水平,以及 VEX、CEX 和 DEX 视图,每一个都标出其背后期权链的新鲜度。这里有两点要紧:

  • GEX 视图以期权数据源为前提。它们从你自行配置的供应商读取期权链—— Tradier、Alpaca(延迟)、Market Data 或 Databento——而这个数据源与图表和盘口成交明细所用的期货连接是分开的(Rithmic,或用 Databento 取 CME 数据)。行情权限与费用属于那些供应商,与软件订阅相互独立。
  • 没有任何订单会由一个水平发出。 一条映射带只是画出来的参考。自动执行只存在于由人明确武装的自动驾驶中,而它从不会因为一次 gamma 读数而被武装。

在期货这一侧,同一个窗口里有 bid × ask 的 footprint、流动性热力图和 DOM,观察真正发生的地方就在这里——参见 带 GEX 视图的 footprint 软件,了解两者如何共处于同一个工作区。网站上的公开演示运行在生成数据上。价格为 首月 9 美元,之后 29 美元,不包含任何行情数据订阅。

常见错误

  • 把指数点位当成期货价格。因为模型在 SPX 上说 5,000 就在 ES 上画 5,000,这漏掉了基差——那是系统性偏移,不是噪音。
  • 把 ETF 除数写死。SPY–SPX 与 QQQ–NDX 的比例会漂移;从论坛帖子里抄来的常数会悄悄变旧,而且从不声张。
  • 忘了换月。换月当天基差会变,之前映射过的每一个水平在重新映射之前都是错的。
  • 混用期权链。由 SPX 推出的水平和由 SPY 推出的水平是两种不同的测量,不应当求平均,也不应当当成同一回事叠在一起。
  • 未平仓合约不是实时的,却把水平叫作实时。标签必须对应最差的那项输入,而不是最好的那项。

要点:流传中的 gamma 水平算在 SPX、SPY、NDX 或 QQQ 上,要到达 ES 或 NQ 需要经过一次你应当写得出来的换算——基差、必要时的 ETF 比例、最小变动价位取整,以及每一项输入的时间戳。把带和它的宽度说清楚,然后让 footprint 和订单簿去决定那里会发生什么。

常见问题

可以直接在 ES 或 NQ 期货上计算 GEX 吗?
不能从期货合约本身计算:gamma 敞口是从期权链推导出来的。CME 确实挂牌了 ES 和 NQ 期货的期权,但公开流传的 GEX 水平是用指数与 ETF 期权链构建的——标普 500 指数、SPY ETF、纳斯达克 100 指数或 QQQ ETF。因此,画在 ES 或 NQ 图上的水平,已经从其中一个标的转换过来,而这个换算方式你应当说得出来。
如何把 SPX 的 gamma 水平换算成 ES 价格?
加上期货基差:同一时刻期货价格与现货指数之间的差额,它反映融资成本减去预期股息,并随到期临近而收敛。用实时报价测量基差,不要假设一个固定偏移量,然后把结果取整到合约的最小变动价位。映射出来的价格,只能和它背后那次基差测量一样新。
NQ 的 gamma 水平和 ES 的做法一样吗?
方法对 ES 和 NQ 是一样的,算术却不同。NQ 跟踪纳斯达克 100,所以它的水平来自 NDX 或 QQQ,指数与 ETF 的比例也不同于标普 500 的情形。由于纳斯达克 100 的指数点位高得多,一美分的 ETF 对应更多的指数点,因此由 QQQ 推出的水平分辨率更粗。
gamma 水平能说明期货上挂单停在哪里吗?
不能。gamma 水平是根据期权链和持仓假设建模出来的数值,它不是期货订单簿里的一张委托。挂着的量由 DOM 阶梯和流动性热力图显示,已成交的主动性则由 footprint 显示。把 gamma 水平当作一个值得盯的位置,再用盘口成交明细去看那里究竟发生了什么。
在期货上做 GEX 需要哪些数据?
两样彼此独立的东西:给图表和成交明细用的期货连接,以及给 gamma 模型用的期权链。它们是不同的数据源,权限不同,多数情况下费用也不同。只有期货数据流无法产生 gamma 敞口,这正是 GEX 视图必须先配置期权数据源的原因。
期权链陈旧到什么程度,水平就不再可用?
没有通用门槛,但由两个时间戳决定:未平仓合约那一列的时间,通常是收盘数据而非实时数据;以及用于计算 gamma 的报价延迟。把两者都记在你依赖的任何水平旁边。一个声称实时、却建立在昨日未平仓合约上的水平,是标注错误,而不只是慢了一点。