一、做市商策略框架总览
做市商策略,说白了就是一套「怎么赚钱又不亏钱」的规则。
我刚开始做量化那会儿,以为做市就是挂单吃价差。后来被市场狠狠教育了几次,才明白这背后有一套完整的框架。今天我就把这套框架拆开来讲。
核心观点:做市商策略 = 被动做市 + 主动做市 + 库存管理 + Delta中性。四者缺一不可。
先看一张整体框架图,后面我们逐个拆解。
二、被动做市策略
被动做市,就是你在买卖两边都挂单,等着别人来成交。赚的是价差,亏的是方向。
我个人习惯把被动做市比作「守株待兔」。你不需要预测价格涨跌,只需要把单子挂好,等市场自己来吃。
2.1 核心逻辑
- 双边报价:同时在买一和卖一挂单,赚取买卖价差
- 价差管理:根据波动率动态调整价差宽度
- 订单簿管理:控制挂单深度,避免被大单吃掉
我的经验:刚开始做被动做市时,我总想把价差设得很小,觉得这样成交快。结果波动一来,两边都被吃,亏得比赚的多。后来我学乖了——价差至少覆盖手续费的两倍,这是底线。
2.2 常见策略
| 策略类型 | 适用场景 | 风险点 |
|---|---|---|
| 对称报价 | 低波动、流动性好的市场 | 单边行情时容易被套 |
| 动态价差 | 波动率变化大的市场 | 参数调整滞后 |
| 分层挂单 | 深度较好的订单簿 | 管理复杂度高 |
三、主动做市策略
主动做市,说白了就是「吃单」。你看到机会,直接吃掉对手的挂单,赚取短期动量收益。
你想想看,为什么需要主动做市?因为被动挂单有时候赚不到钱。比如市场突然拉升,你挂的卖单被吃掉,但买单没成交,你就变成了空头。这时候需要主动补回来。
3.1 核心逻辑
- 信号驱动:基于技术指标或市场微观结构信号
- 事件驱动:大单成交、新闻公告等事件触发
- 套利驱动:不同交易所或不同合约之间的价差
注意:主动做市的风险比被动做市高很多。我曾经在一次闪电暴跌中,主动吃单想抄底,结果被连续吃掉三层挂单,亏了5%。后来我加了一条规则——主动吃单必须设置止损。
3.2 策略示例
# 一个简单的主动做市信号
def active_market_making_signal(order_book, last_price):
"""
基于订单簿不平衡度生成主动做市信号
"""
bid_volume = sum(order_book['bids'][:5]['volume'])
ask_volume = sum(order_book['asks'][:5]['volume'])
imbalance = (bid_volume - ask_volume) / (bid_volume + ask_volume)
# 不平衡度超过阈值,主动吃单
if imbalance > 0.3:
return 'BUY' # 买单厚,主动买入
elif imbalance < -0.3:
return 'SELL' # 卖单厚,主动卖出
else:
return 'HOLD' # 等待
四、库存管理策略
库存管理,是做市商策略里最容易被忽视的一环。很多人只盯着怎么赚钱,却忘了控制持仓风险。
我见过太多做市商,策略赚钱的时候风光无限,结果一次黑天鹅事件,库存方向暴露,直接爆仓。嗯,这里要重点讲。
4.1 核心逻辑
- 库存上限:设定最大持仓量,超过就强制减仓
- 对冲调仓:用期货或期权对冲库存风险
- 时间衰减:持仓时间越长,风险越大,需要加速减仓
关键指标:库存周转率 = 成交额 / 平均库存价值。这个指标越高,说明你的资金利用率越好,风险暴露时间越短。
4.2 库存管理策略对比
| 策略 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 固定上限 | 简单易实现 | 不够灵活 | 新手入门 |
| 动态调整 | 适应市场变化 | 参数难调 | 有一定经验 |
| 对冲减仓 | 风险可控 | 有对冲成本 | 大资金做市 |
五、Delta中性策略
Delta中性,说白了就是让你的持仓对价格变动「免疫」。不管价格涨还是跌,你的组合价值基本不变。
为什么会需要Delta中性?因为做市商赚的是价差和手续费,不是赌方向。如果你持仓有方向性暴露,那就变成了半个投机者。
5.1 核心逻辑
- Delta定义:标的资产价格每变动1元,期权价格变动多少
- 对冲目标:组合Delta ≈ 0
- 对冲频率:高频对冲成本高,低频对冲风险大
我的建议:Delta中性不是绝对的。我一般设定一个Delta容忍区间,比如[-0.1, 0.1],在这个范围内不操作,超出再对冲。这样能省不少手续费。
5.2 对冲方式
- 期货对冲:用期货合约对冲现货或期权Delta
- 期权对冲:用其他期权组合调整Delta
- 现货对冲:直接买卖标的资产
5.3 一个简单的Delta中性示例
# 假设你持有10张看涨期权,每张Delta=0.6
# 总Delta = 10 * 0.6 = 6.0
# 需要卖出6份期货合约来对冲
option_delta = 10 * 0.6 # 6.0
hedge_quantity = -option_delta # 卖出6份期货
print(f"需要卖出 {hedge_quantity} 份期货合约")
避坑指南:我曾经犯过一个错误——只对冲了初始Delta,没考虑Gamma。结果价格大幅波动后,Delta变了,对冲失效。记住,Gamma大的时候要更频繁地调整对冲。
六、四者如何协同
这四个策略不是孤立的。它们像齿轮一样咬合在一起。
- 被动做市产生库存 → 库存管理控制风险
- 主动做市调整库存 → Delta中性消除方向
- 库存管理触发对冲 → Delta中性执行对冲
说白了,被动做市是「赚钱的引擎」,库存管理和Delta中性是「刹车和方向盘」。没有刹车,车跑得再快也得翻。
总结一句话:做市商策略不是比谁赚得快,而是比谁活得久。被动做市打底,主动做市增厚,库存管理保命,Delta中性稳盘。
公众号:蓝海资料掘金营,微信deep3321