2、库存度量指标:库存价值(VaR)、库存周转率、库存集中度、库存Delta/Gamma敞口
做市商的库存管理,说白了就是一门「风险与收益的平衡术」。
你手里有多少货?这些货值多少钱?万一市场暴跌你会亏多少?货好不好卖?
这些问题,光靠拍脑袋可不行。我们需要一套量化指标来给库存做「体检」。
我个人习惯把这四个指标称为「库存四件套」:VaR、周转率、集中度、Delta/Gamma。缺一个,你的风控体系就不完整。
核心观点: 库存度量不是为了算账,而是为了提前发现风险。等亏损发生了再去看指标,那就晚了。
2.1 库存价值 (VaR) —— 你的「风险温度计」
VaR,全称是 Value at Risk,风险价值。听起来高大上,其实意思很简单:在某个置信水平下,你的库存最多可能亏多少钱。
举个例子。你手里有 100 个 BTC,每个 6 万 USDT。你算了一下,95% 置信水平下,一天内最大亏损是 3%。那 VaR 就是 100 × 60000 × 3% = 18 万 USDT。
嗯,这里要注意:VaR 不是「一定会亏这么多」,而是「有 95% 的概率不会亏超过这个数」。那剩下的 5% 呢?那就是黑天鹅了。
我的经验: 我个人习惯把 VaR 分成「日内 VaR」和「隔夜 VaR」。日内 VaR 用 1 小时数据算,隔夜 VaR 用 24 小时数据算。隔夜风险通常比日内大 3-5 倍,因为晚上流动性差。
计算 VaR 有三种常见方法:
- 历史模拟法:直接用过去 N 天的收益率分布,取分位数。简单粗暴,但依赖历史数据。
- 参数法(方差-协方差法):假设收益率服从正态分布,用均值和标准差算。快,但正态分布假设在金融里经常不成立。
- 蒙特卡洛模拟法:随机生成大量价格路径,模拟未来分布。最准确,但计算量大。
我在项目中遇到过一个问题:用历史模拟法算 BTC 的 VaR,结果总是偏小。后来发现是因为 BTC 的「肥尾效应」——极端行情比正态分布预测的更频繁。所以后来我改用蒙特卡洛,虽然慢一点,但心里踏实。
# 一个简单的历史模拟法 VaR 计算示例
import numpy as np
def calculate_var(returns, confidence_level=0.95):
"""
计算历史模拟 VaR
returns: 收益率序列 (numpy array)
confidence_level: 置信水平,默认 95%
"""
# 按收益率从小到大排序
sorted_returns = np.sort(returns)
# 找到分位数对应的索引
index = int((1 - confidence_level) * len(sorted_returns))
# VaR 就是该分位数的值(取绝对值)
var = abs(sorted_returns[index])
return var
# 假设我们有 1000 个 1 分钟收益率数据
np.random.seed(42)
returns = np.random.normal(0, 0.001, 1000) # 模拟数据
var_95 = calculate_var(returns, 0.95)
print(f"95% VaR: {var_95:.4f}") # 输出: 0.0016 左右
避坑指南: 我曾经犯过一个错误——用全量历史数据算 VaR,结果包含了 2020 年 3 月 12 日(312暴跌)的数据。那天的收益率是 -40%,导致 VaR 算出来特别大,策略都不敢开仓了。后来我改成「滚动窗口法」,只用最近 30 天的数据,才恢复正常。
2.2 库存周转率 —— 你的货「动」得快不快?
库存周转率,衡量的是你手里的货多久能卖出去一次。
公式很简单:
周转率 = 一段时间内的成交量 / 平均库存量
比如,你一天成交了 1000 个 ETH,平均库存是 200 个 ETH。那周转率就是 5。意思是你的库存一天「转」了 5 次。
周转率高,说明流动性好,货不压手。周转率低,说明货卖不动,可能变成「死库存」。
我个人习惯把周转率分成三个等级:
| 周转率 | 含义 | 建议 |
|---|---|---|
| > 10 | 流动性极好 | 可以适当加大库存 |
| 3 - 10 | 正常水平 | 维持现状 |
| < 3 | 流动性差 | 需要减仓或调整报价 |
你想想看,如果一个品种的周转率长期低于 1,说明你手里的货平均要放一天以上才能卖出去。这时候如果市场突然反转,你根本跑不掉。
我的经验: 做市商和普通交易员不一样。普通交易员可能喜欢低周转率——拿着不动等涨。但做市商靠的是「薄利多销」,周转率是我们的生命线。我一般要求核心品种的周转率不低于 5。
2.3 库存集中度 —— 别把鸡蛋放在一个篮子里
库存集中度,衡量的是你的库存是否过度集中在某个品种上。
最常用的指标是赫芬达尔-赫希曼指数(HHI):
HHI = Σ (各品种库存占比)²
举个例子。你有三个品种:
- BTC: 50 万 USDT(50%)
- ETH: 30 万 USDT(30%)
- SOL: 20 万 USDT(20%)
HHI = 0.5² + 0.3² + 0.2² = 0.25 + 0.09 + 0.04 = 0.38
HHI 的取值范围是 0 到 1。越接近 1,说明越集中。一般认为:
- HHI < 0.15:分散良好
- HHI 0.15 - 0.25:中等集中
- HHI > 0.25:高度集中,需要警惕
为什么会这样?因为集中度高的库存,一旦那个品种出问题(比如交易所被盗、监管打击),你的整个库存都会遭受重创。
避坑指南: 我曾经吃过一次亏。2021 年 5 月,我重仓了某个小币种,HHI 高达 0.6。结果那个项目方出了负面新闻,币价一天跌了 60%。我因为集中度太高,根本来不及对冲,亏得很惨。从那以后,我给自己定了个规矩:任何单一品种的库存占比不超过 30%,HHI 不超过 0.2。
2.4 库存 Delta/Gamma 敞口 —— 你的方向性风险有多大?
如果你只做现货做市,那 Delta 和 Gamma 可能不太重要。但如果你做期权做市,或者持有期货头寸,这两个指标就是命根子。
Delta 衡量的是:标的价格每变动 1 美元,你的库存价值变动多少。
比如,你的 Delta 是 +500。意思是 BTC 涨 1 美元,你赚 500 美元。BTC 跌 1 美元,你亏 500 美元。
Gamma 衡量的是:Delta 本身的变化速度。
Gamma 为正,说明市场越涨,你的 Delta 越大(越看涨)。Gamma 为负,说明市场越涨,你的 Delta 越小(越看跌)。
做市商最怕什么?最怕负 Gamma。因为负 Gamma 意味着市场波动越大,你的风险敞口越大。市场暴跌时,你的 Delta 会从 0 变成很大的负数,让你越亏越多。
核心观点: 做市商的理想状态是 Delta 中性(Delta ≈ 0),Gamma 也尽量中性。但现实中很难做到完美对冲,所以我们要实时监控这两个指标。
我个人习惯用「希腊字母仪表盘」来监控:
| 指标 | 理想范围 | 预警阈值 | 处理方式 |
|---|---|---|---|
| Delta | ±库存价值的 5% | ±库存价值的 15% | 用期货或现货对冲 |
| Gamma | ±库存价值的 1% | ±库存价值的 5% | 调整期权头寸或加仓 |
嗯,这里要注意:Delta 和 Gamma 不是静态的。市场在变,时间在走,这两个值也在不断变化。所以我们需要实时计算,而不是每天看一次。
# 一个简单的 Delta/Gamma 计算示例(假设持有期权)
def calculate_delta_gamma(option_price, underlying_price, strike, time_to_expiry, volatility, risk_free_rate=0.05):
"""
使用 Black-Scholes 模型计算 Delta 和 Gamma
这里只做示意,实际生产中会用更精确的模型
"""
from scipy.stats import norm
import math
d1 = (math.log(underlying_price / strike) +
(risk_free_rate + 0.5 * volatility**2) * time_to_expiry) / (volatility * math.sqrt(time_to_expiry))
delta = norm.cdf(d1) # 看涨期权的 Delta
gamma = norm.pdf(d1) / (underlying_price * volatility * math.sqrt(time_to_expiry))
return delta, gamma
# 假设参数
delta, gamma = calculate_delta_gamma(
option_price=500,
underlying_price=60000,
strike=60000,
time_to_expiry=30/365,
volatility=0.5
)
print(f"Delta: {delta:.4f}") # 约 0.55
print(f"Gamma: {gamma:.4f}") # 约 0.00005
我的经验: 我见过很多做市商只盯着 Delta,忽略了 Gamma。结果市场一波动,Gamma 把 Delta 带偏了,他们才手忙脚乱地去对冲。我的习惯是:每 5 分钟重新计算一次 Delta 和 Gamma,如果 Gamma 超过阈值,就提前调整,而不是等 Delta 出问题再动手。
小结
这四个指标,各有各的用处:
- VaR 告诉你「最多亏多少」
- 周转率 告诉你「货好不好卖」
- 集中度 告诉你「风险是否分散」
- Delta/Gamma 告诉你「方向性风险有多大」
缺了任何一个,你的风控体系都是瘸腿的。我个人建议,把这四个指标做成一个实时仪表盘,放在你交易屏幕的角落。每天开盘前扫一眼,心里就有底了。
记住:做市商不是赌徒。我们靠的是精细化的风险管理,而不是运气。这些指标,就是你的「护身符」。
公众号:蓝海资料掘金营,微信deep3321