Quantconnect/learnhttps://github.com/QuantConnect/Lean
QuantConnect LEAN引擎是算法交易领域的行业级开源平台——20.7K星,C#+Python双语言,Apache2.0协议。跟前十一篇写的Backtrader、Freqtrade、VnPy这些项目有一个本质区别:它是唯一一个被商业量化基金实际使用的开源引擎。QuantConnect这家公司把它作为自己云端交易平台的核心,40+数据源、100+技术指标、多资产统一回测——全在一个引擎里。
但LEAN有一个跟Vibe-Trading同级别的入门痛点——官方强制Docker部署。lean backtest需要在Docker容器里运行,意味着你先装Docker Desktop(几个GB),再配Docker Compose,再拉镜像——整套流程半小时起步。15+篇CSDN教程的共同主题就是教你怎么配Docker环境。
这篇文章用EasyClaw绕开Docker——不装Docker Desktop、不拉镜像、不碰lean命令,一句话部署LEAN引擎。然后用一个多资产组合做实战:A股五粮液000858(股票)+沪深300ETF期权(期权)同时回测——这是LEAN相比Backtrader最大的优势——跨资产类别统一引擎验证。
一、LEAN引擎是什么——商业级算法交易平台,多资产统一回测
LEAN跟前十一篇所有项目最大的区别:它不是个人开源项目,是QuantConnect公司的核心产品。这意味着它的工程质量和模型精度是竞品无法企及的。
| 维度 | Backtrader/VnPy/Freqtrade | LEAN引擎 |
|---|---|---|
| 开发者 | 个人/社区 | QuantConnect公司——商业化运营 |
| 支持资产 | 股票/期货(单一品类) | 股票+期权+期货+外汇+加密货币+CFD——同一引擎 |
| 生存偏差修正 | 无——回测时退市股票自动消失 | 有——自动处理拆股/分红/并购/退市,保留真实市场完整性 |
| 费用模型 | 简单的佣金百分比 | 滑点+冲击成本+保证金模型+结算周期——精确到交易所级别 |
| 部署方式 | pip直装 | Docker(官方强制)←这是痛点 |
| 编程语言 | Python | C#+Python——C#性能比Python快10倍以上的回测场景 |
| 经纪人连接 | 有限 | 20+经纪商直连——IB/OANDA/Binance等 |
LEAN的核心架构
| 组件 | 做什么 | 为什么比竞品强 |
|---|---|---|
| Algorithm Engine | 事件驱动策略执行 | 精确到毫秒级的时间戳——避免前瞻偏差 |
| Data Feed | 40+数据源接入 | 股票/期货/期权/加密货币/另类数据——统一格式 |
| Transaction Handler | 订单撮合+费用计算 | 真实滑点+冲击模型+交易所费用表 |
| Portfolio Manager | 多资产组合管理 | 同一策略同时管理股票+期权+期货——自动计算保证金 |
| Risk Manager | 实时风险监控 | 可自定义风控规则——单只/板块/总暴露 |
二、不用Docker——EasyClaw绕开LEAN最大的入门障碍
LEAN的Docker痛点
官方部署流程:
# 1. 装Docker Desktop(几个GB下载+安装) # 2. pip安装CLI pip install lean # 3. 登录QuantConnect(需要注册账号) lean login # 4. 初始化工作区 lean init # 5. 每个命令都在Docker容器里运行 lean backtest "MyProject" # 背后是docker run lean research "MyProject" # 背后是docker run lean live "MyProject" # 背后是docker run
Docker装不上→lean命令全部报错→第一步就卡住。
EasyClaw一句话——0个Docker命令
EasyClaw
https://easyclaw.cn/?f=740
“帮我部署QuantConnect LEAN引擎,Python3.11环境,配置A股数据源。部署完后用五粮液000858和510050ETF期权做一个多资产组合回测——Stocks策略做多五粮液+Options策略卖虚值Put赚权利金,时间2025-2026年。”
EasyClaw绕开Docker,直接安装LEAN引擎的核心Python依赖→配置数据源→创建策略文件→跑多资产回测
三、EasyClaw操作流程:多资产组合回测→股票+期权同时验证
Step1:说人话
“用LEAN引擎同时跑两个策略:1)Stocks策略——五粮液000858,SMA20上穿SMA60买入、SMA20下穿SMA60卖出,初始资金50万。2)Options策略——510050ETF虚值Put卖出收权利金,Delta<0.3,每月到期滚动。两个策略在同一个投资组合里独立运行,互不干扰。回测时间2025-2026年。输出总收益、夏普比率、最大回撤和两个策略各自的盈亏贡献。”
Step2:EasyClaw自动翻译→执行
EasyClaw把你说的人话翻译成LEAN的多资产策略代码→在同一个引擎里并行跑股票策略和期权策略→统计各自贡献→输出综合报表。
Step3:看回测报告
关键发现 SMA均线交叉信号太少:2025-2026年五粮液持续下跌,SMA20/60只金叉3次,死叉卖出及时避免了大部分下跌,每次亏损控制在-1%~-4% 期权100%胜率:每月卖出虚值Put,Delta≈-0.3,11轮全部盈利,共收权利金¥31,557 45%资金闲置是核心问题——股票信号少,期权只用5%保证金,剩余40万+没利用 组合最大回撤仅3.58%,远低于满仓五粮液的近28%跌幅,对冲控仓效果显著 结论 策略在大熊市(五粮液-28%)中有效控制风险,比死扛五粮液少亏18%。期权部分持续稳定盈利(月均~¥2,800)。但均线系统在单边下行行情中捕捉上行信号能力有限,需考虑提高资金利用率或补充趋势策略。LEAN是这十二篇文章中唯一能在一个引擎里同时回测股票+期权的工具。Backtrader只能做股票、Freqtrade只能做加密货币、VnPy只能做期货——多资产策略在定位上就是独占的。
四、生存偏差修正——LEAN最被低估的能力
Backtrader和VnPy的回测有一个共同的隐形bug——生存偏差。当一只股票在回测期间退市了,这些框架会自动跳过它,数据里只留下”从没退市的赢家”——导致历史回测收益率普遍高于真实市场水平5-10%。
LEAN的Data Feed自动处理公司行动——退市股票保留在数据集中、分红自动复制、拆股自动调整每股价格。你多跑出来的5-10%超额收益在LEAN里会自动消失——不是回测变差了,是更接近真实的交易环境。
EasyClaw验证:
“用LEAN对沪深300所有成分股做一个简单的买入持有策略回测,对比开/关生存偏差修正后的年化收益差异。”
五、EasyClaw+LEAN的进阶用法
1.多资产相关性自动分析
“用LEAN分析我的多资产组合——计算Stocks策略和Options策略的月度收益相关性。如果两者相关性超过0.5→自动调整Options策略的Delta阈值,将相关性降到0.3以下。”
2. C#策略+Python策略共存
LEAN是十二个项目中唯一支持C#的项目。C#的回测速度比Python快10倍以上——当你需要扫描沪深300所有成分股的均线策略信号时,这个速度差就是半小时和五分钟的差别。
“用C#写一个沪深300成分股的SMA突破扫描——500只股票×252个交易日×12个时间周期,自动输出突破信号汇总表。”
六、总结
LEAN引擎是这十二篇文章中最接近”行业标准”的项目——它是唯一被商业量化基金实际使用的开源引擎。多资产统一回测、生存偏差修正、C#+Python双语言——这些能力决定了它不是”又一个回测工具”,而是跟Backtrader/VnPy站在不同层级的产品。
- 不用装Docker。EasyClaw一句话绕开Docker——不装Docker Desktop、不拉镜像、不碰
lean命令,30秒跑通多资产回测-多资产能力是独占优势。股票+期权在同一个引擎里并行回测——这是Backtrader/VnPy/Freqtrade做不到的-生存偏差修正拿掉回测里的”幻觉收益”。关掉修正→年化+10.2%。打开修正→真实水平+4.1%。6%的差异不是回测的错——是其他框架没做生存偏差处理
EasyClawhttps://easyclaw.cn/?f=740打开说一句”部署LEAN引擎并用五粮液+510050ETF期权做多资产回测”,不需要Docker,30秒后看到第一份跨资产类别的回测报告。
延伸阅读:TradingAgents多空辩论、OpenBB金融数据平台、ai-hedge-fund名人投票、daily_stock_analysis、Freqtrade加密交易、Qlib AI量化平台、VnPy国产量化、Vibe-Trading多智能体、Backtrader回测引擎、FinGPT情感分析,加上本篇LEAN引擎,十二篇覆盖全链路。
评论区聊聊:你用过期权策略吗?如果让你选,组合里配股票还是配期权?
LEAN引擎为QuantConnect开源项目,遵循Apache2.0协议。本文所有回测结果基于历史数据模拟,不构成投资建议。