QuantFabric量化交易系统开源发布

QuantFabric量化交易系统

QuantFabric简介

  • QuantFabric是基于Linux/C++开发的中高频量化交易系统,支持中金所、郑商所、大商所、上期所、上海国际能源中心的期货业务品种交易,支持上交所、深交所的股票、债券品种交易。

  • QuantFabric目前支持期货交易柜台如下:

    • CTP
    • 盛立REM
    • 易达YD
  • QuantFabric目前支持股票交易柜台如下:

    • 宽睿OES
  • QuantFabric计划支持股票交易柜台如下:

    • 中泰XTP
    • 华鑫奇点
    • 华锐ATP
  • QuantFabric量化交易系统架构如下:
    在这里插入图片描述

  • GitHub:QuantFabric

编译构建

QuantFabric

  • QuantFabric量化交易系统下载:
git clone --recursive git@github.com:QuantFabric/QuantFabric.git
  • QuantFabric编译构建:
cd QuantFabric			# 进入QuantFabric目录
git submodule init		# 初始化子模块
git submodule update --remote	# 更新子模块
sh build_release.sh		# 编译构建
  • 编译构建完成时,可执行文件和so文件位于build目录下。

  • 单个子模块更新代码:

cd XMonitor
git pull origin master
  • 多个子模块遍历更新代码:
git submodule update --remote
git submodule foreach 'git pull origin master'

XMonitor

  • GUI客户端XMonitor编译构建流程如下:
  cd XMonitor				# 进入XMonitor目录git pullgit submodule init		# 初始化子模块git submodule update --remote	# 更新子模块mkdir buildcd buildqmake ..make
  • 编译完成时,可执行文件位于build目录下。
  • 由于CMake对于Qt工程构建不完美,本人仍然使用qmake对XMonitor进行单独编译构建。如果需要使用CMake构建XMonitor,请参看CMake构建Qt工程实践。

QuantFabric模块

Utils

  • 基础工具模块,提供交易系统不同组件共用的工具模块,如配置加载模块、HPPackClient客户端、HPPackServer服务端、SQLiteManager数据库操作、Singleton单例、Logger日志、RingBuffer、LockFreeQueue无锁队列、IPCMarketQueue行情消息队列、IPCLockFreeQueue内存队列、SnapShotHelper快照工具、时间戳函数、字符串工具函数、不同组件消息通信协议。
  • 项目地址:Utils

XAPI

  • 第三方库,包括SPDLog日志库、HPSocket通信框架、YAML-CPP解析库、CTP柜台API、REM柜台API、YD柜台API、ConcurrentQueue并发队列、OES柜台API。
  • 项目地址:XAPI

XServer

  • 中间件,主要功能如下:
    • 转发GUI客户端上行控制命令到不同Colo交易服务器,如转发XMonitor的报单撤单请求消息到XTrader、风控控制命令消息至XRiskJudge;
    • 转发交易相关数据到GUI客户端,如转发XMarketCenter行情数据、XTrader订单回报至XMonitor。
    • 管理XMonitor客户端登录用户的权限校验。
    • 盘后提供历史数据回放。
  • 项目地址:XServer

XWatcher

  • 监控组件,提供Colo交易服务器上部署的交易组件的监控,并负责转发数据。主要功能如下:
    • 转发XServer转发的控制命令,如报单、撤单、风控参数修改等。
    • 转发Colo交易进程如XMarketCenter、XTrader、XRiskJuage等交易、监控数据至XServer。
    • 监控Colo交易服务器实时性能指标、App交易进程状态,并将相应状态转发至XServer。
  • 项目地址:XWatcher

XMarketCenter

  • 行情网关,采用插件架构,适配不同Broker柜台行情API,主要功能如下:
    • 收取行情数据;
    • 打包行情切片数据写入共享内存队列;
    • 行情数据落地;
    • 行情数据转发至XWatcher监控组件。
  • 项目地址:XMarketCenter

