#order-book #backtesting #trading #quantitative #cryptocurrency #hft

hftbacktest

一个高频交易和市场做市回测工具,考虑到限价订单、队列位置和延迟,利用完整的交易和订单簿的tick数据

12个版本

0.3.2 2024年8月10日
0.3.1 2024年8月4日
0.2.2 2024年7月16日
0.2.1 2024年6月27日
0.1.3 2024年5月30日

#385 in 魔法豆

Download history 103/week @ 2024-05-06 101/week @ 2024-05-13 189/week @ 2024-05-20 322/week @ 2024-05-27 35/week @ 2024-06-03 119/week @ 2024-06-10 127/week @ 2024-06-17 141/week @ 2024-06-24 53/week @ 2024-07-01 106/week @ 2024-07-15 138/week @ 2024-07-29 178/week @ 2024-08-05 22/week @ 2024-08-12

每月下载量338

MIT许可证

4MB
14K SLoC

HftBacktest

crates.io

该项目目前处于初期开发阶段,这意味着可能会在没有事先通知的情况下发生破坏性变化。实时机器人功能尚未经过全面测试;因此,请自行承担风险。

Rust中的高频交易回测和实时机器人

这个Rust框架旨在开发和运行高频交易和市场做市策略。它专注于考虑数据和订单的延迟,以及订单队列位置以进行订单填充模拟。该框架旨在提供基于完整订单簿和交易tick数据的市场回放式回测。您还可以使用相同的算法代码运行实时机器人。

主要功能

  • 完整的tick-by-tick模拟,可根据自定义时间间隔或基于数据和订单接收。
  • 基于L2按价格和市场和L3按订单(WIP)数据流的完整订单簿重建。
  • 回测考虑数据和订单延迟,使用提供的模型或您自己的自定义模型。
  • 考虑订单队列位置的订单填充模拟,使用提供的模型或您自己的自定义模型。
  • 回测多资产和多交易所模型
  • 使用相同的算法代码部署实时交易机器人:目前适用于Binance期货和Bybit。

入门指南

安装

从cargo仓库安装

cargo add hftbacktest

从源码安装最新的开发版本

hftbacktest = { git = "https://github.com/nkaz001/hftbacktest.git" }

数据格式

与Python实现相比,Rust实现使用不同的数据格式。请参阅数据准备教程中的Rust版本部分。

示例

高频网格交易:使用Rust实现的高频网格交易策略对Binance期货进行回测的完整过程。

请参阅示例

文档

有关一般信息,请参阅此处文档
有关Rust实现,请参阅此处文档

路线图

请参阅路线图

贡献

感谢您考虑为hftbacktest做出贡献!欢迎任何和所有的帮助来改进这个项目。如果您有改进或修复错误的想法,请打开GitHub上的问题或讨论。

以下是可以为这个项目做出的贡献示例

请参阅路线图

依赖项

~1–15MB
~203K SLoC