1. 期权做市系统概述
做市商,说白了就是市场的「双边报价商」。你想想看,一个期权市场如果没有做市商,买方和卖方很难同时出现,流动性就会很差。做市商干的事很简单——同时挂出买价和卖价,赚取中间的价差。
我个人习惯把做市商比作「流动性的搬运工」。我们不是靠方向性交易赚钱,而是靠提供流动性赚取微薄的价差。嗯,这里要注意,期权做市和股票做市完全是两码事。期权的维度更多,风险更复杂。
1.1 什么是做市商
做市商(Market Maker)是交易所指定的专业机构,有义务持续提供双边报价。我在项目中遇到过不少刚入行的朋友,以为做市商就是高频交易。其实不完全对。高频交易只是手段,做市才是目的。
做市商的核心职责有三点:
- 持续报价:在交易时间内,必须维持一定比例的合约有双边报价
- 价差控制:买卖价差不能超过交易所规定的最大值
- 最小挂单量:每个报价至少要有一定数量的合约
关键认知:做市商不是投机者。我们赚的是流动性溢价,不是方向性收益。如果你抱着「赌方向」的心态来做市,迟早会亏得很惨。
1.2 期权做市的核心策略
期权做市的策略,我总结下来就三个层次。底层是 Greeks 管理,中层是定价模型,上层是风险管理。
第一层:Greeks 对冲
做市商最怕什么?裸卖期权。你想想看,如果只卖不买,行情一波动就爆仓。所以必须做 Delta 对冲。我习惯用期货来对冲 Delta,因为流动性好、成本低。
具体来说:
- Delta 对冲:每笔期权成交后,立即用标的期货对冲 Delta 敞口
- Gamma 管理:Gamma 大的时候要频繁调整,Gamma 小的时候可以放宽
- Vega 控制:波动率曲面要实时更新,不能用一个固定的隐含波动率
第二层:定价模型
做市商用的定价模型和学术界不太一样。学术界喜欢 BS 模型,但实际交易中我们更看重波动率曲面。我曾经踩过一个坑——直接用 BS 模型算理论价,结果在深度虚值期权上亏了不少。后来改用随机波动率模型,情况才好转。
第三层:风险管理
- 持仓限额:每个合约、每个月份、每个品种都要设上限
- 压力测试:极端行情下,组合的亏损能不能扛住
- 熔断机制:亏损达到阈值时,自动撤单并停止报价
个人经验:我建议新手做市商先从 ETF 期权做起。ETF 期权的流动性好,波动率相对稳定,容错率高。商品期权波动大,容易出问题。
1.3 系统架构概览
期权做市系统的架构,说白了就是「快」和「准」的平衡。快是延迟要低,准是定价要精确。这两者有时候是矛盾的——更复杂的模型意味着更长的计算时间。
下面这张图是我自己总结的做市系统核心架构:
这个架构图我用了很多年,每次给团队培训都会拿出来讲。你看,从上到下分四层:
- 行情接入层:负责接收交易所的实时行情。这里要注意,行情数据不能丢,也不能乱序。我习惯用多路冗余接入,主备切换时间控制在1微秒以内。
- 定价引擎:这是系统的核心。定价要快,还要准。我见过有些团队用 GPU 做定价,延迟反而比 CPU 高。为什么?因为数据传输的 overhead 太大。对于期权做市,CPU 上的优化往往更实用。
- 策略决策层:根据定价结果和当前持仓,决定报什么价、报多少。这里有个坑——策略逻辑不能太复杂。我曾经见过一个策略,每次决策要算几百个合约的 Greeks,结果延迟飙到毫秒级,直接被交易所踢出做市商名单。
- 订单执行层:负责把策略生成的订单发到交易所。撤单重报的逻辑要特别小心,搞不好会把自己锁死在某个价位上。
避坑指南:我曾经犯过一个错误——把定价引擎和策略决策放在同一个线程里。结果定价计算稍微慢了一点,整个报价链路都卡住了。后来我改成异步架构,定价和决策分离,延迟稳定多了。
1.4 性能指标
做市系统的性能,我一般看三个指标:
| 指标 | 要求 | 说明 |
|---|---|---|
| 端到端延迟 | < 50微秒 | 从行情到达到订单发出,不能超过50微秒 |
| 吞吐量 | > 10万笔/秒 | 每秒能处理的行情和订单数量 |
| 定价精度 | < 0.1个最小变动价位 | 定价误差不能太大,否则会被套利者盯上 |
你想想看,50微秒是什么概念?光在光纤里走1公里就要5微秒。所以做市系统的优化,很多时候是在跟物理定律较劲。
个人建议:刚开始做做市系统,不要追求极致的延迟。先把功能做对,再考虑优化。我见过太多团队,一上来就搞 FPGA、搞内核旁路,结果系统跑起来全是 bug。稳扎稳打,才是正道。
好了,这一章就讲到这里。做市商的核心就是提供流动性、赚取价差。系统架构要兼顾速度和精度,不能偏废。后面的章节我们会深入每个模块的具体实现和优化技巧。