分类
百万富翁交易员如何行动

完整的交易系统设计方案

举个经典的例子,已知 Twitter 2020 年大约有 2000 亿(200 billion)的推文(tweets)发推服务的吞吐量(TPS, transaction per second)是多少,网络带宽要占用

CN103247003B - 面向事件处理的分布式程序化交易系统 - Google Patents

Publication 完整的交易系统设计方案 number CN103247003B CN103247003B CN201310180644.完整的交易系统设计方案 9A CN201310180644A CN103247003B CN 103247003 B CN103247003 B CN 103247003B CN 201310180644 A CN201310180644 A CN 201310180644A CN 103247003 B CN103247003 B CN 103247003B Authority CN China Prior art keywords data business event interface lua Prior art date 2013-05-15 Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.) Active Application number CN201310180644.9A Other languages English ( en ) Other versions CN103247003A ( zh Inventor 汪建斌 石羽 施勇嘉 胡春花 陈朋 Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.) SHANGHAI GREAT WISDOM CO Ltd Original Assignee SHANGHAI GREAT WISDOM CO Ltd Priority date (The priority date is an assumption 完整的交易系统设计方案 and is not a 完整的交易系统设计方案 legal conclusion. Google has not performed a legal analysis and makes 完整的交易系统设计方案 no representation as to the accuracy of the 完整的交易系统设计方案 date listed.) 2013-05-15 Filing date 2013-05-15 Publication date 2017-07-07 2013-05-15 Application filed by SHANGHAI GREAT WISDOM CO Ltd filed Critical SHANGHAI GREAT WISDOM CO Ltd 2013-05-15 Priority to CN201310180644.9A priority Critical patent/CN103247003B/zh 2013-08-14 Publication of CN103247003A publication Critical patent/CN103247003A/zh 2017-07-07 Application granted granted Critical 2017-07-07 Publication of CN103247003B publication Critical patent/CN103247003B/zh Status Active legal-status Critical Current 2033-05-15 Anticipated expiration legal-status Critical

交易策略和原则:完整的交易系统设计方案

交易策略和原则:完整的交易系统设计方案

服务器升级中,评论区暂时关闭~

暂无任何评论~

首页

顶部

Tag: 系统设计

如同我在第一篇文中说的那样,自己在学习各种各样分布式系统的过程中,做了一些笔记,也有自己的理解,把它们放到一起,用一张图选择最主要的部分来阐释,从我的角度来说,是能够帮助理解和记忆的。事实上,遇到的很多各种各样的分布式系统,绝大多数都逃不出那最常见的十几种,也就是说,逃不出这些 “套路” 和 “玩法”。这就是把它们整理成一个系列的初衷。

常见分布式应用系统设计图解(八):文件同步分享系统

