4、做市商策略框架:报价策略、库存管理、订单流预测、风险限额与绩效评估
做市商策略并非单一算法,而是一套由报价生成、库存控制、订单流感知、风险约束与绩效反馈构成的闭环系统。任何一环缺失,都会导致策略在真实市场中快速失效。本章将拆解这一框架的五个核心模块,并给出可落地的参数设计、流程与复盘方法。
上图展示了做市商策略的闭环架构。五个模块并非独立运行,而是通过实时数据流紧密耦合:报价策略生成双边报价,订单流预测影响报价偏移,成交结果改变库存状态,库存管理触发对冲或报价调整,风险限额对所有决策进行硬约束,绩效评估则驱动策略参数的周期性迭代。下面逐一展开。
4.1 报价策略:价差、深度与动态偏移
核心原理
报价策略解决两个问题:报多宽的价差以及报价中心如何偏移。价差是做市商的主要收入来源,但过宽的价差会降低成交概率,过窄则无法覆盖库存风险与手续费。报价偏移则是为了管理库存——当库存偏离目标水平时,通过调整买卖报价的相对位置,引导对手方朝有利方向成交。
判断方法与操作流程
- 基础价差设定:参考同类资产的历史波动率(如ATR)、盘口深度、手续费率。常见公式:
基础价差 = k × 预期波动 + 2 × 手续费 + 最小跳动单位,k通常取0.5~1.5。 - 动态调整因子:根据实时波动率、订单簿不平衡度(买一量与卖一量之比)、近期成交速度进行微调。波动加剧时扩大价差,订单簿严重不平衡时向薄弱一侧偏移报价。
- 报价深度分配:近价档位挂单量应小于远价档位,避免被一次性大单扫走。典型比例为1:2:3(近、中、远三档)。
| 参数 | 典型值 | 调整方向 | 说明 |
|---|---|---|---|
| 基础价差系数 | 0.8 | 波动率↑时增大 | 覆盖风险与成本 |
| 库存偏移阈值 | ±30%目标库存 | 超过后逐步偏移 | 偏移幅度与偏离度成正比 |
| 近档挂单量 | 目标成交量的20% | 订单流预测看涨时增加 | 防止被毒药流击中 |
实战场景:某ETH-USDT做市商在波动率从2%升至5%时,将价差从0.05%扩大至0.12%,同时将买单深度减少30%、卖单深度增加20%,成功避免了在剧烈波动中被双向收割。复盘显示,若维持原价差,预计亏损将达当日手续费的3倍。
常见误区:报价偏移不能过度激进。若库存偏离50%以上仍继续大幅偏移,极易成为套利者的猎物。建议设置偏移上限(如买卖价差中心偏移不超过基础价差的2倍)。
4.2 库存管理:对冲、再平衡与库存成本
核心原理
库存是做市商最大的风险来源。持有库存意味着暴露于价格波动中,且占用资金。库存管理的目标不是消除库存,而是将库存控制在目标范围内,并最小化库存的持有成本(资金成本+价格不利变动成本)。
操作流程
- 设定目标库存:通常为0或根据市场观点设定小幅偏多/偏空。目标库存需结合账户资金与风险偏好。
- 监控库存偏离度:实时计算当前库存与目标库存的差值,并换算为风险敞口金额。
- 触发再平衡:当偏离度超过阈值(如30%)时,启动对冲。对冲方式包括:调整报价偏移、直接市价平仓、使用永续合约对冲。
- 对冲成本控制:优先使用报价偏移(被动对冲),若库存继续恶化则使用主动对冲,但需设置主动对冲的最大次数限制。
| 库存偏离度 | 操作 | 预期效果 | 风险 |
|---|---|---|---|
| 0~30% | 轻微偏移报价 | 自然回归 | 回归速度慢 |
| 30%~60% | 显著偏移+部分主动对冲 | 快速降低库存 | 对冲成本增加 |
| >60% | 强制平仓+暂停做市 | 控制最大损失 | 可能错过反弹 |
经验提醒:库存管理需考虑资金费率。在永续合约资金费率持续为正时,持有正库存可获得资金费收入,可适当放宽库存上限;反之则收紧。
4.3 订单流预测:识别方向与毒药流
核心原理
订单流预测不是预测价格涨跌,而是预测短期(未来几秒到几分钟)的买卖压力。做市商需要判断:当前挂出的买单是否会被聪明的资金吃掉?即将到来的订单流是倾向于买还是卖?这决定了报价偏移的方向和挂单的勇气。
判断方法
- 订单簿不平衡度:
不平衡度 = (买一~买五总量 - 卖一~卖五总量) / 总挂单量。正值偏多,负值偏空。 - 成交速度与方向:统计最近1秒内主动买量 vs 主动卖量,以及大单占比。大单频繁出现时需警惕。
- 毒药流识别:当订单簿出现“厚买盘+薄卖盘”但价格不涨反跌时,可能是诱多陷阱。此时应减少买单挂量,甚至暂时撤单。
# 毒药流简易识别逻辑(伪代码)
if buy_depth > 3 * sell_depth and price_change < 0:
poison_flow_flag = True
reduce_bid_volume(50%)
widen_spread(1.5x)
案例拆解:某做市商在BTC现货上观察到买一挂单量突然增加至平时的5倍,但价格在10秒内下跌0.02%。系统判定为毒药流,立即将买单撤掉60%,并将价差扩大30%。随后市场出现一笔大额卖单,直接击穿原买一价位。若未识别,该做市商将被动接货约2个BTC,产生约400美元的浮亏。识别后仅损失少量撤单手续费。
常见误区:订单流预测模型不能过度拟合。使用过去5分钟的数据预测未来1秒的订单流,在低波动时段有效,但在新闻发布等事件驱动场景下会完全失效。建议在事件窗口强制降低挂单量。
4.4 风险限额:硬约束与熔断机制
核心原理
风险限额是做市策略的安。无论报价策略和库存管理多么精妙,都必须有明确的硬性上限。限额设计遵循“事前-事中-事后”三层结构:事前设定参数,事中实时监控,事后强制处置。
限额体系设计
| 限额类型 | 指标 | 典型阈值 | 触发动作 |
|---|---|---|---|
| 持仓限额 | 最大净持仓(USD) | 账户净值的20% | 暂停新增做市,强制对冲 |
| 亏损限额 | 当日最大回撤 | 账户净值的3% | 停止做市,进入冷却期 |
| 希腊字母限额 | Delta / Gamma / Vega | Delta < 5%净值 | 调整报价偏移或对冲 |
| 频率限额 | 每秒最大撤单次数 | 50次/秒 | 降低报价更新频率 |
经验提醒:熔断机制必须自动化。人工干预在极端行情下往往滞后3~5秒,足以造成不可逆损失。建议设置两级熔断:一级熔断(暂停做市5分钟),二级熔断(当日停止做市)。
4.5 绩效评估:归因分析与参数迭代
核心原理
绩效评估回答三个问题:赚了还是亏了?赚/亏在哪里?如何改进?做市商业务的盈利来源包括:价差收入、资金费收入、库存方向性收益(或亏损)、手续费返还。评估需将总盈亏拆解到各来源,才能定位策略短板。
评估流程
- 数据采集:记录每笔报价、成交、撤单、库存变化、对冲操作的时间戳与价格。
- 盈亏归因:将总盈亏拆分为价差盈亏、库存盈亏、对冲成本、手续费净支出。
- 关键指标计算:价差实现率(实际成交价差/报价价差)、库存周转率、夏普比率、最大回撤。
- 参数调优:根据归因结果调整价差系数、库存阈值、订单流预测模型权重。
| 指标 | 计算公式 | 健康范围 | 异常处理 |
|---|---|---|---|
| 价差实现率 | 实际盈亏 / 理论最大价差收入 | >60% | <40%时检查报价是否过于保守 |
| 库存周转率 | 总成交额 / 平均库存 | 20~50次/日 | 过低说明库存管理僵化 |
| 夏普比率 | 日均收益 / 收益波动率 | >2 | <1时考虑降低做市频率 |
复盘案例:某团队在运行策略两周后发现,价差实现率仅35%,但库存周转率高达80次/日。归因分析显示:报价价差过窄导致频繁成交,但每次成交的利润极薄,且库存频繁触发对冲,对冲成本吞噬了大部分价差收入。调整方案:将基础价差系数从0.6提升至1.0,同时将库存再平衡阈值从30%放宽至45%。调整后一周,价差实现率升至58%,净利润提升42%,夏普比率从1.8升至2.6。
常见误区:绩效评估周期过短(如按小时评估)会导致参数频繁抖动。建议至少以日为单位评估,周度进行参数调优。同时,不要只关注净利润,要关注盈亏结构——若库存方向性收益占比过高,说明策略已偏离做市本质,变成了方向性交易。
4.6 框架整合与实战要点
五个模块的整合顺序应为:先定风险限额,再设计库存管理规则,然后配置订单流预测模型,最后生成报价策略。绩效评估作为反馈层,持续优化前四者的参数。在实际部署中,建议采用灰度发布:先在模拟环境运行一周,再用10%资金实盘运行一周,最后全量上线。
最终提醒:做市商策略的盈利本质是“在控制风险的前提下赚取流动性溢价”。任何模块的优化都不能以突破风险限额为代价。当策略连续三日亏损时,应优先检查风险限额是否被突破,而非急于调整报价参数。