硬件只是实现成功交易所必需的许多计算机技术的组件之一。另一个关键组件是信息传递,即实现市场参与者的各种硬件和软件模块之间的通信。正如速度在硬件中很重要,它在信息传递中也很重要。事实上,信息的传播速度是交易通信的障碍或者说瓶颈。
交易信息由三个级别的协议组成,如图2-6所示。最基本的通信级别使得数据流能够进行传输,被称为用户数据报协议(UDP)。UDP是“准系统”(bare bones)数据通信协议,精益实施,并利用最少数量的字节和信息来识别和传递数据流。因此,UDP非常快,但不能保证发送的数据送达。UDP是与用于互联网的在线流游戏(stream games)和流媒体(stream movies)相同的技术,在某处丢失一个数据包并不会显著影响观看者的体验。在交易中,UDP有时用于传输报价、连续刷新的数据,因此不会对丢失的信息非常敏感。如果从交易所发送的特定报价未能到达交易商,则所产生的影响可以被认为是最小的——新的修订报价已经在传输中,在到达交易商的账户时替代丢失的报价。
图2-6 交易中通信协议三
然而,报价过程的完整性在交易模型开发中很重要。交易算法开发者可以依靠报价流的特性来生成即将到来的市场动态预测信号。如果模型开发中使用的历史报价流的结构,与交易商在“开市”环境中遇到的报价流的结构明显不同,则计算的预测可能停止工作。应注意确保在算法的模拟和回测中使用的数据在结构上与实际开市环境中接收的数据兼容。至少,算法设计者应该确定实际开市中接收的报价的频率与回测中使用的历史数据的频率相匹配。此外,还可以执行更复杂的数据测试。例如,可以对两组数据计算滚动式自相关度量(roing autocorreation metric),并且结果度量的分布与成功的算法设计和实现应该是类似的。
复杂度更高一级的通信协议是传输控制协议/互联网协议(Transmission contro Protoco/Internet Protoco,TCP/IP)。TCP/IP是另一种标准互联网通信协议,目前用于大多数电子邮件和网络浏览通信。与UDP不同,其中单独的信息数据包不携带任何识别标记,TCP/IP传输的所有分组按照顺序编号,每个数据包内的字节总数会被计数,并且未传递或损坏的数据会被重新发送。因此,TCP/IP为信息传递提供了更安全的框架,被用于传输委托订单、订单确认、执行确认、订单取消以及类似的重要信息。作为平衡,TCP/IP的速度往往比UDP慢三倍。图2-7总结了UDP,TCP/IP和FIX在交易通信中的常见用法。
图2-7 交易通信中常用的协议
然而,UDP和TCP/IP都需要额外的通信层,使得交易过程的信息标准化。像FIX ITCH 、OUCH 和FAST (FIX Adapted for STreaming)在UDP和TCP顶层使用,以标准化机器可读取的格式来传输数据。FIX协议是一个免费的基于XML的文本规范,用于报价、下单、交易和相关信息传输。FIX协议包括数据字段定义、枚举和各种组件,构成信息。每个信息单元都会被用户生成的数据填充。信息的每个字段,包括所使用的FIX的版本、时间戳 和其他信息,通过二进制1与以下字段分开。
图2-8为一个FIX信息示例,传送美元/加元汇率的报价。显示的报价包含以下信息:
·FIX版本,“FIX.4.2”(字段编号8);
·信息的时间戳记,“20070731-15:25:20”(字段编号52);
·安全标识符,“USD/CAD”(字段55);
·安全类型,“FOR”用于外汇(字段号167);
·基本货币,美元为“USD”(字段15);
·最高买价和最低卖价(分别为字段132和133);
·最高买价和最低卖价的大小(字段134和135)。
图2-8 FIX信息示例
通信信息的传输速度取决于几个因素:
·信息大小;
·连接带宽;
·TCP/IP和UDP“窗口”大小,即市场参与者愿意指定在每个信息“片段”上发送和接收的字节数。一旦一个市场参与者的系统发出信息,则将信息分成单个数据包的指定窗口长度,每个数据包都附加信息标题,并在其线路上发送。UDP信息头(message header)通常标识目的地,并且仅由8个字节组成。TCP/IP信息头包括发送方和目的地标识,包裹序号和组成该信息的包裹总数,以及其他变量。标准TCP/IP信息头为20字节。FIX信息头可以更复杂,并且通常超过100字节。
虽然FIX被广泛使用,与纳斯达克著名的ITCH和OUCH协议相比,它速度比较缓慢。ITCH和OUCH的二进制特性确保信息以机器可读取的格式到达,不用耗费时间将它们从文本转换为二进制再转换回来。除了二进制格式之外,ITCH和OUCH的信息具有固定的信息长度,使其能够更快地传输。OUCH是订单输入协议,而ITCH是输出报价和交易数据的传播规范。然而,ITCH和OUCH仅支持有限数量的信息。OUCH提供了以下平台:
·订单输入;
·更换和取消;
·接收执行确认。
ITCH是为快速和精准报价而建立的,过往的交易数据传递能够发送:
·订单级数据;
·交易信息;
·处理订单不平衡数据;
·管理信息;
·事件控制,如开始日、结束日和紧急市场暂停/恢复。
对于更复杂的信息,能使用ITCH和OUCH的市场中参与者通常需要使用FIX。
分笔信息在市场参与者之间传输时,使用一个或多个报价信息规则。FIX、ITCH、OUCH和FAST只是一些能够传输关键交易信息的信息语言,尽管它们是复杂的首字母缩略词,但是信息传递是建立在非常简单的架构之上的,如图2-9所示。
图2-9 交易的核心数据结构
如图2-9所示,每个报价和交易通信流包括以下关键信息:
1.会话开始是在每个通信会话开始时发送的信息,有时每天只有一次。会话开始信息会通知相关的市场参与者,其本质是为交易敞开门,并建立通信流。
2.心跳检测是一个常用的信息,通知参与者的通信方,参与者在线,且处于良好的技术健康状态,并能开展交易业务。未能在预设的时间段内接收其通信对象的心跳信息的那一方,往往会关闭通信信道。然后可以使用“会话开始”序列来恢复通信信道。
3.报价信息是携带报价的信息,如最高买价、最低卖价和数量。二级数据,如最高买价、最低卖价背后的市价订单深度,也可以使用报价信息传送。
4.订单信息用于传输实际订单的信息。典型的订单信息包括买卖标识符、订单类型——市场、限制或其他详情、订单大小,以及在限价订单的情况下期望的执行价格和有效期(终止日期或一直有效)。
5.订单取消信息包括先前设置好但现在需要取消的订单的唯一标识符。
6.订单确认和订单取消确认信息,分别包括订单设置或订单取消的确认。
7.执行确认信息说明了执行的详细信息:执行时间、获得价格和执行数量。
8.会话结束信息通知各方,给定的交易实体已停止当天的交易和报价。
所产生的交易信息流包含了一种直观的方法,用以提供有效、可靠和可追溯的通信。大多数的全套交易设备会记录日常通信,以便于协调和快速识别潜在问题,如网络连接问题、算法错误等。
TCP/IP或UDP都不包含加密。换句话说,大多数TCP/IP和UDP信息都已以纯文本形式,通过互联网发送。FIX可以提供可选的加密,代价是相当大的延迟。当ITCH和OUCH以二进制格式发送信息时,大多数纳斯达克交易所的信息仍然通过互联网不加密地发送。
发送未加密的消息,市场参与者面临什么样的风险?为了回答这个问题,需要考虑互联网流量的当前布局和流量。今天,世界上大多数互联网流量流经大约80个“核心”节点。这些节点,例如,像Verizon之类的主要互联网服务供应商(ISP),在恰当的位置具有一些安全措施,限制了在这些节点处间谍行为的发生率。同时,节点可能相当拥塞,减缓消息流量,而不考虑其紧急性。
如果核心节点出现故障,70%的互联网流量将流经对等网络(peer-to-peer networks),在冗余备份结构中,流量将以分散的方式,从一个本地用户跳到另一个本地用户。虽然对等网络配置允许网络参与者观察彼此的流量内容并且完全读取未加密的消息,但是对等通信被充分地随机化,以防止任何对等方积聚整个信息流。然而,对等网络可能易受恶意攻击,并且订单流的潜在劫持可能破坏市场并对所有市场参与者造成巨大损失。
图2-10 主从式、对等式和主机托管模型的信息传送结构
图2-10描述了交易中三种常见的互联网通信模型,包括所谓的主机托管模型。在主机托管模型中,交易商的服务器被安置在与交易所的匹配服务器相同的安全设施中。在主机托管的情况下,交易商的服务器能够使用交易所服务器的专用网络接入。专用网络接入包括从交易服务器直接到交易所的私有安全通信线路,使恶意干预的风险最小化,并且确保所有市场参与者的环境安全。主机托管还提供了如下速度优势:例如,纽约和芝加哥之间的距离较远,此外,主机托管交易连接的安全性节约的巨大成本,可以使在纳斯达克托管主机的芝加哥交易商,在一轮往返下单中,减少17~22毫秒的延迟。图2-11总结了世界各地主机托管中心的延迟时间。
图2-11 电子信号通过光纤网络在成对位置之间传输导致的延迟
在大多数主机托管数据中心内,服务器被放置在离交易所服务器本身不同的距离处,自然引起了主机托管于给定设施中的所有交易商对连接“公平性”的关注。小到100英尺 的物理距离差可以导致在发送和接收的每个消息上一微秒(一百万分之一秒)的时间延迟,使得将主机托管于交易所服务器附近的交易商具有潜在优势。为了解决这些问题,纳斯达克主机托管中心保证了从服务器到交易所再到位于纳斯达克设备的每个交易商服务器等距离的光纤电缆。电缆长度在物理上精确到了毫米,即使是靠近交易所服务器的交易商服务器,电缆也会盘绕起来。
虽然一些市场参与者认为主机托管的价格昂贵难以承受,但实际数据恰恰相反。例如,位于新泽西州斯考克斯市的数据中心,一家私人公司Equinix提供与主机托管效果相类似的服务,最低月费如下:
·配备了生物识别安全扫描仪和空调的商业硬件机柜每月1500美元。
·20安120伏主电源每月费用350美元。
·额外的20安120伏电源用于冗余,每月额外增加175美元。
·最后,连接到世界各地数据中心的超快速通信网络的连接,每月额外支付325美元。
整套类似设备总计每月只需2350美元,成本对于任何认真的投资者来说都可以忽略不计。
消息传输架构是所有市场参与者都可利用的资源,但它并非对所有人都免费。例如,交易所必须不断地增强基础设施,以确保其连接的带宽足够大,使所有感兴趣的交易商之间可以不受限制地传输消息流量。也许对交易所和其他订单交易地的最大挑战是订单取消的绝对量。根据Hautsch和Huang(2011)所说,在纳斯达克,95%的限价订单在发出后一分钟内被取消。Hasbrouck和Saar(2011)报告了类似的行为,将其分为快速下单和取消“运行”。虽然这种行为对一个不知情的观察者可能是恶意的,但是对其解释很简单:如第10章所详述,制造商需要以接近市场的价格报价——“处于主动地位”,以成功和迅速撮合,从而确保稳定的收入流。一旦市场脱离了做市商的报价,取消订单并以新的最高买价和最低卖价重新提交订单符合做市商的最大利益。此外,如第12章所述,关于限价订单簿的时间价格优先权的交易,市场参与者可以挂单,然后不痛不痒地取消过多的数量限价订单,以确保其执行优先级,这在实际操作中被称为“分层”(ayering)。
在这种动力下,许多交易场所陷入恶性循环:一方面,它们互相竞争吸引做市商;另一方面,许多取消订单的做市商正在侵蚀网络资源,导致报价出错和其他贻误所有市场参与者的行为。甚至主机托管也无法完全解决带宽问题,因为主机托管空间也面临着容量限制:纳斯达克在新泽西州莫瓦市的主机托管的机库中有很多需求,据说已经无法为对主机托管感兴趣的人提供足够空间。如第3、12章所讨论的,目前已经在选定的交易所开发和实现了对网络带宽问题的有前景的解决方案,称为按比例执行(pro-rata execution)。