原生API

原生API

一旦高频交易公司决定不经过任何中介,与交易所直接建立连接,它就必须做出另一个重要的抉择。这里所面临的选项有两个: 第一个是使用业界标准的通信格式来接收市场数据、下单并监听交易回报等, 这种格式被称为FIX, 其全称是金融信息交换协议( financial information exchange protocol ) 另一个选项则是通过每个交易所特有的原生应用程序提口( application progrmming interface,API)编写能被交易所电脑直接解释的代码。

FIX 协议的优势是显而易见的。不论你与哪家交易所进行通信,你都能够使用完全相同的方式编写你的指令( 顺便说一下,我们在这里所讨论的是非常具体的代码编写方式,这是程序员才需要考虑的问题,例如,我应该把交易价格放在数组的第四个还是第五个位置上? 我应该在哪里指定我所要交易的合约名称? 诸如此类)。这种通用性能够为高频交易公司省下一大笔软件开发的费用。如果公司使用原生API 与交易所通信, 一旦需要与一家新的交易所建立连接,程序员就必须从零开始编写程序。而使用原生API 的程序进行规划、编码和测试,常常需要花掉好几个星期,甚至是几个月的时间。

那么为什么会有人不使用FlX 协议呢? 这与程序的翻译时间有关: 当交易所接到一条原生格式的消息时,并不需要进行什么翻译。举个例子, 一条原生格式的高频交易委托单在接收到之后会立即被处理。当交易所接收到一条FIX 格式的消息时,则需要首先把消息从FIX 格式翻译成原生格式,然后才会被处理。

我们在这里说的时间并不是很长,在大多数情况下都远远小于1毫秒。但是,那些最激进的高频交易公司愿意进行这样的软件开发投入, 哪怕仅仅是为了让他们的委托单再快那么一丁点儿。

值得一提的是, 一些交易所不允许使用原生API 进行连接。他们可能会只提供FIX 格式的市场数据,或者仅仅接受FIX 格式的委托单。在这种条件下,由于没有人会在APl 上拥有优势,高频交易公司显然也很乐于使用FIX 协议。