编程开发 购物 网址 游戏 小说 歌词 地图 快照 股票 美女 新闻 笑话 | 汉字 软件 日历 阅读 下载 图书馆 开发 租车 短信 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
移动开发 架构设计 编程语言 互联网 开发经验 Web前端 开发总结
开发杂谈 系统运维 研发管理 数据库 云 计 算 Java开发
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
  编程开发知识库 -> 研发管理 -> (转)JD-Quant量化交易平台设计:延迟latency -> 正文阅读
 

[研发管理](转)JD-Quant量化交易平台设计:延迟latency[第1页]

(转)JD-Quant量化交易平台设计:延迟latency
https://zhuanlan.zhihu.com/p/30495137
JD-Quant
京东量化平台,为投资者提供数据支持、策略开发到策略输出的量化生态服务。
9 人赞了该文章
低延迟系统结构的起源
现在计算机硬件速度已经足够的快,而且越来越快。我们的交易策略能够实时处理海量数据并立即做出决策。随着时间推移,降低延迟的必要性表现为如下两点︰
机会稍瞬即逝,许多交易策略只有在低延迟环境中才有存在意义;
计算机交易者越来越多,适者生存 —— 意味着速度慢就会被竞争对手挤出市场。
“延迟latency”,可以理解为响应时间,是一个统称。延迟问题涵盖了许多方面的设计,它很难量化。下面是交易策略运行的基本生命周期:
交易所发布实时数据包;
交易所的数据包在公网中传输;
数据包到达我们服务器端的路由器;
路由器转发数据包到内网端口;
适配器解析 UDP/TCP 协议;解析数据包的内容;
适配器将内容转换为内部格式传递至算法交易平台;
数据进入算法交易系统的复杂事件处理(Complex Event Processing,CEP)模块和Tick 数据处理等模块;
复杂事件处理分析按照既定策略数据并发送订单请求;
获得订单反馈,这又要把上面步骤重复一遍;
反复循环。以上任何一步的高延迟都会拉长整个周期,就是说,即使在其它所有的步骤都优化到很好了,如果在某一个步骤出现显著的高延迟,整个系统的优化就失败了。
以下分别介绍上面各部分的延迟优化。
Co-location
延迟优化通常从1、“交易所传输数据包”开始。最容易操作的就是拉近我们的服务器和交易所之间的距离(Co-location)。主机托管是指由把服务器放到交易所来管理的机房。
下面的关系图说明了延时和距离的关系。可以看出,10公里以内的延时差别就已经是微秒级别,不是那么大了。
主机托管是任何针对单一交易所的高频交易系统的必备条件。当系统涉及多家交易所时,就是另外一个问题了。另外,不但要考虑交易所返回订单请求的时间,还要比较不同交易所的 Ping 时间。
传播延迟
传播延迟是指数据在线路上的传播时间受到光速制约。
有几种优化方法能够降低物理距离造成的传播延迟。例如,在芝加哥和纽约之间,普通电缆的数据往返时间估计为 13.1 毫秒,2012 年,一家名为 Spread Networks 的公司则在两座城市之间铺设了超高速光缆,数据往返时间估计优化为 12.98 毫秒。Tradeworx公司则更喜欢微波通信,估计的往返时间降低至 8.5 毫秒。要知道,理论上两座城市间最低的数据往返时间约为 7.5 毫秒。持续创新不但拓展了科学的疆域,也迅速接近了光速的理论极限。最新的激光通信技术已让短距离的微小延迟下降至纳秒级别。
网络处理延迟
网络处理延迟,或者说跳转(hop)延迟,是指由路由器和交换机等造成的延迟。数据包从 A 点到 B 点所需要的跳转数,是算法交易系统中需要优化的下一个部分。
一个跳转hop,是指数据包无需通过路由器或交换机等物理设备就能直接到达过程。比如,假设数据包有两条传输路径,第一条需要两次跳转,第二条需要三次。就跟传播延迟一样,路由器和交换机越多(跳转数越多),跳数越多,延迟越长。
网络处理延迟也可能受到微爆(Microburst)的影响。微爆是指数据传输量瞬时提高,但不一定会影响数据传输的平均速率。由于算法交易系统是基于既定规则进行的,所有算法交易系统可能对会对相似事件作出相似反应。其结果就是,大量系统发送订单会导致系统和目的地之间的数据传输量暴增,最终导致微爆问题。就像我国春运时那段时间买不到票,但平时的铁路是正常的。要避免这种情况,交易系统的带宽通常要设计成比平均速率高得多。
序列化延迟
串行延迟是指按位发送和接收比特时所产生的延迟。例如把一个 1500 字节的数据包序列化后放到 T1 线路 (1544000 bps)上,大约耗费 8 毫秒的序列化延迟。56k 的调制解调器 (57344 bps) 则耗费 200 毫秒,而 1G 的以太网线就只耗费 11 微秒。
中断延迟
中断延迟是指从服务器接收数据包时发生中断,到中断被处理完毕所产生的延迟。硬件或软件由于发生了某种事件需要立即得到处理,由此产生的信号称为中断。处理器将暂停当前活动、保存当前状态、响应中断。每当网络适配器接收到一个数据包时,就会发出一个中断,以立即处理已经接收并存放到缓冲区的比特数据。处理中断所造成的时间延迟不仅会影响新增有效载荷,还会造成处理器现有进程的延迟。
2011年,Solarflare引入了高性能用户态协议栈Open Onload,这种方法采用了“绕过内核(Kernel Bypass)”技术,也就是说,当新的数据包到来时,操作系统的内核不再处理,而直接交到用户空间来处理。整个数据包将由网络适配器映射到用户空间,并在该处得到处理。这种方法彻底避免了中断的发生。
避免内核中断的结果是每个数据包的处理速率也提高了。下面的图表清楚地表明“绕过内核”的优势。
横轴是每秒处理X百万条消息,纵轴是所需时间。 “绕过内核”方式性能可达内核中断方式的4倍。
应用程序延迟
应用程序延迟是指应用程序 – 也就是我们平时说的“交易策略” – 处理所需的时间。
应用程序延迟来源于对数据包、对规则逻辑的处理、计算的复杂性以及编程效率等等。增加处理器的数量一般会显著降低应用程序延迟,增加CPU时钟频率也能达到相同的效果。许多算法交易系统设计成为核心的算法逻辑指定专属的处理器内核,例如系统逻辑等等。这也避免了内核之间相互切换所产生的延迟。
同样,如果程序逻辑已经确定,那么内存的大小和速度也将显著影响延迟。因此,大量交易系统采用了低阶变成语言来针对处理器的特定结构进行优化。一些公司甚至采用“现场可编程门阵列”(Field-Programmable Gate Array,FPGA)将复杂计算逻辑烧到硬件上。
下图反映了成本随着复杂度的增长而增长。
复杂程度
高频算法交易已进入一个竞争激烈的时代。每位参与者都在采用新的方法迫使竞争对手离开舞台,这样也让技术有了突飞猛进的进步。与早期相比,现代的算法交易体系结构是相当复杂的。先进的系统既耗费时间又耗费金钱。
50篇干货链接:50篇干货合集,揭开量化交易之谜
欢迎加入京东金融量化官方交流群:456448095,有任何问题和建议均可讨论交流。
阅读全文
本文已收录于以下专栏:

发表评论
HTML/XML objective-c Delphi Ruby PHP C# C++ JavaScript Visual Basic Python Java CSS SQL 其它
相关文章推荐
JD Quant50篇干货合集,揭开量化交易之谜
阅读原文:http://club.jr.jd.com/quant/topic/1176040 京东金融官方资讯QQ群:417082141 有什么想咨询的都可以来询问我们哦 本文梳理了目前常...
JDquant 2017-04-25 20:30 826 艺术品交易平台需求设计文档
需要 文档的 可以加我QQ群 福建IT第一门户 459842291
qq_35546160 2016-07-08 09:41 835

《校园二手交易平台设计》原代码
2011-10-14 17:31 6.97MB 下载

仿二手交易平台的原型设计
2017-08-04 20:03 1.10MB 下载
Python量化交易平台开发教程系列1-类CTP交易API的工作原理
转自:https://zhuanlan.zhihu.com/p/20031646?columnSlug=vn-py 用python的交易员  · 2 年前 转载请注明出处:用Python的交易员 ...
gavinking0110 2017-03-20 11:59 548

漾濞核桃网上交易平台设计方案
2008-04-04 10:56 52KB 下载

二手交易平台设计+论文
2010-04-29 21:03 8.71MB 下载
【金融/交易】基于CEP的量化交易平台建设
转自: http://www.finesys.com.cn/news/html/?453.html 1   前言 1.1 招商证券量化交易平台概述  量化交易是将投资策略...
robinjwong 2015-05-02 23:14 3689

基于三层结构思想的二手货网上交易平台的设计与实现
2010-05-31 09:59 259KB 下载

基于MVC校园二手交易平台设计与实现
2013-10-28 14:11 748KB 下载
wowotuo +关注
原创 198 粉丝 80 喜欢 0 码云  
他的最新文章 更多文章
(转)某期货系统漏洞致巨损二审在即 千万损失谁来买单? (转)超越文艺复兴,Two Sigma成为全球量化基金新霸主 (转)人生若觉无作为,愿君读读黄公望
在线课程

【免费】搜狗机器翻译技术分享
讲师:

深度学习在推荐领域的应用和实践
讲师:吴岸城
热门文章 CTP: 各种错误的测试(补充和修改中)
7758
(转)高盛报告:人工智能、机器学习和数据将推动未来生产力的发展
5583
CTP: SimNow , 策略模拟交易利器,赞!
5285
CTP: 平昨仓与平今仓,log轻轻告诉你.......
4046
转:Confusion Matrix(混淆矩阵) 解释最全的一个
3987
0
  研发管理 最新文章
开始使用代码编辑器——Sublime Text 3
程序调试
别告诉我你会记笔记——工作中如何使用笔记
android wss 连接不上ejabberd服务器的处理
软件配置管理基线解释
软件配置管理中三个基线概念
伙伴系统之伙伴系统概述
C#之字符匹配
查看域名是否支持IPv6
你对Linux窗口管理程序Tmux了解吗
上一篇文章      下一篇文章      查看所有文章
加:2017-10-29 22:03:55  更:2017-10-29 22:05:49 
VC(MFC) Delphi VB C++(C语言) C++ Builder 其它开发语言 云计算 Java开发 .Net开发 IOS开发 Android开发 PHP语言 JavaScript
ASP语言 HTML(CSS) HTML5 Apache MSSQL数据库 Oracle数据库 PowerBuilder Informatica 其它数据库 硬件及嵌入式开发 Linux开发资料
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年7日历
2018-7-19 0:30:07
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  编程开发知识库