finarthur是C++实现的轻量级开源量化金融框架
finarthur是C++实现的轻量级开源量化金融框架,包括交易系统、数据系统、回测工具、研究分析系统、运维工具以及可视化平台
C/C++ 其它杂项
共99Star
详细介绍
finarthur
finarthur是一个C++实现的轻量级开源量化金融框架,包括交易系统、数据系统、回测工具、研究分析系统、运维工具以及可视化平台。本项目采用C++
实现,保证了执行性能和可扩展性,能够便捷地进行本地部署,确保投研分析全过程的安全可控。
代码和文档还在不断完善中...
概览
finarthur是项目集合,子文件夹分别对应子项目。
文件夹 | 名称 | 用途 |
---|---|---|
archer_trade | 量化交易系统 | 策略执行、算法交易、风险控制、持仓管理 |
rider_data | 数据服务系统 | 实时数据、历史数据 |
lancer_backtest | 策略回测工具 | 策略回测、生成报告 |
saber_analysis | 投研分析系统 | pnl分析、成交和滑点分析、风险分析、brinson分析 |
caster_vision | 前端可视化平台 | 综合展示交易、数据、分析、回测的web页面 |
assassin_tool | 客户端api | 连接交易系统和数据系统的api |
berserker_operation | 运维工具 | 监控各系统运行状况、日志收集、issue处理 |
没错!这些命名来自动漫fate系列,各子项目分别对应了七个被master召唤出来servant,他们的功能跟各位servant的技能也很对应哦~
安装
支持linux和windows(mac暂未测试)
本项目中archer_trade
、rider_data
、lancer_backtest
、saber_analysis
、berserker_operation
都是C++编写的,支持跨平台编译使用。 环境要求:
- 支持C++11的编译器
- cmake2.8 以上
linux
测试环境:ubuntu14.04,gcc4.8
git clone https://github.com/tashaxing/finarthur
cd finarthur
mkdir build
cd build
cmake ..
make
全部项目编译完成,会生成二进制可执行文件到build
文件里对应子项目文件夹下,启动时需要把依赖的配置文件夹拷贝到该目录,再启动执行。
以archer_trade项目为例: 将根目录的finarthur/archer_trade
内的etc
和db
文件夹拷贝到执行目录build/archer_trade
,并创建一个file
目录(如果需要重定向log,还需创建log目录),然后在etc/archer_trade.json
中配置好各项信息,最后
./archer_trade
启动运行
windows
测试环境:win7,vs2015
1 打开cmake-gui,配置source目录为代码根目录,设置好build目录
2 点击configure,选vs2015 x64
3 点击generate,生成vs2015项目sln
4 打开vs2015,编译所有项目
启动运行同理
需要注意的是,本项目集成了很多第三方项目,在编译时也会联合编译,并且所有lib都采用静态链接,避免环境变化导致编译问题。
本项目中assassin_tool
是分别用C++、python、javascript实现的api库,需要集成到客户端使用。
其中,python2和python3都支持,需要安装以下依赖包:
- zmq
- pandas
本项目中caster_vision
是javascript实现的web前端项目,应用了react
和material-ui
框架,对于前端来说是非常熟悉的。
cd caster_vision
npm install
npm start // dev
npm run build // prod
使用
参看各子项目文档
-
2170 Star
-
2178 Star
-
121 Star
-
0 Star
-
4062 Star
-
0 Star
-
0 Star
-
61 Star
-
0 Star