本文主要是介绍【FIX协议】金融信息交换协议 - 2 - 协议结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
FIX消息格式
FIX协议的格式存在着两种结构:
- tag=value结构
- FIXML 结构
目前采用的都是第一种方式来完成数据交换。
其中FIXML可读性更强,但占用更多的带宽资源。
FIX协议消息语法
普通FIX语法规则
是对tag=value结构和FIXML都适用的语法:
Data Type
- int:整型 没有小数点,逗号,可以包含正负号的数字序列。注,int的值前面可以包含0。(如 “00023” = “23”).
- float: 浮点数。可包含小数点和正负号的数字序。累计总长度为15个数字。前面可以有0,小数末尾可加零,或截尾
- String: 字符串。是大小写敏感的。
- char: 字符。除分界符号SOH外的字符。大小写敏感。.
- data:原始数据。没有格式和内容限制。之前紧接有一个长度域。长度域应制定data数据域包含的字节数(不包含分界符所占字节)。数据中可能包含分界符字节,所以需要用data类型数据长度来辅助区别。
tag=value结构
- FIX消息的一般格式为:一个标准头+消息体+一个标准的尾部
- 消息头的前三个域为:BeginString(tag #8)+BodyLenth(tag#9)+MsgType(tag#35)
- 标准消息尾的最后一个域为CheckSum(tag#10)
- 数据域分界符,在FIX一个消息内的所有数据域由一个分界字符标记结尾。用ASCII码的“SOH”(#001,hex:0x01)进行间隔。所有消息由“8=FIX.x.y<SOH>”标记开始,最后由“10=nnn<SOH>“标记结束。
- 一个特定的tag 数应当是唯一的。如果重复,将被认为是一个违反规范文档的错误
例如:
FIXML结构
待续... ...
这篇关于【FIX协议】金融信息交换协议 - 2 - 协议结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!