专题活动

您的位置:首页--投资者教育--专题活动

【质量月】证券交易数据交换协议

来源:鑫鼎盛期货    时间:2025-09-25    浏览:1次


 

 

JR/T 0022-2014

8 数据完整性  8

9 扩展方式  9

9.1 扩展分类  9

9.2 扩展规则  9

9.3 版本管理  9

10 消息定义  9

10.1 消息头  9

10.2 消息尾  11

10.3 会话消息  11

10.3.1 会话消息概述  11

10.3.2 心跳消息(MsgType=0)  11

10.3.3 登录消息(MsgType=A)  11

10.3.4 测试请求消息(MsgType=1)  12

10.3.5 重发请求消息(MsgType=2)  13

10.3.6 会话拒绝消息(MsgType=3)  13

10.3.7 序号重设消息(MsgType=4)  15

10.3.8 注销消息(MsgType=5)  16

10.4 应用消息  16

10.4.1 应用消息组件  16

10.4.2 订单业务类  20

10.4.3 投票业务类  25

10.4.4 注册业务类  28

10.4.5 行情  29

10.4.6 市场控制  33

11 数据字典  36

   A (资料性附录) 应用环境参考实例  58

   B (资料性附录) 重复组实例  59

   C (资料性附录) 缺口填补方式  60

   D (资料性附录) 会话连接场景  62

   E (资料性附录) 应用消息场景  66

   F (资料性附录) 计算校验和  71


 

       

 

本标准按照 GB/T  1.1-2009 给出的规则起草。

本标准由全国金融标准化技术委员会证券分技术委员会(SAC/TC68 SC4)提出。

本标准由全国金融标准化技术委员会(SAC/TC68)归口。

本标准的附录 AB C D EF 为资料性附录。

本标准历史版本有:

——JR/T  0022-2004《证券交易数据交换协议》,2004 年发布

本标准本次版本主要技术变化如下:

——修改了规范性引用文件中部分已有国家标准的国际化标准(见第 2 章,2004 年版的第 2 );

——修改了术语“组件块”的术语和定义(见 3.1,2004 年版的 3.1);

——修改了术语“PBU”的定义(见 3.7,2004 年版的 3.7);

——修改了术语“市场参与者”的定义(见 3.8,2004 年版的 3.8);

——修改了“消息定义”中易混淆的字段,增加了市场字段中“创业板”与“国际板”市场的取值 (见第 10 章,2004 年版的第 10 );

——增加了应用消息组件中的证券品种(见 10.4.1.2);

——修改了应用消息组件中的证券品种名称(见 10.4.1.2,2004 年版的 10.4.1.1);

——增加了应用消息中的业务类别(见 10.4.3)。

本标准起草单位:中国证券监督管理委员会信息中心,上海证券交易所,上证所信息网络有限公司, 深圳证券交易所,深圳证券通信有限公司,海通证券,长江证券,华夏基金。

本标准主要起草人:郑刚、吴韶平、徐广斌、黄寅飞、黄越、喻华丽、王海、巫禄芳、王洪涛、付 运林、齐琼


 


 

 

 

证券交易数据交换协议

 

 

1  范围

 

本标准规定了证券交易所交易系统与市场参与者系统之间进行证券交易所需的数据交换协议 Securities Trading Exchange Protocol,简称STEP),规定了应用环境、会话机制、消息格式、安全与 加密、数据完整性、扩展方式、消息定义、数据字典等内容。

本标准适用于证券交易所与市场参与者和相关金融机构间的业务数据交换。

本标准提供了市场参与者内部系统与市场参与者协议转换接口的连接标准以及市场参与者内部系 统通过开放接口与证券交易所间连接标准。

本标准也可支持证券期货行业各机构系统间连接。

 

2  规范性引用文件

 

下列文件对于本文件的应用是必不可少的。凡是注明日期的引用文件,其随后所有的修改单(不包 括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这 些文件的最新版本。凡是不注明日期的引用文件,其最新版本适用于本文件。

GB/T  2659 世界各国和地区名称代码

GB/T  12406 表示货币和资金的代码

GB/T  23696-2009 证券和相关金融工具 交易所和市场识别码

ISO  10962 证券及相关金融工具-金融工具分类编码(CFI代码)[Securities    related  financial instruments. Classification of financial instruments  (cfi code)]

 

3  术语和定义

 

下列术语和定义适用于本文件。

3.1

组件  component

消息中具有一定业务相关的数据域集合,如证券品种定义,主要用于更直观描述消息的业务含义。 3.2

新订单 new order-single

交易客户方新产生的订单。

3.3

执行报告  ution reports

交易服务方响应交易客户方的消息,主要用于:订单确认、订单状态变化确认(如撤单确认和修改 单确认)、发送订单的成交回报、订单拒绝。


 

 

JR/T 0022-2014

3.4

指定交易  designated trading

将证券账号与某一证券营业部所属的参与者业务单元(如席位号)相联系,从而限定该证券账号的 交易应在该参与者业务单元下进行的交易方式。

3.5

转托管  designation transfer

投资者将其托管在某一券商处的证券转到另一券商处托管的行为,并且投资者只能将证券在其托管 的券商处卖出。

3.6

公司行为  corporate action

上市公司的非交易类业务,如新股配售、配股认购、可转债转股、回售等。

3.7

PBU(参与者业务单元)  participant business unit

市场参与者行使交易权利,获取交易服务的逻辑通道。

3.8

市场参与者 market participants

参与证券交易的客户方,如券商、证券营业部、交易所会员等。

 

4  应用环境

 

证券交易数据交换协议应用环境请参见附录 A、附录 D、附录 E 应用环境参考实例。

 

5  会话机制

 

5.1  STEP 会话

5.1.1  消息序号

任何一条消息都被分配有一个消息序号来唯一标识,消息序号在每次会话过程中从 1 开始,在整个 会话过程中连续递增,直到该会话过程全部结束。通过监视消息序号的连续性可以知道交换中的消息缺 口,并做出反应,使得连接双方数据同步。

连接双方都明确确定相互独立的消息序号,参与连接的任何一方负责维护自己发送的消息序号,并 监视接收的消息序号以保证消息缺口的发现和处理。

5.1.2  心跳

在消息交换的空闲期间,连接双方将会产生有规则的心跳消息。通过心跳消息可以监控通讯连接的 状态。心跳间隔时间由会话发起人在登录时确定。在发送任何消息后,应立即重新设置心跳间隔计时器。


心跳间隔时间应该得到连接双方的确认,由登录发起人给出并得到登录接受方的确认。连接双方使用相 同心跳间隔时间。

5.1.3  缺口填补

由于协议是基于乐观的消息传输模式,消息在传输过程中可能存在丢失,而这种消息丢失发送方不 能检测,因此接收方应负责检测消息的缺口并处理。有两种处理方法:接收方发现缺口后向发送方请求 发送缺口消息及其后的所有消息;接收方发现缺口后,保存已收到消息,并向发送方请求重复发送缺口 消息。

5.1.4  消息重复发送

响应一个重发请求而重复发送消息时,或者不确定对方是否收到某消息而重复发送该消息时,要求 在该消息内加上可能重复标志(PossDupFlag =Y)。如何处理该消息则是接收方的事情。由于当生成有 此类可能重复发送的消息时,仍使用该消息的原来序号,但某些信息可能会改变,如原始时间、发送时 间、正文长度、可能重复标志等,所以应重新计算校验和。

5.1.5  消息重新发送

基于应用层的可能重发,如发送的订单在相当长的时间内没有确认,或者怀疑其根本未曾发送过, 可以通过设置可能重新发送标志来重新发送(Possible  Resend=Y) ,并使用新的消息序号。接收方应用 层收到该类消息后,应通过查询消息内的域(如订单编号等)来确定此前是否收到此条消息。该类消息 应确定包含相同的正文数据,同样,由于某些信息可能会改变,所以应重新计算校验和。

5.1.6  消息确认

由于协议是基于乐观的消息传输模式,通过监视消息序号发现缺口,不支持对每个消息收发的确认。 但大量消息收发的确认可在应用层定义。在应用层接受和拒绝是允许的,如订单的确认。

5.2  STEP 连接

5.2.1  STEP 连接概述

会话过程的数据交换可以这样描述:连接双方各有一个连续的消息序号随消息传送,而交易期间可 以多次断开并重新连接,其断开的原因可以是外因引起,也可以是连接双方根据系统来统一制定何时断 开并重新连接。一次会话连接通常不应超过24小时,当然,如需要保持24小时以上的连接,则需要发送 一条含有序号重设标志的登录消息来建立新的起始消息序号。

STEP连接分为三个部分:登录、消息交换、注销。

STEP会话包含一个或多个STEP连接,即一个STEP会话可以跨越多个登录。

5.2.2  登录

5.2.2.1  登陆步骤

登录连接包含三个步骤:建立电信通讯连接、连接双方的确认/认证、消息传输同步的初始化。

5.2.2.2  连接

会话的发起方与接收方建立电信通讯连接。

5.2.2.3  认证


发起方发送登录消息(Logon),接收方认证发起方身份的合法性。登录消息应包括认证的必要数 据,如用户名、密码等。如果发起方身份通过认证,则接收方发送一个登录消息作回应。如果认证失败, 会话接收方则在发送一个含失败说明的注销消息Logout)后关闭连接。不过发送注销消息并非是必须 的,因为在某些情况下往往会引起其他问题。在发起方收到接收方的登录消息之后即可认为会话连接建 立完成。会话发起方可以紧随登录消息之后开始发送其他消息。

通常在登录后或者刚发送完测试请求消息(TestRequest)时延迟等待一段时间,然后再发送新的消 息,使得连接双方能有效控制重发请求。否则可能会导致一方会针对对方的每一条新消息发出重发请求。

5.2.2.4  初始化

在身份通过认证之后,发起方和接收方应首先同步消息序号,然后才能相互发送新的信息。同步消 息序号通过消息序号域(MsgSeqNum)来确定,将登录消息里的消息序号(MsgSeqNum)与内部监控 的下一个预期的消息序号进行比较就能发现消息的消息序号缺口。同样, 发起方通过将接收方发送的登 录消息里的消息序号(MsgSeqNum)与下一个预期的消息序号进行比较也能发现消息的缺口。

5.2.3  消息交换

在以上初始化完成之后,可以开始进行信息交换。所有有效消息的格式将在“会话消息”和“应用 消息”部分中详细叙述。

5.2.4  注销

会话的正常结束是通过连接双方互相发送注销消息(Logout)完成的。若结束时没有收到回送的注 销消息(Logout),则把对方视作已注销。除此之外的其它方式的会话结束视为非正常,并应按错误来 处理。

在发送注销消息(Logout)之前,应发送测试请求消息(TestRequest)以要求对方的心跳信息,这 有助于保证不出现消息序号缺口。

在结束会话之前,注销消息(Logout)的发起方应该等待对方回送的注销消息(Logout),这样给 接收方一个填补缺口的机会。待重发请求的信息全部收到后,接收方才可发送应答的注销消息(Logout)。 如果接收方在一定时间内没有答复,那么会话就可以立即中断。(注1)

5.2.5  消息恢复

以下描述了有关恢复消息的具体方法。

每一方必须维护两个消息序号,一个为了发送,一个为了接收。

当接收进来的消息序号与预期的消息序号不相符合时,需进行修正处理。但需要注意的是,如果接 收进来的是序号重设-重设(SeqReset-Reset)消息则不需要修正处理,因为处理该消息时不必考虑它的 消息序号 。如果接收的消息的消息序号比预期的消息序号小 ,而且没有设置可能重复标志 PossDupFlag),那么表明发生了严重的错误。因此必须立即结束会话,并开始进行人工干预。如果接 收进来的消息序号比预期的大,那么表明有消息被遗漏,应通过发送重发请求申请填补缺口。

当收到重发请求时,重发人可以作出回应为以下三种之一:(2)

a)     作为正常回应,重发人按顺序发送被请求的消息,这些消息的消息序号仍为原消息序号,并且 将可能重复的标志(PossDupFlag)置位为Y”。

b)    作为正常回应,重发人发送序号重-缺口填补(SeqReset-GapFill)消息,可能重复标志 PossDupFlag)置位为Y”,以表示删除过时或多余的消息。

 

1:注销不影响任何订单的状况。所有有效的订单都可在注销(Logout)之后执行。

2:本文中请求人指的是提出重发请求的那一方,重发人指的是回应重发请求的那一方。


c)     作为非正常回应,重发人发送序号重设-重设(SeqReset-Reset)消息,可能重复的标志 PossDupFlag)置位为Y”,以强制消息序号同步。

在缺口填补过程中,不需要重新发送某些会话消息。取而代之的是一种特殊的序号重设-缺口填补 SeqReset-GapFill)消息。不需要重新发送的会话消息是:登录、注销、重发请求、心跳、测试请求、 序号重设-重设(SeqReset-Reset)和序号重设-缺口填补(SeqReset-GapFill)。这样会话拒绝消息便成为 了唯一可能被重新发送的会话消息。

会话过程中应监视接收进来的消息以便发现由于疏漏而被对方重新发送了的会话消息(设置了可能 重复标志(PossDupFlag)的)。当收到这些消息以后,处理时,只要确保它们具有消息序号的完整性即 可,而忽略对它们的业务或应用的处理。

                               -     SeqReset-GapFill)消息取而代之。该序号重设-缺口填补消息的消息序号是下一个预期的消息序号。 序号重设-缺口填补(SeqReset-GapFill)消息的新消息序号(NewSeqNo)为本连续会话消息段中最大 消息序号+1。(注3)

在缺口被填补完成之后,交换引擎应将无序的消息暂时保存为有序的排列并按顺序对它们进行处  。这样 防止 出现对 n->m n->m+1 n->m+2   的重发请求 ,从而 导致 了大量 的可 能重  PossDupFlag=‘Y’)标记。

检验消息序号的连续在会话过程管理中是必不可少的部分。不过, 针对消息类型的不同,处理消息 序号流的差异也就不同。表 1 列出了当进来的消息序号大于预期消息序号时而应采取的措施。

(注4)

1  缺口填补处理措施

 

消息类型

针对消息序号错误所采取的措施

登录

永远是连接双方发送的第一条消息,用于认证和连接。如果发现登录消息中有 缺口,则应在回送登录确认消息之后立即发送重发请求。

 

注销

如果发现有缺口,应发送重发请求消息以重新接收所有丢失的消息,然后再发 送注销消息作为对注销请求的确认。注意严禁在有缺口情况下结束会话。并由 注销的最初发起人负责结束会话,因此注销发起人有责任回应所有的重发请求。

重发请求

首先处理完对方的重发请求,随后发送自己的重发请求以填补消息序号错误而 发现的消息缺口。

序号重设-重设

可以忽略消息序号错误。因为在序号重设-重设(SeqReset-Reset)消息中的新 消息序号(NewSeqNo)强制为下一发送消息的消息序号。

 

序号重设-缺口填补

应立即向对方发送重发请求。但是, 重要的是要确保没有无意间跳过任何消息, 这意味着缺口填补消息应按次序被接收到,如果次序不对,那么表示出现了非 正常的情况。

所有其它信息

执行正常的缺口填补。

 

3:如在重新发送操作期间,有 7 条连续的会话消息等待发送,他们以消息序号 9 开始和以消息序号 15 结束,此 时只发送一个序号重设-缺口填补(SeqReset-GapFill)消息来代替那 7 条消息,那么该序号重设-缺口填补 SeqReset-GapFill)消息的消息序号是 9,这是因为要承接上条消息而保持消息序号的连续性;其中新消息序 号(NewSeqNo)是 16,这样使得对方知道下一消息发送时的消息序号。

4:在任何情况下,除了序号重设-重设消息外,如果进来的消息序号比预期的消息序号小,而且可能重复标志 PossDupFlag)没有被设置,那么应立即终止会话过程。并应在结束会话之前,向对方发送带有解释正文的 注销(Logout)消息。


 

 

 

6  消息格式

 

6.1  数据类型

6.1.1  数据类型概述

数据类型用于定义数据域的取值类型,本标准由几个基本的数据类型(整数、浮点数、单字符、字 符串、二进制数据块)和在此基础上扩展的数据类型组成。除data”数据类型外,其他数据类型均以 ASCII 码字符串表示。

6.1.2  整数 int

无逗号和小数位的序号,可表示正负(ASCII 码字符-’,‘0’至9’组成)。符号占据一个字符 位置。允许前置字符零(例:00023 =23”)。

整数类型的扩展定义:

长度 Length:以整数表示字节为单位的数据长度,正数。

重复数 NumInGroup:以整数表示重复组的个数,正数。

消息序号 SeqNum:以整数表示消息序号,正数。

域号 TagNum:以整数表示的域号(或称 Tag),正数,首位不能为零。

月日期号 DayOfMonth:以整数表示的月份中第几天,取值 1  31

6.1.3  浮点数 float

含有可选的小数部分,可表示正负(ASCII 码字符- ,0’至‘9’和‘. ’组成)。最多 15 位有   效数字。允许前置字符零(例:00023 =23”)。允许小数部分后置字符零(例:“23.0 =23.0000  =23”)。

