事件驱动做市:财报发布做市、宏观经济数据做市、新闻情绪分析、事件套利

做市商最怕什么?不是波动,是不确定性

但有一种波动,是可以提前预判的——那就是事件驱动型波动。财报发布、非农数据、央行利率决议……这些事件的时间点是公开的,市场会提前布局,做市商更是要提前准备。

我个人习惯把事件驱动做市分成两类:可预知事件突发新闻。前者像财报、宏观数据,后者像黑天鹅、地缘冲突。处理逻辑完全不同。

核心观点:事件驱动做市的核心不是预测方向,而是管理事件前后的流动性风险与库存风险。

1. 财报发布做市:信息不对称下的生存法则

财报发布前后,是做市商最难受的时候。为什么?因为信息不对称。上市公司内部人、机构投资者可能提前知道业绩好坏,而你作为做市商,只能靠概率和风控活着。

我在项目中遇到过一家美股做市商,财报前半小时把买卖价差从0.01美元拉到0.15美元,结果当晚财报超预期,股价跳空高开8%。他们虽然少做了很多单,但避免了被信息优势方吃掉。

财报做市的核心策略:

  • 价差管理:财报前30分钟,将价差扩大至平时的3-5倍。这不是为了多赚钱,而是为了吓退高频套利者。
  • 深度削减:每个价位的挂单量减少到平时的20%-30%。你想想看,万一财报爆雷,你手里一堆库存,跑都跑不掉。
  • 方向性偏斜:如果市场普遍预期财报好,你可以把买价挂得比理论价低一点,卖价挂得高一点——说白了,就是给自己留安全垫。

我的经验:财报发布后前5秒,不要急着调整报价。等第一波流动性冲击过去,再根据实际成交情况重新定价。我曾经吃过亏,财报一出就改价,结果被算法反噬了。

2. 宏观经济数据做市:非农、CPI、利率决议

宏观数据发布,比财报更刺激。因为宏观数据影响的是整个市场,不是某一只股票。

我记得有一次非农数据发布,预期新增20万人,实际只有12万。美元瞬间跳水,黄金暴涨。我当时的做市系统在数据发布前自动进入了「宏观模式」——价差拉大、深度减半、并且暂停了所有趋势跟踪策略。

宏观数据做市的三个关键点:

  1. 时间窗口预判:数据发布前10秒,系统自动进入「冻结状态」,不接受新的限价单,只处理存量订单。
  2. 波动率自适应:根据历史数据发布后的波动率,动态调整报价宽度。比如非农数据发布后,黄金的波动率通常是平时的4-6倍,价差也要相应调整。
  3. 库存对冲:如果你做市的是股指期货,数据发布前最好把净头寸降到零。我曾经见过一个交易员,利率决议前持有大量多头,结果加息50个基点,一夜回到解放前。

避坑指南:千万不要在宏观数据发布前做「赌方向」的做市策略。做市商赚的是买卖价差,不是方向性收益。我曾经见过有人把做市做成了投机,结果被市场教育得很惨。

3. 新闻情绪分析:从文本到交易信号

新闻情绪分析,说白了就是让机器读懂新闻是利好还是利空。但这里有个坑:新闻的时效性极短

我做过一个实验:用BERT模型分析财经新闻的情绪,然后看情绪得分与股价短期走势的相关性。结果发现,新闻发布后前30秒,情绪得分与股价走势的相关性高达0.6;但30秒之后,相关性迅速降到0.2以下。

新闻情绪做市的实现路径:

  • 数据源:接入Bloomberg、Reuters、Twitter等实时新闻流。
  • NLP处理:用预训练模型(如FinBERT)提取情感得分,同时识别关键实体(公司名、行业、事件类型)。
  • 信号生成:情感得分超过阈值(比如>0.7或<0.3),触发报价调整。
  • 执行:调整价差和深度,而不是直接改变报价方向。
# 一个简化的新闻情绪做市逻辑
def news_sentiment_market_making(news_text, current_spread, current_depth):
    sentiment_score = finbert_analyze(news_text)  # 返回 -1 到 1
    
    if sentiment_score > 0.7:
        # 极度利好:缩小卖价差,扩大买价差
        new_spread = current_spread * 0.8
        new_depth = current_depth * 1.2
    elif sentiment_score < -0.7:
        # 极度利空:缩小买价差,扩大卖价差
        new_spread = current_spread * 0.8
        new_depth = current_depth * 0.8
    else:
        # 中性:保持原样
        new_spread = current_spread
        new_depth = current_depth
    
    return new_spread, new_depth

注意:新闻情绪分析最大的问题是「假新闻」和「延迟新闻」。我建议只使用权威新闻源,并且加入一个延迟缓冲——比如新闻发布后等200毫秒再处理,避免被虚假信息误导。

4. 事件套利:做市商的额外收益来源

事件套利,不是让你去赌事件的结果,而是利用事件前后市场定价的偏差来获利。

举个例子:某公司宣布收购,被收购方股价通常会上涨,但涨幅往往不够充分——因为市场担心交易失败。做市商可以在被收购方股票上提供流动性,同时用收购方的股票或期权对冲风险。

常见的事件套利策略:

事件类型 套利逻辑 做市商角色
并购套利 买入被收购方,卖出收购方 提供被收购方流动性,赚取价差
IPO套利 上市首日价格发现不充分 在开盘初期提供双边报价
分红套利 除息日前后的价格调整 利用除息日效应做市
指数调整套利 成分股调整带来的被动买卖 在调整日前提供流动性

我个人比较喜欢做指数调整套利。因为时间确定、方向确定、而且流动性好。每次MSCI或标普调整成分股,我都会提前一周把相关股票的做市参数调好。

5. 事件驱动做市的系统架构

下面这张图是我自己设计的事件驱动做市系统架构,你可以参考一下:

事件驱动做市系统架构 数据层 财报日历 宏观数据 新闻流 历史数据 处理层 事件检测 情绪分析 波动率预测 风险计算 决策层 价差调整 深度调整 对冲指令 风控检查 执行层:订单管理 & 交易所接口

这个架构的核心思想是:数据驱动、分层处理、风控优先。每一层只做自己的事,层与层之间通过标准接口通信。这样即使某个模块出问题,也不会影响整体运行。

6. 实战中的几个坑

最后,分享几个我在事件驱动做市中踩过的坑:

  • 坑一:财报发布后,不要立即撤单。很多人怕被信息优势方吃掉,财报一出就撤单。但撤单本身也会造成流动性真空,反而加剧波动。我建议设置一个「冷却期」,比如3秒内只撤单不挂单。
  • 坑二:新闻情绪分析不要只看标题。标题党太多了。我吃过一次亏:某公司财报标题写「营收增长20%」,但正文里写的是「净利润下降30%」。系统只抓了标题,结果做反了方向。
  • 坑三:宏观数据发布时,不要同时做多个品种。我曾经在非农数据发布时同时做市黄金、欧元、美债,结果三个品种同时剧烈波动,库存风险完全失控。现在我的系统在宏观数据发布前会自动降低品种数量。

总结一下:事件驱动做市,本质上是在信息不对称和波动率突变的环境中,通过精细化的参数管理和风险控制来赚取流动性溢价。不要试图预测事件结果,而是管理事件前后的市场状态。

好了,这一章的内容就到这里。事件驱动做市是个很有意思的领域,值得花时间去打磨。

无相订单流研究社 微信Lucian808555