美文网首页
币安DEX去中心化交易所的匹配逻辑

币安DEX去中心化交易所的匹配逻辑

作者: nfan | 来源:发表于2020-06-02 17:33 被阅读0次

最近在研究币安DEX交易所的匹配逻辑,部分内容有点难以理解,故整理一份供大家参考:

匹配步骤

1. 当市场不发生匹配的时,不做操作,即买入价和卖出价不发生交叉,买入价低于最低买出价。

2. 当订单发生交叉时开始匹配,进入匹配逻辑:

  原则一: 匹配最大成交量的订单。

         下图的第一列的SUM指的累计卖出, 第四列的SUM指的是累计买入。下图的4个价格中,可以匹配的最大量的为第三行,可执行量为300,它所有价格中,可执行量最多。

匹配最大成交量1

 执行量(execution)=  累计买入与累计卖出二者之间的较小值,如下图中带*号的交易中,累计卖出是300,累计买入是500, 执行量为300.

匹配最大成交量2

3.  当最大可执行量中,有多个价格时,使用如下原则:

            原则二:当最大可执行量,有两个或两个以上的价格时,采取差额(imbalance)绝对值最小优先原则.

            如下图中,最大可执行量为900的,有三个价格,98,97,96, 而差额最小的为100

匹配差额绝对值最小1

              差额(imbalance)= 累计买入- 累计卖出 。

匹配差额绝对值最小1

4.  当差额绝对值最小的价格有多个时,使用如下原则:

            原则三:当差额绝对值最小的价格有多个时:

               a. 当所有差额都为正值(买方压力)时,

                                I. 如果所有价格都小于【上次成交价(Reference Price)+ 5%(上限百分比)】,则使用最高价格。

                                II.如果所有价格者大于【上次成交价(Reference Price)+ 5%(上限百分比)】,则使用最低价格

                                III.否则以【上次成交价(Reference Price)+ 5%(上限百分比)】成交。

               b. 当所有差额为负值(卖方压力)时,

                                 I.如果所有价格都大于【上次成交价(Reference Price)- 5%(下限百分比)】,则使用最低价格。

                                 II. 如果所有价格都小于【上次成交价(Reference Price)- 5%(下限百分比)】,则使用最高价格。

                                 III. 否则,使用【上次成交价(Reference Price)- 5%(下限百分比)】成交。

       当差额(imbalance)>0为 买方压力,当差额(imbalance)<0为 卖方压力。

 下图中,所有的差额都为负数,则为卖方压力,而所有价格都大于(80-80*5%),所以使用最低价格。

匹配市场压力1

         下图中,所有的差额都为负数,则为卖方压力,而所有价格都小于(100-100*5%),所以使用最高价格。

匹配市场压力2

下图中,所有的差额都为正数,则为买方压力,而所有价格既有大于(90+90*5%)又有小于(90+90*5%)的,所以使用(90+90*5%)成交,最接近的是95。

匹配市场压力3

下图中, 所有的差额都为负数,为卖方压力,而所有价格既有大于(100-100*5%)又有小于(100-100*5%)的,所以使用(100-100*5%)=95 成交。

匹配市场压力4

   5.  当差额中,既有正数又有负数,使用如下原则:

         原则四: 当差额中,既有正数又有负数时,如果上次成交价格落在这些价格中,则使用上次成交价格,否则使用最接近上次成交价的价格。

         下图中,上次成交价格为99,上次价格落在这些价格中,使用上次成交价格

匹配上次成交价格1

         下图中,上次成交价格为97,上次成交价格落在这些价格中,使用上次成交价格

匹配上次成交价格1

参考链接:https://docs.binance.org/match-examples.html

转载请注明出处

相关文章

网友评论

      本文标题:币安DEX去中心化交易所的匹配逻辑

      本文链接:https://www.haomeiwen.com/subject/rixpzhtx.html