撮合交易完全指南:订单匹配的核心机制

撮合交易完全指南:订单匹配的核心机制

OKX教程团队

你是否想知道交易所如何匹配买卖订单?是否好奇为什么有时候订单立即成交,有时候需要等待?是否想了解价格优先和时间优先的规则?

2023年3月,深圳的张明挂限价单买入BTC,价格$30,000。几秒后,有人挂卖单$30,000,撮合引擎立即匹配两个订单,交易完成。撮合交易让买卖双方无需直接沟通,系统自动完成交易。

2023年8月,上海的李女士同时挂了两个买单:$29,900和$29,800。当有人挂卖单$29,900时,撮合引擎优先匹配她的$29,900订单(价格优先原则),而不是$29,800订单。

2023年11月,北京的王先生和广州的刘女士同时挂买单$30,000。当有人挂卖单$30,000时,撮合引擎优先匹配王先生的订单(时间优先原则),因为他的订单时间更早。

  • 部分成交风险:大额订单可能只部分成交,剩余部分继续挂单
  • 价格滑点风险:市价单可能因订单簿深度不足导致滑点
  • 订单排队风险:限价单可能长时间排队不成交
  • 撤单延迟风险:撤单可能有延迟,期间订单可能成交
  • 极端行情风险:极端行情下订单簿可能瞬间清空
  • 系统延迟风险:网络延迟可能影响订单提交和成交

什么是撮合交易?

系统会按价格优先、时间优先的原则进行撮合。

"买入开多"、"买入平空"为买单方向,"卖出开空"、"卖出平多"为卖单方向。

买单方向价格最高、时间最早为买单序列第一,卖单方向价格最低、时间最早为卖单序列第一。

当买单序列第一价格大于等于卖单序列第一价格时,则能撮合成交。

撮合交易的基本概念

订单簿:显示所有挂单的买卖价格和数量。

2023年3月,杭州的陈先生查看BTC订单簿:

  • 买单(Bid):
    • $29,900 - 2 BTC(价格最高)
    • $29,800 - 5 BTC
    • $29,700 - 10 BTC
  • 卖单(Ask):
    • $30,000 - 3 BTC(价格最低)
    • $30,100 - 4 BTC
    • $30,200 - 8 BTC

买卖价差:最高买价和最低卖价的差额。

2023年6月,广州的刘女士:

  • 最高买价:$29,900
  • 最低卖价:$30,000
  • 买卖价差:$100

价差越小,流动性越好。

撮合引擎的工作原理

撮合引擎:自动匹配买卖订单的系统。

2023年9月,成都的赵先生:

  1. 他挂买单:$30,000,1 BTC
  2. 订单进入订单簿
  3. 有人挂卖单:$30,000,1 BTC
  4. 撮合引擎检测到价格匹配
  5. 自动完成交易
  6. 双方收到成交通知

整个过程毫秒级完成。

价格优先原则

价格更优的订单优先成交。

买单价格优先

买单价格越高,越优先成交。

2023年10月,西安的吴女士和长沙的郑先生:

  • 吴女士买单:$30,000,1 BTC
  • 郑先生买单:$29,900,1 BTC
  • 有人挂卖单:$29,900,1 BTC
  • 撮合引擎优先匹配吴女士的订单(价格更高)

卖单价格优先

卖单价格越低,越优先成交。

2023年11月,重庆的黄先生和天津的林女士:

  • 黄先生卖单:$30,000,1 BTC
  • 林女士卖单:$30,100,1 BTC
  • 有人挂买单:$30,100,1 BTC
  • 撮合引擎优先匹配黄先生的订单(价格更低)

价格优先的实战案例

2023年12月,合肥的彭先生想快速买入BTC:

  • 当前最低卖价:$30,000
  • 他挂买单:$30,100(高于市场价)
  • 立即成交(价格优先)
  • 实际成交价:$30,000(以卖单价格成交)

他通过提高买单价格,确保订单优先成交。

时间优先原则

价格相同时,时间更早的订单优先成交。

时间优先的规则

同价订单按时间顺序排队。

2024年1月,苏州的曾女士、无锡的邓先生、常州的龚先生:

  • 曾女士买单:$30,000,1 BTC(10:00:00)
  • 邓先生买单:$30,000,1 BTC(10:00:05)
  • 龚先生买单:$30,000,1 BTC(10:00:10)
  • 有人挂卖单:$30,000,1 BTC
  • 撮合引擎优先匹配曾女士的订单(时间最早)

时间优先的实战案例

2024年2月,扬州的姚女士想抢购热门币种:

  • 她提前挂买单:$1.00
  • 其他人也挂买单:$1.00
  • 币种上线后,她的订单优先成交(时间最早)

时间戳的精度

撮合引擎使用毫秒级时间戳。

2024年3月,南通的袁先生和镇江的秦先生:

  • 袁先生订单:10:00:00.123
  • 秦先生订单:10:00:00.456
  • 时间差:333毫秒
  • 袁先生订单优先成交

撮合成交的过程

完全成交

订单全部成交。

2024年4月,泰州的史女士:

  • 挂买单:$30,000,1 BTC
  • 有人挂卖单:$30,000,2 BTC
  • 她的订单完全成交:1 BTC
  • 卖单剩余:1 BTC继续挂单

部分成交

订单只部分成交,剩余部分继续挂单。

2024年5月,盐城的汤先生:

  • 挂买单:$30,000,10 BTC
  • 有人挂卖单:$30,000,3 BTC
  • 部分成交:3 BTC
  • 剩余:7 BTC继续挂单

立即成交或取消(IOC)

订单立即成交,未成交部分自动取消。

