3. 库存风险管理:库存的Gamma与Vega暴露、库存对冲策略、库存生命周期管理
做市商这行,说白了就是跟库存打交道。你报出去的价格,本质上是在给手里的库存定价。库存管不好,策略再牛也白搭。我见过太多团队,策略回测曲线漂亮得不行,一上线就被库存风险拖垮了。
库存风险不只是价格涨跌那么简单。你想想看,你手里攒了一堆期权,价格波动率一变,或者标的物价格稍微动一动,你的库存价值可能就剧烈波动。这就是我们今天要聊的核心——Gamma和Vega暴露。
核心观点:库存风险管理不是事后补救,而是贯穿报价、成交、平仓全流程的主动管理行为。
3.1 库存的Gamma与Vega暴露
先说说Gamma。Gamma衡量的是Delta对标的物价格的敏感度。你手里有期权库存,Delta会随着价格变化而变化。Gamma越大,Delta变得越快,你的库存就越难管理。
举个例子。你卖出了一堆平值看涨期权,Gamma是负的。标的物价格突然上涨,你的Delta从0变成了-0.3,意味着你开始做空标的物。价格越涨,你空头敞口越大——这就是负Gamma的典型特征。
我在项目中遇到过这样的情况:某次做市商大赛,有个团队在波动率飙升时大量卖出期权,赚了不少权利金。结果行情反转,标的物价格连续跳空,他们的Gamma暴露直接导致Delta对冲失效,一天亏掉了之前三天的利润。
我的习惯:每天收盘前,我会计算整个库存的Gamma暴露,换算成标的物价格变动1%时,Delta会变化多少。如果这个数字超过我设定的阈值,第二天必须调整。
Vega呢?它衡量的是期权价格对隐含波动率的敏感度。做市商最怕的不是波动率本身,而是波动率的突变。你想想看,你刚报出去一堆期权,市场突然出了个大新闻,隐含波动率瞬间跳升5个点——你的库存价值可能直接蒸发。
Vega暴露的管理,我个人习惯用“波动率敞口限额”来控制。比如,我规定整个库存的Vega不能超过某个绝对值。超过这个值,要么平掉一些期权头寸,要么用其他波动率产品对冲。
| 风险类型 | 衡量指标 | 典型场景 | 我的处理方式 |
|---|---|---|---|
| Gamma暴露 | 价格变动1%时Delta变化量 | 标的物价格快速突破 | 设置Gamma限额,超标则调整 |
| Vega暴露 | 波动率变动1%时价值变化 | 突发事件导致波动率跳升 | 波动率敞口限额+对冲 |
3.2 库存对冲策略
对冲不是消灭风险,而是把风险控制在可接受的范围内。做市商的对冲策略,我总结下来就三种思路:
- Delta中性对冲——最基础的做法。每成交一笔,立刻用标的物期货或ETF对冲Delta。但这里有个坑:你只对冲了Delta,Gamma和Vega还在。
- Gamma Scalping——利用Gamma赚钱。你持有正Gamma的库存,价格波动越大,你通过不断调整Delta对冲赚到的钱就越多。但前提是,实际波动率要高于你买入期权时支付的隐含波动率。
- 波动率曲面对冲——针对Vega暴露。用不同期限、不同行权价的期权来对冲整个波动率曲面的风险。这个比较复杂,但效果最好。
我曾经犯过一个错误:只做Delta对冲,忽略了Vega。结果市场波动率结构发生变化,短期波动率飙升,长期波动率下降,我的库存两头亏。后来我学乖了,每次对冲前先看整个波动率曲面的形态。
避坑指南:我曾经在流动性差的合约上做Gamma Scalping,结果调整Delta时滑点太大,赚的Gamma收益全被滑点吃掉了。记住,Gamma Scalping的前提是——你能以合理的成本调整Delta。
具体到代码实现,一个简单的Delta对冲逻辑大概长这样:
def delta_hedge(position, spot_price, delta_exposure):
"""
简单的Delta对冲函数
position: 当前期权库存
spot_price: 标的物当前价格
delta_exposure: 当前总Delta
"""
target_delta = 0 # Delta中性目标
hedge_quantity = (target_delta - delta_exposure) / 1.0 # 期货Delta为1
# 检查对冲成本
if abs(hedge_quantity) > MIN_HEDGE_THRESHOLD:
# 执行对冲
execute_order(hedge_quantity, spot_price)
print(f"对冲完成,调整量:{hedge_quantity}")
else:
print("Delta在容忍范围内,暂不对冲")
嗯,这里要注意:实际生产中,你不会每次Delta偏离都去对冲。那样交易成本太高。我一般设置一个“对冲带”——Delta偏离在一定范围内就不动,超出范围才动手。
3.3 库存生命周期管理
库存是有生命的。从你成交那一刻开始,它就进入了生命周期。我把它分成四个阶段:
- 建仓期——刚成交,库存新鲜。这时候风险暴露最大,需要立刻评估Gamma和Vega,制定对冲计划。
- 持有期——库存已经在对冲保护下。这个阶段要持续监控,根据市场变化调整对冲策略。
- 衰减期——临近到期,时间价值快速衰减。对于期权库存,Theta会吃掉大量价值。这时候要决定是平仓还是展期。
- 平仓期——主动或被动平掉库存。平仓时机的选择直接影响最终损益。
我个人习惯用一张图来管理库存生命周期:
你看这张图,风险暴露在持有期其实是逐渐下降的——前提是你对冲做得好。但到了衰减期,如果库存是期权,Theta会加速侵蚀价值,风险反而可能上升。
库存生命周期管理,说白了就是回答三个问题:
- 现在库存处于哪个阶段?
- 这个阶段的主要风险是什么?
- 我该做什么动作来应对?
我见过不少做市商,只盯着建仓期,库存一建好就不管了。结果持有期市场变了,Gamma和Vega暴露失控,最后在衰减期被迫割肉。嗯,这就是典型的生命周期管理没做好。
一个小技巧:我每天开盘前会花5分钟,把库存按到期日排序,看看哪些库存即将进入衰减期。提前做好展期或平仓计划,而不是等到最后一刻才动手。
最后说一句:库存风险管理没有银弹。Gamma、Vega、Theta这些希腊字母,每一个都像一面镜子,照出你策略的薄弱环节。你能做的,就是理解它们,管理它们,然后在市场中活下去。
总结:库存风险管理的核心就三件事——算清楚Gamma和Vega有多大,用合适的工具对冲掉,然后按生命周期节奏主动管理。别等到风险爆发了才想起来对冲,那时候成本就高了。
公众号:蓝海资料掘金营,微信deep3321