浮点数类型的扩展定义:

除非特别声明,浮点数类型均有正负。

 Qty:    股份数量、资产数量等,可以有小数部分。

价格 Price:小数位数可变。

价格偏移量 PriceOffset:代表价格偏移量的浮点域。

金额 Amt:  典型的价格与数量相乘结果,如成交金额。

百分比 Percentage:小数表示方法:如.05”代表 5%

6.1.4  单个字符 

指除界定符外所有字母字符和标点字符,区分字母大小写。

字符类型的扩展定义:

布尔 Boolean:该域取值于两个字符,(’Y’=True/Yes,’N’=False/No

6.1.5  字符串 String

区分字母大小写。

字符串类型的扩展定义:

多元值字符串 MultipleValueString:用空格分隔。

国家 Country:参见 GB/T 2659


字符串货币类型 Currency:参见 GB/T 12406

交易所或市场编号 Exchange:字符串,参见 GB/T 23696-2009

年月日期 month-year:格式 YYYYMM  YYYYMMDD  YYYYMMWW YYYY = 0000-9999 MM = 01-12 DD = 01-31 WW = w1 w2 w3 w4 w5

国际标准时时间戳 UTCTimestamp:格式

YYYYMMDD-HH:MM:SS(秒)或 YYYYMMDD-HH:MM:SS.sss(毫秒),

YYYY = 0000-9999 MM = 01-12 DD = 01-31 HH = 00-23MM = 00-59 SS = 00-60(秒), sss=000-999(毫秒)。

国际标准时时间 UTCTimeOnly:格式 HH:MM:SS  HH:MM:SS.sss

HH = 00-23 MM = 00-59  SS = 00-60 ()sss=000-999(毫秒)。

国际标准时日期 UTCDateOnly:格式 YYYYMMDD

YYYY = 0000-9999  MM = 01-12 DD = 01-31

本地市场日期 LocalMktDate:格式 YYYYMMDDYYYY = 0000-9999MM = 01-12DD = 01-31

6.1.6  数据 Data

无格式和内容限制的原始数据,包含长度域和数据域两个部分,数据域数据可以包含数值 0x01 长度域指明数据域的字节数。

6.2  

6.2.1  域概述

域是基本的数据元素,每个域有其域号、业务含义和确定的取值范围,域号统一分配给不同的域, 是域的区分标志,在消息中,通过域号来确定不同的域。域的数据类型决定了其取值类型,域的取值范 围可以是一个集合,任何在此集合外的取值被认为是非法取值。数据字典部份详细定义了所有域的业务 定义、数据类型和取值范围。

6.2.2  域的使用

在消息中,域的使用有三种方式:必须的,可选的,条件限制选择(即根据其他相关域的存在与否 或取值来决定)。作为一个完整的消息,必须域和条件限制选择域是需要包含的。

6.2.3  自定义域

如本标准中定义的域不够使用时,证券交易所或市场参与者可以扩展定义新的域,即自定义域。

6.2.4  域汉字编码

域取值为汉字时需要使用统一的 GBK 汉字编码标准。

6.2.5  域界定

消息中所有的域(包含 data 类型数据域)都有一个分隔符来界定分隔,该分隔符就是不可打印字  ASCII SOH (#001hex0x01,本文档中以<SOH>表示)。因此,所有消息以8=STEP.x.yz<SOH>  字符串开始并以10=nnn<SOH>”字符串结束。

 data 数据类型域外,其他数据域内容都不应包含域界定符<SOH>

6.2.6  语法

任何消息都严格由多个“域号=”的基本结构组成,“域号=”基本结构用域界定符<SOH>分隔。


消息组成结构如图 1 所示:

 

 

1  消息格式

消息由消息头、消息的正文和消息尾组成。同样,每个组成部份都由一系列“域号=”组成,并 且在遵循以下规则前提下“域号=”基本结构可以是任意的次序:

a)     开始部分应是消息头,随后是正文,最后是消息尾;

b)     消息头的前 3 个域的次序不能改变:起始串(Tag=8)、消息体长度(Tag=9)、消息类型Tag =35);

c)     消息尾的最后一个域应是校验和域(Tag=10);

d)    重复组中,域出现的顺序应遵循该重复组在消息或组件中定义时的次序。

e)     在一条消息中,除重复组域外任何其他域不能重复出现。

(消息格式的例子见注5

6.2.7  重复组

域可以在重复组里多次重复,用以传输数组类的数据。通常域名起始为’No’字符的域指明重复的次 数,并位于重复组的开始处。本文档中重复组的定义通过缩进的符号表示,重复组也可嵌套。使用子 重复组时不能省略父重复组。

具体可参见附录 B 重复组实例。

 

7  安全与加密

 

由于消息有可能在公网或不安全的网络上传输交换,因此需要对相关的敏感数据加密处理。

具体加密的方法由连接双方达成的协议而定。

消息内除某些需要公开识别的域以明文传输外其他任何域都可以加密放置密文数据域 SecureData)内。当然,这些被加密的域也可以同时保留明文的表示方式。

当决定使用加密方案时,可以对消息正文内所有的域加密。如果消息的重复组内有部分需要加密的, 那么要求对整个重复组加密。

本协议还提供的一些域用以支持数字签名、密钥交换和正文加密等安全技术。

正文加密方案有三种:

a)     将安全敏感的域加密后移至 SecureData 域。

b)    将所有允许加密的域加密后移至 SecureData 域。

c)     将所有允许加密的域加密后移至 SecureData 域,同时这些域以明文在消息中重复出现。

 

8  数据完整性

 

数据的完整性通过两个方法保证:消息体长度和校验和的验证。

消息体长度是以 BodyLength 域来表示,其值是计算出的消息长度域后面的字符数,包含紧靠校验

 

5:8=STEP.1.0.0  <SOH> 9=112 <SOH>  35=D <SOH> 49=BRKR <SOH>  56=INVMGR  <SOH>  34=235  <SOH> 52=20030620-09:35:27 <SOH> 11=000007 <SOH> 21=2 <SOH> 55=青岛啤酒 <SOH >48=600600 <SOH>    54=1 <SOH> 44=8.520    <SOH>    38=1000    <SOH>    60=20030620-09:35:28 <SOH> 40=2 <SOH>

8


和域标志10=’之前的界定符 SOH

校验和是把每个字符的二进制值从消息开头8=’中的‘8’开始相加,一直加到紧靠在校验和域 10=’之前的域界定符,然后按 256 取模得到结果。

校验和域位于消息的最末一个,校验和的计算是在加密之后进行的。计算校验和的代码段可参见附  F 计算校验和。

 

9  扩展方式

 

9.1  扩展分类

扩展分为两个部分:消息定义扩展和域定义扩展。

消息定义扩展可以通过新增消息类型来实现,但尽量在已有消息中通过域定义或取值扩展来定义新 业务。已有消息所代表的业务在扩展时不能改变。

域定义扩展可以通过新增域来实现,但尽量通过扩展域值来扩展域的定义。消息中已定义的必须的 域不能取消定义,也不能改变成可选域。

9.2  扩展规则

自定义消息的消息类型值首字符为U’。其他类型的消息由全国金融标准化技术委员会根据国际 相关标准的变化统一定义并发布。

消息和域临时定义原则:上海证券交易所临时定义消息的消息类型值首两位字符为UA’,深圳证 券交易所临时定义消息的消息类型值首两位字符为UB’;消息和域的临时定义应同时报备至全国金融 标准化技术委员会。

域号 1-4999 由全国金融标准化技术委员会根据国际标准的变化统一定义并发布,该域区间只有全 国金融标准化技术委员会有权扩展、修改和发布;域号 8500-8999 由全国金融标准化技术委员会自行定 义,其中 8800-8999 为临时定义区间;临时定义区间中域号 8800-8899 为全国金融标准化技术委员会授 权上海证券交易所市场临时定义区间,域号 8900-8999 为全国金融标准化技术委员会授权深圳证券交易 所市场临时定义区间。域号 10000 以上由连接双方自行约定定义。

消息的模块顺序在扩展定义时不能改变,即保持消息头、消息体和消息尾的顺序。而模块的内部, 域和重复组的顺序是可以变化的。

消息头的头三个域的定义和位置不能改变,但可以扩展增加消息头的可选域。

消息尾最后一个域的定义和位置不能改变,但可以扩展增加消息尾的可选域。

9.3  版本管理

本协议的版本管理权属于全国金融标准化技术委员会。

版本号格式为 X.YZ,版本号从 1.00 起始。

本协议当前版本的版本号为 1.20。

全国金融标准化技术委员会定期审核临时定义,并在新版本中统一定义发布,同时取消相关临时定 义。

 

10  消息定义

 

10.1  消息头

每一个会话或应用消息有一个消息头,该消息头指明消息类型、消息体长度、发送目的地、消息序


号、发送起始点和发送时间。

其中有两个域用于消息重发 ,对于会话级的事件而重复发送消息时将可能重复发送标志 (PossDupFlag)设置为 Y(发送时用原来的消息序号),当重新发送时使用新的消息序号时将可能重新发 送标志(PossResend)设置为 Y,接受者应按以下方法处理上述消息:

可能重复发送:如果带有该消息序号的消息在以前曾经接受过,则忽略消息,如果未曾收到过, 则按正常步骤处理。

可能重新发送:将消息传递给应用层以确定此前是否收到该消息(通过检查订单编号或相关参数)。 消息头格式见表 2 所示:

2  消息头

 

Tag

域名

必需

说明

8

BeginString

Y

起始串 STEP.1.00  (不可加密,消息的第一个域)

9

BodyLength

Y

消息体长度(不可加密,消息的第二个域)

35

MsgType

Y

消息类型(不可加密,消息的第三个域)

49

SenderCompID

Y

发送方代码(不可加密,发送方标识符)

56

TargetCompID

Y

接收方代码(不可加密,接收方标识符)

115

OnBehalfOfCompID

N

最初发送方标识符(可加密),用于经第三方发送

128

DeliverToCompID

N

最终接收方标识符(可加密),用于经第三方发送

90

SecureDataLen

N

密文数据长度

91

SecureData

N

密文数据(紧跟密文数据长度域)

34

MsgSeqNum

Y

消息序号(可加密)

50

SenderSubID

N

发送方子标识符(可加密)

142

SenderLocationID

N

发送方方位标识符(可加密)

57

TargetSubID

N

接收方子标识符(可加密)

143

TargetLocationID

N

接收方方位标识符(可加密)

116

OnBehalfOfSubID

N

最初发送方子标识符(可加密)

144

OnBehalfOfLocationID

N

最初发送方方位标识符(可加密)

129

DeliverToSubID

N

最终接收方子标识符(可加密)

145

DeliverToLocationID

N

最终接收方方位标识符(可加密)

43

PossDupFlag

N

可能重复标志,重复发送时,作此标记(可加密)

97

PossResend

N

可能重发标志(可加密)

52

SendingTime

Y

发送时间(可加密)

122

OrigSendingTime

N

原始发送时间(可加密)

347

MessageEncoding

N

消息中 Encoded 域的字符编码类型(非 ASCII 码)

369

LastMsgSeqNumProcessed

N

最后处理消息序号(可加密)

370

OnBehalfOfSendingTime

N

最初发送时间(用 UTC 表示时间)

 

627

 

NoHops

 

N

历史跳跃信息重复组,记录消息经第三方发送的历史,每次经第三 方发送为一个跳跃,仅当 OnBehalfOfCompID  使用时有效,主要用 于跟踪消息的路径。

 

628

HopCompID

N

取值第三方的 SenderCompID

 

629

HopSendingTime

N

取值用第三方的 SendingTime

 

630

HopRefID

N

取值第三方的 MsgSeqNum

 


 

 

10.2  消息尾

每一个消息(会话或应用消息)有一个消息尾,并以此终止。消息尾可用于分隔多个消息,包含有 3 位数的校验和值。

消息尾格式见表 3 所示:

3  消息尾

 

Tag

域名

必需

说明

93

SignatureLength

N

数字签名长度(不可加密)

89

Signature

N

数字签名(不可加密)

10

CheckSum

Y

校验和,消息的最末域(不可加密)

 

10.3  会话消息

10.3.1  会话消息概述

会话消息涉及标准的使用机制,将在以下各节中予以介绍,并定义会话消息格式。

连接双方均可生成会话消息。

10.3.2  心跳消息(MsgType=0)

心跳消息用于监控通信连接的状况,并可确认是否接收到最后一条消息。

 STEP 连接的任何一方在([HeartBtInt]  秒,心跳间隔)时间内没有发送任何数据的时候,将产  生一个心跳消息并传送出去。当连接的任何一方在([HeartBtInt][合理传输时间]  )时间内都没有收  到任何有关的数据的时候,将产生一个测试请求消息并传送出去。如果在此之后的([HeartBtInt][  理传输时间]  )时间内,仍没有收到心跳消息,那么可认为此次连接失败,而且需开始实施修正操作。 如果 HeartBtInt  被设置为零,那么将不会定期生成心跳消息。并且不论 HeartBtInt  取值多少,任何一 方都可发送测试请求消息,接收方由此将强行生成心跳消息。

因对方的测试请求消息而产生的心跳(Heartbeats)消息应包括对方测试请求消息中的测试请求标 识符(TestReqID)。这有利于确定该心跳消息是响应测试请求而产生的,而不是由于超时而产生的。

心跳消息格式见表 4 所示:

4  心跳(Heartbeat)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=0

112

TestReqID

N

测试请求标识符,如是对测试请求而响应的心跳消息,则应包含本 

 

标准消息尾

Y

 

 

10.3.3  登录消息(MsgType=A)

登录消息能证实用户是否已建立与对方系统的连接。登录消息应是在 STEP 会话开始时的连接双方 发送的第一个消息。


HeartBtInt 域用来声明产生心跳的时间间隔(连接双方 HeartBtInt 取相同的值)。连接双方事先约定 取值,由登录发起方产生并得到接收方的确认响应。

在接收登录消息时,接收方将验证发起方身份的合法性,并且同样发出登录消息以确认连接请求已 被接受。同样,确认登录消息也可以被发起方使用以验证连接了身份合法的接收方。

接收方应在收到登录消息之后,立即作好开始消息处理的准备。发起方可以选择在接收到确认登录 消息之前开始 STEP 消息传输。不过本标准规定:在有关密钥确认的登录消息收到之后,才实施正常的 消息交换。

确认登录消息还可被用于密钥相互确定。如果认为当前会话密钥强度较弱,需要更换密钥,那么就 可通过发回带有新密钥的登录消息来建议使用更强的会话密钥。当然, 这仅仅对允许密钥相互确认的加 密协议有意义。

登录消息还可以用来指明最大消息长度(MaxMessageSize),也可以用来指明发送和接受时所支持 的消息类型。

登录消息格式见表 5 所示:

5  登录(Logon)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=A

98

EncryptMethod

Y

加密方法(不可加密)

108

HeartBtInt

Y

心跳间隔

95

RawDataLength

N

无格式数据长度,用于认证

96

RawData

N

无格式数据,用于认证

141

ResetSeqNumFlag

N

序号重设标志

383

MaxMessageSize

N

最大消息长度,单条消息的最大字节数

384

NoMsgTypes

N

消息类型个数

 

372

RefMsgType

N

消息类型

 

385

MsgDirection

N

消息方向

464

TestMessageIndicator

N

测试标志,指明该会话是测试连接或正常运行连接,用于防止意外

553

Username

N

用户名

554

Password

N

密码

 

标准消息尾

Y

 

 

10.3.4  测试请求消息(MsgType=1)

测试请求消息能强制对方发出心跳消息。测试请求消息的作用是检查对方消息序号和检查通信线路 的状况。对方用带有测试请求标识符(TestReqID)的心跳作应答。

测试请求标识符(TestReqID)用以指明对方生成心跳消息是响应测试请求而非正常超时引起的。 对方发送心跳消息作为应答时,将测试请求标识符(TestReqID)包括在消息中。任何字符串都可以用 作测试请求标识符(TestReqID)(可使用时间戳(timestamp))

测试请求消息格式见表 6 所示:

6  测试请求(Test Request)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=1

 


 

112

TestReqID

Y

测试请求标识符

 

标准消息尾

Y

 

10.3.5  重发请求消息(MsgType=2)

重发请求消息由接收方发出,目的是向发送方申请某些消息重复发送。此功能用于:发现消息序号 缺口、接收方丢失了消息和在初始化过程中也可能使用。

重发请求消息能被用来请求重新发送单个消息、一系列的消息或在某一特定消息之后的所有消息。