文件同步分享系统包括 Dropbox、Google Drive,也包括国内的各种网盘,比如百度网盘。总的来说,这里讨论的这个系统包含这样几个基本功能:

  • 总体来说,上半部分是文件变化的检测和上传。上传分为两条路线,一条是控制流,一条是数据流。
  • 客户端方面,包含这样几个关键组件和步骤:
    • 有一个 Watcher 用来监控操作系统的文件变化,无论是 Linux 还是 Windows 都可以在文件系统上挂载回调,当文件系统发生变化的时候通知它。
    • 有一个 Chunker 帮助给需要传输的数据分块,也负责将收到的 chunks 写入成为文件。对它来说它只负责听从 I

    常见分布式应用系统设计图解(七):爬虫搜索系统

    互联网搜索引擎都有爬虫系统,无论是 Google 还是百度。当然这里我们讨论的只是一个极其简单的版本。

    • 上半部分是爬取的过程,Page Fetcher 根据 完整的交易系统设计方案 URL 队列里面的事件来去实际的页面中爬取内容。不同的网站可以使用不同的 queue,配合从不同 queue 中 poll 的策略,这样可以合理分配资源,避免对某一个网站投入了太多的资源。爬虫需要解析 robot.txt,也要限制爬取的进程/线程数,保证不

    常见分布式应用系统设计图解(六):流媒体系统

    流媒体系统,主要是视频流媒体系统。比如 YouTube,比如 Netflix,比如爱奇艺,还有优酷。再一个许多大型的社交平台上,几乎是一定要内嵌流媒体服务的,以支持用户上传视频类型的内容。

    • 视频文件上传、编码、截图这个过程可以说非常消耗资源,因此视频流媒体系统的处理往往和简单的图片分享系统不一样,它的处理要求异步进行。而异步系统就一定要有队列。
    • 图中上半部分,用户向 Web Server 发起一个视频上传的请求,实际视频上传通过 Uploading

    常见分布式应用系统设计图解(五):Proximity 系统

    今天是介绍 Proximity 系统,我不知道怎么翻译恰当,就保留英文原文。虽说词义上说的只是 “相似度”,但多数说的是 “地理” 上的相似度。因此,这一类系统多为基于地理上的邻近程度来提供服务的,核心功能就是要找到某人、物或地点地理位置附近的其它人、物或地点。比如像打车系统 Uber、滴滴的叫车功能,比如像大众点评、Yelp 或者百度地图、Google Map 中寻找附近餐馆的功能,或者是 “ 附近的人” 之类基于地理信息的 app 上的小功能。

    从读写的角度看,基本上这类功能都要存储位置信息,基于位置的 “寻找” 是很核心的需求,因此读往往比较重。但是写的话差异就比较大了,像有一些应用,比如打车系统,需要司机和

    常见分布式应用系统设计图解(四):输入建议系统

    输入建议系统,指的就是 “typeahead”,比如 Google 搜索,输入一个单词的前几个字母,后面最常用的几个搜索词会被联想出来。有时,它也需要具备一定程度的字符拼写错误自动更正能力。

    比如上面这张截图,我输入了 “goog”,在输入框的下方列出了最常见的几个以 goog 开头的搜索短语。

    • 这个功能可以说不是搜索系统的核心功能,而且要求响应一定要非常迅速,考虑到无法避免的网络延迟,我们希望服务端的处理越快越好。响应数据不用非常准确,但是延迟响应肯定是一个糟糕的结果。所以我们希望服务端的处理的数据尽量都在内存中,几乎不需要怎么读取磁盘,整个过程也要保持简洁。
    • 用户侧的浏览器方

    系统设计中的快速估算技巧

    拿到一堆数据,去做架构也好,设计也好,可行性分析也好,工程上需要的是严谨。但是也有很多场景,比如即时的问题争辩和讨论,我们往往需要的是快速、直接的估算,这样的数据显然不需要非常精确,甚至可以说它一定会非常粗略,我们的目标往往只停留在 “量级” 的级别,但是我们依然可以对方案有一个具体的、量化的认知,这比像 “海量”、“高吞吐”、“低延迟” 这类感性的、描述性的表述还是要清晰和有力得多。

    举个经典的例子,已知 Twitter 2020 年大约有 2000 亿(200 billion)的推文(tweets)发推服务的吞吐量(TPS, transaction per second)是多少,网络带宽要占用

    完整的交易系统设计方案

    伴随着我国社会经济的快速发展,期货交易市场总体规模与交易数量也出现了巨大的变化,传统的手工交易方式已经无法有效适应期货交易发展需求,于是期货程序化交易随之出现。虽然期货程序化交易在我国出现时间并不长,但其重要性已经被人们充分重视起来。期货程序化交易对于交易实时性要求比较高,同时对于策略本身也要求具备一定的灵活性。如果考虑到风险监控指标等因素,程序化交易系统的设计复杂度将大大提高。所以如何设计并开发出既满足程序化交易系统对交易、风控、策略的高度灵活性,同时又要保证程序化交易系统高度的稳定性,是目前建设程序化交易系统必须面对的问题。论文紧紧立足于期货市场的交易特点,同时结合市场上现有的程序化交易系统存在的缺陷,提出了一整套完整的期货程序化交易系统建设方案,其具有定制灵活及回测方便的特点。程序化交易系统分为交易子系统、风控子系统、策略子系统、数据库子系统四大子系统。交易子系统由交易初始化模块、数据上下场模块、核心交易模块三大部分组成;风控子系统由风控管理监控层、风控策略计量层、数据库层以及数据层组成;策略子系统由策略控制模块和策略运行模块组成;数据库子系统由Oracle数据库、Mongodb数据库、内存数据库组成。论文给出了各部分的设计方案及实现说明。论文在高速交易以及风险监控方面,进行了深入的研究。在高速交易方面,论文根据期货交易规则,设计出模块化的交易子系统,保证了系统具备高吞吐、低延迟的特性;子系统内部采用状态机的通讯设计模式,确保系统在正确状态间进行切换,保证了系统具备较高的可用性和稳定性。在风险监控方面,论文引入基于大数据计算的非关系型内存数据库Mongodb以及复杂事件处理(Complex Event Processing)技术。前者主要用于解决非结构化数据存储问题;后者解决风控的实时性要求。两者结合起来,较好的解决了目前金融行业对于多产品、多合约、跨市场以及分帐户的监管系统设计难题。最后,论文在程序化交易系统上实现了经典的R-Breaker策略,使用2010年至2012年两年的数据测试,取得总体收益188%最大回撤7%的成绩,验证了程序化交易系统业务逻辑的正确性;同时对交易系统的性能进行了压力测试,测试结果表明在4000用户同时登陆、每秒5000笔报单的环境下,程序化交易系统还是能够具备良好的稳定性以及可用性。总体测试结果表明,程序化交易系统达到了设计目标。本系统当前已经顺利完成设计与开发工作,并通过了系统测试,能够达成期货业务交易目标,并有效增强期货公司的程序化风险监控能力。