3. 存货风险模型:经典存货模型介绍、存货对报价的影响、最优报价策略的数学推导

做双边报价,说白了就是在刀尖上跳舞。你报出的买价和卖价,决定了你能不能吃到单子,也决定了你手里会积压多少存货。存货这东西,多了怕砸手里,少了又怕错过行情。今天我们就来聊聊,怎么用数学模型管好这个“烫手山芋”。

3.1 经典存货模型介绍

先说说存货风险模型的起源。我记得最早接触这个领域,是在读一篇关于做市商行为的论文。当时我就想,这不就是量化版的“进货-出货”生意经吗?

经典的存货模型,核心就一句话:做市商通过调整报价,来控制存货水平,同时赚取买卖价差。这里面有几个关键假设:

  • 订单流是随机的:你永远不知道下一秒是买方主动还是卖方主动
  • 存货有持有成本:资金占用、价格波动风险,都是成本
  • 做市商是风险厌恶的:没人愿意把全部身家押在一笔交易上

我个人习惯把存货模型分成两类:一类是单期模型,只看当前这一笔交易怎么报;另一类是连续时间模型,考虑整个交易过程中的动态调整。今天我们先聚焦单期模型,因为它最直观,也最容易上手。

核心要点:存货模型不是要消灭存货,而是要在风险和收益之间找到平衡点。你想想看,如果完全没存货,那你也赚不到价差收益。

3.2 存货对报价的影响

存货怎么影响报价?我举个例子你就明白了。

假设你现在手里有1000股某股票的多头仓位。这时候,你报出的买价和卖价会怎么变?

  • 买价会降低:因为你不想再买入了,再买存货就更多了
  • 卖价会降低:因为你急着想把手里的货出掉

说白了,存货多了,你的报价会整体下移。反过来,如果手里是空头,报价就会整体上移。这就是存货对报价的“偏移效应”

我在项目中遇到过这样一个场景:某次做市商大赛,有个团队手里积压了大量多头仓位,结果他们还在按正常价差报价。行情一跌,直接爆仓。嗯,这就是没处理好存货风险的典型教训。

具体来说,存货对报价的影响可以量化成两个参数:

参数 含义 对报价的影响
存货水平 I 当前持仓数量(正为多头,负为空头) I > 0 时,报价下移;I < 0 时,报价上移
风险厌恶系数 γ 做市商对风险的容忍度 γ 越大,报价偏移越剧烈
存货波动率 σ 标的资产的波动性 σ 越大,存货风险越高,报价偏移越大
实战技巧:我曾经犯过一个错误——把风险厌恶系数设得太高,结果报价偏移过大,完全吃不到单子。后来我学乖了,先用历史数据回测,找到合适的γ值。

3.3 最优报价策略的数学推导

好,重头戏来了。我们怎么从数学上推导出最优报价?

先定义几个变量:

  • S:当前标的资产的价格
  • I:当前存货水平
  • γ:风险厌恶系数
  • σ:波动率
  • Δt:时间间隔

做市商的目标是最大化期望效用。这里我用的是指数效用函数,因为它数学上处理起来方便:

U(W) = -exp(-γW)

其中 W 是财富水平
γ > 0 表示风险厌恶

为什么用这个?说白了,指数效用函数有个好性质——它等价于最大化“均值-方差”目标。你想想看,这不就是我们做量化最常用的框架吗?

接下来,我们推导最优报价的公式。假设做市商在时间 t 的财富为 W_t,存货为 I_t。经过一个时间间隔 Δt 后,财富变化为:

ΔW = (P_buy * Q_buy - P_sell * Q_sell) + I_t * ΔS

其中:
- P_buy, P_sell 是买价和卖价
- Q_buy, Q_sell 是成交数量
- ΔS 是价格变动

做市商要最大化期望效用:

max E[U(W_{t+Δt}) | 当前信息]

经过推导(这里省略中间步骤,感兴趣的同学可以自己推一下),得到最优报价为:

P_buy* = S - spread/2 - γ * σ² * I_t * Δt
P_sell* = S + spread/2 - γ * σ² * I_t * Δt

看到没?最优报价就是在中间价 S 的基础上,先加减半个价差,再减去一个存货调整项 γ * σ² * I_t * Δt。

关键洞察:存货调整项的大小,取决于三个因素的乘积:风险厌恶系数 γ、波动率平方 σ²、当前存货 I_t。波动越大、存货越多、越厌恶风险,报价偏移就越厉害。

举个例子:

假设 S = 100, spread = 0.2, γ = 0.1, σ = 0.02, I = 1000, Δt = 1/252

存货调整项 = 0.1 * (0.02)² * 1000 * (1/252)
          = 0.1 * 0.0004 * 1000 * 0.004
          = 0.00016

所以:
P_buy* = 100 - 0.1 - 0.00016 = 99.89984
P_sell* = 100 + 0.1 - 0.00016 = 100.09984

你看,因为手里有多头存货,买价和卖价都往下移了0.00016。虽然看起来很小,但在高频交易中,这个偏移量会持续累积,最终影响你的盈亏。

注意:这个推导假设订单流是泊松过程,价格服从几何布朗运动。实际市场中,这些假设不一定成立。我曾经在实盘中吃过亏——市场出现跳跃时,这个模型会失效。所以,一定要加上风控止损。

3.4 知识体系总览

为了让你更直观地理解本章的知识结构,我画了一张图:

存货风险模型知识体系 存货风险模型 经典存货模型 单期模型 连续时间模型 存货对报价的影响 偏移效应 价差调整 最优报价策略 期望效用最大化 存货调整项 核心公式 P* = S ± spread/2 - γ · σ² · I · Δt

这张图把本章的三个核心内容串起来了。从左到右,分别是经典模型、存货影响、最优报价。最下面那个公式,就是今天推导的最终结果。你把它记住,做双边报价时心里就有底了。

好了,存货风险模型就讲到这里。记住,模型是死的,市场是活的。我建议你在实盘之前,先用模拟环境跑一跑,看看参数怎么调最合适。毕竟,真金白银的教训,能少一次就少一次。

专注资料整理