哪些是电子金融交易最常用的订单匹配算法? 某处是否有订单匹配算法列表?
答案 0 :(得分:66)
一般来说,有两组匹配算法,一组针对每个市场状态:
拍卖交易有很多种算法,可以在市场开盘前,市场收盘时使用。但大部分时间,市场都在进行持续交易。因此,我会在这里进入后一类。
最常用的是价格/时间优先和 Pro-Rata 。两者都针对各种类型的产品和用例进行了调整和扩展,但为了简洁起见,我将仅在此解释基础知识。
<小时/> 价格/时间优先,又名 FIFO ,确保
根据时间优先级填写相同价格水平的所有订单;价格水平的第一个订单是第一个匹配的订单。
按订单簿排序,按价格和时间排序如下:
Id Side Time Qty Price Qty Time Side
---+------+-------+-----+-------+-----+-------+------
#3 20.30 200 09:05 SELL
#1 20.30 100 09:01 SELL
#2 20.25 100 09:03 SELL
#5 BUY 09:08 200 20.20
#4 BUY 09:06 100 20.15
#6 BUY 09:09 200 20.15
注意:按时间排序的顺序是买方订单的升序和卖方订单的降序,因此优先级最高的订单始终位于中心,优先级向外递减(向上或向下,取决于一边)。
现在假设有一个新的限价单“以20.35 购买250股”,然后它将按此顺序填写:
这使订单簿处于以下状态:
Id Side Time Qty Price Qty Time Side
---+------+-------+-----+-------+-----+-------+------
#3 20.30 150 09:05 SELL
#5 BUY 09:08 200 20.20
#4 BUY 09:06 100 20.15
#6 BUY 09:09 200 20.15
<小时/> Pro-Rata 忽略订单下达的时间,并根据相对数量以价格水平向所有订单填充数量。再拍上面的初始订单,让我们匹配相同的“购买250@20.35 ”订单。
填充将是:
离开以下订单:
Id Side Time Qty Price Qty Time Side
---+------+-------+-----+-------+-----+-------+------
#3 20.30 100 09:05 SELL
#1 20.30 50 09:01 SELL
#5 BUY 09:08 200 20.20
#4 BUY 09:06 100 20.15
#6 BUY 09:09 200 20.15
<小时/> CME小组提供他们使用的list of matching algorithms,并链接到每个小组的描述。
有关更多信息,您可能还需要查看Rajeev's pages上的“订单匹配”相关文档。
答案 1 :(得分:5)
通常他们使用先进先出种算法,因为它们可以最大化有效订单的数量。
每个交易所都有自己的一套规则,这些规则在其网站中有说明。 这一个here就是一个例子。