轻量级STEP会话协议(也即LFIXT)接口规范

标准的FIX协议分为会话层(FIXT)和应用层。

证监会发布的STEP协议在会话层是直接采用的FIX会话层协议(FIXT 1.1) 。而在应用层,STEP协议以FIX4.4为基础,删除了短期内中国证券市场不会推出的业务;同时向FIX组织申请了中国证券市场专用的域号区段,在其基础上,增加中国证券市场特有的消息类型、域号及相关域值,同时保证所取域值不与标准FIX发生冲突。

后来上交所和深交所又合作发布了轻量级STEP会话层协议(记作LFIXT),对FIXT进行了简化。《轻量级STEP会话协议接口规范》http://www.szse.cn/marketServices/technicalservice/interface/P020180328467247901955.pdf

本文以下主要描述的就是LFIXT规范,以及它跟FIXT的不同点。

一个真实的深交所行情消息如下所示:

LFIXT每一条消息组成如下:

标准消息头包含如下字段:

 

 

其中tag 35表示了消息的类型MsgType,下表枚举了tag 35不同值的含义。 

MsgType值
(Tag 35)
消息类型消息体携带的Tag消息说明与标准FIXT的异同
0Heartbeat
心跳消息
112  TestReqID 接收方如果在两倍的([HeartBtInt]+[合理传输时间] )内没有收到来自对方的心跳消息,就认为连接失败,此时可以不发送 Logout 消息,立即关闭 TCP 连接。
1TestRequest
测试请求消息
112  TestReqID强制对方发出心跳消息。LFIXT不会主动发送该消息。
若LFIXT收到该消息,则会以Heartbeat消息来响应。
2Resend
重发请求消息
7    BeginSeqNo
16   EndSeqNo
向发送方申请某些消息重复发送。LFIXT不会主动发送该消息。
若LFIXT收到该消息,则会以SeqReset消息来响应。
3Reject
会话拒绝消息
45   RefSeqNum
371  RefSeqNum
372  RefMsgType
373  SessionRejectionReason
58   Text
由于违反了会话层规则而不能适当地处理消息时,发出 Reject消息。LFIXT中,如果收到的消息不能被解析或不能通过数据完整性检查时,应当记录日志后回送 Logout消息并立刻断开连接。
而标准 FIXT中建议忽略并丢弃本消息,以期望后续收到的正确格式的消息能触发一个消息缺口,从而能通过重传请求再度拿回这条混乱的消息。
4SeqReset
序号重设消息
123  GapFillFlag
36   NewSeqNo
用于告知接收方下一个消息的消息序号。标准FIXT中,序号重设消息有两种模式:序号重设-缺口填补(SeqReset-Gap Fill)和 序号重设-重设(SeqReset-Reset)。
在LFIXT中,只使用SeqReset-Reset消息,用来回应 ResendRequest消息。 其中MsgSeqNum域按标准 FIX 协议规定可以任意填写且接收方不会检查,在 LFIXT 中规定固定填写 1。NewSeqNo域则建议填写为 max{ResendRequest消息的 EndSeqNo 字段值,本方 NxtOut 值}。
5Logout
注销消息
1409 SessionStatus
58   Text
注销消息是发起或确认会话终止的消息。 
ALogOn
登录消息
98   EncryptMethod
108  HeartBtInt
141  ResetSeqNumFlag
789  NextExpectedMsgSeqNum
553  Username
554  Password
1137 DefaultApplVerID
1407 DefaultAplExtID
1408 DefaultCstmApplVerID
登录消息应是请求建立一个会话的应用所发送的第一个消息。LFIXT规定必须等到返回的登录消息收到之后才实施正常的消息交换。
LFIXT 会话协议实现者若作为会话发起方,其发送的 Logon 消息需将 MsgSeqNum设置为 1、ResetSeqNumFlag 设置为 Y、NextExpectedMsgSeqNum 设置为 1。

 

参考文档:

1. https://istock.ssetech.com.cn/wiki/doku.php?id=service:techmag:201406_015:03&s[]=%2Afast&s[]=step%2A

2. https://istock.ssetech.com.cn/wiki/doku.php?id=service:techmag:201412_017:06&s[]=%2Afast&s[]=step%2A#step%E5%8D%8F%E8%AE%AE 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值