3、买卖价差策略:价差的定义、影响价差的因素(波动率、流动性、订单簿深度)、动态调整价差的方法
3.1 价差的定义与核心逻辑
买卖价差(Bid-Ask Spread)是做市商最基础、最直接的盈利来源。它定义为:
价差 = 卖一价(Ask Price) - 买一价(Bid Price)
做市商通过同时在订单簿上挂出买单(Bid)和卖单(Ask),赚取两者之间的差额。例如,若某资产当前买一价为 100.00,卖一价为 100.05,则价差为 0.05。做市商每完成一次“先买后卖”或“先卖后买”的循环,即可获得这 0.05 的毛利润(扣除手续费前)。
价差策略的核心在于:在覆盖风险(库存风险、逆向选择风险)和交易成本的前提下,最大化单位时间内的价差收益。 价差并非固定不变,而是需要根据市场环境动态调整。
3.2 影响价差的关键因素
做市商在设定价差时,必须实时评估以下三个核心因素:
| 因素 | 定义 | 对价差的影响机制 | 典型场景 |
|---|---|---|---|
| 波动率(Volatility) | 资产价格在单位时间内的变动幅度(通常用标准差衡量)。 | 正相关。波动率越高,价格瞬间跳动的概率越大,做市商面临的逆向选择风险(被知情交易者“吃掉”挂单)和库存风险(持仓价值快速变化)越高。因此,做市商需要扩大价差来补偿潜在亏损。 | 财报发布前后、重大新闻事件、加密货币市场剧烈震荡时,价差会显著扩大。 |
| 流动性(Liquidity) | 市场以合理价格快速成交大额订单的能力。通常用交易量、换手率衡量。 | 负相关。流动性越好,意味着市场深度大、滑点低、成交速度快。做市商可以更快地平仓,库存风险降低,因此可以收窄价差以吸引更多订单流。反之,流动性枯竭时,做市商必须扩大价差以保护自己。 | 主流币种(如BTC/ETH)价差极窄;冷门小币种或非交易时段价差极宽。 |
| 订单簿深度(Order Book Depth) | 订单簿在买盘和卖盘各价位上的挂单数量分布。 | 负相关。深度越厚(例如买一到买五都有大量挂单),意味着市场承接力强。做市商可以更精确地判断“真实”的供需平衡点,并敢于在更窄的价差内提供流动性。若订单簿稀疏(如只有薄薄一层),则任何大单都可能击穿价格,做市商需扩大价差。 | 深度好的市场,价差可能只有1-2个tick;深度差的市场,价差可能达到10个tick以上。 |
3.3 动态调整价差的方法
现代做市商系统(通常基于高频交易框架)采用算法实时调整价差。以下是三种核心方法:
3.3.1 基于波动率的动态调整(Volatility-Adjusted Spread)
使用实时波动率估计器(如指数加权移动平均EWMA或GARCH模型)来动态缩放基础价差。
公式示例:
动态价差 = 基础价差 × (1 + α × (当前波动率 / 基准波动率 - 1))
其中:
- 基础价差:在正常市场条件下的目标价差(例如0.01%)。
- α:敏感度系数(通常0.5~2.0)。
- 当前波动率:最近N笔交易的收益率标准差。
- 基准波动率:历史平均波动率。
实现逻辑:
- 当波动率飙升时,价差自动扩大,减少被“扫单”的概率。
- 当波动率回归平静时,价差自动收窄,保持竞争力。
3.3.2 基于库存风险的动态调整(Inventory-Based Spread)
根据做市商当前持仓偏离目标库存的程度来调整价差,以加速或减缓库存回归中性。
策略规则:
- 净多头(库存 > 目标): 降低买价(Bid),提高卖价(Ask),使价差整体偏向卖盘一侧。这鼓励卖出,抑制买入,帮助减少多头库存。
- 净空头(库存 < 目标): 提高买价,降低卖价,使价差偏向买盘一侧。鼓励买入,抑制卖出。
- 库存中性: 维持对称价差。
量化示例:
调整后的买价 = 公平价格 - (基础价差/2) - β × (当前库存 - 目标库存)
调整后的卖价 = 公平价格 + (基础价差/2) - β × (当前库存 - 目标库存)
其中 β 为库存调整系数(正数)。
3.3.3 基于订单簿深度的动态调整(Depth-Aware Spread)
实时分析订单簿的“形状”和“不平衡度”,动态调整挂单位置和价差。
关键指标:
- 订单簿不平衡(Order Book Imbalance, OBI): (买盘总深度 - 卖盘总深度) / (买盘总深度 + 卖盘总深度)。OBI接近+1表示买盘极强,接近-1表示卖盘极强。
- 深度斜率(Depth Slope): 价格每变动一个tick,挂单量的变化率。
调整逻辑:
- 当OBI为正且深度斜率陡峭时(买盘厚实),做市商可以收窄卖盘价差,因为卖单被大量买盘托底,成交风险低。
- 当OBI为负且深度稀疏时,做市商应扩大整体价差,并主动将挂单放在远离当前价格的位置,避免被瞬间击穿。
3.3.4 综合动态调整框架(实战示例)
在实际系统中,上述三种方法通常被组合成一个加权模型:
最终价差 = 基础价差 × f_vol(波动率) × f_inv(库存) × f_depth(订单簿)
其中:
- f_vol = 1 + k1 × (波动率因子 - 1)
- f_inv = 1 + k2 × |库存偏离度|
- f_depth = 1 + k3 × (1 - 深度质量评分)
k1, k2, k3 为权重系数,需通过回测优化。
执行流程:
- 数据输入: 实时接收行情、订单簿快照、自身持仓。
- 因子计算: 每毫秒计算波动率、库存偏离度、订单簿深度指标。
- 价差决策: 根据综合模型输出目标价差(例如0.03%)。
- 挂单执行: 将买一价和卖一价分别设置在公平价格两侧各一半价差的位置,并持续监控成交情况。
- 反馈循环: 若成交速度过快(可能价差过窄)或过慢(可能价差过宽),系统自动微调权重系数。
通过这种动态调整,做市商能够在高波动时保护资本,在低波动时最大化交易量,从而实现长期稳定的盈利。