LEAN
支持多资产研究、回测和实盘的模块化交易引擎,核心使用 C#,策略可使用 Python。
为什么值得学
适合理解大规模系统怎样把算法、数据、组合目标、交易处理和券商接口分离。
数据与控制流程
- 1市场数据
- 2算法 / Alpha
- 3组合目标
- 4订单与交易处理
- 5券商适配
- 6账户与结果
此流程为教学归纳,便于建立整体认识;完整条件分支与运行细节请对照下方源码。
架构拆解 · 5 个核心模块
每个入口均已核对,点击可阅读源码算法基类
QCAlgorithm 提供策略生命周期、数据订阅和交易相关入口。
- 输入
- 配置与市场数据事件
- 输出
- 算法状态与策略行为
Algorithm/QCAlgorithm.cs引擎装配
Engine 连接作业、数据、算法、结果等处理组件并管理运行过程。
- 输入
- 任务配置与处理器
- 输出
- 运行中的回测或交易任务
Engine/Engine.cs组合构建模型
等权模型把有效的 Alpha Insights 转成目标权重,是可替换组合模型的例子。
- 输入
- 有效预测与方向
- 输出
- 组合目标
Algorithm.Framework/Portfolio/EqualWeightingPortfolioConstructionModel.cs回测交易处理
BacktestingTransactionHandler 在回测模式协调订单处理和成交事件。
- 输入
- 订单请求及模拟券商事件
- 输出
- 订单状态和成交回报
Engine/TransactionHandlers/BacktestingTransactionHandler.cs券商抽象
Brokerage 定义连接与订单操作等契约,供具体券商实现。
- 输入
- 交易请求
- 输出
- 券商响应及事件
Brokerages/Brokerage.cs建议阅读顺序
- 先看一个最小 QCAlgorithm 策略
- 追踪等权组合模型怎样产生目标
- 对照回测交易处理器与 Brokerage 的职责
- 最后读 Engine 的组件装配
动手做一次
用同一预测逻辑比较等权与限制单一资产权重的组合构建方式。
完成后,检查这些证据
- 给出预测、目标权重与最终订单的对应表
- 核对买卖成本和基准
- 解释本地引擎、CLI、数据服务和云服务各自的边界
适用边界与版本说明
核心开源不代表所有数据、CLI 功能和云服务都免费;回测与实盘可以共享策略逻辑,但成交与数据条件存在差异。
Star 快照:22,110 · 核验日期:2026-10-20 · GitHub 归档标记:未归档
核验默认分支:master · 源码固定提交:de116c0de654 ↗
来源:GitHub 仓库与 Star 页面、README及上述源文件。分层、阅读顺序与练习为本站归纳;未逐一安装运行这些框架,源码提交不等于推荐安装版本。