Tag: Level-2行情

上证所Level-2行情接口开发

上证所Level-2行情接口开发

高昀

主要内容

Level-2产品介绍

Level-2系统接入

Level-2数据解码

一、Level-2产品介绍

Level-1行情的不足

Level-1行情Show2003.dbf不足之处

内容

信息量少,市场深度反映不够--Show2003只有29个有效字段

实时信息产品单一--Show2003为仅有的实时行情产品

按同一模式显示不同的交易品种--显示债券、基金信息时出现“市盈率”字段名

技术

5秒钟一次的快照,文件交换方式,发布延时明显

信息内容可扩展性差--dbf文件是固定字段,只能通过增加数据库字段方式来增加信息内容

从Level-1到Level-2

商业模式:“免费”->收费

发布路径:券商->信息商

行情深度:五档->十挡,新增委托明细和全部成交信息

行情频率:5秒->3秒

数据格式:dbf->FIX/STEP->FAST

交换方式:文件->文本数据流->二进制数据流

行情延时:3秒->28毫秒->20毫秒

Level-2内容

ReferenceData(UA101)

Transaction(UA3101)

MarketData(UA3102,UA3113)

OrderQueue(UA3111)

行情展示

OrderQueue(UA3111)

MarketData(UA3102)

Transaction(UA3111)

二、Level-2系统接入

SSEtoVendorConnection

VDE(VendorDataEngine)

VSS(VendorSuppliesSystem)

VDEtoVSSConnection

DailyProcedure

三、Level-2FAST数据解码

Level-2FAST的介绍

FIXAdaptedforStreaming(FAST)

为解决FIX协议传输市场数据存在冗余度高,带宽需求大的问题,芝加哥商品交易所于2003年11月17日向FPL提交了一个隐示标记(Implicittags)方案

FPL于2004年12月27日宣布成立市场数据优化工作组(MDOWG,MarketDataOptimizationWorkingGroup).

2005年5月开始MDOWG根据一系列POC的结果,开始进行协议标准制定

2006年初完成FAST(FIXAdaptedforSTreaming)V1.0

2006年12月完成FASTV1.1

Level-2FAST的介绍

中国证券市场的特点

1.2亿交易帐户

较高的换手率,上海证券交易所日交易金额峰值超过3000亿,成交笔数超过4000万

市场数据的发展趋势和挑战

产品越来越多、挂牌证券数量越来越大

更多的价格档位、更多的市场深度

更少的延时

Level-2FAST的介绍

STEP协议的优缺点

基于FIX,已成为事实上的证券数据标准

语法简单,定义灵活,易扩展

数据相对冗余

8=STEP.1.0.0<SOH>9=112<SOH>35=D<SOH>49=Sender<SOH>56=Target<SOH>34=235<SOH>1=A123456789<SOH>55=青岛啤酒<SOH>48=600600<SOH>54=B<SOH>44=8.520<SOH>38=1000<SOH>60=20030703-09:35:28<SOH>11=825<SOH>10=157<SOH>

STEP的冗余

平均每条消息长度为467字节,FAST编码后为127字节

平均每条消息长度为160字节,FAST编码后为25字节

Level-2FAST的介绍

FAST的技术优势

高压缩比(70-80%)

低资源消耗

算法简单,效率高,每秒百万级别消息的处理能力

FAST系统测试结果

带宽利用率与STEP系统对比测试结果比较

测试结果:

FAST版本

最大值为0.679Mbps;

平均值为0.162Mbps

STEP版本

最大值为2.23Mbps;

平均值为0.668Mbps

FAST版本平均值为STEP版本的24.2%

FAST关键技术

FieldEncoding

隐式标签(ImplicitTag)(模版Template)

提供消息层面的优化

操作符(Operator)

消息层面和tag层面的优化

TransferEncoding

二进制数据流

PresenceMap(PMAP)

StopBitEncodedEntities

FieldEncoding—ImplicitTag

Implicittag

将FIX的tag=value格式进行分离,变成消息模板和消息内容。

消息模板在双方通信之前就确定,实际只需要传输消息内容

FieldEncoding

常用数据类型

FieldEncoding

FieldEncodingOperator

FieldEncodingOperator

ConstantValue

用途:主要用于表示模板中的固定数据