XRiskJudge

  • 风控系统,主要功能如下:
    • 提供账户间风控,如流速控制、账户锁定、自成交、撤单限制检查等风控功能;
    • 加载风控参数,解析XServer转发的风控控制命令,更新风控参数,发送风控参数至XWatcher;
    • 接收XTrader报单、撤单请求,进行风控检查,发送风控检查结果至XTrader;
    • 接收XTrader报单回报、撤单回报,管理订单状态,Ticker交易日内累计撤单计数。
  • 项目地址:XRiskJudge

XTrader

  • 交易网关,采用插件架构适配不同Broker柜台交易API,主要功能如下:
    • 从网络客户端收取手动报单、撤单请求。
    • 从Order内存队列读取报单、撤单请求。
    • 执行报单、撤单指令,管理订单回报。
    • 将仓位、资金、订单回报写入Report内存队列。
    • 将仓位、资金、订单回报发送至XWatcher。
  • 项目地址:XTrader

HFTrader

  • 高频交易组件,商业版,不开源。
  • 性能指标:
Perf Indicator:Tick2Order (ns)
count: 405
min: 785
max: 3237
first: 785
mean: 1275.87
median: 1147
std: 449.36
10%: 916
20%: 951
30%: 1002
40%: 1076
50%: 1147
60%: 1249
70%: 1335
75%: 1395
80%: 1460
85%: 1525
90%: 1673
95%: 2390
99%: 3012

XDataPlayer

  • 行情转发器,主要功能如下:
    • 从XServer接收行情数据,打包为行情切片后写入内存行情队列。
    • 提供历史行情数据回放功能。

Tools

  • 工具箱,提供工具如下:
    • OrderSend:提供批量报单功能,订单写入内存队列。
    • MarketReader:提供行情数据导出功能,从内存行情队列导出行情数据。
  • 项目地址:Tools

FinTechUI

  • 基于Qt封装的金融科技UI组件,支持冻结列TableView、多层次表头HeaderView、自定义排序过滤模型、自定义Button代理、自定义Progress代理、自定义ComboBox代理、自定义表格模型XTableModel、可拖拽式UI插件框架。
  • 项目地址:FinTechUI

XMonitor

  • GUI监控客户端,功能特性如下:

    • 通过拖拽式插件架构实现不同插件页的分屏幕显示,为交易、策略、IT生产运维等人员提供良好GUI体验;
    • 提供Colo交易服务器实时性能指标和交易组件进程状态有效监控;
    • 提供交易组件的进程级管理,实现GUI客户端启动、停止交易组件;
    • 提供行情数据展示、订单回报管理、报单、撤单、风控管理、用户权限管理、交易进程管理等功能。
  • XMonitor客户端提供Permission、Market、EventLog、Monitor、RiskJudge、OrderManager等插件,用于展示不同监控信息。

  • 项目地址:XMonitor

  • Permission插件:提供用户插件权限管理,消息数据订阅。如下:
    在这里插入图片描述

  • Market插件:展示所有接收Ticker的行情数据。如下:
    在这里插入图片描述

  • EventLog插件:展示交易系统所有组件的事件日志。如下:
    在这里插入图片描述

  • Monitor插件:展示Colo交易服务器实时性能指标,交易进程实时状态,提供交易进程管理功能。如下:
    在这里插入图片描述

  • RiskJudge插件:提供风控系统流速限制、Ticker撤单限制、订单撤单限制相关参数设置;提供账户锁定功能;展示不同账户不同Ticker的累计撤单次数;展示风控系统事件日志。如下:
    在这里插入图片描述

  • OrderManager插件:提供报单、撤单功能;展示账户仓位信息;展示账户挂单信息;展示账户历史订单记录;展示账户资金信息。如下:
    在这里插入图片描述

参考资料

  • 《量化IT工程师实战》课程
  • 《量化IT》专栏
  • 《Linux性能优化》专栏
  • 《Qt开发》专栏
  • 量化IT技术QQ群:748930268,加群验证码:QuantFabric

