zoukankan      html  css  js  c++  java
  • 目前国内的高频交易系统的延迟做到了什么水平?

    作者:starseeker

    链接:https://www.zhihu.com/question/25074811/answer/30746398

    来源:知乎

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    正好昨日,国内CTA这块最强的私募富善投资(Foreseefund,他们家的微信公众号也是这个)发了这样一个PPT,还是很适合大家了解现在这个市场的,经林总同意,我把相关内容贴上来供大家参考。

    交易性能速度的决定性因素有以下几点:

    一:交易服务器是否靠近交易所机房?

    国内四大期货交易所都有自己的机房,其中中金在数讯,上期主要在张江,大商和郑商在本地也有相应的机房,另外期货公司有自己的服务器托管中心。

    二:期货公司托管机房条件如何?

    主要就是硬件投入情况,包括服务器硬件和网络硬件还有带宽等,是不是比较新的或者几个大硬件商的设备,系统版本如何等等,都会影响速度。

    三:网络环境如何?

    一个是你到相应的机房是走公网还是走专线。二是如果做跨市场比如说外盘,黄金T+D等等,到交易所之间的连接速度。

    以下两张图可以清楚的说明各个系统间的关系:

    在大家都采用服务器托管的模式下,各个期货公司之间的差别并不特别大。

    硬件完毕以后开始说说交易平台的差别。首先是CTP是比较标准的程序化交易接入平台,也是绝大多数人采用的。其次上面图中可以看到各个交易所有自己的交易所系统,那么在自家领域都或多或少有一些速度上的优势,比如说飞马交易股指期货就比CTP快,但是飞马只能用来交易股指期货。另外还有一些第三方公司部署在期货公司的针对高频的交易平台,比如说恒生的UFT,金飞鼠。还有CTP的简易版本MiniCTP速度也比CTP来得快。

    说完软件以后,开始说一个概念就是席位的概念,比较偷懒就直接上富善的图:

    具体来说主席相对来说人比较多,所以在高峰的时候可能速度会比较慢。对于大的期货公司一般都会有N套席位,次席相对来说人少速度上可能就快。但是以上不绝对,最好是和期货公司实际测试一下。当然如果有专用席位就更好了,前提是你的money足够多。

    ---------

    作者:西独

    链接:https://www.zhihu.com/question/25074811/answer/30013211

    来源:知乎

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    随便扯两句,国内交易所都是类政府机构,性能提升对领导来说不是政绩。什么是政绩?当然是各种新业务。在这种大环境下,FPGA交易系统就是个笑话。

    真正打破头去提升速度的是期货公司。但是行业整体IT水平的关系,还处在初级阶段。

    随便提供个数据,期货交易所colo委托响应最快1-2ms,波动最大能到20-30ms。期货公司系统最快能做到100-200us。

    =======================================================

    update 9月5日

    是题目更新了还是,之前手机答题没看到引用的部分。

    这里对引用做一下补充,中信期货给的数据并不漂亮。这个数据也就是行业平均水平。

    Delay2,快的可以做到比他小1000us左右。

    现在做colo的机房离交易所实际的交易核心机房还是有几十公里远,中间经过N多二层三层设备,

    所以延时在1-2ms是没办法的。

    用金字塔开拓者纯粹是外行忽悠外行。Windows平台本身延时就很不靠谱。

    下面是吐槽,引用部分还提到距离,只有到纳秒级系统才对网线长短敏感好么,这种毫秒级的系统根本不在乎这些。

    竟然还说离交易前置3米,那只有同机柜或者相邻机柜的部分机器才能做到。我相信中信做colo的服务器绝对不止这么几台。

    ----------

    呵呵,路过,数据已经过时了,2013年还OK

    实盘cffe:Delay1:770 us,Delay2:3025 us

    实盘shfe:Delay1:808 us,Delay2:2576 us

    比同行快1到2毫秒,没说过这大话,有PPT里有一些广告语,请自动忽略,但保证数据是真实的。

    现在的延时增加了,交易所侧有变化

    至于FPGA,呵呵,多是嘴炮,好似很稀缺,真出来了,还是没人买单呀

    作者:匿名用户

    链接:https://www.zhihu.com/question/25074811/answer/36834487

    来源:知乎

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    ----------------

    作者:马亮

    链接:https://www.zhihu.com/question/25074811/answer/154797491

    来源:知乎

    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    做Colocation只是做高频交易最基本的条件,通常只要自己做的量足够多从可以从broker那边拿到,也就算不上有什么优势。虽然在期货交易所的行情发布频率在250ms或500ms每次,交易撮合耗时也是在毫秒级,但不影响做高频交易的机会,因为大家比的是相对速度(比你快就可以,不关心快多少)。这时候大家关注的就是,是不是比对手能提前收到行情(不是说你在499ms收到行情,而是说你比别人能提前收到那“500ms”每次的行情),还有就是能不能比别人提前将委托送到交易所撮合系统。这就对使用的行情系统和柜台系统(交易系统)的性能延迟有极高的要求。

    目前金融交易技术领域FPGA是一个比较合适的技术方案来解决交易上的延迟问题。 FPGA由于其可编程特性,可以被用于实现任意的逻辑功能,FPGA的每一个时钟周期可以并行处理多个指令。由于FPGA可以被设计为专门处理某个(或某些)算法,所以即使其支持的时钟频率低于CPU,但单个时钟周期可以完成的运算可以远大于一个CPU指令可以完成的运算量,甚至整个算法都可能在几个时钟周期之内完成,所以完成整个算法FPGA所需的时钟周期数可以远低于CPU。不仅如此,FPGA的时钟频率还在不断提高,目前为止还依旧遵循摩尔定律,而CPU时钟频率已经不再按照摩尔定律提升了。除此之外,FPGA的并行处理特性使得大量的逻辑处理单元(算法单元)可以并行存在于FPGA内部。在需要处理大量数据的情况下,这些数据可以并行的分配给这些处理单元,从而获得比CPU更高的处理吞吐量。FPGA还有一个特性就是其相对CPU独立,不像GPU需要依赖CPU。对于某些特定的应用,比如程序化交易,FPGA可以完成网络协议处理、交易算法逻辑,从而避免与CPU和操作系统的通信,从而获得极低的延迟和极高的可靠性和确定性。

  • 相关阅读:
    HashMap原理
    高并发架构系列:MQ消息队列的12点核心原理总结
    大话程序员系列:一张图道尽程序员的出路
    java面试题
    SpringBoot框架的使用
    java开发定时任务执行时间
    OpenLayers 3 扩展插件收集
    Vue-cli webpack模板
    Spring的属性文件properties使用注意
    FullBg-网页图片背景自适应大小
  • 原文地址:https://www.cnblogs.com/dhcn/p/12425345.html
Copyright © 2011-2022 走看看