当前位置:文档之家› IMIX协议分析

IMIX协议分析

IMIX协议分析1. IMIX Protocol简介IMIX协议全称银行间市场信息交换协议(Inter-bank Market Information eXchange Protocol),用于银行间本币市场和外汇市场的金融信息的传输。

IMIX协议基于FIX协议制定。

FIX协议全称金融信息交换协议(Financial Information Exchange Protocol),是被国际金融界广泛使用的行业标准。

FIX协议基于Tag/Value格式制定,提供覆盖交易前、中、后的全面的业务层消息和易用、强壮的Session层消息。

IMIX消息继承了FIX消息的易用性,并根据国内金融市场的特点进行针对化的定制,对FIX协议进行扩充、优化,形成了适用于国内金融市场的独特的协议。

同FIX协议一样,IMIX协议提供了覆盖国内银行间市场的交易前、中、后的业务层消息和强壮的Session层消息,为银行间市场金融数据的交互提供了便捷的通道。

2. Milestone2004年9月:项目调研2004年10月-12月:立项2005年1月至2005年12月:翻译FIX4.4,形成《银行间市场业务数据交换协议》初稿2006年1月至2006年12月:完善修改《银行间市场业务数据交换协议》初稿2007年1月至2007年12月:根据银行间市场特点,进一步完善修改《银行间市场业务数据交换协议》基础上形成意见征求稿,并报金标委。

2008年12月,完成外汇CSTP内容协议定义2008年12月,完成外汇CMDS内容协议定义2009年5月,完成CDC接口系统协议定义2009年1月,完成外汇清算会员和保证金结算行系统协议定义2009年5月,完成本币基准和本币Shibor系统协议定义2009年6月,完成本币CSTP和本币CMDS系统协议定义2009年7月,完成本币交易系统协议定义2010年10月,完成外汇清算所协议定义2010年11月,本币清算所协议制定中2011年,将继续扩大协议的应用范围,如增值服务等3. IMIX应用业务领域IMIX协议依据中国银行间本币和外汇市场的业务需求编制,目前覆盖了中国银行间本币和外汇市场的报价、交易、清算等领域。

3.1中国银行间市场概述银行间市场是银行同业进行资金拆借、债券买卖、外汇交易的场所,不同于交易所市场,银行间市场以场外交易的方式存在,以询价方式为主,询价交易方式是银行间市场与场内市场的最大区别。

按照交易内容的不同,银行间市场可以分成人民币信用拆借市场、银行间债券市场、人民币利率衍生品市场和银行间外汇市场,前三个市场由于采用人民币计价,又合称为银行间本币市场。

银行间本币市场和外汇市场的基础框架都是由中国人民银行的附属机构中国外汇交易中心暨银行间同业拆借中心(简称CFETS)负责运行维护。

CFETS于1994年初成立于上海,是为了适应1994年开始的外汇管理体制改革设立的。

3.2银行间外汇市场1993年底,国务院决定改革当时的外汇管理体制,实现人民币经常项目下有条件可兑换。

从1994年1月1日起,实现汇率并轨和结售汇制度,建立银行间外汇市场和和采用单一的、有管理的浮动忽略制。

在此背景下,中国外汇交易中心于同年初建立于上海。

根据中国人民银行赋予的职责,交易中心负责提供外汇交易系统和交易后的本、外币资金清算服务。

随着外汇体制改革的不断深入和我国外贸交易量的指数化增长,银行间外汇市场迅速发展壮大,交易品种也不断丰富多彩。

目前,银行间外汇市场提供的业务范围已经从人民币外汇即期交易扩展到人民币外汇远期、掉期、外汇拆借和外币对买卖。

交易的币种除人民币外,还覆盖包括美元(USD)、港币(HKD)、欧元(EUR)、日元(JPY)、英镑(GBP)、加元(CAD)、瑞士法郎(CHF)、新加坡元(SGD)在内的全球主要币种及与中国贸易密切的国家的币种。

CFETS负责银行间外汇市场的交易组织和系统维护,除提供交易服务以外,还提供人民币即期交易的清算服务和增值服务。

IMIX协议现在主要覆盖银行间外汇市场的清算和增值服务业务,用于收盘后CFETS和清算所之间传输交易数据和清算数据,也用于交易期间向会员发送增值数据。

3.3银行间本币市场银行间本币市场由信用拆借市场、债券市场和人民币利率衍生品市场组成。

信用拆借市场是银行同业进行信用拆借的场所,提供1天(隔夜拆借)、7天、14天、1月、3月等多种期限的拆借品种的标准化合约。

债券市场是已发行债券的二级交易市场,交易的债券类型包括国债、央行票据、金融债、次级债、公司债、国际开发机构债券、短期融资券、资产支持证券,针对各种类型的债券,银行间市场提供包括现券买卖、资产支持证券买卖、债券借贷、债券远期、质押式回购、买断式回购在内的多种交易方式。

人民币利率衍生品市场是银行间新成立的市场,交易的品种包括远期利率协议和利率互换。

利率衍生品市场是我国构建多层次金融市场不可或缺的组成部分,是优化我国利率形成机制的重要手段。

金融机构通过银行间本币市场提供的多种多样的交易工具,管理本机构的资金头寸,调整资产负债结构和进行投资理财。

银行间本币市场提供询价和做市两种交易方式,提供意向报价、双向报价、对话报价、点击成交报价、做市报价、限价报价等多种报价方式,满足不同投资需求。

