2. 环境搭建与安装

在开始研究回测之前,先把 LEAN CLI 的运行环境搭好,是整门课程里最容易被低估、却最容易卡住新手的一步。LEAN CLI 是 QuantConnect 官方提供的命令行工具,它把「创建项目、拉取数据、本地回测、云端回测、实盘部署」串成一条流水线。理解它的安装逻辑,本质上是在理解「CLI 外壳 + LEAN 引擎 + 数据 + 运行时」四层依赖如何协同工作。

一、核心原理:LEAN CLI 到底装了什么

很多人以为安装 LEAN CLI 就是装一个 Python 包,其实它只是入口。真正的计算发生在 LEAN 引擎里,而引擎需要 .NET 运行时、数据目录和可选的 Docker 容器。CLI 通过 lean 命令把用户意图翻译成对引擎的调用。

因此安装是否成功,取决于三个条件同时满足:CLI 本身可执行、引擎能启动、数据路径可访问。任何一层缺失,都会表现为「命令能跑但回测报错」。

LEAN CLI 运行环境四层依赖 CLI 外壳 lean 命令 / Python LEAN 引擎 .NET 运行时 数据目录 Data / 本地或云端 运行时 Docker 或本地 安装成功 = CLI 可执行 + 引擎可启动 + 数据路径可访问 + 运行时可用 任一层缺失 → 命令能跑但回测报错 常见断点 .NET 缺失 / Docker 未启动 数据路径 LEAN_DATA_FOLDER 未设置 验证方式 lean --version / lean backtest

二、方法流程:安装与配置的标准步骤

推荐按以下顺序操作,避免依赖错位。第一步安装 CLI,第二步验证引擎,第三步配置数据,第四步选择运行时。

# 1. 安装 LEAN CLI(Python 3.8+)
pip install lean

# 2. 验证 CLI 与引擎
lean --version
lean backtest --help

# 3. 初始化工作目录
lean init

# 4. 配置数据目录(本地环境)
export LEAN_DATA_FOLDER=/data/lean-data

# 5. 运行一次最小回测验证环境
lean backtest "MyProject"

其中 lean init 会生成项目骨架和配置文件,lean backtest 是最终的环境验收命令。如果它能跑通一个简单策略,说明四层依赖已经打通。

三、Docker 与本地环境的选择

这是新手最常纠结的问题。两者不是替代关系,而是适用场景不同。下表给出对比清单,便于按需选择。

对比维度 Docker 环境 本地环境
依赖隔离 强,容器内自带 .NET 与引擎 弱,需自行安装运行时
安装速度 首次拉镜像较慢 较快,但依赖配置繁琐
数据挂载 需映射卷,路径易出错 直接使用本地路径
调试体验 日志在容器内,需 exec 查看 日志直接输出,调试方便
适用场景 团队统一环境、实盘部署 个人研究、快速迭代
建议:研究阶段用本地环境快速迭代,实盘或团队协作时切换到 Docker,保证环境一致性。

四、常见安装问题排查

下面列出高频故障与对应判断路径,遇到报错时按顺序排查,通常能定位到具体层。

  • lean 命令找不到:检查 Python Scripts 目录是否加入 PATH,或使用 python -m lean 替代。
  • 引擎启动失败:多为 .NET 运行时缺失,安装对应版本后重试。
  • Docker 相关报错:确认 Docker Desktop 已启动,且当前用户有权限访问 Docker 守护进程。
  • 数据读取失败:检查 LEAN_DATA_FOLDER 是否指向正确目录,路径中避免中文与空格。
  • 回测无输出:查看日志文件,确认策略入口类名与文件名一致。
常见误区:把「pip install lean 成功」等同于「环境搭建完成」。实际上 CLI 只是外壳,引擎与数据未配置时,回测依然会失败。务必用一次最小回测做最终验收。

复盘来看,环境搭建的关键不是记住命令,而是建立「四层依赖」的排查思维:CLI 是否可执行、引擎是否可启动、数据是否可访问、运行时是否可用。把这四层逐一验证,后续的研究回测与实盘部署才能稳定推进。