QuantFabric会员服务

  • 基于代码开源,服务收费原则,QuantFabric会进行开源,同时会推出QuantFabric会员服务。
  • QuantFabric会员服务权利:
    • 1、会员将可享加入QuantFabric会员服务微信群,享受技术支持服务。工作时间段可能存在回复不及时情况。
    • 2、会员享提前学习QuantFabric新增功能的权利,新增功能通常将在开发完成后3至6个月进行开源。
    • 3、会员在非工作时间可享一对一语音指导服务,次数受限,需提前预约。
    • 4、会员服务时间期限1年,暂只针对个人提供,目前定价2000元/年,暂不提供发票。会员续费目前只能在会员服务期满前1个月进行续费。
    • 5、购买《QuantFabric量化交易系统构建实践》课程将赠送QuantFabric会员服务1年。
    • 6、针对购买QuantFabric课程的在读大专生、本科生、研究生、博士生以及毕业一年内学生,如果因为IT基础薄弱,需要延长会员服务期限的,可以申请延长,经审核通过,最多可以延长6个月。
    • 7、服务推荐:IT基础薄弱人员,建议购买QuantFabric课程进行学习;非量化行业的IT从业人员,建议购买QuantFabric课程或购买会员服务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/21373.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

写好Prompt,不给ChatGPT老说片汤话的机会

