逐笔行情与切片行情(含瓶片行情异常波动分析)

逐笔行情与切片行情(含瓶片行情异常波动分析)

1.现象

此篇文章从一根惊心动魄的大长针说起:

2024.9.11,13:37:00,各大行情商的终端上出现了一条诡异的行情:

瓶片2503合约,在13:37的分钟线,从5898直接跳到了6090,涨幅惊人。

而更为诡异的是,有人埋得很深的卖单竟然被成交了,而且成交价竟然高达6374,远在分钟线的最高点6090之外。

而这个6374的成交价,直到闭市的时候,才在日线上显示出来:

然后有不明真相的人就开始质疑了,在短视频平台上、行情商软件的评论区里面带节奏,甚至质疑交易所的公平性,各种难听的话都说出来了。

总结了一下,质疑的内容主要有两点:

  • 为什么有人6374成交了,但是分钟线的最高价只到6090
  • 为什么日线上的最高价是6374,这个价格在分时线和成交明细中都找不到

有清醒的人一语道破天机:

下面我们分析下原因,并还原下当时发生了什么。

2.原理

2.1 原理一:切片行情与逐笔行情

首先说一下交易所行情发布的原理。

国内交易所的行情都是切片行情,与切片行情相对的是逐笔行情,两者最核心的区别在于发布行情的频率。

逐笔行情可以理解为,下一个单发布一次行情。切片行情可以理解为,无论是否下单以及下多少单,都是定时发布行情。

以下面的例子为例(箭头代表下了单):

如果是逐笔发布行情,那么在上述两秒中,需要发布15次行情,而如果是切片发布行情,只需要定点发布4次即可。

逐笔行情的好处是行情发布及时,缺点是对带宽要求很高,增加用户接入成本。

另外,由于逐笔行情属于非展示行情,一般只有程序化用户才有能力使用,所以开放逐笔行情对普通用户不公平,交易所短期内也不会考虑开放逐笔行情。

切片行情的优缺点与逐笔行情相反,不再赘述。

2.2 原理二:行情计算vs行情发布

第二个需要区分的概念,是行情计算与行情发布。

先说结论,交易所的行情都是逐笔计算,切片发布的!

我们仍以上述图示为例,交易所的行情虽然只发布4次,但是计算了15次,每次入单撮合时都会即时计算行情。

行情计算主要是更新队列的排队情况,如果有成交的话,还要根据成交价、成交量、开平方向更新相关的成交行情(最高价、最低价、均价、成交量、持仓量等)。

本例中涉及的是后者,即逐笔计算成交行情,定时发布成交行情。

2.3 原理三:最新价与最高价

之前我写过一篇解释各个行情字段含义的文章:传送门

这里我们单独解释下跟本例息息相关的两个字段,即成交行情中的最新价与最高价。

最新价,即最新一笔成交价。最高价,即截止到当前时刻的最高成交价。

这两个字段跟逐笔计算、切片发布有什么关系呢?

从定义上来看,最新价本身就是一个快照性质的字段,他在成交过程中会不断变化,最终在发布切片行情时,发布的其实是最后一笔成交的成交价。

而最高价是能记住变化历史的,在两个行情切片中,如果有成交价突破当前的最高价,那么新的最高价就会被记录下来,并在下次发布切片行情时发布出来。

所以,要想看两次行情切片之间的真实最高成交价,应该看行情字段中的最高价,而非最新价

结合本例来说:瓶片分钟线中的最高价6090,其实是这一分钟内,行情软件根据瓶片合约的最新价的变化绘制的,代表的含义是,这一分钟中交易所发布的60*2=120笔切片行情中,最新价的最高价(非交易所直接发布的最高价行情字段)是6090。瓶片日线中的最高价6374,则是行情软件按照交易所直接发送的最高价绘制的。

这个问题可以分两方面来看:

1)如果交易所发布的是逐笔行情而非切片行情,那么分钟线跟踪最新价是没问题的,最新价的最高价一定等于交易所直接发布的最高价字段。

2)如果行情软件在绘制分钟线的时候,不仅仅跟踪最新价,在统计区间结束的时候,看一下交易所直接发布的最高价和最低价,对自己跟踪最新价计算的最高最低价进行修正,是不是也可以解决这个问题了呢?

关于解决方案:一条路是让交易所改发逐笔行情,然而根据前面的分析,基本没有可行性,所以这一条路直接pass。另外一条路是让行情软件根据交易所发布的最高价修正自己跟踪最新价计算的最高价,这样就能保证分钟线与日线一致了。

然而,这条路还有两个问题。

问题1:成交明细中依然看不到交易所的最高价

看上图,这个是行情软件发布的“逐笔”成交明细,然而这个逐笔不是真的逐笔,仍然是根据交易所发布的切片行情来计算的,并且其中的“价位”字段也是显示的最新价。所以查看行情软件的逐笔成交明细,依然看不到真正的最高价。

问题二:分钟线中“最高价”的含义,难道我就不能定义为最新价的最高价么?非得是真实最高价?(勿喷)

3.数据补充

我们结合后台接收到的交易所原始行情,来看下当时发生了什么,以及交易所发布的行情是否有问题。

从上图可以看到,在13:36:41.750,交易所对外发布的行情中,最高价从6050跳到了6374,而此时最新价只从6018跳到了6026,最新价的最高价6090是在13:36:43.250发布的。

也就是说,真实的最高价,交易所已经在指定时刻及时发送了出去,所以交易所没有问题。

那么这一刻到底发生了什么呢?

根据上述行情明细,成交量大幅增加,总卖量大幅减少,总买量基本持平,所以合理猜想应该是:

有人以远超盘面的价格报了大量买单,吃掉了多档卖单后完全成交,此时因为还不到行情发布时间,最优卖价以及最新成交价未更新,所以仍有卖方根据上一波行情情况报单并与队列中的买单成交,把最新价又拉了回来。

所以最终呈现的效果就是,两次行情发布的最新价没有波动,但是最高价大幅波动。

这就是真相。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注