6 个版本
0.1.5 | 2024年6月2日 |
---|---|
0.1.4 | 2024年6月2日 |
#148 在 金融
每月 155 次下载
94KB
663 行
golden
golden
是一个使用 Rust 构建的一站式交易引擎。
对于个人交易者来说,有许多公共算法交易平台,如 QuantConnect 和 JoinQuant,用于学习、研究、回测和实时交易。然而,我们仍然需要私有算法交易平台,原因有很多,如策略隐私、系统稳定性和其他定制功能。
其中一个著名的私有交易库是 Backtrader,但社区最近不太活跃。它自2023年4月19日起未更新。我还基于 backtrader 和 ib_insync 建立了一个简单的项目 simple project,但还需要做大量工作才能实现上述目标。
受 backtrader
的启发,golden
致力于构建支持回测、分析、纸交易和实时交易的一站式交易引擎。
为什么选择 Rust
- 作为我的第一个 Rust 练习项目
- 现代编程语言
- 高性能
- 强大的编译器
- 趋势
项目功能列表
- 命令行参数解析器
- 使用本地 toml 文件设置配置
- 使用 UI 设置配置
- 发布到 crate.io
- 自定义策略编写
回测功能列表
- 单数据源
- 单策略
- 从雅虎财经下载 CSV 数据
- 下载雅虎财经数据时设置时间范围
- 从本地文件加载 CSV 数据
- 多数据源
- 多策略
- 在回测中设置时间范围
- 基本指标(如 SMA)
- 更多分析器
可视化功能列表
- 创建基本层
- 实现蜡烛图
- 实现折线图
- 添加交易订单列表
- 添加侧边栏控制器
- 添加顶部菜单栏
- 设置窗口大小和位置
- 添加基准
- 添加更多细节
纸交易和实时交易功能列表
- 单一实时经纪商:IBKR
- 使用单一经纪商进行实时交易
- 风险模块
- 在线监控模块
演示
make backtest symbol=SPY
待办事项:添加更多
快速安装
cargo install golden
命令
# download csv to data/
golden csv --symbol SPY
# backtest
golden backtest --symbol SPY
# paper trading
golden paper --broker ibkr
依赖项
~18–39MB
~648K SLoC