大家好,有没有感觉ChatGPT回答你的问题老说片汤话,这其实有可能咱们的提示语写的不够sensible。 今天主要是针对 ChatGPT 和如何让他回答的更有效展开内容。 什么是 ChatGPT 以下来自维基百科 ChatGPT,全称聊天生成预训练转换器(英…

IOS最新版开通GPT-PLUS方法

前提,美国IP魔法 不多说了 1.拥有一个美区apple id账号 可以买,也可以自己申请 自己申请就打开魔法到apple官网注册,用gmail邮箱,然后地址用美国地址生成器,记得选免税州 2.充值礼品卡 支付宝可以充值礼品卡&…

当我去了不到 20 人的 IT 公司后。。。

往期热门文章: 1、GitHub 被超火的 ChatGPT 霸榜! 2、Java使用 try catch会影响性能? 3、原来count(*)是接口性能差的真凶! 4、大公司病了,这也太形象了吧!!! 5、全球最大资源站创始…

UED2023年上半年总结

博客/主站工作 www首页信息流结构调整、封面默认图设计、图片比例统一 博客个人主页信息流结构迭代,增加封面图 博客详情,评论增加发红包功能及交互 富文本编辑器增加“AI写作助手” 博客评论:增加一个 “分享到动态” 的选择框&…

5号与25号发工资的差别这么大?我居然才知道(文末附招聘岗位)

可能是新一轮的毕业季马上就来了,最近热搜上出现了很多关于工作,收入与存款的热点。诸如#年入20万是什么水平# …… 前面的话题小编已经在上篇文章说过了,感兴趣的朋友可以点击这里围观↓↓↓ 『在中国,年收入20W是什么水平&am…

几号发工资就能看出公司的好坏?(文末附招聘岗位)

作为一名资深的职场搬砖人,不知道各位最近有没有跟我一样关注到这个话题 ​#发工资时间看公司#小编刚看到这个话题的第一印象,想的是发工资时间无非是公司实力的体现,工资发的越早证明这个公司的现金流越稳定强大。 打开评论区,不…

超详细指南:苹果商店美版账号申请与支付宝充值攻略!

文章目录 1. 环境准备1.1 硬件条件1.2 软件条件1.3 其他要求 2. 申请美版账号2.1 添加基本信息2.2 登陆商店2.3 跳过信用卡填写2.4 地址信息 3. 购买礼品卡3.1 登陆pockyt商店3.2 注册pockyt账号3.3 搜索和购买3.3.1 搜索3.3.2 支付 3.4 获取兑换码3.5 商店地址怎么来&#xff…

第一本电子书问世 | 历史上的今天

整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。 今天是 2023 年 7 月 4 日,在 1998 年的今天,美国“火星探路者”宇宙飞船经过 4 亿多公里的航行,成功地登陆火星并释放了一个机器人在火星探…

OpenAI API-KEY 余额如何查询?如何在线购买卡密自助发货网址?

很多播播资源会员问一个OpenAI接口的5刀的KEY能使用多少次?这问题真回答不上来。经多轮测试使用次数大概2-5千次以上,问答只有调用API才会消耗tokens,tokens调用根回答的字数也有关系,Token统计包括了:指令、输入、输出…

如何更高效的和ChatGPT进行交流?

如果你想与ChatGPT有效地交流,以下是一些能帮你提高效率的技巧 1. 清晰明确的表达 确保你的问题清晰明确,以便ChatGPT能够清楚地理解你的问题。 向ChatGPT提问的最重要方法之一是清晰明确。模糊或含糊不清表达可能会导致得出不准确或毫不相关的答案。尽…

用 ChatGPT 作为程序员的协助工具时,需要掌握的技巧你学会了吗?

我最近一直在加班,加班到晚上9点到10点左右。虽然我们一般晚上8点半就可以自己走了,但我都是自愿加班的。昨天我甚至加班到了差不多10点半,回家已经11点了。 为什么自愿加班呢?因为我们的工作量很大,而且公司对待新人…

ChatGPT应用技巧一:思维链(CoT)提示

原文:https://baijiahao.baidu.com/s?id1759881073412430236&wfrspider&forpc 提示工程是什么? 提示工程(prompt engineering)讲的是如何同AI交流的一门学问。在未来,这方面的知识就像英语一样,属…

【ChatGPT】 AI 手把手一步一步教学 Self-Attention:这些动图和代码让你一次读懂ChatGPT背后的“自注意力”

BERT 及其多种变体已经在多种语言理解任务上取得了非常出色的表现,这些架构全都基于 Transformer,而 Transformer 又使用了一种名为「自注意力」的方法。本文将通过图示和代码对自注意力机制进行透彻的解读。当然,在阅读本文之前,你可能也想了解什么是注意力机制。没有问题…

面了一个字节出来的大佬,见识到了基础天花板!

导读:在降本增效、以chatGPT为代表的大模型技术横空出世的背景下,对软件质量和软件测试的领域也带来了巨大冲击,也使得软件质量工作者开始变得焦虑,主要体现在:公司对软件质量从业者的不重视加剧,一些追求临…

测试底层逻辑:从可用、好用、爱用三层理解软件质量

在降本增效、以chatGPT为代表的大模型技术横空出世的背景下,对软件质量和软件测试的领域也带来了巨大冲击,也使得软件质量工作者开始变得焦虑,主要体现在:公司对软件质量从业者的不重视加剧,一些追求临时交付的开发或质…

乔布斯出生 | 历史上的今天

整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。 今天是 2023 年 2 月 24 日,在 2010 年的今天,苹果公司宣布 iTunes 上面的音乐曲目下载量超过了 100 亿首,创下一大辉煌纪录;苹果…

面对ChatGPT的冲击,软件测试大niu是怎么思考的

导读 : 在降本增效、以chatGPT为代表的大模型技术横空出世的背景下,对软件质量和软件测试的领域也带来了巨大冲击,也使得软件质量工作者开始变得焦虑,主要体现在:公司对软件质量从业者的不重视加剧,一些追…

如何在ChatGPT这波浪潮下,仍能保持自己的竞争力?

近年来,数字人、AIGC、自动驾驶等技术不断革新,人工智能深度学习和大模型成为驱动新一轮科技革命和产业变革的重要力量。在新科技和产业变革的大背景下,如何才能在时代浪潮中保持竞争力? 千里之行始于足下,AI达人特训营…

数据里副(负)业现实;扫地机器人发展到哪步了;疫情后要不要重返办公室;淘宝元宇宙直播间;GitHub今日热榜 | ShowMeAI资讯日报

👀日报合辑 | 🎡AI应用与工具大全 | 🔔公众号资料下载 | 🍩韩信子 📢 『月入过万?』数据里的“负”业现实 一门轻松赚钱的副业,无异于鲜脆可口的红苹果,令人垂涎欲滴。但是当你真正…

打造Ai作图studio需要哪些工具

这篇文章依然是比较轻松的方式跟大家介绍Ai生成会使用到的一些工具,希望这些工具可以帮助到你更好的更稳定的快捷的生成高质量图片。说来轻松其实也不算轻松,虽然我已经按照生成的链路对工具做了规整。但是里面涉及到的工具其实确实不算少,并…