当重复发送消息的时候,发送方将考虑消息类型;如:在重复发送系列中有一条会话消息,由于过 期而不再有效,发送方不需要重复传输这条消息。因此,当发送方不重复发送某消息时,序号重设- 口填补(SeqReset-Gap Fill)消息将被用来跳过消息。(注6

重发请求消息有以下几种表示方式:

.      请求重发一条消息:起始消息序号(BeginSeqNo=结束消息序号(EndSeqNo

.      请求重发某个范围内的消息:起始消息序号(BeginSeqNo=该范围中的第 1 条消息,结 束消息序号(EndSeqNo=该范围中的最后一条消息序号

.      请求重发某一特定消息之后的所有的消息:起始消息序号(BeginSeqNo=该范围中的第

1 条消息,结束消息序号(EndSeqNo=0(无限大) 重发请求消息的格式见表 7 所示:

7  重发请求(Resend Request)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType = 2

7

BeginSeqNo

Y

起始消息序号

16

EndSeqNo

Y

结束消息序号

 

标准消息尾

Y

 

 

10.3.6  会话拒绝消息(MsgType=3)

当接收方收到一条消息时,由于违反了会话机制而造成不能适当地处理该消息时,应该发出会话拒 绝消息。如:当收到一条消息,这条消息虽成功地通过了解密、校验和和正文长度检验,但却被发现带 有无效的数据(如:消息类型(MsgType=&),此时应发出拒绝消息。

被拒绝的消息应该写入日志。

接收方应该忽略任何被歪曲,不能被解析,或数据完整性核对失败的消息。立即对下一个有效的  STEP 消息进行处理将会发现消息缺口,并且,将产生重发请求。在 STEP 交换引擎内应能够识别这种 无限重发循环。

当产生和收到会话拒绝消息意味着出现了严重错误,可能发送方或接收方的应用存在逻辑错误。

如果要重新传输拒绝消息,那么应赋予该消息一个新的消息序号,并设置可能重发标志 PossResend)为 Y

无论何时,应在正文域里尽可能描述拒绝原因。

 

6:接收方按订单顺序进行消息处理是非常有必要的。例如,如果订单第 7 条消息被错过,而收到第 8 和第 9 条, 那么应用方将忽略 8  9,然后要求重发送第 7-第 9,或者要求重新发送第 7-第 0(0 表现无限)。在顺序混 乱的状况中通常用后一方案恢复消息,因为当连接双方都同时试图尽快恢复缺口的状况下,此种方法能更快 地进行消息恢复。


如果所收到的应用层消息遵循了会话机制,那么可以开始在业务层处理该消息。如果在处理过程中, 发现违反业务规则,那么应该发出业务层的“拒绝”消息。很多业务层的消息都有指定的“拒绝”消息, 此时这些消息可以发挥作用。其它无对应会话拒绝消息的,则均可通过业务“拒绝”消息进行拒绝。

会话拒绝消息格式见表 8 所示:

 

8  会话拒绝(Reject)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=3

45

RefSeqNum

Y

关联消息序号,即被拒绝的消息序号

371

RefTagID

N

相关错误域号

372

RefMsgType

N

相关错误消息类型

373

SessionRejectReason

N

会话拒绝原因编号

58

Text

N

文本,可作解释拒绝的原因

354

EncodedTextLen

N

编码文本长度

355

EncodedText

N

编码文本(非 ASCII 码)

 

标准消息尾

Y

 

 

会话拒绝原因见表 9 所示:

9  会话拒绝原因

 

会话拒绝原因

0 = 存在无效的域号

1 =  该消息中必须的域丢失

2 =  该消息中出现未曾定义的域

3 =  未定义域号

4 =  域未赋值

5 =  域取值错误(范围溢出)

6 =  取值格式错误

7 =  解密错误

8 =  签名错误

9 =  公司标识符错误

10 =  发送时间精度错误

11 =  无效的消息类型

12 = XML 验证错误(XML Validation error

13 =  同一域多次出现(非重复组)

14 =  有序的域出现次序错误

15 =  重复组域次序错误

16 =  重复组重复次数错误

17 =   data 数据域中出现域界定符<SOH>

99 =  其他

 


10.3.7  序号重设消息(MsgType=4)

序号重设消息由发送方发出,用于告知接收方下一个消息的消息序号。序号重设消息有两种模式: 序号重设-缺口填补(SeqReset-Gap Fill);序号重设-重设(SeqReset -Reset)。序号重设-重设通常在灾难 恢复情况下使用。

当需要支持 24 小时的连接并用序号重设标志ResetSeqNumFlag)来建立新的一套消息序号的时候, 关于连接双方的序号重设时间和发起方另行确定,但序号重设的发起方不同于登录过程的发起方。其处 理过程如下:其中一方先发送测试请求(TestRequest)。在收到心跳消息后,确认没有消息序号缺口后, 发起方发送一条登录消息,在该消息中应附有设为 Y 的序号重设标志(ResetSeqNumFlag),并且它的消 息序 号(MsgSeqNum   1 。接 收方 则应 该发送  条登   息作 回应 ,其 中序 号重 设标  ResetSeqNumFlag)为 Y,消息序号(MsgSeqNum)为 1。此后,连接双方发送出的消息的消息序号 应从 2 开始。需要注意的是一旦发起方发送附有序号重设标志(ResetSeqNumFlag)的登录消息,那么 接收人应服从该请求,并且,“昨天”传送的消息不可能再重发。如果不遵守以上的处理规则应立即中 断连接,并手工设置干预。

序号重设消息两种模式表示:

 GapFillFlag Y 时,该消息为序号重设-缺口填补(SeqReset-Gap Fill), GapFillFlag N 或没 有设置时,该消息为序号重设-重设(SeqReset-Reset)。

序号重设消息能在下列情况下使用:

a)     在重新发送的处理过程中,发送方可以选择不发送某个消息(例如一个会话消息)。序号重设- 缺口填补(SeqReset-Gap Fill)能被用来填补那条消息。

b)    在重新发送的处理过程中,有大量的会话消息不需要发送,这样产生的消息序号缺口也可以由 序号重设-缺口填补(SeqReset-Gap Fill)消息来填补。

c)     在应用层失败的情况下,有必要通过发送序号重设-重设(SeqReset-Reset)在发送和接收的连 接双方进行强制消息序号同步。

在任何情况下,序号重设消息都指定了 NewSeqNo(新的消息序号),并重设该值为下一个将被传送 消息的消息序号。

如果缺口填补标志(GapFillFlag)域被设置为 Y,那么消息序号(MsgSeqNum)域取值应遵循消 息序号规则,即:序号重设-缺口填补(SeqReset-Gap Fill)消息的消息序号(MsgSeqNum)应对应缺口 范围内第一条消息的消息序号,因为对方正准备接收这个消息序号的消息。

序号重设-缺口填补(SeqReset-Gap Fill)只能增加消息序号。如果收到的序号重设-缺口填补

SeqReset-Gap Fill)消息试图使下一个预期的消息序号变小,那么此消息应被拒绝接受,并被视作为 错误。(注7

如果缺口填补标志(GapFillFlag)域没有出现(或被设为 N),即为序号重设-重设(SeqReset-Reset 消息,那么有可能是此序号重设-重设(SeqReset-Reset)消息的目的是恢复混乱顺序的消息。此时消息

 

7:如可能存在接收方发送多个重发请求(如先请求重 5~10,随后请求重发 5~11)。如果消息序号 8,10 

11 表示应用消息,而 5-7  9 表示会话消息,那么为响应该重发请求,有一些应用消息需被重新发送,首先 发送的 SeqReset-GapFill 中新消息序号(NewSeqNo)设置为 8,即第 8 消息;完成重发应用消息后,发送 SeqReset-GapFill 且新消息序号(NewSeqNo)设置为 10,即第 10 条消息,接着完成重发应用消息。随后又可 能发送 SeqReset-GapFill 且新消息序号(NewSeqNo)设置为 8,即第 8 条消息(序号变小);完成重发应用 消息后,发送 SeqReset-GapFill 且新消息序号(NewSeqNo)设置为 10,即第 10 条消息,以及第 11 条消息, 接着完成重发应用消息。此时接收方通过检查在序号重设-缺口填补(SeqReset-Gap  Fill)中的新消息序号 NewSeqNo)是否比预期的小可发现此种错误。如果发现有这种错误,那么说明该序号重设-缺口填补 SeqReset-Gap Fill)是重复的,应该放弃处理。


头里的消息序号(MsgSeqNum)应忽略。禁止在重发请求的正常回应中使用序号重设-重设

SeqReset-Reset)(应使用序号重设-缺口填补(SeqReset-Gap Fill))。序号重设-重设(SeqReset-Reset 仅用于无法用序号重设-缺口填补(SeqReset-Gap Fill)进行恢复的灾难情况。注意使用序号重设-重设  SeqReset-Reset)可能会造成消息丢失。

序号重设消息格式见表 10 所示:

10  序号重设(Sequence Reset)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=4

123

GapFillFlag

N

缺口填补标志

36

NewSeqNo

Y

新消息序号

 

标准消息尾

Y

 

 

10.3.8  注销消息(MsgType=5)

注销消息是发起或确认 STEP 会话终止的消息。未经注销消息交换而断开连接,一律视为非正常的 断开。

在最后终止会话之前,注销的发起人应该等待连接对方确认注销消息。这使得连接对方有了实施任 何有必要的缺口填补的机会。如果连接对方没有在适当的时间间隔里作回应,那么会话就可以终止。

注销发起人在发送注销消息之后不应发送任何消息,除非接收到连接对方发出的重发请求消息。

注销消息格式见表 11 所示:

11  注销(Logout)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=5

58

Text

N

文本

354

EncodedTextLen

N

编码文本长度

355

EncodedText

N

编码文本(非 ASCII 码)

 

标准消息尾

Y

 

 

10.4  应用消息

10.4.1  应用消息组件

10.4.1.1  应用消息组件概述

应用消息中有很多共用的数据域集合——组件。比如说,大多数应用消息都会用到一系列定义证券 品种的数据域:Symbol SecurityIDSourceSecurityID ……。为避免重复,本标准中定义了一些关键 组件,在应用消息定义中直接用名称引用这些组件。实际的消息定义和使用中,则应该将组件扩展开成 为相应的数据域集合。

组件可以是重复组的部分,此时组件对应的整组数据域都位于组件所在重复组的级别上,遵从重复 组的域顺序规则。

10.4.1.2  组件<Instrument>


<Instrument>组件定义了证券品种(金融工具)及其相关属性,其中证券代码和证券名称是必需的 域。

<Instrument>组件结构定义见表 12 所示:(8

12  组件<Instrument>

 

Tag

域名

必需

说明

55

Symbol

***

证券名称

48

SecurityID

***

证券代码

22

SecurityIDSource

N

证券代码源

454

NoSecurityAltID

N

备选证券代码个数

 

455

SecurityAltID

N

备选证券代码个数

 

456

SecurityAltIDSou rce

N

备选证券代码源,有效取值与证券代码源(SecurityIDSource)相同

461

CFICode

N

证券类别

207

SecurityExchange

N

交易所代码

762

SecuritySubType

N

证券子类别,与 CFICode 配合使用

231

ContractMultiplier

N

债券折合成回购标准券的比例

107

SecurityDesc

N

证券描述,如英文简称

 

备选证券代码域可在自定义证券代码标准向 ISIN 编码标准过渡期间使用。

示例1:

假设上证所证券代码正处于现有代码和 ISIN 编码的切换期间,此时发出订单购买“浦发银行”,现有代码600000 ISIN 代码 CN0006000003

 

域名(Tag

解释

Symbol(55)

浦发银行 PFYH

证券名称

SecurityID(48)

600000

证券代码

SecurityIDSource(22)

101

证券代码源为上证所

NoSecurityAltID(454)

1

有一个额外证券代码

SecurityAltID(455)

CN0006000003

备选证券代码

SecurityAltIDSource(456)

4

证券代码源为 ISIN

 

经过切换后

 

域名(Tag

解释

Symbol(55)

浦发银行 PFYH

证券名称

SecurityID(48)

CN0006000003

证券代码

SecurityIDSource(22)

4

证券代码源为 ISIN

NoSecurityAltID(454)

1

有一个额外证券代码

SecurityAltID(455)

600000

备选证券代码

 

8:***表示域的“必需”属性依赖于该组件在消息定义中的“必需”属性。


 

SecurityAltIDSource(456)

101

证券代码源为上证所

 

证券类别由CFICodeSecuritySubType共同描述。CFICodeISO10962金融工具分类代码国际标准。 SecuritySubType由市场自行定义,对CFICode加以补充,但有些证券品种不需要SecuritySubType域。中 国证券市场中常见证券品种对应的CFICodeSecuritySubType描述见示例2。

示例2:

 

证券品种

CFICode (461)

SecuritySubType (762)

A

ES

A

A 股新股申购

ES

AN

A 股增发

ES

AS

A 股权证

ES

AR

国债

D

G

企业债券

D

O

金融债券

D

F

可转债

DC

 

地方性政府债

D

 

公司债

D

 

债券回购

D

R

投资基金

EU

 

B 股证券

ES

B

B 股权证

RWS

BR

指数

MRI

 

 

10.4.1.3  组件<OrderQtyData>

<OrderQtyData>组件用于表示证券数量,通常在订单中使用。 <OrderQtyData>组件结构定义见表 13 所示:

13  组件<OrderQtyData>

 

Tag

域名

必需

说明

38

OrderQty

N

订单数量

152

CashOrderQty

N

订单现金金额

 

 

10.4.1.4  组件<Parties>

< Parties >组件用于表示参与方信息。 < Parties >组件结构定义见表 14 所示:

14  组件<Parties>

 

Tag

域名

必需

说明

453

NoPartyIDs

N

参与方个数

 

448

PartyID

N

参与方代码,结合 PartyIDSource  PartyRole

 


 

 

447

PartyIDSource

N

指示 PartyID 的代码源,如果有 PartyID 则该域必须出现,取 值依赖于 PartyRole

 

452

PartyRole

N

指定参与方角色

 

802

NoPartySubIDs

N

指示重复的参与方子代码个数

 

 

523

PartySubID

 

参与方子代码

 

 

803

PartySubIDType

 

参与方子代码类型

 

市场参与方包括券商、投资者、清算公司、交易员等,通常PartyID为参与方代码,PartyRole用以 指明参与方角色。参与方其他信息如名称等,可由PartySubID进一步描述,由PartySubIDType加以区分。 中国证券市场中常见参与方信息描述如示例3。

示例3:

 

参与方信息

PartyRole” (452)

PartyIDSource” (447)

PartySubIDType” (803)

投资者证券账户

5=投资者编号(Investor ID

5=中国投资者编号(Chinese Investor ID

 

投资者姓名

 

 

5=合法全名(Full legal name of Firm

 

席位或 PBU 代码

 

1=券商(Executing Firm

C=通用市场参与者标识符 Generally accepted market participant identifier

 

 

席位或 PBU 名称

 

1=券商(Executing Firm

C=通用市场参与者标识符 Generally accepted market participant identifier

5=合法全名(Full legal name of Firm

交易员代码

12=交易员(Executing Trader

D=        

Proprietary/Custom code

 

交易员营业部代码

12=交易员(Executing Trader 4001=营业部代码

D=        

Proprietary/Custom code

 

对手方交易员营业部代 

37=        Contra Trader

4002=营业部代码

D=        

Proprietary/Custom code

 

交易对手方席位或 PBU 代码

 

17 =对方券商(Contra Firm

C=通用市场参与者标识符 Generally accepted market participant identifier

 

交易对手方席位或 PBU 名称

 

17 =对方券商(Contra Firm

C=通用市场参与者标识符 Generally accepted market participant identifier

5=合法全名(Full legal name of Firm

交易对手方投资者证券 账户

39=  方投  者编 号( Contra Investor ID

5=中国投资者编号(Chinese Investor ID

 

交易对手方投资者姓名

39=对方投资者编号( Contra Investor ID

5=中国投资者编号(Chinese Investor ID

5=合法全名(Full legal name of Firm

 

清算公司代码

 

4 =清算公司(Clearing Firm

C=通用市场参与者标识符 Generally accepted market participant identifier

 

 


 

 

对手方清算公司代码

18=        Contra Clearing Firm

C=通用市场参与者标识符 Generally accepted market participant identifier

 

转托管业务转入席位或 PBU 代码

 

40=转入券商(Transfer to Firm

C=通用市场参与者标识符 Generally accepted market participant identifier

 

 / 发送至托管机构 OEF 持仓转移来源方/ 目标方)

 

30=代理人(Agent

C=通用市场参与者标识符 Generally accepted market participant identifier

 

 

具体也可以参见附录C组件Parties实例。

10.4.2  订单业务类

10.4.2.1  订单业务类消息定义

订单业务类消息主要是支持日常实时交易和非交易的消息,其中最典型的是新订单消息,新订单消 息由交易客户方发出,用以提交订单。

非交易业务指国内与国际证券市场惯例略有不同的一些特殊增值业务,如某些公司行为和政府债券 发行与分销。

10.4.2.2  新订单消息(MsgType=D)

新订单消息可以带有执行指令。执行指令(ExecInst)指示订单的执行条件。执行指令中包含数量 条件。

对于在消息头中设置了 PossResend  标志的订单消息,应当使用交易客户方(券商)订单编号 ClOrdID)核实是否已收到该订单,具体实现时还应检查订单参数(买卖方向、证券代码、数量等) 进行核实。如果之前收到该订单,应以执行报告消息回应订单状态。如果之前未收到,则以执行报告消 息回应订单确认。

TransactTime 域指示订单发起时间,可结合业务规则来判断收到的订单是否已过期。

新订单消息也适用于使用撮合机制的协议交易、国债场内分销、国债回购等业务,作为交易客户方 的指令。

新订单消息支持交易订单和非交易订单。

非交易订单指不通过实时交易而发生变化的行为,如发行、配股、转股、回售、质押、冻结、申购、 赎回、行权等。

新订单消息(New Order-Single)的格式见表 15 所示:

15  新订单(New Order-Single)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=D

11

ClOrdID

Y

交易客户方(券商)订单编号

18

ExecInst

N

执行指令

组件<Parties>

N

参与方

组件<Instrument>

Y

证券定义

54

Side

Y

买卖方向

 


 

60

TransactTime

Y

订单发起时间

组件<OrderQtyData>

Y

数量

59

TimeInForce

N

订单有效时间类型

126

ExpireTime

N

订单有效时间(订单有效时间类型为 GTD 时必须)

8526

NonTradingOrdType

N

非交易业务订单类型

8540

ReqID

N

业务请求类型

40

OrdType

Y

订单类型

423

PriceType

N

价格类型

44

Price

N

价格(限价订单时有效)

99

StopPx

N

止损价

580

NoDates

N

期限,单位为天数

664

ConfirmID

N

约定号

15

Currency

N

币种

8532

DividendSelect

N

分红选择方式

(开放式基金分红选择订单时必须)

8533

DestSecurity

N

开放式基金基金转换时转入的产品代码(开放式基金基金转换时必 须)

309

UnderlyingSecurityID

N

期权序列代码

77

PositionEffect

N

开仓/平仓,取值:C=平仓,O=开仓

58

Text

N

备注

 

标准消息尾

Y

 

 

 

10.4.2.3  执行报告消息(MsgType=8)

执行报告消息可用于:

a)     订单确认

b)    订单状态变化确认(如撤单确认和修改单确认)

c)     发送订单的成交回报

d)    订单拒绝

每个执行报告中都包含两个域:OrdStatus,订单状态;ExecType,执行类型。

OrdStatus  用以报告订单当前状态,如果同时存在多个订单状态,则只报告优先级最高的状态。订 单状态优先级见表 16 所示(并未全部使用):

16  订单状态优先级

 

优先级

OrdStatus

说明

11

待撤消(6)Pending Cancel

撤单请求待处理,用于确认收到撤单请求,而非确认撤单已成功

10

待替换(EPending Replace

修改单请求待处理,用于确认收到修改单请求,而非确认订单修改 已成功

9

当天完成(3)Done for Day

订单在当天未成交或未完全成交,闭市后结束该订单

8

已计算(BCalculated

订单在当天结束(成交或当天完成)后, 计算并报告佣金或货币结 算细节

7

已成交(2)Filled

订单全部成交,没有剩余数量

 


 

6

已终止(7)Stopped

订单在交易所中被终止,用于价格保护和数量保护

5

已延缓(9)Suspended

由于客户请求而暂停执行订单

4

已撤消(4)Canceled

订单被撤消

4

已过期(CExpired

订单由于时间条件而到期失效

3

部分成交(1)Partially Filled

订单部分成交,有剩余数量

2

新(0)New

开放订单(已进入订单簿,等待撮合)

2

已拒绝(8)Rejected

订单被交易服务方(交易所)拒绝,允许在订单确认之后拒绝订单, 即从状态“新”进入“已拒绝”

2

待处理(APending New

订单被交易服务方(交易所)接收到但还未处理,仅在状态请求信 息的回应可能出现

1

已接受(DAccepted for bidding

订单被接受,并已被估价,仅用于 BidType  Disclosed”的一揽 子订单

 

ExecType 域用以标识执行报告的执行类型。执行报告中 ExecType  OrdStatus 共同指示了订单状 态的改变。在响应修改单时,ExecType 为待替换,指示修改单请求正在处理。ExecType 为已替换,指 示修改单请求已完成。

执行信息(如已成交或部分成交)与其它状态变化信息(如待撤消、待替换、已撤消、已替换、已 接受、当天完成)不能在一个执行报告中同时传递。

在订单处于“待处理”状态并将进入新状态(即待替换)时如果发生了成交,执行报告中应包括原 始的订单参数(ClOrdID, OrderQty, Price 等)。执行报告中 CumQty  AvgPx 要进行更新。只有在发出 ExecType 为已替换的执行报告后,才可以认为订单被成功替换。

撤单和修改单在订单有剩余数量时才有效。如果要求替换的订单数量低于累计执行数 CumQty 的水平,券商将中止执行该订单。对已成交订单要求修改价格将会被拒绝。OrderQty, CumQty, LeavesQty  AvgPx 共同反映出订单的累计状态。例如,订单 B 替换了部分成交的订单 A,订单 B  OrderQty, CumQty, LeavesQty  AvgPx 域也要加上订单 A 的累计数量。

一般性公式为:订单数量 OrderQty=  累计执行数量 CumQty +  订单剩余数量 LeavesQty

公式的例外情况:如果 ExecType / OrdStatus 为已撤消、当天完成、已过期、已计算、已拒绝, 则订单不处于活跃状态,LeavesQty  0

ExecType=FTrade)用以传递新成交信息。

ExecType=D Restated )表 明执行报告是 由交易服务方主动 向交易客户方发送  。应给  ExecRestatementReason。这可用在有时间条件的订单到期、公司行为、电话口头报单、交易服务方修改 价格或交易服务方主动撤单等情况。

ClOrdID  提供给交易客户方(机构、券商、中间商等)进行订单标识,在其内部系统中唯一。域 OrderID 则是由交易服务方(券商、交易所、基金管理公司等)生成的订单标识。在撤单和修改单中, ClOrdID/OrigClOrdID 需要形成链接。

执行报告消息(Execution Report)的格式见表 17 所示:

17  执行报告消息(Execution Report)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=8

1180

ApplID

N

消息应用标识

37

OrderID

Y

订单编号,交易服务方(交易所)的唯一订单标识

11

ClOrdID

N

交易客户方(券商)订单编号

 


 

41

OrigClOrdID

N

原始交易客户方(券商)订单编号,指示被撤消/修改订单的 ClOrdID

组件<Parties>

N

参与方

66

ListID

N

如果订单是通过 New Order-List 发送的,指示订单所在清单编号

17

ExecID

Y

执行编号,交易服务方赋予的唯一执行标识(或称成交编号)

150

ExecType

Y

执行类型

39

OrdStatus

Y

订单状态

103

OrdRejReason

N

订单拒绝时需要

378

ExecRestatementReason

N

ExecType = DRestated)时需要

790

OrdStatusReqID

N

订单状态请求编号

组件<Instrument>

Y

证券定义

54

Side

Y

买卖方向

组件<OrderQtyData>

Y

数量

59

TimeInForce

N

订单有效时间类型

126

ExpireTime

N

订单有效时间(订单有效时间类型为 GTD 时必须)

8526

NonTradingOrdType

N

非交易业务订单类型

40

OrdType

N

订单类型

423

PriceType

N

订单价格类型

44

Price

N

订单价格

640

Price2

N

市价转为限价订单的价格

99

StopPx

N

止损价

580

NoDates

N

期限

15

Currency

N

币种

32

LastQty

N

上一成交数(最近一笔成交数量)

31

LastPx

N

上一成交价(最近一笔成交价格)

151

LeavesQty

Y

订单剩余数量

14

CumQty

Y

累计执行数量

6

AvgPx

Y

成交平均价

60

TransactTime

N

执行报告时间

8504

TotalValueTraded

N

成交金额

8500

OrderEntryTime

N

订单申报时间

8501

AccountSecPosition

N

股东持股余额

309

UnderlyingSecurityID

N

期权序列代码

58

Text

N

备注

 

标准消息尾

Y

 

 

 

10.4.2.4  订单状态请求消息(MsgType=H)

订单状态请求用于向交易服务方请求某订单的状态,交易服务方通过执行报告消息返回订单状态。 订单状态请求消息的格式见表 18 所示:

18  订单状态请求消息(Order Status Request)


 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=H

37

OrderID

N

订单编号,交易服务方(交易所)的唯一订单标识

组件<Parties>

N

参与方

41

OrigClOrdID

Y

原始交易客户方(券商)订单编号,指示被修改订单的 ClOrdID

11

ClOrdID

Y

交易客户方(券商)订单编号

790

OrdStatusReqID

N

订单状态请求编号,订单状态请求唯一标识,在返回的执行报告消 息中需包含此编号

组件<Instrument>

Y

证券定义

54

Side

Y

买卖方向

 

标准消息尾

Y

 

 

10.4.2.5  撤单消息(MsgType=F)

撤单消息用以撤消订单的全部订单剩余数量。如果只进行部分撤单,则应使用修改单消息。

撤单消息仅在订单能成功撤回,没有产生执行的情况下被接受。

撤单消息也被赋予一个 ClOrdID,可视作另外一个订单。如果被拒绝, 撤单拒绝消息的ClOrdID  置撤单消息的 ClOrdID,而原始订单的 ClOrdID 则放入 OrigClOrdID 域。ClOrdID 要保证唯一。

撤单消息需要立即回应。除非撤单能立刻被处理或拒绝,否则应先发送一个待撤消的执行报告。

撤单消息(Order Cancel Request)的格式见表 19 所示:

19  撤单消息(Order Cancel Request)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=F

41

OrigClOrdID

Y

原始交易客户方(券商)订单编号,指示被撤消订单的 ClOrdID

37

OrderID

N

订单编号,交易服务方(交易所)的唯一订单标识

11

ClOrdID

Y

交易客户方(券商)订单编号

组件<Parties>

N

参与方

组件<Instrument>

Y

证券定义

54

Side

Y

买卖方向

60

TransactTime

Y

订单发起时间

组件<OrderQtyData>

Y

数量

8526

NonTradingOrdType

N

非交易业务订单类型

40

OrdType

Y

订单类型

309

UnderlyingSecurityID

N

期权序列代码

 

77

 

PositionEffect

 

N

开仓/平仓,取值: C=平仓

O=开仓

58

Text

N

备注

 

标准消息尾

Y

 

 

10.4.2.6  撤单拒绝消息(MsgType=9)


本消息用于撤单、修改相关消息的拒绝,包括交易业务类撤单消息、修改单消息、非交易业务类撤 单消息、注册指令撤单消息等。

交易服务方接收到撤单或修改单后发现无法执行(只有订单存在剩余数量时才允许更改价格或减少 数量,已成交订单不可更改等),将发送撤单拒绝。

拒绝修改单或撤单时,撤单拒绝消息应用 ClOrdID 指示修改单或撤单的ClOrdID,用 OrigClOrdID 指示之前最后接受的订单(除非拒绝原因是“未知订单”)。

 

撤单拒绝消息(Order Cancel Reject)的格式见表 20 所示:

20  撤单拒绝消息(Order Cancel Reject)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=9

37

OrderID

Y

订单编号,交易服务方(交易所)的唯一订单标识

11

ClOrdID

Y

交易客户方(券商)订单编号

41

OrigClOrdID

Y

原始交易客户方(券商)订单编号,指示被撤消/修改订单的 ClOrdID

39

OrdStatus

Y

订单状态

组件<Parties>

N

参与方

60

TransactTime

N

订单发起时间

434

CxlRejResponseTo

Y

撤单拒绝回应类型

102

CxlRejReason

N

撤单拒绝原因

 

标准消息尾

Y

 

 

10.4.3  投票业务类

10.4.3.1  投票消息(MsgType=U004)

投票消息提供了在投票期间输入投票的具体功能。 投票消息的格式见表21所示:

21  投票消息

 

Tag

域名

必需

说明

 

标准消息头

 

MsgType=U004

11

ClOrdID

Y

交易客户方(券商)订单编号

组件<Parties>

Y

参与方

组件<Instrument>

Y

证券定义

60

TransactTime

N

订单发起时间

8529

VotingProposal

Y

投票议案号

8530

VotingSubProposal

N

投票子议案号

8531

VotingPreference

Y

投票意向

组件<OrderQtyData>

N

数量

58

Text

N

备注

 

标准消息尾

 

 

 


10.4.3.2  投票执行报告消息(MsgType=U005)

投票执行报告消息将对投票消息作出响应。如果未能通过有效性检查该投票将无效。 投票执行报告消息的格式见表22所示:

22  投票执行报告消息

 

Tag

域名

必需

说明

 

标准消息头

 

MsgType=U005

11

ClOrdID

Y

交易客户方(券商)订单编号

37

OrderID

N

交易所处理编号

组件<Parties>

N

参与方

组件<Instrument>

Y

证券定义

 

150

 

ExecType

 

Y

执行类型,取值有: 0=请求接受

8=请求失败

103

OrdRejReason

N

投票请求拒绝时表示投票请求拒绝的原因

60

TransactTime

N

请求接收时表示接受请求的时间,拒绝响应时无该字段

 

标准消息尾

 

 

 

10.4.3.3  投资者服务密码激活消息(MsgType=U006)

投资者服务密码激活消息使投资者可以通过交易系统激活投资者在互联网投票系统申请的密码;密 码激活成功后,投资者可以继续在互联网投票系统使用其申请的密码进行登录并投票。

投资者服务密码激活消息的格式见表23所示:

23  投资者服务密码激活消息

 

Tag

域名

必需

说明

 

标准消息头

 

MsgType=U006

11

ClOrdID

Y

交易客户方(券商)订单编号

组件<Parties>

Y

参与方

60

TransactTime

N

订单发起时间

8539

ValidationCode

Y

校验号码

 

标准消息尾

 

 

 

10.4.3.4  投资者服务密码挂失消息(MsgType=U007)

投资者服务密码挂失消息使投资者可以通过交易系统挂失投资者在互联网投票系统申请的密码;密 码挂失成功后,系统将注销原有用户信息,投资者若想使用密码服务,须重新申请服务密码并激活密码。

服务密码挂失半日后正式注销,注销后投资者方可重新申领。

投资者服务密码挂失消息的格式见表24所示:

24  投资者服务密码挂失消息

 

Tag

域名

必需

说明

 


 

 

标准消息头

 

MsgType=U007

11

ClOrdID

Y

交易客户方(券商)订单编号

组件<Parties>

Y

参与方

60

TransactTime

N

订单发起时间

 

标准消息尾

 

 

 

10.4.3.5  投资者服务密码激活执行报告消息(MsgType=U008)

投资者服务密码激活执行报告消息将对投资者服务密码激活消息作出响应。如果未能通过有效性检 查该密码将不会被激活。

投资者服务密码激活执行报告消息的格式见表25所示:

25  投资者服务密码激活执行报告消息

 

Tag

域名

必需

说明

 

标准消息头

 

MsgType=U008

11

ClOrdID

Y

交易客户方(券商)订单编号

37

OrderID

N

交易所处理编号

组件<Parties>

N

参与方

 

150

 

ExecType

 

Y

执行类型,取值有: 0=请求接受

8=请求失败

103

OrdRejReason

N

请求拒绝时表示请求拒绝的原因

60

TransactTime

N

请求接收时表示接受请求的时间,拒绝响应时无该字段

 

标准消息尾

 

 

 

10.4.3.6  投资者服务密码挂失执行报告消息(MsgType=U009)

投资者服务密码挂失执行报告消息将对投资者服务密码挂失消息作出响应。如果未能通过有效性检 查该密码将不会被挂失。

投资者服务密码挂失执行报告消息的格式见表26所示:

26  投资者服务密码挂失执行报告消息

 

Tag

域名

必需

说明

 

标准消息头

 

MsgType=U009

11

ClOrdID

Y

交易客户方(券商)订单编号

37

OrderID

N

交易所处理编号

组件<Parties>

N

参与方

 

150

 

ExecType

 

Y

执行类型,取值有: 0=请求接受

8=请求失败

103

OrdRejReason

N

请求拒绝时表示请求拒绝的原因

60

TransactTime

N

请求接收时表示接受请求的时间,拒绝响应时无该字段

 


 

 

标准消息尾

 

 

 

10.4.4  注册业务类

10.4.4.1  注册类消息概述

注册类消息是交易客户方申请或变更其证券账号交易权利的指令,是进行证券交易前的准备。注册 类消息支持指定交易、转托管、国债回购登记/注销等业务。

10.4.4.2  注册消息(MsgType=U001)

注册消息中的注册指令(DesignationInstruction),用于指明注册业务的类别:指定交易登记、指定 交易撤消、转托管、国债回购登记、国债回购注销。

指定交易注册消息用于上海证券交易所的全面指定交易模式,由交易客户方发出,用以将证券账号 与参与者业务单元进行关联或撤消关联。

转托管注册消息用于深圳证券交易所的账号托管模式,由交易客户方发出,用以变更账号持股与托 管参与者业务单元间的指定关系。

在转托管注册消息中,若无证券代码,表示该证券账号在该参与者业务单元下的所有证券都要求转 至新的参与者业务单元;若无数量,表示该证券账号在该参与者业务单元下的该证券的全部持有量都转

至转入参与者业务单元。

国债回购登记/注销注册消息由交易客户方发出,用以为证券账号申请或注销进行国债回购业务的 权利。

注册消息通过指定注册类型来确定注册消息是新注册请求还是注册撤单,注册撤单由交易客户方发 出,用以撤消之前的注册请求。

注册消息的格式见表 27 所示:

27  注册

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=U001

41

OrigClOrdID

N

原始交易客户方(券商)订单编号,指示被撤消订单的 ClOrdID

37

OrderID

N

订单编号,交易服务方(交易所)的唯一订单标识

11

ClOrdID

Y

交易客户方(券商)订单编号

 

 

 

8502

 

 

 

DesignationInstruction

 

 

 

Y

注册指令:

1=指定交易登记

2=指定交易撤消 3=转托管

4=国债回购登记

5=国债回购注销

 

8527

 

DesignationTransType

 

N

注册类型:

1=新注册请求(New 3=注册撤单(Cancel

组件<Parties>

N

参与方

组件<Instrument>

N

证券定义

60

TransactTime

Y

事务发起时间

 


 

组件<OrderQtyData>

N

数量

 

标准消息尾

Y

 

 

10.4.4.3  注册执行报告消息(MsgType=U002)

注册执行报告消息由交易服务方发出,用以回应注册消息。 注册执行报告消息的格式见表 28 所示:

28  注册执行报告

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=U002

37

OrderID

N

订单编号,交易服务方(交易所)的唯一订单标识

11

ClOrdID

N

交易客户方(券商)订单编号

41

OrigClOrdID

N

原始交易客户方(券商)订单编号,指示被撤消订单的 ClOrdID

17

ExecID

N

执行编号,交易服务方赋予的唯一执行标识(或称成交编号)

150

ExecType

Y

执行类型

39

OrdStatus

N

订单状态

103

OrdRejReason

N

订单拒绝原因

 

 

 

8502

 

 

 

DesignationInstruction

 

 

 

Y

注册指令:

1=指定交易登记

2=指定交易撤消 3=转托管

4=国债回购登记

5=国债回购注销

组件<Parties>

N

参与方

组件<Instrument>

N

证券定义

60

TransactTime

Y

事务发起时间

组件<OrderQtyData>

N

数量

 

标准消息尾

Y

 

 

10.4.5  行情

10.4.5.1  证券信息请求消息(MsgType=e)

证券信息请求用于交易客户方向交易服务方提出有关证券信息的请求,通过此信息,可以得到一条 或多条有关证券信息消息。

证券信息请求消息包含一个订阅请求类型(SubionRequestType)域,通过该域的不同取值告 知对方所请求的是何种类型:

0 - 表示请求人只要求快照或当前状态;

1 - 表示请求人要求快照+更新(若状态发生变化);

2 - 表示请求人要求撤销处于等待中的证券信息状态快照或更新请求。

证券信息请求消息的格式见表29所示:

29  证券信息请求(Security Status Request)


 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=e

324

SecurityStatusReqID

N

证券信息请求编号

组件<Instrument>

Y

证券定义

15

Currency

N

币种

263

SubionRequestType

Y

订阅请求类型

336

TradingSessionID

N

交易盘标识

 

 

 

 

 

625

 

 

 

 

 

 

TradingSessionSubID

N

交易盘子标识,如: A 股市场

B 股市场

中小企业市场 基金市场

国债市场

其他债券市场 债券回购市场 国际板市场

创业版市场

 

标准消息尾

Y

 

 

10.4.5.2  证券信息广播消息(MsgType=f)

证券信息广播消息包含证券相关信息,市场交易信息等。 证券信息广播消息的格式见表 30 所示:

30  证券信息广播(Security Status)

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=f

组件<Instrument>

Y

证券定义

324

SecurityStatusReqID

N

证券信息请求编号

561

RoundLot

N

交易单位(该证券订单数量的单位量,即最终的委托数量=订单数 ×交易单位)

8507

IndustryClassification

N

行业种类(参见中国证监会颁布的《上市公司行业分类指引》)

15

Currency

N

币种

8508

ShareFaceValue

N

每股面值

8509

OutStingShares

N

总发行量

8510

PublicFloatShareQuantity

N

流通股数

8511

PreviousYearProfitPerShare

N

上年每股利润

8512

CurrentYearProfitPerShare

N

本年每股利润

136

NoMiscFees

N

杂项费用类别数

 

 

 

139

 

MiscFeeType

 

N

杂项费用类别

3=佣金( Local Commission 4=经手费(Exchange Fees

 


 

 

 

 

 

5=印花税(Stamp

6=征管费(Levy

7=其它(Other

13=过户费(TransferFee

 

891

MiscFeeBasis

N

杂项费用单位

 

137

MiscFeeAmt

N

杂项费用金额

225

IssueDate

N

上市日期

541

MaturityDate

N

到期/交割日

111

MaxFloor

N

每笔限量

8513

BidLotSize

N

买数量单位(买订单数量应为此域值的整数倍)

8514

AskLotSize

N

卖数量单位(卖订单数量应为此域值的整数倍)

8515

PriceTickSize

N

价格档位

8517

AuctionPriceLimit

N

集合竞价限价参数

8518

ContinuousTradePriceLimit

N

连续竞价限价参数

8516

PriceLimitType

N

限价参数类型

8519

DailyPriceUpLimit

N

涨幅价格(最高价)

8520

DailyPriceDownLimit

N

跌幅价格(最低价)

 

 

 

 

 

326

 

 

 

 

 

SecurityTradingStatus

 

 

 

 

 

N

交易状态(含停牌标志)

2 =停牌(Trading Halt

3 =恢复(Resume

101:首日上市

102:增发股份上市

103:正常状态

104:上网定价发行

105:上网竞价发行

106:国债挂牌分销

 

 

 

 

 

 

 

8521

 

 

 

 

 

 

 

SecurityProperties

 

 

 

 

 

 

 

N

证券属性 N=正常  S=ST   P=PT 

H=上证所证券在深交所代理 T=代办转让证券

Z=深交所证券在上证所代理 L=上市开放型 LOF 基金

D=上市开放低风险收益型 LOF 基金 F=非交易型开放式基金

E=交易型开放式指数基金(ETF

O=仅提供净值揭示服务的开放式基金 B=仅在协议交易平台挂牌交易的证券

 

292

 

 

CorporateAction

 

 

N

除权除息标志

A =除股息(Ex-Dividend   B =除分配(Ex-Distribution C =除权(Ex-Rights

 


 

 

 

 

D =新股(New

E =除利息(Ex-Interest N =正常(Normal

8522

NoIndicesParticipated

N

所属指数数量

 

8528

Participatingindex ID

N

所属指数

 

 

 

8523

IndexinclusionInd icator

 

N

纳入指数计算标志

Y:纳入该指数计算

N:暂停纳入该指数计算

159

AccruedInterestAmt

N

每百元债券应计利息额

8534

 

 

WarrantStyle

 

 

N

权证类型

A=美式权证

E=欧式权证

B=百慕大式权证

 

8535

 

WarrantPutOrCall

 

N

权证种类

C=认购 P=认沽

 

8536

 

WarrantClearingType

 

N

权证结算方式 S=证券结算

C=现金结算

231

ContractMultiplier

N

行权比例

916

StartDate

N

对权证表示行权开始日期

917

EndDate

N

对权证表示行权结束日期

309

UnderlyingSecurityID

N

基础证券代码(权证、ETF

8537

NAV

N

T-1 日基金的单位净值

 

标准消息尾

Y

 

 

10.4.5.3  证券行情快照消息(MsgType=W)

每条行情快照消息包含一个产品的所有行情条目。每个行情条目就是某个产品的买、卖、成交、开 盘、结算、买卖方均衡、指数、最高、最低、交易量等。

行情快照消息用于定期或者不定期地发送行情,可用 RefreshIndicator 字段来区分重复内容的快照 数据和带有新数据的快照数据。

证券行情快照消息的格式见表 31 所示:(9

31  证券行情广播

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=W

1180

ApplID

N

消息的应用标识,可省略

1181

ApplSeqNum

N

消息的应用编号,可省略

 

9:MDEntryDate  MDEntryTime 用于发布当前行情的日期和时间。对于指数发布,可以用相应的域表示前收盘 指数、今开盘指数、今成交金额、最高指数、最低指数、最新指数、成交股数等。


 

 

1187

 

RefreshIndicator

 

N

用以标识消息中是否有新的行情数据,取值: 1=

0=

75

TradeDate

N

交易日期,格式YYYYMMDD”,可省略

55

Symbol

N

证券名称

48

SecurityID

N

证券代码

22

SecurityIDSource

N

证券代码源,取101”,表示 SecurityID 取上证所的证券代码

461

CFICode

N

CFICode

8503

NumTrades

N

成交笔数

1020

TradeVolume

N

成交数量

8504

TotalValueTraded

N

成交金额

140

PreClosePx

N

昨收盘价,可省略

268

NoMDEntries

N

行情条目个数

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

269

 

 

 

 

 

 

 

 

 

MDEntryType

 

 

 

 

 

 

 

 

 

N

行情条目类别

0 =买入(Bid

1 =卖出(Offer

2 =成交价(Trade

3 =指数(Index Value

4 =今开盘价(Opening Price

5 =今收盘价(Closing Price

6 =结算价(Settlement Price

7 =最高价(Trading Session High Price

8 =最低价(Trading Session Low Price x =  最近集合竞价

v = ETF 申购/赎回的单位参考净值(IPOV

u =  权证总行权数量 t =  权证总创设数量 s =  权证总注销数量

 

270

MDEntryPx

N

行情条目价格

 

271

MDEntrySize

N

行情条目数量,数量的单位对股票为股, 基金为份,债券与回购为 手,权证为份

 

290

MDEntryPosition No

N

行情条目买卖盘序号(MDEntryType 0  1 时有效)

8538

TradingPhaseCode

N

交易阶段代码

 

标准消息尾

Y

 

 

10.4.6  市场控制

10.4.6.1  市场参数请求消息(MsgType=BI)

市场参数请求消息用于接入方向交易所发送市场参数请求,获取当前市场相关控制参数,交易所应 以市场参数消息作为请求的响应。


市场参数请求消息的格式见表 32 所示:(10

32  市场参数请求

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=BI

335

TradSesReqID

Y

交易盘请求编号

336

TradingSessionID

N

交易盘标识

 

 

 

 

 

625

 

 

 

 

 

TradingSessionSubID

 

 

 

 

 

 

N

交易盘子标识,如: A 股市场

B 股市场

中小企业市场 基金市场

国债市场

其他债券市场 债券回购市场 国际板市场

创业版市场

207

SecurityExchange

N

交易所代码

 

 

338

 

 

TradSesMethod

 

 

N

交易盘交易方法

1 =  电子交易系统

2 =  喊价交易(Open Outcry

3 =  双方(Two Party

 

 

339

 

 

TradSesMode

 

 

N

交易盘交易模式

1 =  系统测试

2 =  模拟交易

3 =  产品(正常交易)

263

SubionRequestType

Y

订阅请求类型

 

标准消息尾

Y

 

 

10.4.6.2  市场参数消息(MsgType=BJ)

市场参数消息用于交易所向交易客户方发送市场状态、时段信息,用以交易客户方控制交易。 市场参数消息的格式见表 33 所示:(11

33  市场参数

 

Tag

域名

必需

说明

 

标准消息头

Y

MsgType=BJ

335

TradSesReqID

N

交易盘请求编号

396

NoTradingSessions

Y

交易盘个数

 

336

TradingSessionID

Y

交易盘标识

 

10:如果市场参数请求消息没有交易盘子标识(TradingSessionSubID),则表示要求获取所有市场的参数。

TradingSessionSubID),则表示所有市场参数相同。


 

 

 

 

 

 

 

 

 

 

 

 

 

625

 

 

 

 

 

TradingSessionSu bID

 

 

 

 

 

 

N

交易盘子标识,如: A 股市场

B 股市场

中小企业市场 基金市场

国债市场

其他债券市场 债券回购市场 国际版市场

创业板市场

 

207

SecurityExchange

N

交易所代码

 

 

 

 

338

 

 

TradSesMethod

 

 

N

交易盘交易方法

1 =电子交易系统

2 =喊价交易(Open Outcry

3 =双方(Two Party

 

 

 

 

339

 

 

TradSesMode

 

 

N

交易盘交易模式

1 =系统测试

2 =模拟交易

3 =产品(正常交易)

 

325

UnsolicitedIndicat

or

N

主动发送标识

 

 

 

 

 

 

 

 

 

 

 

 

340

 

 

 

 

 

 

TradSesStatus

 

 

 

 

 

 

Y

交易盘状态

0 =未知状态(Unknown)

1 =停盘(Halted)

2 =开盘(Open)

3 =闭盘(Closed)

4 =预开盘(Pre-Open)

5 =预闭盘(Pre-Close)

7 =挂起(Suspend)

11 =正常交易(Trading)

21 =中断(Break)

 

567

TradSesStatusRej Reason

N

交易盘状态请求拒绝原因

 

341

TradSesStartTime

N

交易盘开始时间

 

342

TradSesOpenTim e

N

交易盘开盘时间

 

343

TradSesPreCloseT ime

N

交易盘预关闭时间

 

344

TradSesCloseTim

e

N

交易盘关闭时间

 

345

TradSesEndTime

N

交易盘结束时间

 

387

TotalVolumeTrade d

N

总成交量

 


 

 

58

Text

N

说明正文

 

354

EncodedTextLen

N

编码文本长度

 

355

EncodedText

N

编码文本

 

标准消息尾

Y

 

 

 

11  数据字典

 

以下列出会话层消息和应用层消息中用到的数据域,数据类型定义格式参见数据类型定义(6.1.1) 说明部分。

34  数据字典

 

Tag

域名

域中文名

数据类型

说明

6

AvgPx

成交平均价

Price

订单所有成交的平均成交价

7

BeginSeqNo

起始消息序号

SeqNum

重发消息区的起始消息序号

8

BeginString

起始串

String

起始串,指示协议版本,不可加密,消息中 的第一个域,取值:STEP.1.00

9

BodyLength

消息体长度

Length

消息体长度,不可加密,消息的第二个域

10

CheckSum

校验和

String

校验和,不可加密,消息最后一个域

 

11

 

 

ClOrdID

 

交易客户方订单 编号

 

 

String

由交易客户方(券商)赋予的订单编号,对 相应券商(SenderCompID)在订单交易时期 内应保证唯一。对跨日订单,可以在该域内 嵌入交易日期

14

CumQty

累计执行数量

Qty

订单所有成交的成交总股数

15

Currency

币种

Currency

价格的货币单位,可以缺省,但最好给出

 

16

 

 

EndSeqNo

 

结束消息序号

 

 

SeqNum

重发消息区的结束消息序号

BeginSeqNo = EndSeqNo,表明重发一条消息 EndSeqNo  =  0”,表明重发起始消息序号 后的所有消息

 

17

 

ExecID

 

执行编号

 

String

由交易服务方(即交易所)赋予的执行编号, 在订单交易时期内应保证唯一。对跨日订单, 可以在该域内嵌入交易日期(或称成交编号)

18

ExecInst

执行指令

MultipleValueStri ng

交易所订单处理指令,可以有多个(将在下 一阶段使用)

 

 

 

22

 

 

 

 

SecurityIDSource

 

 

 

证券代码源

 

 

 

 

String

证券代码来源或代码集合,如果消息中使用  SecurityID  域则也应有 SecurityIDSource 域,取值:

4 = ISINISIN 组织)

101 =  上海证券交易所

102 =  深圳证券交易所 (100+  自行内部使用)

31

LastPx

上一成交价

Price

订单最近一个成交的成交价

32

LastQty

上一成交数

Qty

订单最近一个成交的股数

 


 

34

MsgSeqNum

消息序号

SeqNum

消息序号

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

35

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MsgType

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

消息类型

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

String

消息类型,不可加密,消息的第三个域。自 定义消息类型以U”开头,如 U1, U2 等。 消息类型取值:

0 =心跳(Heartbeat

1 =测试请求(Test Request

2 =重发请求(Resend Request

3 =会话拒绝(Reject

4 =序号重设(Sequence Reset

5 =注销(Logout

8 =执行报告(Execution Report

9 =撤单拒绝(Order Cancel Reject A =登录(Logon

D =新订单(Order – Single

E =新订单清单(Order – List

F =撤单(Order Cancel Request

G=修改单(Order Cancel/Replace Request H=订单状态请求(Order Status Request

e =证券信息请求(Security Status Request f =证券信息广播(Security Status

BI  = 市场参数请求(Trading  Session  List Request

BJ =市场参数(Trading Session List U001=注册指令

U002=注册指令执行报告 U003=证券行情广播

36

NewSeqNo

新消息序号

SeqNum

新消息序号

 

37

 

OrderID

 

订单编号

 

String

由交易服务方(交易所)赋予的订单编号, 在交易日内应保证唯一。对跨日订单,可以 在该域内嵌入交易日期

38

OrderQty

订单数量

Qty

订单中的证券数量

 

 

 

 

 

 

 

39

 

 

 

 

 

 

 

OrdStatus

 

 

 

 

 

 

 

订单状态

 

 

 

 

 

 

 

订单当前状态,取值:

0 =新(New

1 =部分成交(Partially filled

2 =已成交(Filled

3 =当天完成(Done for day

4 =已撤消(Canceled

6 =待撤消(Pending Cancel

7 =已终止(Stopped

8 =已拒绝(Rejected

9 =已延缓(Suspended

A =待处理(Pending New B =已计算(Calculated

 


 

 

 

 

 

C =已过期(Expired

D =已接受(Accepted for bidding E =待替换(Pending Replace

Z =非交易订单已接收(Non-trading order has been received

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OrdType

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

订单类型

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

订单类型,取值:

1 =市价(Market

2 =限价(Limit

3 =止损(Stop

4 =  止损限价(Stop limit

6 =  含或不含(With or without

7 =  限价或更好价(Limit or better

8 =  限价含或不含(Limit with or without

9 =  基于基价(On basis

D =  上次报价(Previously quoted

E =  上次显示指定的(Previously indicated G =  外汇互换(Forex – Swap

I  =  当日有效限价,剩余部分在收市结束时 变为市价( Funari  (Limit  Day  Order  with unuted  portion  hled  as  Market  On Close.      E.g. Japan)

J  =  执行转市价,如果订单部分执行,所有 剩余部分立即变成为市价(Market If Touched (MIT)

K  =市价订单未执行部分转现价,(Market with  Leftover  as  Limit  (market  order  then unuted quantity becomes limit order at last price)

L =  上次基金定价,历史价格(Previous Fund Valuation Point (Historic pricing) (for CIV)  M  =下次基金定价,预期价格(Next  Fund Valuation Point –(Forward pricing) (for CIV) P =  挂钩(Pegged

T =  冰山(Iceberg U =  本方最优

V =  对方最优 W =  最优五档

X =协议交易(Block Trade

Y =协商交易(Negotiated Trade

Z =非交易订单(Non-Trading Order

41

OrigClOrdID

原始交易客户方 订单编号

String

之前相关订单的 ClOrdID,用于撤单或修改 

43

PossDupFlag

可能重复标志

Boolean

指示该消息序号的消息可能重复发送,取值:

 


 

 

 

 

 

Y =  可能重复

N =  首次发送

44

Price

价格

Price

每股价格

45

RefSeqNum

关联消息序号

SeqNum

消息的关联消息序号

48

SecurityID

证券代码

String

证券代码,应在 SecurityIDSource  中指明代 码源

49

SenderCompID

发送方代码

String

发送方代码

50

SenderSubID

发送方子标识符

String

发送方子代码(如交易员)

52

SendingTime

发送时间

UTCTimestamp

消息发送时间

 

 

54

 

 

Side

 

 

买卖方向

 

 

订单买卖方向,取值:

1 =买入(Buy

2 =卖出(Sell F =  表示融入   G =  表示融出

55

Symbol

证券名称

String

行情滚动屏上显示的证券名称

56

TargetCompID

接收方代码

String

接收方代码

57

TargetSubID

接收方子标识符

String

接收方的人员代码

58

Text

文本

String

自由格式文本串

 

 

 

 

59

 

 

 

 

TimeInForce

 

 

 

订单有效时间类 

 

 

 

 

Char

订单有效时间类型,取值范围: 0=当日有效(GFD

1=取消前有效(GTC

2 =开盘有效(OPG

3=即时否则取消(IOC

4=全额即时(FOK

6=指定日期前有效(GTD

7 = At the Close 收盘有效

60

TransactTime

事务时间

UTCTimestamp

订单或执行的创建时间

 

66

 

ListID

 

订单清单编号

 

String

交易客户方对批量订单的编号,日内唯一, 如果跨日订单要保证唯一,可以在订单清单 编号中加入日期

67

ListSeqNo

订单清单序号

int

订单清单中单个订单的序号

68

TotNoOrders

全部订单数

int

指示在同一 ListID  下所有消息中的订单总 数,用以支持消息分割

73

NoOrders

订单个数

NumInGroup

订单个数

 

77

 

PositionEffect

 

开仓平仓

 

Char

开仓/平仓,取值: C=平仓

O=开仓

89

Signature

数字签名

data

数字签名

90

SecureDataLen

密文数据长度

Length

加密数据块长度

91

SecureData

密文数据

data

加密数据块

93

SignatureLength

数字签名长度

Length

数字签名域的字节数

95

RawDataLength

无格式数据长度

Length

无格式数据的字节数

 


 

96

RawData

无格式数据

data

无格式的数据,可以是位图、WORD 文档

 

97

 

 

PossResend

 

可能重发标志

 

 

Boolean

指示该消息可能发送过(使用不同的消息序 ),取值:

Y=  可能重发 N=  首次发送

 

 

 

 

98

 

 

 

 

EncryptMethod

 

 

 

 

加密方法

 

 

 

 

int

加密方法,取值:

0 =  无加密或其他加密方法(None / other

1 = PKCS 加密方法 (私有)

2 = DES 加密方法 (ECB  模式)

3 = PKCS/DES 加密方法 (私有)

4 = PGP/DES 加密方法

5 = PGP/DES-MD5 加密方法

6 = PEM/DES-MD5 加密方法

99

StopPx

止损价

Price

止损价

 

 

 

 

 

 

 

102

 

 

 

 

 

 

 

CxlRejReason

 

 

 

 

 

 

 

撤单拒绝原因

 

 

 

 

 

 

 

int

撤单拒绝原因,取值:

0 =  撤单太晚(Too late to cancel

1 =  未知订单(Unknown order

2 =   自选原因(Broker / Exchange Option

3=   在撤 消( Order  already  in  Pending Cancel or Pending Replace status

4 =  不能群组撤单(Unable to process Order Mass Cancel Request

5 =  订单时间不匹配(OrigOrdModTime  did not match last TransactTime of order

6   =         Duplicate   ClOrdID received

99 =  其他(other

 

 

 

 

 

 

 

 

 

103

 

 

 

 

 

 

 

 

 

OrdRejReason

 

 

 

 

 

 

 

 

 

订单拒绝原因

 

 

 

 

 

 

 

 

 

int

订单拒绝原因,取值:

0  =  券商/交易所选项(Broker  /  Exchange option

1 =  证券代码非法(Unknown symbol

2 =  交易关闭(Exchange closed

3 =  订单超过限价(Order exceeds limit

4 =  订单太迟(Too late to enter

5 =  未知订单(Unknown Order

6  =  重复订单(Duplicate  Order  (e.g.  dupe ClOrdID)

7 =  与口头报单重复(Duplicate of a verbally communicated order

8 =  失效订单(Stale Order

9 = Trade Along required

10 =  无效账户(Invalid Investor ID

11 =  不支持的订单特征(Unsupported order

 


 

 

 

 

 

acteristic

12 =  监查选择原因(Surveillence Option

13 =  数量错误(Incorrect quantity

14  =  数量  配错误( Incorrect  allocated quantity

15 =  未知账号(Unknown account(s)

99 =  其他(other

100=参与者业务单元代码非法 101=委托日期非法

102=证券停牌

103=买委托数量不是 SJSXX.XXBLDW 的整 数倍;或

104=卖委托数量不是 SJSXX.XXSLDW 的整 数倍;或

105=委托数量超出 SJSXX.XXMBXL   的限 值;

106=委托价格不是 SJSXX.XXJGDW 的整数 

107=证券账户含有非数字字符

108=非法的委托业务

109=测试环境正式用户不允许报单

110=WTCLBZ 没有填‘z’

111=交易期间测试用户不允许报单

112=该参与者业务单元无权经营该种证券 113=该证券账户无权交易该种证券

114=该证券在当前时间不可交易

115=参与者业务单元被禁买或禁卖 116=证券账户被禁买或禁卖

117=参与者业务单元资金可用量不足 118=该委托记录标有 DELETE 标记  119=回购卖空

120=参与者业务单元卖空 121=股东卖空

122=总量超限 123=价格过高 124=价格过低 125=价格错误 126=数量非法 127=数量超限 128=重复申购 129=账户非法 130=转股禁止 131=回售禁止

 


 

 

 

 

 

132=非质押物

133=持股超限

134=参与者业务单元无此业务权限 135=开放式基金申购禁止

136=开放式基金赎回禁止 137=权证行权禁止

138=ETF 申购禁止

139=ETF 赎回禁止

140=ETF 全额现金替代申购禁止

141=ETF 申购时投资者篮子股份不足

142=ETF 赎回时基金篮子股份不足

143=ETF 申购现金替代比例超限

144=ETF 全额现金替代申购单个投资者超限 145=ETF 全额现金替代申购单个代办证券公 司超限

146=该证券禁止融资买入 147=该证券禁止融券卖出 148=无效业务类别

149=买卖业务禁止

150=申报市价委托时因无法成交而导致交易 主机生成的自动撤单记录

151=ETF 赎回时当日赎回总量超过限制 152=ETF 申购时当日申购总量超过限制

203 =无效证券代码(Invalid stock id

204 =非交易时间(This stock is not in trading hours

213 =证券被挂起(Stock is suspended

214= 该股票不参与集合竞价( Orders  not accepted for this stock during open period

215=无效账号(Invalid client account

216= 该账号未指定在你参与者业务单元 Your firm does not own this account

217=账号已挂起(Account is suspended

218=无效价格(Invalid price

219=申报价不能为零(Price may not be 0 for a limit order

220=最小价格步长是(Minimum  price  Step is…

222=价格超出范围(Price is out of range

224=无效数量(Invalid quantity

225=申报数量必须大于 0 Quantity must be greater than 0

227=申报数量不符最小步长(Invalid quantity

 


 

 

 

 

 

for minstep

228=申报量必须不大于(Order quantity must not be more than

229=    量( Holding  limit   would  be exceeded

231=余额不足(Insufficient  account  balance for sell order

234=股票持有量超出限量(Holdings limit on stock would be exceeded

235=Unable to find base stock for rights 243=机构账号不能买卖此证券

244=S 账号不能买入

245=不能撤消指定(有卖空股票) 246=不能撤消指定(有委托)

247=不能撤消指定(公司卖空)

248=上海中央登记结算公司不允许撤消指定 271=该账号已指定在你参与者业务单元

272=未做指定不能交易

401=无效操作员代码(Invalid trader id   403=无效申报序号(Invalid order number 404=他人申报(Not your order

405=账号不同(Account differ

406=股票不同(Stock differ

407=买卖不同(Buy Sell differ

2001=日期出错(Date error

2002=时间出错(Time error

2003=券商 ref 字段数据错误(Brok-ref error 2004=账号出错(Account error

2005=买卖出错(BS error

2006=代码出错(Stock error

2007=价格出错(Price error

1100=委托号太大(Weituo number too large 1101=记录不匹配(Record not match

1102=委托失败(Weituo faulted

1000=非法状态(Invalid status

1021=记录号出错(Rec-num error 1022=证券帐号错误(ACC error

1023=证券代码错误(STOCK error 1024=买卖标志错误(B/S error

1025=价格错误(PRICE error

1026=数量错误(QTY error

1027=日期字段错误(Field Date Error

107

SecurityDesc

证券描述

String

证券描述信息,在 STEP  中用以描述证券的

 


 

 

 

 

 

英文简称

108

HeartBtInt

心跳间隔

int

心跳间隔(单位:秒)

111

MaxFloor

每笔限量

Qty

每笔限量

112

TestReqID

测试请求标识符

String

用于测试请求消息,将包含在回应的心跳消 息中

 

115

OnBehalfOfCompI D

最初发送方标识 

 

String

用于经第三方发送消息,指明原始发送方公 司代码, SenderCompID  域指明第三方公司 代码

116

OnBehalfOfSubID

最初发送方子标 识符

String

用于经第三方发送消息,指明原始发送方交

易员代码

122

OrigSendingTime

原始发送时间

UTCTimestamp

收到重发请求后,将订单重发时,记录的原 始消息发送时间

 

 

 

123

 

 

 

GapFillFlag

 

 

 

缺口填补标志

 

 

 

Boolean

用于序号重设消息,指示是否填补缺口,取 值:

Y=序号重设-缺口填补消息,消息序号域有  效(Gap Fill message, MsgSeqNum field valid N=序号重设-重设消息, 消息序号域无效  Sequence Reset, ignore MsgSeqNum

126

ExpireTime

订单有效时间

UTCTimestamp

订单有效时间

 

128

 

DeliverToCompID

最终接收方标识 

 

String

用于经第三方发送消息,指明最终接收方公 司代码,TargetCompID 域指明第三方公司 代码

129

DeliverToSubID

最终接收方子标 识符

String

用于经第三方发送消息,指明最终接收方人 员代码

136

NoMiscFees

杂项费用类别数

NumInGroup

杂项费用重复组重复次数

137

MiscFeeAmt

杂项费用金额

Amt

杂项费用金额

 

 

 

 

 

 

 

 

 

139

 

 

 

 

 

 

 

 

 

MiscFeeType

 

 

 

 

 

 

 

 

 

杂项费用类别

 

 

 

 

 

 

 

 

 

String

指明杂项费用的费用类型 有效取值:

1=监管费用(Regulatory (e.g. SEC) 2=税(Tax

3=佣金( Local Commission 4=经手费(Exchange Fees   5=印花税(Stamp

6=证管费(Levy

7=其它(Other

8=价格附加值(Markup

9=消费税(Consumption Tax 10=每次交易(Per transaction 11=转换费(Conversion

12=代理费(Agent

13=过户费(TransferFee

140

PreClosePx

昨收盘价

Price

昨收盘价

141

ResetSeqNumFlag

序号重设标志

Boolean

指示会话连接双方是否要重设序号

 


 

 

 

 

 

Y=Yes         reset   sequence numbers

N = No

142

SenderLocationID

发送方方位标识 

String

消息发起方人员所在地点

143

TargetLocationID

接收方方位标识 

String

消息接收方人员所在地点

144

OnBehalfOfLocatio nID

最初发送方方位 标识符

String

用于经第三方发送消息,指明消息原始发起 方人员所在地点

145

DeliverToLocationI D

最终接收方方位 标识符

String

用于经第三方发送消息,指明消息最终接收 方人员所在地点

146

NoRelatedSym

证券个数

NumInGroup

指示重复的证券个数

 

 

 

 

 

 

 

 

 

 

 

150

 

 

 

 

 

 

 

 

 

 

 

ExecType

 

 

 

 

 

 

 

 

 

 

 

执行类型

 

 

 

 

 

 

 

 

 

 

 

执行报告的类型,与 OrdStatus 配合使用,取 值:

0=新(New

3=当天完成(Done for day

4=已撤消(Canceled

5=已替换(Replaced

6=待撤消(Pending Cancel

7=已终止(Stopped

8=已拒绝(Rejected

9=已延缓(Suspended

A=待处理(Pending New

B=已计算(Calculated

C=已过期(Expired

D=主动发送(Restated

E=待替换(Pending Replace

F=成交或部分成交(Trade (partial fill or fill) G=成交修改(Trade Correct

H=成交撤消(Trade Cancel

I=订单状态(Order Status

151

LeavesQty

剩余数量

Qty

订单仍开放(可以撮合)部分的股数

152

CashOrderQty

订单现金金额

Amt

订单现金金额

159

AccruedInterestAmt

应计利息额

Amt

每百元债券应计利息额

167

SecurityType

证券类别

String

指示证券类别,在 STEP 中未使用

 

207

 

SecurityExchange

 

交易所代码

 

Exchange

GB/T 23696-2009 标准,其中: XSHG=上海证券交易所

XSHE=深圳证券交易所

225

IssueDate

上市日期

UTCDate

上市日期

231

ContractMultiplier

转换折合比例

Percentage

债券折合成回购标准券的比例 权证行权比例

263

SubionReques tType

订阅请求类型

订阅请求类型,取值范围:

0 =快照(Snapshot

 


 

 

 

 

 

1= 快照 +    新( Snapshot  +  Updates (Subscribe)

2=忽略前快照+非预定更新(Disable previous Snapshot + Update Request (Unsubscribe)

268

NoMDEntries

行情条目个数

NumInGroup

行情条目个数

 

 

 

 

 

269

 

 

 

 

 

 

MDEntryType

 

 

 

 

 

行情条目类别

 

 

 

 

 

Char

行情条目类别

0 =买(Bid

1 =卖(Offer

2 =最新价(Trade

3 =指数(Index Value

4 =今开盘价(Opening Price

5 =今收盘价(Closing Price

6 =结算价(Settlement Price

7 =最高价(Trading Session High Price

8 =最低价(Trading Session Low Price

270

MDEntryPx

行情条目价格

Price

行情条目中的价格

271

MDEntrySize

行情条目数量

Qty

行情条目中的数量

272

MDEntryDate

行情条目日期

UTCDate

行情条目中的日期

273

MDEntryTime

行情条目时间

UTCTimeOlny

行情条目中的时间

 

 

275

 

 

MDMkt

 

 

行情条目市场

 

 

Exchange

       场(交   ), GB/T 23696-2009 标准,其中:

XSHG=上海证券交易所

XSHE=深圳证券交易所

290

MDEntryPositionN o

行情条目买卖盘 序号

int

行情条目买卖盘序号(MDEntryType   0/1

时有效)

 

 

 

 

292

 

 

 

 

CorporateAction

 

 

 

 

股东大会决议

 

 

 

 

MultipleValueStri ng

股东大会决议,如除权除息等 有效取值:

A=除股息(Ex-Dividend

B=除分配(Ex-Distribution C=除权(Ex-Rights

D=新股(New

E=除债券利息(Ex-Interest N=正常(Normal

309

UnderlyingSecurityI D

基础证券/期权 序列代码

String

权证、ETF、其它衍生产品的基础证券代码, 参见 SecurityID (48)

324

SecurityStatusReqI D

证券信息请求编 

String

证券信息请求的唯一编号

 

 

325

 

 

UnsolicitedIndicator

 

 

主动发送标识

 

 

Boolean

用于表示消息是主动发送或是响应请求而被 动发送

有效取值:

Y=消息主动发送 N=消息被动发送

326

SecurityTradingStat

交易状态

int

交易状态,取值:

 


 

 

us

 

 

2=停牌(Trading Halt 3=恢复(Resume

101=首日上市

102=增发新股

103=正常状态

104=上网定价发行

105=上网竞价发行 106=国债挂牌分销

335

TradSesReqID

交易盘请求编号

String

交易盘请求消息的唯一编号

 

336

 

TradingSessionID

 

交易盘标识

 

String

交易盘标识,取值示例(CLOSE OPEN BREAK1    TRADING1    BREAK2    TRADING2

 

338

 

 

TradSesMethod

 

市场交易方法

 

 

Int

市场交易方法

1=电子交易系统

2=喊价交易(Open Outcry 3=双方(Two Party

 

339

 

 

TradSesMode

 

市场交易模式

 

 

Int

市场交易模式

1=系统测试

2=模拟交易

3=产品(正常交易)

 

 

 

 

 

340

 

 

 

 

 

 

TradSesStatus

 

 

 

 

 

交易盘状态

 

 

 

 

 

int

交易盘状态

0=未知状态(Unknown 1=停盘(Halted

2=开盘(Open

3=闭盘(Closed

4=预开盘(Pre-Open 5=预闭盘(Pre-Close 7=挂起(Suspend

11=正常交易(Trading 21=中断(Break

341

TradSesStartTime

交易盘开始时间

UTCTimestamp

交易盘开始时间

342

TradSesOpenTime

交易盘开盘时间

UTCTimestamp

交易盘开盘时间

343

TradSesPreCloseTi

me

交易盘预关闭时 

UTCTimestamp

交易盘预关闭时间

344

TradSesCloseTime

交易盘关闭时间

UTCTimestamp

交易盘关闭时间

345

TradSesEndTime

交易盘结束时间

UTCTimestamp

交易盘结束时间

346

NumberOfOrders

行情条目笔数

Int

行情条目笔数

 

 

 

347

 

 

 

MessageEncoding

 

 

 

消息编码类型

 

 

 

String

消息中编码域的字符编码类型(非 ASCII 码) 取值范围:

ISO-2022-JPfor using JIS

EUC-JPfor using EUC

Shift_JISfor using SJIS

UTF-8  Unicode        for   using

 


 

 

 

 

 

Unicode

GBKGBK 汉字编码标准,中国大陆、新 加坡使用)

BIG5BIG5 汉字编码标准,港澳台使用)

354

EncodedTextLen

编码文本长度

Length

EncodedText 域的字节数.

 

355

 

EncodedText

 

编码文本

 

data

Text  域的编码形式,使用 MessageEncoding 域指明的编码方式,如果使用,必须同时使  Text 域(用ASCII 码)

369

LastMsgSeqNumPr ocessed

最近处理消息序 

SeqNum

最新一次接收并处理的消息序号,可以在每 条消息中都给出,利于对方了解情况

370

OnBehalfOfSending Time

最初发送时间

UTCTimestamp

已过期取消

371

RefTagID

相关域号

int

所引用的 Tag

372

RefMsgType

相关消息类型

String

所引用消息的类型

 

 

 

 

 

 

 

 

 

 

 

373

 

 

 

 

 

 

 

 

 

 

 

SessionRejectReaso n

 

 

 

 

 

 

 

 

 

 

 

会话拒绝原因

 

 

 

 

 

 

 

 

 

 

 

int

用于会话消息拒绝,指示拒绝原因,取值:

0 =  存在无效的域号

1 =  该消息中必须的域丢失

2 =  该消息中出现未曾定义的域

3 =  未定义域号

4 =  域未赋值

5 =  域取值错误(范围溢出)

6 =  取值格式错误

7 =  解密错误

8 =  签名错误

9 =  公司标识符错误

10 =  发送时间精度错误

11 =  无效的消息类型

12 = XML 验证错误(XML Validation error

13 =  同一域多次出现(非重复组)

14 =  有序的域出现次序错误

15 =  重复组域次序错误

16 =  重复组重复次数错误

17 =   data 数据域中出现域界定符<SOH>

 

 

 

 

 

378

 

 

 

 

 

ExecRestatementRe

ason

 

 

 

 

 

重述原因

 

 

 

 

 

int

交易服务方主动发出的执行报告中给出主动 执行原因,取值:

0 = GT Corporate action

1  =  GT  renewal  /  restatement  (no  corporate action)

2 =   口头更改(Verbal change

3 =  订单重新定价(Repricing of order

4 =  经纪人选择权(Broker option

5  =  部分订单量拒绝,如交易所发起部分拒   Partial    decline    of    OrderQty    (e.g.

 


 

 

 

 

 

exchange-initiated partial cancel)

6  =  因交易停止而取消(Cancel  on  Trading Halt

7  =  因系统故障而取消(Cancel  on  System Failure

8 =  市场/交易所选择权(Market (Exchange) Option

101  =  国债回购到期反向成交(Repurchase Settlement

381

GrossTradeAmt

成交金额

Amt

成交金额:CumQty * AvgPxCurrency 单位)

383

MaxMessageSize

最大消息长度

Length

单条消息的最大字节数

384

NoMsgTypes

消息类型个数

NumInGroup

重复组中 MsgType 的个数

 

385

 

 

MsgDirection

 

消息方向

 

指明消息方向 取值范围:

S=发送(Send

R=接收(Receive

386

NoTradingSessions

交易盘个数

NumInGroup

指示重复的交易盘个数

387

TotalVolumeTraded

成交数量

Qty

交易成交数量

 

 

 

394

 

 

 

BidType

 

 

 

报价类型

 

 

 

int

报价请求的类型编码,取值范围:

1=非公开模式(Non  Disclosed Style  (e.g. US/European)

2=      Disclosed  Style   (e.g. Japanese)

3=无出价处理(No Bidding Process

396

NoTradingSessions

交易盘个数

NumInGroup

交易盘个数

 

 

 

 

 

 

 

 

 

423

 

 

 

 

 

 

 

 

 

PriceType

 

 

 

 

 

 

 

 

 

价格类型

 

 

 

 

 

 

 

 

 

int

价格类型代码,取值:

1=百分比(Percentage

2=每单位,每股或每合约(per unit  (i.e. per share or contract)

3=固定数量,绝对值(Fixed Amount (absolute value)

4=   -         discount   – percentage points below par

5=   -         premium   – percentage points over par

6= 与基准 利率 相差  点数( basis  points relative to benchmark

7=三个月国债期货合同和三个月境外美元期 货合同的价格差(TED price

8=三个月国债期货合同和三个月境外美元期 货合同的收益差(TED yield

434

CxlRejResponseTo

撤单拒绝类型

在撤单拒绝消息中,指示是撤单还是修改单 1=撤单

 


 

 

 

 

 

2=修改单

 

 

 

 

 

 

 

 

 

 

 

 

447

 

 

 

 

 

 

 

 

 

 

 

 

 

PartyIDSource

 

 

 

 

 

 

 

 

 

 

 

 

参与方代码源

 

 

 

 

 

 

 

 

 

 

 

 

指示 PartyID 的代码源,如果有 PartyID 则该 域必须出现,取值依赖于 PartyRole

1 PartyRole = “Investor ID”,股票(equity 1=韩国投资者编号(Korean Investor ID

2=台湾 QFIITaiwanese  Qualified  Foreign Investor ID QFII / FID

3=        Taiwanese   Trading Account

4=马来西亚中央登记号(Malaysian  Central Depository (MCD) number

5=中国投资者编号(Chinese Investor ID

2 其它情况/通常情况

B=SWIFT 银行代码(BIC (Bank Identification Code—Swift managed) code  

C=            Generally accepted   market   participant   identifier   (e.g. NASD mnemonic)

D=         Proprietary/Custom code

E=ISO 国家地区代码(ISO Country Code

F=交割机构地址(Settlement Entity Location

448

PartyID

参与方代码

String

参与方代码,结合 PartyIDSource PartyRole

 

 

 

 

 

 

 

 

 

 

 

 

452

 

 

 

 

 

 

 

 

 

 

 

 

PartyRole

 

 

 

 

 

 

 

 

 

 

 

 

参与方角色

 

 

 

 

 

 

 

 

 

 

 

 

int

指定参与方角色,取值:

1 =  券商(Executing Firm

2 =  信用经纪人(Broker of Credit

3 =  客户编号(Client ID

4 =  清算公司(Clearing Firm

5 =  投资者编号(Investor ID

6 =  介绍公司(Introducing Firm

7 =  订单输入公司(Entering Firm

8 =  卖空交易出借股票公司(Locate/Lending Firm (for short-sales)

9  =  基金管理人客户编号(Fund  manager Client ID (for CIV)

10 =  结算地(Settlement Location

11  =  订单发起交易员( Order  Origination Trader

12 =  交易员(Executing Trader

13 =  订单发起公司(Order Origination Firm

14  =  不记名清算  司(Giveup  Clearing Firm

15   =           Correspondant

 


 

 

 

 

 

Clearing Firm

16 =  执行系统(Executing System

17 =  对方券商(Contra Firm

18 =  对方清算公司(Contra Clearing Firm

19 =  资助公司(Sponsoring Firm

20 =  对手公司(Underlying Contra Firm

21 =  清算机构(Clearing Organization

22 =  交易所(Exchange

24 =  客户账户(Customer Account

25 =  对应清算机构(Correspondent Clearing Organization

26 =  对应经纪人(Correspondent Broker

27   =           Buyer/Seller (Receiver/Deliverer)

28 =  托管人(Custodian

29 =  中间机构(Intermediary

30 =  代理人(Agent

31 =  子托管人(Sub custodian

32 =  受益人(Beneficiary

33 =  当事人(Interested party

34 =  监管机构(Regulatory body

35 =  流动性提供者(Liquidity provider

36 =  录入交易员(Entering Trader

37 =  对方交易员(Contra Trader

38 =  投资账户(Position Account

39 =  对方投资者编号(Contra Investor ID

40 =  转入券商(Transfer to Firm 4000+ =  保留给连接双方自定义用 4001 =  本方营业部代码

4002 =  对方营业部代码

453

NoPartyIDs

参与方个数

NumInGroup

参与方个数

454

NoSecurityAltID

备选证券代码个 

NumInGroup

备选证券代码个数

455

SecurityAltID

备选证券代码

String

备选证券代码,需要 SecurityAltIDSource  配合使用

 

 

 

 

456

 

 

 

 

SecurityAltIDSourc e

 

 

 

 

备选证券代码源

 

 

 

 

String

备选证券代码源,如果有 SecurityAltID 则该 域必须出现,

有效取值与证券代码源(SecurityIDSource) 同。

4 = ISIN

100+  自行内部使用)

101 =上海证券交易所

102 =深圳证券交易所

 


 

460

Product

证券粗类别

int

指示证券类别,在 STEP 中未使用

461

CFICode

证券类别

String

金融工具分类代码(ISO10962),参考 Product  SecurityType

 

 

464

 

 

TestMessageIndicat or

 

 

测试标志

 

 

Boolean

测试标志,指明该会话是测试连接或正常运 行连接,用于防止意外

取值范围:

Y = True  N = False

516

OrderPercent

订单比例

Percentage

现未使用

523

PartySubID

参与方子代码

String

参与方子代码

541

MaturityDate

到期日

LocalMktDate

到期/交割日

553

Username

用户名

String

用户名或用户代码

554

Password

密码

String

密码

561

RoundLot

交易单位

Qty

该证券订单数量的单位量,即最终的委托数 量应为订单数量×交易单位

 

567

TradSesStatusRejRe ason

交易盘状态请求 拒绝原因

 

Int

交易盘状态请求拒绝原因: 1=未知或无效交易盘标识  99=其他

 

 

 

 

 

 

625

 

 

 

 

 

 

TradingSessionSubI D

 

 

 

 

 

 

交易盘子标识

 

 

 

 

 

 

String

可选,用以对交易盘加以限定,取值可由相 应市场自行定义:

A 股市场 B 股市场

中小企业市场 基金市场

国债市场

其他债券市场 债券回购市场 国际板市场

创业版市场

 

 

627

 

 

NoHops

 

 

跳跃个数

 

NumInGroup

历史跳跃信息重复组,记录消息经第三方发 送的历史,每次经第三方发送为一个跳跃, 仅当 OnBehalfOfCompID 使用时有效,主要 用于跟踪消息的路径

628

HopCompID

跳跃公司代码

String

      SenderCompID   使  OnBehalfOfCompID 域时有效

629

HopSendingTime

跳跃发送时间

UTCTimestamp

       SendingTime   使  OnBehalfOfCompID 域时有效

630

HopRefID

跳跃参考消息序 

String

      MsgSeqNum   使  OnBehalfOfCompID 域时有效

640

Price2

价格 2

Price

用于期权等衍生品

 

762

 

SecuritySubType

 

证券子类别

 

String

       CFICode  461   SecurityType167)共同描述证券类别,如  使       使  CFICode   

 


 

 

 

 

 

SecurityType

790

OrdStatusReqID

订单状态请求编 

String

订单状态请求唯一标识,在返回的执行报告 消息中需包含此编号

802

NoPartySubIDs

参与方子代码个 

NumInGroup

指示重复的参与方子代码个数

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

803

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PartySubIDType

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

参与方子代码类 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

参与方子代码 PartySubID (523)  的类型,取 值范围:

1=公司(Firm  2=个人(Person

3=系统(System

4=Application

5=合法全名(Full legal name of firm

6=通信地址,含街道地址、区域、邮政编码 Postal  address  (inclusive  of  street  address, location, postal code)

7=电话号码(Phone number

8=电子信箱(Email address

9=Contact name

10=结算证券账号(Securities account number (for settlement instructions)

11= 结算注册号( Registration  number  (for settlement instructions confirmations)

12=结算注册地址(Registered  address  (for confirmation purposes)

13=Regulatory    status     for    confirmation purposes

14=     名( Registration  name  (for settlement instructions)

15=结算现金帐号(Cash account number (for settlement instructions)

16=银行代码(BIC code

17=CSD     participant/member      code     (e.g. Euroclear DTC CREST  or  Kassenverein number)

18=注册地址(Registered address

19=基金/账户名(Fund/account name 20=电报挂号(Telex number

21=传真号(Fax number

22=证券账户名(Securities account name 23=现金账户名(Cash account name

24=部门(Department

25=Location / Desk

26=Position Account Type

 


 

 

891

 

 

MiscFeeBasis

 

杂项费用单位

 

int

杂项费用单位,取值范围: 0=绝对值(Absolute

1=每单位(Per unit

2=百分比(Percentage

916

StartDate

起始日期

LocalMktDate

合约或事件的起始日期,如行权起始日期

917

EndDate

结束日期

LocalMktDate

合约或事件的结束日期,如行权结束日期

8500

OrderEntryTime

订单申报时间

UTCTimestamp

订单申报时间

8501

AccountSecPosition

持股余额

Qty

持股余额

 

 

 

8502

 

 

DesignationInstructi on

 

 

 

注册指令

 

 

 

Char

注册指令:

1=指定交易登记

2=指定交易撤消 3=转托管

4=国债回购登记

5=国债回购注销

8503

NumTrades

成交笔数

Int

成交笔数

8504

TotalValueTraded

成交金额

Amt

成交金额

8505

LastPriceChange

价格变化

Priceoffset

价格变化

8506

TotalLongPosition

合约持仓量

Qty

合约持仓量

 

8507

IndustryClassificati on

 

行业种类

 

String

左边第一位为字母,其余两位数字或空格, 参见中国证监会颁布的《上市公司行业分类 指引》的大类划分

8508

ShareFaceValue

每股面值

Price

每股面值

8509

OutStingShares

总发行量

Qty

总发行量

8510

PublicFloatShareQu antity

流通股数

Qty

流通股数

8511

PreviousYearProfitP erShare

上年每股利润

Price

上年每股利润

8512

CurrentYearProfitPe rShare

本年每股利润

Price

本年每股利润

8513

BidLotSize

买数量单位

Qty

买订单数量必须为此域值的整数倍

8514

AskLotSize

卖数量单位

Qty

卖订单数量必须为此域值的整数倍

8515

PriceTickSize

价格档位

Price

价格的最小变动单位,买卖订单价格必须为 此域值的整数倍

 

 

8516

 

 

PriceLimitType

 

 

限价参数类型

 

 

Char

0’:表示集合竞价限价参数和连续竞价限 价参数为价格;

1’:表示集合竞价限价参数和连续竞价限 价参数为比例

8517

AuctionPriceLimit

集合竞价限价参 

Float

集合竞价限价参数

8518

ContinuousTradePri ceLimit

连续竞价限价参 

Float

连续竞价限价参数

8519

DailyPriceUpLimit

涨幅价格

Price

为当日涨幅限制的价格上限

8520

DailyPriceDownLi

跌幅价格

Price

为当日跌幅限制的价格下限

 


 

 

mit

 

 

 

 

 

 

 

 

8521

 

 

 

 

 

SecurityProperties

 

 

 

 

 

证券属性

 

 

 

 

 

Char

N=正常 S=ST  P=PT

H=上证所证券在深交所代理 T=代办转让证券

Z=深交所证券在上证所代理 L=上市开放型 LOF 基金

D=上市开放低风险收益型 LOF 基金 F=非交易型开放式基金

8522

NoIndicesParticipat ed

所属指数数量

NumInGroup

所属指数数量

8523

IndexinclusionIndic ator

纳入指数计算标 

Boolean

Y=纳入该指数计算

N=暂停纳入该指数计算

8524

PERatio1

市盈率一

Float

市盈率一

8525

PERatio2

市盈率二

Float

市盈率二

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8526

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NonTradingOrdTyp e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

非交易业务订单 类型

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

String

G:新股增发

IN:上网 IPO 申购

IE:市值配售 IPO 申购

IS:老股东增发 IPO 申购

NS:市值配售放弃认购

 

CV:可转换债券转股

CR:可转换债券回售

 

ECETF 申购

ERETF 赎回

EMETF 保证金申购

ESETF 保证金补券

EZETF 申购赎回资金回报

 

OS:开放式基金认购

OC:开放式基金申购

OR:开放式基金赎回

OL:开放式基金撤销

OD:开放式基金分红选择

OF:开放式基金份额转入

OT:开放式基金份额转出

OV:开放式基金基金转换

 

RI:配股行权

WE:权证行权

 


 

 

 

 

 

WW:权证创设

WC:权证注销

 

BD:质押券入库

BW:质押券出库

 

PS:无股份冻结质押

PF:股份质押且冻结

RP:无股份冻结解押

RF:股份解押且解冻

PO:预受要约

CO:解除预受要约

QBD:报价入库

QBW:报价出库

 

8527

DesignationTransTy pe

 

注册指令类型

 

Int

注册指令类型,取值范围:

1 =新注册请求(New 3=注册撤单(Cancel

8528

ParticipatingIndexI D

所属指数代码

String

证券所属指数的证券代码

8529

VotingProposal

投票议案号

Int

投票议案号,取值范围:0-999

8530

VotingSubProposal

投票子议案号

Int

投票子议案号,取值范围:0-99

 

8531

 

 

VotingPreference

 

投票意向

 

 

Char

投票意向,取值范围:

1 =同意

2 =反对

3 =弃权

 

8532

 

DividendSelect

 

分红选择方式

 

Char

分红选择方式,取值范围: C=现金 (领取现金分红) U=份额 (转申购)

8533

DestSecurity

基金转入产品代 

String

开放式基金基金转换时转入的产品代码

 

 

8534

 

 

WarrantStyle

 

 

权证类型

 

 

Char

权证类型

A=美式权证

E=欧式权证

B=百慕大式权证

 

8535

 

WarrantPutOrCall

 

权证种类

 

Char

权证种类

C=认购 P=认沽

 

8536

WarrantClearingTyp e

 

权证结算方式

 

Char

权证结算方式 S=证券结算

C=现金结算

8537

NAV

T-1 日基金的单 位净值

Float

T-1 日基金的单位净值

8538

TradingPhaseCode

产品所处的交易

String

产品所处的交易阶段代码

 


 

 

 

阶段代码

 

 

 

8539

 

ValidationCode

 

校验号码

 

Int

校验号码(目前用于密码激活服务,对应投 资者在互联网投票系统中申请服务密码时系 统分配的校验号码)

 

 

 

8540

 

 

 

 

ReqID

 

 

 

业务请求类型

 

 

 

 

String

BII:意向申报

BPT:定向申报

BQT:定价申报

QNE:报价回购

QCA:报价回购提前购回

RNE:初始交易

RNR:购回交易

 


 

 

 

    A

(资料性附录)

应用环境参考实例

A.1是证券交易数据交换协议应用环境的参考实例。

在该参考实例中证券交易数据交换协议用于市场参与者内部系统与市场参与者协议转换系统间的 连接、交易所交易系统与采用STEP开放接口的市场参与者系统间连接,同时也支持外部交易所接口系统 与外部交易所的连接。

 

 

A.1  应用环境实例


 

 

 

    B

(资料性附录)

重复组实例

 

例如定义一重复组:

B.1  重复组实例

 

454

NoSecurityAltID

N

备选证券代码个数

 

455

SecurityAltID

N

 

 

456

SecurityAltIDSource

N

 

 

可能的应用表示为:

454=2 <SOH> 455=600600 <SOH> 456=101 <SOH> 455=000001 <SOH> 456=102 <SOH>


 

 

 

    C   (资料性附录) 缺口填补方式

接收方在检测到消息丢失后(发现消息缺口),有两种方式处理缺口,方式一:接收方发现缺口后 向发送方请求发送缺口消息及其后的所有消息,见图C.1;方式二:接收方发现缺口后,保存已收到消 息,并向发送方请求发送缺口消息,见图C.2

 

 

C.1  缺口填补方式一


 

 

 

C.2  缺口填补方式二


 

 

 

    D

(资料性附录)

会话连接场景

 

D.1  登录

D.1是一个连接登录的场景,连接申请方向连接服务方发送一个登录消息,第一个消息因无效而 通过注销来拒绝登录。第二个消息有效,服务方回送一条登录消息表示确认。

 

 

D.1  登录

 

 

D.2  注销

 D.2 显示注销会话的场景,申请注销后,服务方回送注销消息确认断开会话。

 

 


D.2  注销

 

 

D.3  重发

D.3  是会话断开而重发消息的场景,发送方在发送完一些应用消息给接收方后,在某个时刻 TCP/IP 连接意外断开。此后发送方一直发送完 104 号才发现通讯故障并等待通讯恢复,通讯恢复后, 发送方发送 105 号登录消息重新连接,连接后接收方发送重发请求消息给发送方,要求重新发送 103 号及其以后的消息。发送方响应其请求,并用序号重设来覆盖 105 号登录消息。

 

 

D.3  重发

 

 

D.4  重发请求


 D.4 是一个重发消息中含有会话消息的重发场景,发送方在发送完一些应用消息和心跳消息给接 收方后,收到了一条重发请求 30 号(接收方的当前发送消息序号)。发送方于是重新发送应用消息给接 收方,而心跳消息则通过序号重设消息来覆盖或跳过,这样保持了消息序号的对应和连续。通常发送方 应保存一定范围的消息供填补缺口,这些需保存的消息是含有应用消息和会话消息即所有曾发送的消 息。

 

 

D.4  重发请求

 

 

D.5  心跳和测试请求


 D.5 是心跳和测试请求的场景,连接双方的空闲持续在经过一个约定的时间间隔后,连接双方根 据规则都可以发送心跳或测试请求。

 

D.5  心跳和测试请求


 

 

 

    E   (资料性附录) 应用消息场景

E.1  新订单场景图

新订单场景见图 E.1 所示。

 

 

E.1  新订单场景

E.2  撤单场景图

撤单场景见图E.2所示。


 

 

E.2  撤单场景

E.3  组件Parties实例

假设有市场参与方,数据内容如表 E.1 所示:

E.1  组件 Parties 数据实例


 

内容

数据

证券账号

A264820888

交易员代码

HTZQ

业务参与者单元(席位)

00J95

 

 

则该 Parties 组件格式如下:

453=3  <SOH>  448=A264820888  <SOH>  447=5  <SOH>  452=5  <SOH>  448=HTZQ  <SOH>  447= D  <SOH>  452=12  <SOH>  448=00J95  <SOH>  447=C  <SOH>  452=1  <SOH>

E.4  新订单消息实例

假设投资人买入委托,数据内容如表 E.2 所示:

E.2  新订单消息数据实例

 

内容

数据

委托日期

20030310

委托时间

09:32:40

委托号(交易客户方订单编号)

000007

证券账号

A264820888

证券代码

600600

买卖标志

1(买)

委托价格

8.950

委托数量

1600

业务参与者单元(席位)

00J95

 

则该新订单消息格式如下:

8=STEP.1.0.0 <SOH> 9=121 <SOH> 35=D <SOH> 49=券商A <SOH> 56 =XSHG <SOH>  11=000007 <SOH> 453=2 <SOH> 448=A264820888 <SOH> 447=5 <SOH> 452=5 <SOH> 448=00J95 <SOH> 447=C <SOH>  452=1  <SOH>  21=2  <SOH>  55=青岛啤酒 <SOH>  48=600600  <SOH>  22=101  <SOH>  54=1 <SOH> 60=20030310-09:32:40 <SOH> 38=1600 <SOH>40=2 <SOH> 44=8.950 <SOH> 10=123 <SOH>

其中:

56=XSHG 表示上海证券交易所 E.5  订单确认消息实例

交易所收到订单后的确认消息数据如表 E.3 所示:

E.3  订单确认消息数据实例

 

内容

数据

交易所订单编号

9351

券商订单编号

000007

执行编号

110

执行类型

0

 


 

委托日期

20030310

委托时间

09:32:40

证券账号

A264820888

证券代码

600600

买卖标志

1(买)

委托价格

8.950

委托数量

1600

业务参与者单元(席位)

00J95

 

使用执行报告消息确认订单接收,消息格式如下:

8=STEP.1.0.0 <SOH> 9=121 <SOH> 35=8 <SOH> 49=XSHG <SOH> 56=券商 A <SOH> 37=9351 <SOH> 11=000007 <SOH> 17=110 <SOH> 150=0 <SOH> 39=0 <SOH> 453=2 <SOH> 448=A264820888 <SOH>  447=5  <SOH>  452=5 <SOH>  448=00J95  <SOH>  447=C  <SOH>  452=1  <SOH>  55=青岛啤酒 <SOH> 48=600600 <SOH> 22=101 <SOH> 54=1 <SOH> 60=20030310-09:32:40 <SOH> 38=1600 <SOH> 40=2 <SOH> 44=8.950 <SOH> 151=1600 <SOH> 14=0 <SOH> 6=8.900 <SOH> 10=123 <SOH>

E.6  执行报告消息实例

交易所部分成交执行报告消息格式:

8=STEP.1.0.0 <SOH> 9=121 <SOH> 35=8 <SOH> 49=XSHG <SOH> 56=券商 A <SOH> 37=9351 <SOH>    11=000007    <SOH>     17=17582    <SOH>    150=F    <SOH>    39=1    <SOH>    453=2    <SOH> 448=A264820888 <SOH> 447=5 <SOH> 452=5 <SOH> 448=00J95 <SOH> 447=C <SOH> 452=1 <SOH> 55=青岛啤酒 <SOH>  48=600600 <SOH>  22=101 <SOH>  54=1  <SOH>  60=20030310-09:40:20 <SOH> 38=1600  <SOH>  40=2  <SOH>  44=8.950  <SOH>  32=1200  <SOH>  31=8.930  <SOH>  151=400  <SOH> 14=1200  <SOH>  6=8.930  <SOH>  381=10716  <SOH>   8501=20030310-09:32:45  <SOH>   8502=NAME <SOH> 8503=3795 <SOH> 10=123 <SOH>

E.7  注册消息实例

注册消息为自定义消息,如指定交易业务,投资人申请指定登记的注册消息格式如下:

8=STEP.1.0.0  <SOH>  9=121  <SOH>  35=U001  <SOH>  49= 券商 A  <SOH>   56=XSHG  <SOH> 11=000010  <SOH>  453=2  <SOH>  448=A264820888  <SOH>  447=5  <SOH>  452=5  <SOH>  448=00J95 <SOH>  447=C  <SOH>  452=1  <SOH>  60=20030310-10:24:46  <SOH>  8502=1  <SOH>  8527=1  <SOH> 10=123 <SOH>

E.8  行情广播消息实例

假设行情广播数据如表E.4所示:

E.4  行情广播数据实例

 

证券代码

000000

000001

600600

证券名称

145532(时间)

上证指数

青岛啤酒

前收盘价

1697.431

1627.480

7.610

今开盘价

139.206

1626.630

7.650

成交金额

 

5134076122

5695042

最高价

20020423(日期)

1634.863

7.840

 


 

最低价

 

1621.866

7.650

最新价

 

1624.546

7.790

当前买入价

 

 

7.780

当前卖出价

 

 

7.790

成交数量

 

4999097

733972

市盈率 1

1624.546

 

38.49

买量一

 

 

250

买价二

 

 

7.770

买量二

 

 

2143

买价三

 

 

7.760

买量三

 

 

5200

卖量一

 

 

200

卖价二

 

 

7.800

卖量二

 

 

68308

卖价三

 

 

7.810

卖量三

 

 

3172

市盈率 2

 

 

0.00

价格变化

 

 

-0.030

折合比例

 

 

0.00

 

该行情广播消息格式如下:

8=STEP.1.0.0 <SOH> 9=625 <SOH> 35=U003 <SOH> 49=XSHG <SOH> 56=券商A <SOH> 146=3 <SOH> 55=145532 <SOH> 48=000000 <SOH> 140=1697.431 <SOH> 268=2 <SOH> 275=XSHG <SOH> 269=4   <SOH>    270=139.206   <SOH>   275=XSHG    <SOH>   269=7    <SOH>   270=20020423    <SOH> 8524=1624.546 <SOH> 55=上证指数 <SOH> 48=000001 <SOH> 387=4999097 <SOH> 8504=5134076122 <SOH>  140=1627.480 <SOH> 268=4 <SOH> 275=XSHG <SOH> 269=2 <SOH> 270=1624.546 <SOH> 275=XSHG <SOH> 269=7<SOH> 270=1634.863 <SOH> 275=XSHG <SOH> 269=8 <SOH> 270=1621.866 <SOH> 55=青岛啤酒 <SOH> 48=600600 <SOH> 387=733972 <SOH> 8504=5695042 <SOH> 140=7.610 <SOH> 268=16 <SOH> 275=XSHG <SOH> 269=4 <SOH> 270=7.650 <SOH> 275=XSHG <SOH> 269=7 <SOH>  270=7.840  <SOH>  275=XSHG  <SOH>  269=8  <SOH>  270=7.650  <SOH>  275=XSHG  <SOH> 269=2 <SOH> 270=7.790 <SOH> 275=XSHG <SOH> 269=0 <SOH> 270=7.780 <SOH> 271=250 <SOH> 290=1  <SOH>  275=XSHG  <SOH>  269=1  <SOH>  270=7.790  <SOH>  271=200  <SOH>  290=1  <SOH> 275=XSHG  <SOH>  269=0  <SOH>  270=7.770  <SOH>  271=2143  <SOH>  290=2  <SOH>  275=XSHG <SOH> 269=1 <SOH> 270=7.800 <SOH> 271=68308 <SOH> 290=2 <SOH> 275=XSHG <SOH> 269=0 <SOH> 270=7.760 <SOH> 271=5200 <SOH> 290=3 <SOH> 275=XSHG <SOH> 269=1 <SOH> 270=7.810 <SOH>  271=3172  <SOH>  290=3  <SOH>  8505=-0.030  <SOH>  8524=38.49  <SOH>  8525=0.00  <SOH> 10=123 <SOH>


 

 

 

    F

(资料性附录)

计算校验和

 

以下为计算校验和的代码段:

 *GenerateCheckSum(  *buf, long bufLen ) {

static tmpBuf[ 4 ];

long idx;

unsigned int cks;

 

for( idx = 0L, cks = 0; idx < bufLen; cks += (unsigned int)buf[ idx++ ] ); sprintf( tmpBuf, “%03d”, (unsigned int)( cks % 256 ) );

return( tmpBuf ); }

<< 返回

监控中心 | 人才招聘 | 法律申明 | 网站地图 | 联系我们
Copyright©2013-2014  鑫鼎盛期货有限公司  All Rights Reserved
公司地址:福州市台江区曙光支路128号福州农商银行总部大楼地上15层01、02半单元  客服电话:0591-38113228  传 真:0591-38113200
交易报单电话:0591-38113219     0591-38113225

工信部网站

闽ICP备15023672号

本网站支持IPv6访问