
你写代码的能力决定了平台的上限
选开源量化平台跟选鞋一样,合脚最重要。市面上主流的开源平台有Backtrader、vn.py、Zipline、QuantConnect的LEAN引擎、Freqtrade等。很多人一上来就比功能列表,看谁支持的指标多、谁的回测速度快,这属于本末倒置。第一件事是看清楚自己写代码的底子。
如果你只会用Excel做股票,Python基础薄弱,vn.py这类需要自己搭环境、写策略类、处理事件循环的平台会让你痛不欲生。Backtrader文档全、社区大,策略写法接近自然语言,对新手友好。但你得接受它单线程回测速度偏慢的事实,跑十年分钟级数据可能要等一壶茶凉。

如果你有C++或Java背景,LEAN引擎的架构更严谨,撮合逻辑贴近真实市场,支持多资产组合。代价是学习曲线陡峭,光配置数据源和品种映射就能耗掉一周。
一个硬标准:打开平台官网,看它的快速入门能不能在30分钟内跑通第一个回测。跑不通的直接放弃,说明文档维护跟不上,后面的坑只会更多。
回测引擎的撮合逻辑是照妖镜
很多平台回测收益曲线漂亮得不像话,一上实盘就原形毕露。根子出在撮合逻辑上。
开源平台里,Backtrader默认按收盘价成交,且不考虑滑点,这等于给你一个完美执行的幻觉。vn.py的撮合模块更贴近期货市场的逐笔撮合,但需要自己配置合约乘数、保证金率和手续费。Freqtrade针对加密货币设计,默认吃单逻辑简单,搬到股票T+1制度下直接失效。
股票交易者要盯住两个细节:一是回测是否处理了涨跌停板无法成交的情况,二是分红除权是否自动调整价格序列。期货交易者要检查平台是否支持保证金动态计算和强平逻辑。拿一个简单的测试策略跑一遍:在涨停板价格挂买单,看回测引擎是否错误地成交了。这个测试能筛掉一半不靠谱的平台。
撮合逻辑透明的平台会公开它的成交假设文档。找不到这份文档的平台,回测结果只能当参考,不能当决策依据。
实盘接口的稳定性比功能数量重要十倍
量化交易最终要落到下单上。开源平台的实盘接口分两类:一类直连券商柜台,一类通过第三方网关中转。
直连券商的接口延迟低、稳定性好,但通常需要券商开放API权限,个人投资者拿到的门槛不低。期货领域的CTP接口是行业标准,vn.py对CTP的支持最成熟,国内期货公司基本都兼容。股票方面,华泰、中泰等券商有开放的量化接口,但多多少少有些限制。
第三方网关像IB盈透的TWS接口,Backtrader和LEAN都能对接。好处是覆盖全球市场,坏处是TWS客户端偶尔掉线,需要额外写守护进程。
检验实盘接口是否靠谱,看两点:断线重连机制是否自动恢复订单状态,以及成交回报的推送延迟能否控制在毫秒级。很多平台在文档里吹嘘支持几十家券商,实际测试下来只有两三家能稳定跑。去GitHub的issue区翻最近三个月的帖子,如果满屏都是连接超时、订单重复提交的抱怨,绕道走。
数据精度和复权处理是隐形陷阱
开源平台本身不带数据,需要自己接数据源。股票数据要关注复权方式:前复权适合回测,后复权适合实盘持仓分析。不同平台对除权除息的处理逻辑不一样,Backtrader需要手动加载复权因子,vn.py的数据库模块默认存原始价格,回测时得自己写复权逻辑。
期货数据更麻烦。主力连续合约的拼接方式直接影响回测结果。用价格直接拼接会在换月时产生跳空缺口,用收益率拼接则丢失了绝对价格信息。开源平台里,QuantConnect的LEAN引擎对期货连续合约的处理相对完善,但需要付费数据源配合。
一个实用的检验方法:拿一只分红频繁的股票,比如银行股,用平台回测一个简单的买入持有策略。把回测的最终净值和实际持有收益对比,差异超过2%说明复权处理有问题。
社区活跃度决定你半夜出问题有没有人救
开源项目最怕作者弃坑。选平台前看三个指标:GitHub最近一次提交时间、issue平均响应时长、以及是否有活跃的论坛或聊天群。
Backtrader的作者已经多年不更新主分支,社区虽然庞大但新问题没人管,遇到Python新版本的兼容性问题只能自己改源码。vn.py的国内社区活跃,CTP接口的问题基本当天有人回答,但英文文档薄弱,非中文用户上手困难。LEAN引擎由QuantConnect公司商业化维护,更新频率高,代价是部分高级功能绑定他们的云平台。
一个小技巧:在GitHub搜索该平台的仓库,看最近30天有多少个pull request被合并。个位数说明项目处于维护模式,只修bug不加新功能。两位数以上说明还在迭代,值得投入时间。
结合自身交易频率和资产类别做最终取舍
做股票中低频交易,Backtrader加本地数据文件够用,简单直接。做期货日内交易,vn.py的CTP接口和事件驱动引擎是首选,社区里现成的策略模板多。做美股或加密货币,LEAN引擎的跨资产支持和云回测环境省事。
别贪心。一个平台能把你最常交易的品种和频率跑顺,就是好平台。同时支持股票、期货、期权、外汇的全能平台不存在,硬凑只会增加维护成本。先用最小资金跑通一个月的实盘,验证从信号到成交的整条链路,再考虑加策略加品种。开源量化交易的门槛不在平台本身,在于你愿不愿意花时间读懂它的源码逻辑。
