6 个版本

0.1.5 2024年6月2日
0.1.4 2024年6月2日

#148金融

Download history 382/week @ 2024-06-01 19/week @ 2024-06-08 3/week @ 2024-06-29 19/week @ 2024-07-06

每月 155 次下载

GPL-3.0 许可证

94KB
663

golden

golden 是一个使用 Rust 构建的一站式交易引擎。

对于个人交易者来说,有许多公共算法交易平台,如 QuantConnectJoinQuant,用于学习、研究、回测和实时交易。然而,我们仍然需要私有算法交易平台,原因有很多,如策略隐私、系统稳定性和其他定制功能。

其中一个著名的私有交易库是 Backtrader,但社区最近不太活跃。它自2023年4月19日起未更新。我还基于 backtraderib_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