PLUTUS:交易策略可复现性的新标准
可复现性问题
量化交易存在一个根本性问题:当有人发布一个”盈利策略”时,复现其结果几乎是不可能的。原因在于:
- 未指定的参数——作者忘记提及关键设置
- 不同的数据——数据源给出的价格略有不同
- 隐含假设——佣金、滑点、执行时间
- 平台差异——同一算法在不同回测引擎上产生不同结果
PLUTUS框架正是为解决这一问题而生。
什么是PLUTUS
PLUTUS是一个开源框架,用于标准化交易策略的描述、测试和发布。
由一个国际研究团队开发,以MIT许可证发布在GitHub上。
架构
PLUTUS定义了四个标准化组件:
1. 策略规范(Strategy Specification)
以YAML/JSON格式对策略进行形式化描述:
strategy:
name: "Mean Reversion RSI"
version: "1.0"
author: "researcher@university.edu"
signals:
entry_long:
condition: "RSI(14) < 30 AND SMA(50) > SMA(200)"
exit_long:
condition: "RSI(14) > 70 OR stop_loss(-2%)"
parameters:
rsi_period: 14
sma_fast: 50
sma_slow: 200
stop_loss_pct: -2.0
universe:
type: "equity"
market: "US"
filter: "S&P 500 constituents"
execution:
order_type: "market"
slippage_model: "fixed_bps(5)"
commission_model: "per_share(0.005)"
2. 数据规范(Data Specification)
标准化的数据描述:
- 数据源(Yahoo Finance、Polygon、MOEX)
- 时间段(起始、结束)
- 频率(1分钟、1小时、1天)
- 处理方式(复权/未复权、填充方法)
- 数据哈希值用于验证
3. 回测引擎(Backtest Engine)
标准化的回测引擎,具备:
- 明确的订单处理逻辑
- 固定的K线内计算顺序
- 透明的滑点模型
- 50+指标的报告
4. 报告格式(Report Format)
统一的报告格式,包括:
- 权益曲线
- 所有指标(Sharpe、Sortino、Max DD、Calmar等)
- 交易分布
- 时间段分析
- Walk-forward结果
为什么这很重要
对研究人员
以PLUTUS格式发布策略,使其他研究人员能够精确复现结果。这正是科学界在实验中早已具备、但量化交易一直缺失的东西。
对实践者
标准化格式简化了:
- 策略比较——所有指标计算方式一致
- 审计——每个参数都可以验证
- 可移植性——在不同平台之间转移策略
对AI智能体
PLUTUS对生成交易策略的LLM智能体尤为有用。标准化格式可以:
- 自动验证策略规范
- 无需手动设置即可运行回测
- 将结果与基准进行比较
当前状态
- 版本:0.8(测试版)
- 语言:Python(主要语言),C#和Java适配器
- 支持市场:美国、欧洲、中国、加密货币
- 集成:Backtrader、Zipline、VectorBT、QuantConnect
PLUTUS是让量化交易变得更加透明和科学的一步。如果你正在开发交易策略,值得关注。
讨论
加入我们的讨论 Telegram 群组!