组合收益、alpha 与审核绝对收益使用同一资金口径。
- `ts`:当日有效品种净收益的均值;缺席品种不进入当日分母。
- `cs`:当日有效品种净收益求和;缺席品种不贡献收益。
- `stats`、`daily_return.total`、`alpha['策略']` 共用此组合日收益口径。
- `yearly_return` 的 `total` 行、审核 `yearly_metrics.abs_return`、`BacktestResult.yearly_returns.abs_returns` 按自然年对组合日收益单利求和;`recent_abs_return` 对近期窗口单利求和。展示 stats 保持原有四位小数约定,审核保留原始精度。
- `alpha['基准']` 在 ts/cs 下均为当日有效品种价格收益的等权均值;它是独立的等权市场参考,不随 cs 品种数增加杠杆。`alpha['超额'] = 策略 - 基准`,结果中的原始超额曲线与之相同。
- 审核 `alpha_return` 是波动率归一后的**多头超额**,与 `alpha` 表的原始组合超额含义不同;本次不改变归一化或退化约定。
可手算的跨年、可变品种样例(手续费 0):A 全程权重 0.5;B 权重 0.5,仅在首个收益日有效。A 的价格依次为 100、90、99、108.9、98.01、107.811、118.5921;B 仅有 100、80 两个价格。首个价格日期为 2023-12-28,持仓收益计入后一个价格所在日。
| 2023-12-29 | -5% | -10% | 2 | -7.5% | -15% | -15% |
| 2023-12-30 | 5% | 缺席 | 1 | 5% | 5% | 10% |
| 2023-12-31 | 5% | 缺席 | 1 | 5% | 5% | 10% |
| 2024-01-01 | -5% | 缺席 | 1 | -5% | -5% | -10% |
| 2024-01-02 | 5% | 缺席 | 1 | 5% | 5% | 10% |
| 2024-01-03 | 5% | 缺席 | 1 | 5% | 5% | 10% |
2023 年 ts 收益为 **2.5%**,cs 为 **-5%**;2024 年两者均为 **5%**。因此全样本 ts 收益为 **7.5%**,cs 为 **0%**。修复前 cs 审核错误地使用品种均值,把 2023 年亏损报告成 2.5% 盈利;alpha 策略列首日也错误地显示 -7.5%。
回归同时覆盖两品种全程有效、B 为空头的情形,验证 Python 多种输入路径以及 Rust 公共 API;测试以独立收益期望校验组合、基准、原始超额、年度和近期绝对收益。