FIX Protocol简介
FIX协议是一种主要用于证券交易过程信息交换的公开协议,它定义每条交易信息的内容与格式,这些信息内容与证券交易流程相对应,以保证交易信息安全准 确地传送。该协议主要用于连接证券机构与金融结算单位,证券机构与交易市场,以及证券机构之间,用于证券交易中心交易前、交易中及交易后的各类信息交换。 目标是把各类证券金融业务(包括证券、外汇、期货等)的需求流程格式化,使之变成可用计算机语言描述的功能流程,并在每个业务功能接口上统一交换格式,方便各个功能模块的连接,从而提高整个行业的应用水平。 起源1992年,美国证券业经营机构和经纪人首次提出FIX协议的构想,其初衷是为了解决接口问题。发起机构包括富达(Fidelity)基金、高盛(GoldmanSachs)、美林(MerrillLynch)和JP摩根。随着业务的发展及加入该组织机构(FIX协议联盟)成员越来越多,目前在全球有超过275家顶尖金融公司,横跨6大洲,33%总部位于EMEA(欧洲、中东、非洲),30%总部位于美洲,37%总部位于亚太和日本。FIX的内容不断得到扩充,它的演变经历了如下几个发展阶段:1993年2月,Fidelity2Salomon试验性使用;1994年6月,FIX委员会成立;1995年1月,FIX2.7发布;1995年9月,FIX3.0发布;1997年1月,FIX4.0发布;1998年4月,FIX4.1发布;1998年6月,组织结构正式确立;1999年9月,FIX4.2初稿发布;2000年1月,FIX4.2发布。2001年6月,又发布了FIX4.3,目前已更新到FIX8。FIX协议联盟是一个非赢利机构,,
其在全球的组织结构如下所示
?全球执导委员会(Global Steering Committee)
?产品委员会Product Committees
●上市公司、交易所委员会(Listed Products&Exchanges Committee)
●场外交易委员会(OTC products Committee)
?服务委员会Service Committees
●全球买方委员会Global Buy-Side Committee
●全球会员服务委员会Global Member Services Committee
●全球技术委员会Global Technical Committee
?地区委员会Regional Committees
●美洲委员会Americas Regional Committee
●亚太委员会Asia Pacific Regional Committee
●EMEA委员会EMEA (Europe, Middle East, Africa) Regional Committee
●日本委员会Japan Regional Committee
FIX协议结构
Fix协议可以分两大部分,会话层协议和业务层协议
会话层定义了数据通信相关的协议,业务层定义了金融活动相关的业务数据结构。 Fix的会话层设计时候充分考虑了稳定性,安全性,健壮性,高效性。稳定性指会话协议中定义了心跳消息来维护会话连接,安全性指协议从消息结构上支持数据加密,出错重传指每个会话在两个端点各自维护一套消息序列号,防止消息丢失,漏发漏收,出现这种情况只要检查两边序列号的连续性就可以确定需要重传哪些消息。
session的通信各方维护一个incomming和 一个outgoing序列号。Incomming序列号用来检测序列号是否乱序或跨越。
心跳在initiator发送log on消息时候设置在心跳域上,acceptor和initiator的心跳间隔时间一致。Fix消息要按序列号从小到大顺序处理,若收发过程中出现丢包则有两种策略:重传序列号出错的包及以后所有收到得包;另一种是只重传出错的包; Fix协议没有定义应答消息,使用序列号不连贯来检测消息丢失,用check sum,签名或消息体长度来检测消息错误;Log on阶段,客户端选择了了一个加密密钥,但服务器选择了不同的密钥放在返回的log on消息中,这时候客户端还得发一个log on消息应答服务器端,两个作用:
1). 让服务器知道密钥变更获得了客户端的响应;
2). 下面的消息开始要加密了在log on阶段完成后必须马上检查序列号,同步收发的消息,比如一端发送了消息但另一端没收到,这时候需要重传。可以通过对比log on消息中的序列号和通信一方的期望收到的消息序列号来检测消息漏收发。
序列号最好每隔24小时重置一次,重置前要商量好哪一方来首先发送重置请求及发重置请求的时间。重置之前要一方首先发送test request消息,等待收heart beat消息来确认连接是否正常,然后才发送log on消息,并把消息中的序列号重置域设为Y,并且序列号置为1.接收方回复同样消息,重置成功;Log out之前需要发送test request消息强制心跳,检测消息序列号是否连续,log out消息发送出去之后,需要等待一段时间接收log out回应消息,这段时间让双方来处理序列号不一致的问题,一旦序列号同步之后log out接收者马上发送回应的Log out消息,Log out发起方收到回应后负责来关闭会话。
信息传送过程FIX协议适用于任何希望自动连接的交易双方,它简化了与证券交易相关的电子信息交换。协议信息有两部分内容:管理信息和应用信息。FIX信息传送过程如下所示:
登录→
信息交换→
注销
(1)登录
其过程如下:
●交换过程发起人建立和接收人的电信连接。
●发起人发送登录信息,接收人通过核查登录信息,以确认发起人,并用登录信息作回应确认,如果确认失败,交换过程接受人关闭连接。
●确认之后,发起人和接收人须在发送任何排队信息或新信息之前,通过询问信息使他们的信息得以同步。
(2)信息交换
发起过程完成之后,标准信息交换开始,交换内容包括管理信息与应用信息。
(3)注销 双方互相发送注销信息后,信息交换过程结束。信息格式和内容每条FIX信息都是由一系列带有〈标记〉=〈值〉的域组成。每个标记代表不同的含义,可以是信息的类型,目标商务名称,证券买入价等。FIX协议规定了0~5000的标记含义(fix 信息字典),5000以上可由使用者自己定义,以适用特定的应用。
信息内容包括以下两种:
(1)管理信息
它是为了信息交换过程更加顺畅一致而使用的控制,包括:登录、心跳、检验请求、重新发送请求、拒绝(交换过程)顺序重设及注销等。
(2)应用信息。也就是交易的数据,它包括:
●公告 宣布已完成的交易信息。
●重要提示 告知由经纪人买卖的证券是由私人股份有限公司所有,还是由代理持有,以及持有量。
●消息 是经纪人和机构之间传送的一般自由格式信息,带有识别信息紧急性和商号主题词分类标志。
●电子邮件 其格式和用途与消息信息相同,但更倾向于双方非公开的用途。
●报价请求 有些市场,要求经纪人在每次订单前提出报价。
●报价与多宗报价 回应报价请求的信息,并用于发表主动的报价。
● 请求对多宗报价的确认 使用报价回应水平标 记,有选择地支持对报价的确认。
●报价撤销 报价发起人用于撤销报价。
●报价状况请求 机构用来生成执行报告。
●报价确认 针对报价、多宗报价、报价撤销和报价请求,作出回应。
●行情数据请求 通过此请求得到所指定的证券和外汇交易报价的行情数据。
●行情数据—快照/完全刷新 该信息用于发送双方的订单登记簿、报价清单、交易清单、指数值、开盘价、收盘价、成交单价、最高价、最低价和变动加权平均价等。
●行情数据—添加刷新 用于添加刷新请求。
●行情数据请求拒绝 用于经纪人因交易或技术上的原因不承兑行情数据请求的情况。
●证券定义请求 用于某一指定证券与第二方交易。
●证券定义 接受或拒绝证券定义信息中请求的证券,发回证券及类型清单。
●证券状况请求 用于提出有关证券状况的请求。
●证券状况 提供有关证券状况改变的报告。
●交易盘状况请求 请求有关市面状况的信息。
●交易盘状况 提供有关市场状况的信息。
●新订单—单一 机构向经纪人提供有关证券或外汇的订单。
●执行报告 确认收到订单或订单改变信息,传递订单状况或订单成交信息,报告交易的费用。
●未知交易 通知交易方,收到的订单已被执行。
●订单撤销/替换请求 改变订单的参数。
●订单撤销拒绝 是经纪人在不能承兑所收到的撤销请求信息时发出的信息。
●订单状况请求 机构要求经纪人生成并发挥有关订单状况的信息。
●划拨 指定如何将一个订单或一组订单细分为一个或多个账户。
●划拨确认 确认收到机构发送的划拨信息及状态。
●结算指令 经纪人或机构交易结算的指令。
●出价请求 在“非公开”市场与“公开”市场,因市场规则不同,该信息的用法也不同
●出价回应 因两个市场规则不同,有不同的用法。
●新订单—清单 因两种市场规则的不同而不同。
●敲定价 交换本金交易的敲定价。
●状况清单 卖方以主动方式发送回应状况清单请求信息。
●清单执行 机构用于指示经纪人开始执行已被提交的证券订单信息。
●清单撤销执请求 用于机构希望在执行交易盘之前或之中,撤销已被提交的证券订单消息。
●状况清单请求 用于机构指示经纪人生成有关某一状况清单的信息。
●清单订单信息的分解 使用与其它FIX信息相同的方法,支持程序交易中的信息分解。
●交易信息拒绝 拒绝因遵循了交易盘规则而不 能以其它方式进行拒绝的应用层面的信息。
FIX协议应用
FIX协议具有如下作用:
①有效维护委托订单管理的工作流。
②自动处理小额委托,以便有更多时间拓展新客户和集中处理高额交易。
③通过跨市场、跨交易所,跨币种的交易处理,降低交易费用。
④有效处理交易信息,减少交易故障,追踪交易进程。
⑤跨平台直接处理。 在安全机制方面,FIX不提供特定的安全机制,只作为一个信息交换平台,但它支持任何双方允许的加密体系,包 括信息交换双方的身份验证、信息应用层加密、信息数字签名和动态加密公钥更新等。FIX协议在中国的发展FIX协议对通讯网络的要求不高,互联网、DDN专线和虚拟专网(VPN)都可以支持FIX信息的传送。
FIX协议采用了标准的TCP/IP通讯协议,并采用灵活的通讯格式来传送证券交易过程中的各类信息和其它各类金融信息,其应用不受应用平台的限制,适用于各种计算机硬件,操作系统和通讯系统。 FIX协议在国外的应用已相当成熟,在国内还处于起步阶段。
2011年,国信证券加入FIX协议联盟,开创了本土券商参与国际证券交易电子化标准制订和推广的先河。FIX协议作为国际证券电子化交易标准,在交易所、机构投资者和投资银行群体中得到了广泛的应用,在涉及跨境投资的证券交易业务方面,如QFII、QDII业务上FIX已经扮演了重要的桥梁作用。
附:FIX协议联盟官网http://www.fixtradingcommunity.org/