FieldEncodingOperator

DefaultValue

用途:主要用于表示默认值

FieldEncodingOperator

CopyValue

用途:主要用于表达相邻数据相同的情况

FieldEncodingOperator

IncrementValue

用途:主要用于表示前后数据有规律的递增的情况

FieldEncoding

FieldEncoding-Template

定义和语法,包括:

Field(MessageStructure)

FieldEncodingOperator

DataType

如何表示:

XML语言

FieldEncoding-Template

XML格式的模板示例

Transfer Encoding

对FIX数据实现二进制Byte/Bit Level优化

根据模板生成数据流,并且同步进行压缩的协议

本身具有通用性,是一个与具体的应用无关的协议。

Transfer Encoding

stream ::= message* | block*

block ::= BlockSize message+

message ::= segment

segment ::= PresenceMap TemplateIdentifier? (field | segment)*

field ::= integer | string | delta | ScaledNumber | ByteVector

integer ::= UnsignedInteger | SignedInteger

string ::= ASCIIString | UnicodeString

delta ::= IntegerDelta | ScaledNumberDelta | ASCIIStringDelta | ByteVectorDelta

Transfer Encoding-Stop Bit

最高比特位

0:下一个字节属于同一个实体

1:下一个字节不属于同一个实体

编码举例:

Transfer Encoding-Presence Map

在每一条消息的开头处增加标志串(BYTE 数组)

每一个Bit标示后面的各个field存在与否,1存在,0不存在

不用传送的field不用进行编码,减少了数据量

Transfer Encoding-Presence Map

Presence Map and NULL

NULL一般用来指示这一field没有出现(absent)

Data Type Example

uInt32 Example—Optional Number

如何解析Level-2 FAST 的消息

VSS

1 Initial

2 ReadTemplates

3 Connect VDE

4 Logon

5 Receive Data

6 Decode

7 业务处理

Level-2行情是什么意思?和Level-1行情区别是什么?

上证所Level-1行情是上海证券交易所基本行情,指根据《上海证券交易所交易规则》要求公布的即时行情信息;数据格式包括基于FIX/FAST协议的接口和TXT;行情通过上海证券通信有限责任公司的高速地面网和宽带广播卫星系统公布,或上证所信息网络有限公司的互联网和专线传输。

上证所Level-2行情为上证所信息网络有限公司推出的上海证券交易所新一代行情,是在基础行情上增加了增值信息,以更好地满足机构投资者和专业投资者对行情信息的差异化需求。数据采用基于FIX/FAST协议的接口,行情通过上证所信息网络有限公司专网的传输。

Level-2产品是由上海证券交易所推出的实时行情信息收费服务,主要提供在上海证券交易所上市交易的证券产品的实时交易数据。包括十档行情,买卖队列,逐笔成交,委托总量和加权价格等多种新式数据。使用Level-2软件的股民,在开盘时间内,可以随时看到庄家、散户买卖股票的情况。

买卖行情

买入委托和卖出委托前10档的委托价和委托量,投资者可以看得更远,哪个价位有阻力?哪个价位有支撑?哪个价位有大笔挂单,一目了然。

总买总卖

当前全部买入(卖出)委托的总量和加权均价,据此投资者可以判断盘中的支撑位(委买均价)、阻力位(委卖均价)、支撑力度(委买总量)、阻力大小(委卖总量),还可以根据这些数据的动态变化剖析多空双方力量的变化,寻找行情的转折点

成交明细

在Level-2之前,沪深交易所提供的都是行情快照,大家看到的分笔成交其实是两次快照期间累计的成交量和最后一笔的价格,而逐笔成交则是真实的每笔成交价和成交量的明细数据。逐笔成交极大地提高了行情的透明度。

买卖队列

买一或卖一的前50笔委托单明细,根据委托单的大小或委托单是否有规律,可以判断委托是机构、大户、或散户所为。

最新消息:据上证所信息网络有限公司消息,2022年11月9日9时45分,因Level-2行情主用系统报警,我司按应急预案切换至备用系统。9时50分以后,信息商陆续反馈行情显示已恢复正常。至下午开盘前,所有信息商均已恢复正常。期间,Level-1行情正常公布。经与上海证券交易所确认,沪市交易不受切换影响,均正常进行。