NautilusTrader 是一个用 Rust 构建的高性能事件驱动算法交易平台,支持回测和实盘交易。由于直接从 GitHub 获取内容失败,我综合了官方文档和可靠的搜索结果,为你整理了这份详细的部署教程。

📋 部署前准备

在开始前,请确保你的系统满足以下要求:

  • 操作系统与架构:支持 Linux (x86_64/ARM64)macOS (ARM64)Windows (x86_64)
  • Python 版本:需要 Python 3.12、3.13 或 3.14 环境。
  • Rust 工具链(选装):如果计划从源代码构建,需要安装 Rust。

🚀 部署与安装方式

推荐以下三种方式,你可以根据自己的需求选择。

方式一:使用 pip 安装(推荐)

这是最快、最稳定的方式,适合大多数用户,直接安装预编译的二进制轮子。

  1. 创建并激活 Python 虚拟环境(推荐)。

  2. 执行安装命令:

    1
    pip install -U nautilus_trader

    可选:安装带有特定功能(如 Interactive Brokers 适配器、可视化)的版本:

    1
    pip install -U "nautilus_trader[ib, visualization]"

    可用的扩展名(extras)包括 ibpolymarketvisualization 等。

方式二:使用 Docker(免环境配置)

如果你想在隔离的环境中快速体验,或者不想在本地配置 Python 和 Rust 环境,Docker 是理想选择。官方提供了包含 Jupyter Lab 的镜像,开箱即用。

  1. 拉取镜像(以 nightly 版本为例):

    1
    docker pull ghcr.io/nautechsystems/jupyterlab:nightly --platform linux/amd64
  2. 运行容器

    1
    docker run -p 8888:8888 ghcr.io/nautechsystems/jupyterlab:nightly
  3. 在浏览器中打开 http://localhost:8888 即可访问 Jupyter Lab 环境,其中包含了示例回测笔记本。

方式三:从源代码构建(高级/开发)

如果你需要修改 Rust 核心代码、进行二次开发,或需要调试版本,可以尝试从源码构建。

  1. 安装 Rust:访问 rustup.rs 安装 Rust 工具链。在 Windows 上,还需要安装 “Desktop development with C++” 的 Visual Studio 构建工具。

  2. 克隆仓库

    1
    2
    git clone https://github.com/nautechsystems/nautilus_trader.git
    cd nautilus_trader
  3. 使用 Makefile 构建:项目提供了便捷的 Makefile。

    • 开发调试make build-debug (编译后,修改 Rust/Cython 代码可快速增量编译)。
    • 发布优化make buildmake build-wheel (用于生成发布版本的轮子)。
  4. 安装:构建完成后,可以在虚拟环境中安装生成的 .whl 文件。

🔧 验证与初步运行

安装完成后,可通过运行快速入门示例来验证部署是否成功。

  1. 运行 Quickstart 脚本:这是官方提供的一个在 5 分钟内运行回测的入门脚本,使用合成数据,无需额外下载。
    • 你可以从官方文档或仓库中找到 quickstart.py 文件并运行。
    • 该脚本会演示一个基于指数移动平均线(EMA)交叉策略的完整回测流程。
  2. 运行 Jupyter Notebook 示例:如果使用 Docker 或在本地安装了 Jupyter,可以打开示例笔记本,体验数据加载、策略编写和回测的完整过程。

⚙️ 关键配置说明

  • 日志级别:在 Jupyter 环境中运行时,建议将日志级别设置为 ERROR,因为 Nautilus 的详细日志输出可能会超过 Jupyter 的标准输出限制,导致笔记本卡顿。
  • 节点(Node)限制:在一个进程中不支持同时运行多个 BacktestNodeTradingNode 实例。如果需要运行多个回测,应顺序执行并在每次运行后妥善清理资源。

🔗 下一步

  • 学习与探索:官方文档提供了从低层 APIBacktestEngine)到高层 APIBacktestNode)的完整教程。建议先通过文档中的教程学习不同策略模式(如均值回归、订单簿 imbalance)。
  • 实盘交易:查阅“配置实盘交易节点”指南和集成文档,了解如何连接支持的交易所或券商。
  • 开发与贡献:开发者指南详细说明了如何为项目贡献代码或构建新的适配器。