第四章:市场微观结构与做市商策略

做市商这行,说白了就是跟市场微观结构打交道。你想想看,我们每天盯着的那些买卖价差、订单簿深度,背后其实藏着很多门道。今天我就把这几年积累的一些经验,跟大家好好聊聊。

4.1 买卖价差的影响因素

买卖价差,就是做市商的饭碗。价差太小,赚不到钱;价差太大,又没人跟你交易。那到底什么在影响价差?我总结下来,主要有三个核心因素。

4.1.1 波动率

波动率是价差的第一推手。市场一波动,价差立马就变大。为什么?因为做市商要保护自己。

我在项目中遇到过这样的情况:某只股票平时价差只有0.01美元,但财报发布前,价差能瞬间扩大到0.05美元。这不是做市商黑心,而是风险变大了。你想想看,如果价格一秒内能跳好几个tick,你还敢报那么窄的价差吗?

核心逻辑:波动率越高,做市商面临的信息不对称风险越大,价差自然要扩大。

具体来说,波动率对价差的影响可以通过一个简单的公式来理解:

# 波动率调整后的价差计算
def calculate_spread(volatility, base_spread=0.01):
    """
    volatility: 当前波动率(百分比)
    base_spread: 基础价差
    """
    # 波动率每增加1%,价差扩大0.5个基点
    adjusted_spread = base_spread * (1 + volatility * 0.5)
    return adjusted_spread

4.1.2 成交量

成交量对价差的影响,其实是个双刃剑。成交量大的股票,流动性好,价差通常比较窄。但成交量突然暴增的时候,价差反而会扩大。

我记得有一次做苹果股票的做市,平时成交量稳定,价差也就0.01-0.02美元。但有一天突然放量,成交量是平时的5倍,价差反而扩大到了0.03美元。为什么会这样?因为大单进来,做市商要重新评估风险。

成交量状态 价差变化 原因
低成交量 价差扩大 流动性不足,做市商承担更大风险
正常成交量 价差稳定 市场均衡,做市商可以正常报价
高成交量(异常) 价差扩大 信息事件驱动,做市商需要保护

4.1.3 时间

时间因素,很多人容易忽略。其实一天之内,不同时间段的价差差异很大。

开盘和收盘时段,价差通常最大。开盘是因为隔夜信息积累,收盘是因为要平仓。中午时段,价差反而会收窄。我习惯把一天分成几个时段来调整报价策略:

  • 开盘(9:30-10:00):价差扩大30%-50%,信息不确定性高
  • 上午盘(10:00-11:30):价差恢复正常,流动性最好
  • 午间(11:30-13:00):价差略微收窄,交易量下降
  • 下午盘(13:00-15:30):价差稳定,但要注意尾盘波动
  • 收盘(15:30-16:00):价差再次扩大,平仓压力大

4.2 订单簿不平衡与做市商行为

订单簿不平衡,是每个做市商每天都要面对的问题。说白了,就是买单和卖单不匹配。这时候怎么做?我给大家分享几个实战经验。

4.2.1 识别订单簿不平衡

订单簿不平衡,最简单的判断方法就是看买卖双方的深度和数量。如果买单深度明显大于卖单,说明买方力量强,价格可能要涨。反之亦然。

我曾经吃过一次亏。当时看到某只股票买单深度很大,就以为价格要涨,结果被套了。后来才发现,那是某个大机构在挂假单,故意制造不平衡来诱导做市商。嗯,这里要注意,订单簿不平衡不一定是真实的供需关系。

避坑指南:我曾经因为只看订单簿不平衡就调整报价,结果被假单坑了。后来我加了一个验证机制:只有订单簿不平衡持续超过3秒,并且伴随成交量变化,才认为是真实的信号。

4.2.2 做市商的应对策略

面对订单簿不平衡,做市商不能死板地按固定价差报价。我一般会这样调整:

# 订单簿不平衡调整策略
def adjust_spread_for_imbalance(bid_depth, ask_depth, base_spread):
    """
    bid_depth: 买单总深度
    ask_depth: 卖单总深度
    base_spread: 基础价差
    """
    imbalance_ratio = bid_depth / (bid_depth + ask_depth)
    
    # 如果买单占比超过60%,说明买方强势
    if imbalance_ratio > 0.6:
        # 提高卖价,降低买价
        adjusted_spread = base_spread * 1.2
    # 如果卖单占比超过60%,说明卖方强势
    elif imbalance_ratio < 0.4:
        adjusted_spread = base_spread * 1.2
    else:
        adjusted_spread = base_spread
    
    return adjusted_spread

4.3 高频交易对做市商的影响

高频交易,这个话题在圈内争议很大。有人觉得高频交易是市场的毒瘤,有人觉得它是流动性的提供者。我个人觉得,高频交易对做市商的影响,要分两面看。

4.3.1 正面影响

高频交易确实提高了市场效率。它们能在毫秒级别内完成交易,让价差变得更窄。我刚开始做市的时候,价差普遍在0.03-0.05美元,现在很多股票能做到0.01美元甚至更窄。这背后,高频交易功不可没。

4.3.2 负面影响

但高频交易也给做市商带来了新的挑战。最典型的就是「抢跑」问题。高频交易者能比你先看到订单簿的变化,然后在你之前完成交易。你想想看,你刚报出一个价格,还没来得及调整,就被高频交易者抢走了。

我记得有一次,我报了一个很好的价格,结果0.1秒内就被高频交易者吃掉了。等我反应过来,市场已经变了。从那以后,我不得不把报价策略调整得更激进,同时加入延迟保护机制。

实战技巧:对付高频交易,我建议做市商采用「随机延迟报价」策略。就是在报价时加入一个随机延迟(比如5-20毫秒),让高频交易者无法准确预测你的报价时机。这招我用了好几年,效果不错。

4.4 知识体系总览

说了这么多,我画了一张图,把这一章的核心逻辑串起来。你一看就明白了。

市场微观结构与做市商策略 买卖价差影响因素 波动率 成交量 时间 订单簿不平衡 识别不平衡 调整报价 高频交易影响 正面影响 负面影响 做市商综合策略 动态调整价差 + 识别假单 + 延迟保护 核心逻辑:三个因素共同决定做市商的报价策略 实战要点总结 1. 波动率大时扩大价差,成交量异常时警惕假单 2. 订单簿不平衡要结合成交量验证,避免被假单误导

这张图把三个核心因素串起来了。你想想看,波动率、成交量、时间这三个因素,加上订单簿不平衡和高频交易的影响,最终都指向一个目标——如何动态调整你的报价策略。

我个人觉得,做市商这行,技术是基础,但经验更重要。你代码写得再好,如果不懂市场微观结构,照样亏钱。嗯,今天就先聊到这儿,下一章我们继续深入。


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