2024年6月,连云港的贺女士:

  • 挂IOC买单:$30,000,10 BTC
  • 订单簿只有3 BTC卖单
  • 成交:3 BTC
  • 剩余7 BTC自动取消(不继续挂单)

全部成交或取消(FOK)

订单必须全部成交,否则全部取消。

2024年7月,淮安的韦先生:

  • 挂FOK买单:$30,000,10 BTC
  • 订单簿只有3 BTC卖单
  • 无法全部成交
  • 订单全部取消(一个都不成交)

市价单的撮合

市价单按订单簿价格逐级成交。

市价单的成交过程

2024年8月,宿迁的卫先生用市价单买入10 BTC:

  • 订单簿卖单:
    • $30,000 - 3 BTC
    • $30,100 - 4 BTC
    • $30,200 - 5 BTC
  • 成交过程:
    • 先吃$30,000的3 BTC
    • 再吃$30,100的4 BTC
    • 再吃$30,200的3 BTC
  • 平均成交价:$30,110

市价单的滑点

订单簿深度不足时,市价单会产生滑点。

2024年9月,徐州的蒋女士用市价单买入100 BTC:

  • 订单簿深度不足
  • 成交价从$30,000滑到$32,000
  • 滑点:$2,000/BTC
  • 总滑点损失:$200,000

避免方法:大额订单用限价单分批挂单。

撮合交易的实战策略

策略1:挂单抢先

在关键价位提前挂单,利用时间优先。

2024年10月,南京的谢先生:

  • 预判BTC会跌到$29,000
  • 提前挂买单:$29,000
  • BTC跌到$29,000时,他的订单优先成交

策略2:价格优势

提高买单价格或降低卖单价格,利用价格优先。

2024年11月,常州的龚先生急需买入:

  • 最低卖价:$30,000
  • 他挂买单:$30,050
  • 立即成交(价格优先)
  • 实际成交价:$30,000

策略3:分批挂单

大额订单分批挂单,避免滑点。

2024年12月,扬州的姚女士要买100 BTC:

  • 分10次挂单,每次10 BTC
  • 价格:$30,000-$30,500
  • 避免了市价单的巨大滑点

策略4:观察订单簿

根据订单簿深度调整策略。

2025年1月,南通的袁先生:

  • 订单簿深度好:用市价单快速成交
  • 订单簿深度差:用限价单避免滑点

撮合交易的常见问题

问题1:订单为什么不成交?

2025年2月,镇江的秦先生:

  • 挂买单:$29,000
  • 当前价:$30,000
  • 原因:买单价格低于市场价,无法成交

解决方法:提高买单价格或等待价格下跌。

问题2:为什么成交价和挂单价不同?

2025年3月,泰州的史女士:

  • 挂买单:$30,100
  • 成交价:$30,000
  • 原因:撮合引擎以卖单价格成交(对买方有利)

这是正常现象,买方获得了价格优势。

问题3:为什么订单部分成交?

2025年4月,盐城的汤先生:

  • 挂买单:10 BTC
  • 只成交:3 BTC
  • 原因:订单簿只有3 BTC卖单

解决方法:等待更多卖单,或提高买单价格。

问题4:为什么撤单失败?

2025年5月,连云港的贺女士:

  • 撤单时提示失败
  • 原因:订单已经成交

撤单和成交几乎同时发生,撤单请求晚了。

撮合交易的高级技巧

技巧1:冰山订单

大额订单只显示一部分,避免影响市场。

2025年6月,淮安的韦先生要买100 BTC:

  • 总订单:100 BTC
  • 每次只显示:10 BTC
  • 成交10 BTC后,自动显示下一个10 BTC

技巧2:时间加权平均价格(TWAP)

在一段时间内均匀挂单,获得平均价格。

2025年7月,宿迁的卫先生:

  • 要买50 BTC
  • 分10次挂单,每次5 BTC
  • 每小时挂一次
  • 10小时内完成

技巧3:成交量加权平均价格(VWAP)

根据市场成交量分配订单,获得接近市场平均价的成交。

2025年8月,徐州的蒋女士:

  • 观察市场成交量分布
  • 在成交量大的时段挂更多订单
  • 获得接近市场平均价的成交

常见问题解答

1. 撮合交易是如何工作的?

撮合引擎按价格优先、时间优先的原则,自动匹配买卖订单。买单价格≥卖单价格时,订单成交。

2. 为什么我的订单排在后面?

因为有其他订单价格更优或时间更早。提高价格或提前挂单可以提高优先级。

3. 市价单一定会成交吗?

通常会成交,但极端行情下订单簿可能清空,导致无法成交或严重滑点。

4. 限价单什么时候成交?

当市场价格达到你的限价时,订单才会成交。如果价格一直不到,订单会一直挂单。

5. 如何避免滑点?

使用限价单而不是市价单,或者分批挂单,避免一次性大额交易。

6. 撮合引擎会优先处理大户订单吗?

不会。撮合引擎对所有订单一视同仁,只按价格和时间优先原则处理。

核心要点总结

  1. 撮合交易按价格优先、时间优先原则,自动匹配买卖订单
  2. 价格更优的订单优先成交,同价订单按时间顺序排队
  3. 市价单可能产生滑点,大额订单建议用限价单分批挂单
  4. 观察订单簿深度,根据流动性调整交易策略
  5. 提前挂单或提高价格,可以提高订单优先级

延伸阅读

  • 订单簿:理解市场深度
  • 限价单与市价单:订单类型详解
  • 挂单吃单:降低交易成本
  • 滑点:价格偏离的原因
  • 流动性:影响交易成本的关键
  • 高级订单类型:冰山订单和TWAP

Related Articles