功夫量化-跨平台高性能 量化交易系统

简介

功夫是 Taurus.ai 团队专为量化交易者设计的开源交易执行系统。功夫想要解决以下问题:

  • 低延迟交易 – 量化交易者对系统内响应速度有极高要求,功夫提供微秒级别的系统响应,支持带纳秒级时间戳的交易数据实时存储和盘后分析。
  • 开放的策略编写方式 – 功夫支持 Python 3 及 C++ 形式的策略编写,策略师可以不受限的自由使用第三方计算库,放飞创意。
  • 友好的使用方式 – 告别 Linux shell 小黑屋,功夫提供图形化操作界面,简化策略运维流程。而进阶用户仍然具备通过底层 API 以无界面形式使用系统的能力。
  • 跨平台运行 – 三大主流平台(Windows、MacOSX、Linux)皆可编译运行。
  • 灵活的扩展接口 – 功夫提供几种不同的数据交互接口(易筋经、SQLite、nanomsg),支持用户自行开发各种功能模块。

功夫系统架构如下:

  • 后台核心(C++)
    • 易筋经(yijinjing) – 专为金融交易设计的超低延迟时间序列内存数据库,提供纳秒级时间精度,可落地交易相关的全部数据。
    • 咏春(wingchun) – 策略执行引擎,提供策略开发接口,利用易筋经特性,咏春还提供一系列交易数据分析工具。
  • 中台交互(C++/Python/nodejs)
    • SQLite – 功夫使用内嵌式数据库 SQLite 存储配置信息及中间数据
    • nanomsg – 功夫使用 nanomsg 作为前后台通信机制,系统内对延迟不敏感的指令(例如手动下单等)可通过 nanomsg 信道传达。
  • 前端UI(Node.js)
    • Electron – 跨平台的桌面应用开发框架
    • Vue.js – UI开发框架
  • 打包机制
    • pyinstaller – 封装完整的 Python 环境及所有二进制依赖,使得功夫的安装部署绿色化,无需依赖其他软件。
    • pipenv – Python 依赖管理工具,开发过程无需额外安装 Python 包。
    • pm2 – 基于 nodejs 的进程管理工具
    • electron-builder – 借助 Electron 技术,功夫可以提供本地化应用程序的安装使用体验。

功夫在系统设计上支持任意柜台的对接(涵盖中国所有股票、期货市场),目前功夫开源版仅提供 CTP 和 XTP 柜台对接的实现。 如果需要接入更多柜台请通过 kungfu-trader 官网联系我们。 开发者也可根据长拳标准自行开发新的柜台接口。

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注