4. 库存管理基础:库存风险的定义与度量
做市商这行,说白了就是赚买卖价差的辛苦钱。但很多人只看到我们每天吃盘口,没看到背后扛着的库存风险。我刚开始做市那会儿,就吃过一次大亏——库存方向没控制好,一波行情下来,把几个月的利润全吐回去了。嗯,从那以后,我对库存管理就特别上心。
4.1 库存风险的定义
库存风险,简单说就是你手里囤着的资产,价格朝不利方向变动带来的损失风险。你想想看,你作为做市商,在市场上同时挂买单和卖单。有人卖给你,你就多了库存;有人买你的,库存就减少。库存多了,价格一跌就亏钱;库存少了甚至空了,价格一涨就踏空。
我个人习惯把库存风险拆成两个维度来看:
- 方向性风险:库存净头寸暴露在价格波动中。比如你持有100个ETH,ETH跌了2%,你就亏了2%的库存价值。
- 基差风险:不同合约或不同交易所之间的价差变化。比如你在币安做市,同时在OKX对冲,两个所的价差突然拉大,你就可能两头亏。
核心观点:库存风险是做市商区别于普通交易员的核心特征。普通交易员主动选择方向,做市商是被动吃单,库存是被塞进来的。管理库存,就是管理这种「被动暴露」。
4.2 库存风险的度量方法
度量库存风险,不能光看数量,还得看波动率。我常用的几个指标:
| 指标 | 公式 | 说明 |
|---|---|---|
| 净头寸 | Net = Long - Short | 最直观,但忽略了波动率 |
| 风险价值(VaR) | VaR = σ × z × Net | 给定置信度下的最大可能亏损 |
| 库存周转率 | Turnover = Volume / Avg Inventory | 衡量库存消耗速度 |
| 库存成本 | Cost = Σ (买入价 - 当前价) × 数量 | 浮亏/浮盈的累计 |
我在项目中遇到过一个问题:只看净头寸,觉得库存不大,结果波动率突然飙升,VaR直接爆表。所以我现在习惯同时监控VaR和净头寸两个指标,缺一不可。
实战技巧:我建议把VaR的置信度设到99%,时间窗口用1小时。太短了噪音大,太长了反应迟钝。这个参数我调了不下50次才找到平衡点。
4.3 库存管理目标
库存管理不是要把库存降到零,那不现实。做市商的核心目标是:在控制风险的前提下,最大化做市收益。具体来说,有两个子目标:
4.3.1 中性化
中性化,就是让库存的净头寸尽量接近零。说白了,你不想赌方向,只想赚价差。怎么做?
- Delta中性:现货库存用期货或期权对冲,让整体Delta≈0
- Gamma中性:对期权做市商来说,还要管理Gamma,防止波动率突变
- 跨品种中性:比如做BTC做市,同时用ETH期货对冲相关性风险
我记得有一次,我管理的账户BTC库存偏多,但我不想直接卖现货(怕影响做市报价),就开了等量的BTC永续合约空单。结果第二天BTC跌了3%,现货亏了,但合约赚了,整体几乎没损失。这就是中性化的威力。
4.3.2 风险预算
风险预算,就是给库存风险设一个「天花板」。你不能让库存无限扩大,得有个上限。我常用的做法:
- 设定最大净头寸:比如总资金的5%
- 设定最大VaR:比如日VaR不超过当日预期收益的3倍
- 分层预警:达到预警线就启动再平衡,达到止损线就强制平仓
避坑指南:我曾经把风险预算设得太宽松,结果一次黑天鹅事件,库存VaR直接爆了5倍。后来我学乖了,风险预算一定要留余量,别卡着上限做。市场专治各种不服。
4.4 库存管理工具
光有目标不行,得有工具。我常用的三件套:对冲、再平衡、限仓。
4.4.1 对冲
对冲是降低库存风险最直接的手段。核心思路:用衍生品抵消现货的方向性风险。
# 一个简单的Delta对冲示例
def delta_hedge(inventory, futures_price, contract_size):
"""
inventory: 现货库存数量
futures_price: 期货价格
contract_size: 每张合约对应的数量
"""
# 计算需要开多少张空单
hedge_qty = inventory / contract_size
# 考虑基差调整
basis = futures_price - spot_price
if abs(basis) > threshold:
hedge_qty *= (1 + basis_adjustment)
return hedge_qty
这个代码看着简单,但实际跑起来坑很多。比如基差变化、合约展期、流动性不足,都会让对冲效果打折扣。我建议对冲频率不要太高,5-10分钟一次就够了,太频繁反而增加交易成本。
4.4.2 再平衡
再平衡,就是主动调整库存,让它回到目标水平。常见策略:
- 时间驱动:每隔固定时间检查一次库存,超标就调整
- 事件驱动:库存达到阈值时触发调整
- 混合模式:平时用事件驱动,极端行情用时间驱动兜底
我个人偏好混合模式。平时设个±20%的阈值,到了就调。但如果波动率突然放大,我会把检查频率从10分钟提到1分钟,防止库存失控。
4.4.3 限仓
限仓是最后一道防线。说白了,就是硬性规定库存不能超过某个数。超过就强制平仓,没得商量。
| 限仓类型 | 触发条件 | 处理方式 |
|---|---|---|
| 硬限仓 | 库存数量超过上限 | 立即市价平仓超出的部分 |
| 软限仓 | 库存接近上限(如80%) | 调整报价,减少吃单,加速出库 |
| 动态限仓 | 波动率或流动性变化 | 根据市场状况动态调整上限 |
经验之谈:硬限仓一定要设,但别设得太死。我见过有人设了硬限仓,结果行情剧烈波动时,市价平仓反而造成了更大的滑点损失。所以硬限仓的阈值要留够缓冲空间,我一般设到理论最大库存的80%。
4.5 知识体系总览
下面这张图,是我自己整理的知识框架。每次做库存管理决策,我都会过一遍这个流程:
这张图我每次培训新人都会拿出来讲。你看,从库存风险出发,到定义度量,再到管理目标和工具,是一条完整的链路。任何一个环节出问题,整个做市策略都可能崩盘。
好了,库存管理的基础就聊到这儿。记住一句话:做市商赚的是管理风险的钱,不是赌方向的钱。把库存管好了,你才能在这个市场里活得久、赚得稳。