3. 库存风险定义:库存的Delta、Gamma、Vega暴露,库存老化成本

做市商这行,说白了就是「赚流动性,扛风险」。

你报出双边价格,对手方吃掉你的单子,你手里就多了一堆库存。这堆库存不是钱,是风险。我见过不少新手,一上来就盯着手续费和点差算利润,结果库存砸手里,一波行情直接亏穿。

所以,咱们得先把库存风险定义清楚。我个人习惯把它拆成两大部分:希腊字母暴露库存老化成本

3.1 库存的Delta暴露

Delta,最直观的风险。它衡量的是:标的资产价格每变动1块钱,你的库存价值变动多少。

举个例子,你手里有100张BTC永续合约的多单,Delta大约是+100。BTC涨100刀,你赚1万刀。跌100刀,你亏1万刀。这就是方向性风险。

做市商的核心目标之一,就是让库存的Delta尽量接近0。为什么?因为你赚的是买卖价差,不是赌方向。我早期做期权做市时,有一次方向判断失误,Delta敞口没及时对冲,结果一个跳空低开,账户回撤了5%。嗯,从那以后,我每天收盘前必做Delta扫描。

Delta暴露计算公式:
库存Delta = Σ (持仓数量 × 合约Delta)
对于现货或永续合约,Delta ≈ 1(或-1)。
对于期权,Delta在0到1之间(看涨)或-1到0之间(看跌)。

你想想看,如果库存Delta是+500,意味着大盘涨1%,你赚5%。这已经不是在赚做市的钱了,这是在赌方向。所以,Delta对冲是做市商的第一道防线

3.2 库存的Gamma暴露

Gamma比Delta更隐蔽,也更危险。它衡量的是:Delta本身的变化速度。

说白了,Gamma就是Delta的加速度。Gamma高的时候,行情一动,你的Delta就剧烈变化,对冲根本来不及。

我记得在2020年3月那次市场暴跌中,很多期权做市商的Gamma暴露非常大。行情每跌一点,Delta就变得更负,逼着你不断卖出对冲,形成恶性循环。这就是著名的「Gamma squeeze」的雏形。

Gamma风险的核心特征:
  • Gamma为正:行情上涨时Delta变大(更看多),行情下跌时Delta变小(更看空)。这叫「追涨杀跌」,放大波动。
  • Gamma为负:行情上涨时Delta变小(更看空),行情下跌时Delta变大(更看多)。这叫「高抛低吸」,稳定波动。

做市商通常希望Gamma为负,因为这样能「越跌越买,越涨越卖」,赚波动率的钱。但负Gamma也意味着,一旦行情剧烈单边,你会亏得很惨。

怎么量化?

# 计算库存Gamma暴露
def calc_gamma_exposure(positions, greeks):
    """
    positions: 持仓列表,每个元素是 (合约, 数量)
    greeks: 每个合约的希腊字母字典
    """
    total_gamma = 0.0
    for contract, qty in positions:
        gamma = greeks[contract]['gamma']
        total_gamma += gamma * qty
    return total_gamma

# 示例:假设你持有100张平值看涨期权,Gamma=0.05
# 库存Gamma = 0.05 * 100 = 5
# 这意味着标的每涨1块,你的Delta会增加5个单位

Gamma暴露越大,你越需要高频对冲。我个人习惯,如果库存Gamma绝对值超过某个阈值(比如总名义本金的0.5%),我会启动自动对冲程序。

3.3 库存的Vega暴露

Vega,很多人容易忽略。它衡量的是:隐含波动率每变动1%,你的库存价值变动多少。

做市商手里通常有大量期权库存。隐含波动率一变,你的持仓价值就跟着变。Vega暴露大,意味着你其实在赌波动率的方向。

我见过一个案例:某做市商在波动率低位时大量卖出期权,赚了不少权利金。结果市场突发黑天鹅,波动率瞬间飙升,他的Vega暴露让他一天亏掉了之前三个月的利润。

Vega管理小技巧:
  • 如果库存Vega为正(比如持有看涨期权多头),波动率上升对你有利。
  • 如果库存Vega为负(比如卖出期权),波动率上升对你不利。
  • 做市商通常希望Vega中性,或者略微偏负(赚波动率回归的钱)。

量化一下:

# Vega暴露计算
vega_exposure = sum([position['vega'] * position['qty'] for position in inventory])
print(f"当前库存Vega暴露: {vega_exposure:.2f}")
# 如果vega_exposure = -500,意味着波动率升1%,你亏500刀

3.4 库存老化成本

这个是我自己特别看重的一个指标。很多量化模型只盯着希腊字母,却忽略了时间维度上的成本。

库存老化成本,说白了就是:你手里的库存放得越久,隐性成本越高

为什么?

  • 资金成本:你持仓需要占用保证金或资金。如果是杠杆交易,还有隔夜利息。库存放一天,就多一天的资金占用。
  • 机会成本:同样的资金,如果用来做别的交易,可能赚更多。库存占着仓位,你就没法灵活调整。
  • Theta损耗:对于期权库存,时间价值每天都在流失。尤其是临近到期的期权,Theta损耗非常快。
  • 流动性风险:库存越老,说明你越难平仓。可能你挂的单子一直没成交,或者市场深度已经变了。
库存老化成本计算公式(简化版):
老化成本 = 持仓时间 × (资金费率 + 预期Theta损耗 + 流动性折价因子)

我在实际项目中,会给每个库存项打一个「老化标签」。比如:

库存年龄 老化系数 操作建议
< 1小时 0.0 正常持有
1-4小时 0.1 开始关注,准备对冲
4-12小时 0.3 强制减仓或对冲
> 12小时 0.5 立即处理,不惜成本

你想想看,如果一个库存放了12小时还没处理掉,说明你的定价或者对冲策略肯定有问题。我曾经因为一个系统bug,导致一笔库存挂了整整两天,最后平仓时亏损了3%——这本来是可以避免的。

3.5 知识体系总览

下面这张图,是我自己梳理的库存风险框架。你可以把它当成一个检查清单,每次做市前扫一眼。

库存风险定义框架 库存风险 希腊字母暴露 库存老化成本 Delta暴露 Gamma暴露 Vega暴露 资金成本 机会成本 Theta损耗 核心目标:Delta中性 + Gamma负 + Vega中性 + 低老化 实时监控,动态调整,避免单边暴露

实战建议:不要试图同时管理所有风险。我的做法是:先管好Delta,再管Gamma,最后管Vega。老化成本作为辅助指标,用来决定是否「强制平仓」。优先级搞清楚了,系统才不会乱。

嗯,库存风险的定义,说白了就是这三块:希腊字母暴露(方向、曲率、波动率)加上时间维度上的老化成本。你把这些量化清楚了,做市策略就有了根基。下一层,我们就要聊怎么用这些指标去构建对冲策略了。


公众号:蓝海资料掘金营,微信deep3321