银行间本币市场经过十多年的发展,已经成为我国场外交易市场的主体,参与交易的会员覆盖商业银行、证券公司、保险公司、信托公司、基金、企业年金等各类金融机构。

IMIX协议目前覆盖了银行间本币市场报价、交易、STP服务、清算等几乎交易流程的各个领域,涵盖所有本币市场的交易品种和交易方式,为银行间本币市场提供流畅的数据交互通道。

4. IMIX Protocol结构分析4.1消息结构IMIX消息的标准结构图如下:(详见《银行间市场业务数据交换协议》)图 1 IMIX消息结构说法是大方4.1.1 消息头每个会话消息或应用消息都有一个消息头,该消息头指明消息类型、消息体长度、发送目的地、消息序号、发送起始点和发送时间。

消息头格式见下表表1标准消息头例如:银行A的交易员小王发送消息给银行B的交易员小张,则小王发出去的消息标准头部应该如下表所示:表2标准消息头例子而小张给小王发的消息标准头部则应该如下表所示表3标准消息头例子4.1.2 消息尾每一个会话消息或应用消息都有一个消息尾,并以此终止。

消息尾可用于分隔多个消息,包含有3位数的校验和值。

消息尾格式见下表4表4标准消息尾4.1.3 消息体主要描述应用层面的业务信息(具体的消息类型见《银行间市场业务数据交换协议》),应用消息中有很多共用的数据域集合——组件。

比如说,大多数应用消息都会用到一系列定义债券品种的域:Symbol,SecurityID,SecurityIDSource,……为避免重复,协议中定义了一些关键组件,在应用消息定义中直接用名称引用这些组件。

实际的消息定义和使用中,则应该将组件扩展开成为相应的数据域集合。

4.1.4 组件在IMIX协议中,组件是一个逻辑概念,它用来表示一组彼此之间有一定关系的消息域的组合。

这些组件在IMIX协议中都赋以相应的名称,用来更好的理解消息结构以及所应用的场景。

在实际消息传送过程中,这些组件名称并不会作为信息消息中出现,可以这么说,组件的出现是起到更好让人能够理解IMIX消息结构的作用。

4.1.5 重复组域可以在重复组里多次重复,用以传输数组同类的数据。

在IMIX协议中,重复组也同样是一个逻辑概念,它用来表示一组彼此之间有一定关系的消息域的组合能够连续反复地在消息中出现。

在实际消息传送过程中,这些重复组件名称也不会作为信息消息中出现。

通常域名起始为’No’字符的域指明重复的次数,并位于重复组的开始处。

本文档中重复组的定义通过缩进的符号表示,重复组也可嵌套。

使用子重复组时不能省略父重复组。

重复组内的第一个域是必需的。

在协议执行时把第一个域用作“分隔符”,表明新的重复组的开始。

如果第XXX号(NoXXX)域大于0,那么第XXX号后所列的第一个域就变成有条件的必需的域。

指明重复组号的第XXX号(NoXXX)域(如:交易会话号(NoTradingSessions), 分配号(NoAllocs))在重复组内只出现一次,必需直接位于重复组的内容之前。

如果重复组内有一个域是必需的,那么第XXX号(NoXXX)域就应当是必需的。

如果重复组内的所有参与方都是可选择性的,那么第XXX号域也应当是可选择性的。

如果重复组的某一个域是必需的,那么在重复组内每次重复时该域都应出现。

通过缩进的符号“→”对消息定义内的重复组进行指定。

重复组可嵌入其他重复组(可不止一层嵌套)。

通过缩进的符号“→”后跟缩进的符号“→”的方式对嵌套的重复组进行指定。

有嵌套重复组时,必需对外层的重复组进行指定。

例如定义一重复组:表5重复组则该重复组实际使用例子如下表 6在传送过程中,该重复组在消息中如下所示:454=3<SOH>455=债券1<SOH>456=财政部发行<SOH>455=债券2<SOH>456=企业发行<SOH>455=债券3<SOH>456=央行发行<SOH>5. IMIX Protocol会话机制为了保证IMIX会话能够能够正常的开始和终止,保证IMIX消息在传送过程不会发生的消息丢失引起的消息序列缺口问题,以及其他一系列与IMIX消息传送相关的问题,IMIX 定义了一套会话机制,该会话机制通过定义特殊的消息域以及会话消息实现了会话登录,会话注销,消息缺口填补,消息重复发送等传送场景的处理过程,这些都是IMIX协议为了保证消息正确传送提供的一种解决方案。

如果具体的IMIX协议的实现者能够通过其他的技术或者机制保证消息的正确传送,就不用实现IMIX会话机制。

5.1消息序号任何一条消息都被分配一个唯一的消息序号来加以标识,消息序号在每次会话过程中从1 开始,在整个会话过程中连续递增,直到该会话过程全部结束。

通过监视消息序号的连续性可识别交换中的消息缺口,并做出反应,使得连接双方数据同步。

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

5.2心跳在消息交换的空闲期间,连接双方将在规定的时间间隔内发出心跳消息。

通过心跳消息可以监控通讯连接的状态,识别接收信息的序号缺口。

心跳间隔时间由会话发起人在登录时,用登录中的心跳指令域(HeartBtInt)来加以确定。

每次传送信息完毕之后,应立即重新设置心跳间隔计时器。

心跳间隔时间应得到连接双方的确认,由登录会话发起方设定并得到登录接受方的确认回应。

相关主题