3. 做市商策略:存货模型与信息模型,报价策略的博弈论基础

做市商这活儿,说白了就是在市场里「两边撮合」。你挂买单,我卖给你;你挂卖单,我买进来。赚的是那个买卖价差。

但问题来了——凭什么我要给你报价?我报高了你不卖,报低了我亏钱。这里头藏着两个核心模型:存货模型信息模型。我个人习惯把前者叫「库存管理」,后者叫「防内幕」。

3.1 存货模型:你手里有多少货,决定了你有多怂

先讲存货模型。这个模型很直观:做市商手里有股票,他怕价格跌;手里没股票,他怕价格涨。所以报价的时候,他会根据库存水平来调整。

我记得刚入行那会儿,带我的老交易员跟我说过一句话:「仓位决定心态。」当时我不理解,后来自己跑策略回测时才明白——库存高了,你自然想卖;库存低了,你自然想买。这不是什么高深理论,是人性的本能。

核心公式: 最优买卖价差 = 存货持有成本 × 存货风险系数

具体来说,存货模型有几个关键变量:

  • 库存水平:当前持仓量 vs 目标持仓量
  • 波动率:波动越大,存货风险越高,价差越宽
  • 时间跨度:你打算持有多久?隔夜风险怎么算?

举个例子。假设你是一个ETF做市商,手里有100万份某ETF。今天市场波动率突然飙升,你怎么办?

我建议的做法是:收窄买价,放宽卖价。说白了就是——我想多卖点,把库存降下来。你想想看,如果这时候你还按原来的价差做,万一价格暴跌,你手里的货就砸手里了。

实战技巧: 我在项目中遇到过一种情况——库存水平超过阈值时,我会把报价偏移量设为库存偏差的线性函数。代码实现起来其实很简单:
def adjust_spread(inventory, target_inventory, base_spread):
    deviation = inventory - target_inventory
    # 库存偏高,压低买价,抬高卖价
    bid_adjust = -0.1 * deviation
    ask_adjust = 0.1 * deviation
    return base_spread + bid_adjust, base_spread + ask_adjust

嗯,这里要注意:调整系数不能太大。我曾经见过一个新手,把系数设成0.5,结果库存稍微一偏,报价直接飞到天上去了,完全没法成交。

3.2 信息模型:你怕的不是库存,是有人比你更懂

存货模型解决的是「库存风险」,但信息模型解决的是另一个问题——逆向选择

什么意思?就是市场上有些人知道你不知道的信息。比如某公司要发利好消息,内幕交易者提前知道了,他会来找你买。你卖给他,你就亏了。

为什么会这样?因为你的报价是公开的,而他的信息是私有的。你报的卖价,在他看来可能已经是「便宜货」了。

信息模型的核心思想是:价差 = 信息不对称成本。你越不确定对方是不是知情交易者,价差就得越大。

交易者类型 行为特征 做市商应对
知情交易者 大单、方向明确、不犹豫 扩大价差、降低深度
噪音交易者 小单、随机方向、频繁 正常报价、赚取价差
流动性交易者 有真实需求、非投机 适当让利、维护关系

我个人的经验是:识别知情交易者,靠的不是看单子大小,而是看成交后的价格走势。如果一笔成交后价格立刻朝那个方向跑,那八成是知情交易。这时候我会立刻调整报价,甚至暂停报价几秒钟。

避坑指南: 我曾经在某个小市值股票上吃过亏。当时有个账户连续下了几笔大单,我以为是机构调仓,没太在意。结果半小时后公司发了利好公告,股价直接跳空高开。那笔单子让我亏了六位数。从那以后,我对「大单+快速成交」的组合特别敏感。

3.3 报价策略的博弈论基础:你和市场在下一盘棋

好了,存货模型和信息模型讲完了。但光有这两个模型还不够——你还要考虑对手的反应。这就是博弈论登场的地方。

做市商报价,本质上是一个重复博弈。你报一个价,对方可以选择接或不接。你报高了,他去别家;你报低了,你亏钱。这就像两个人玩「剪刀石头布」,但规则更复杂。

我习惯把做市商的博弈分成三个层次:

  1. 单期博弈:只考虑当前这一笔交易,报最优价差
  2. 多期博弈:考虑未来多笔交易,用当前利润换未来信息
  3. 多市场博弈:考虑不同交易所之间的竞争,比如跨市场套利

这里我画了一张图,帮你理清这三个层次的关系:

做市商报价策略的博弈层次 单期博弈 最优价差模型 不考虑未来影响 适用:高频做市 多期博弈 学习对手策略 动态调整报价 适用:日内做市 多市场博弈 跨市场套利 竞争性报价 适用:全市场做市 核心博弈逻辑 • 单期博弈:你报一个价,对方决定接不接。这是最基础的博弈。 • 多期博弈:你今天的报价会影响明天的对手行为。比如你一直报低价, 对方会认为你是「弱手」,以后专门来吃你。 • 多市场博弈:不同交易所的做市商互相竞争,价差会趋向一致。 博弈层次越高,策略越复杂

在实际交易中,我建议你从单期博弈开始。先把基础价差算清楚,再慢慢加入多期博弈的考量。别一上来就想搞多市场套利,那玩意儿水太深。

3.4 两个模型的融合:实战中的报价策略

好了,存货模型和信息模型都讲完了。但实战中,这两个模型是同时起作用的。你不能只考虑库存,不考虑信息不对称;也不能只防内幕,不管库存风险。

我个人习惯的做法是:先算存货调整,再算信息调整,最后取加权平均

举个例子:

  • 基础价差:0.10元
  • 存货调整:库存偏高,买价下调0.02,卖价上调0.02 → 价差变成0.14
  • 信息调整:最近有大单成交,怀疑有知情交易 → 价差再扩大0.03
  • 最终报价:买价-0.07,卖价+0.07,价差0.14

你想想看,如果我只用存货模型,价差只有0.12,遇到知情交易者我就亏了。如果我只用信息模型,价差0.13,但库存风险没管好,一样亏。两个模型一起用,才能把风险降到最低。

核心原则: 存货模型管「量」,信息模型管「价」。量价结合,才是做市商的完整策略。

嗯,最后说一句。做市商这行,理论模型再漂亮,最终还是要落地到代码和实盘。我见过太多人把模型搞得花里胡哨,结果一上线就亏钱。为什么?因为模型假设和现实差距太大。

我的建议是:先跑模拟,再跑小资金,最后才上大资金。每一步都要验证模型的有效性。别怕慢,慢就是快。

个人经验: 我刚开始做做市商策略时,花了三个月跑回测,又花了一个月做模拟盘。真正实盘的第一周,还是亏了。但因为有前面的积累,我知道问题出在参数上,调整了两天就扭亏为盈了。所以,别怕犯错,怕的是错了不知道错在哪。

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