📑 本文目录
西部证券RRG ETF轮动策略复现:扩散指标+相对旋转图的行业轮动实践
研报信息
| 项目 | 内容 |
|---|---|
| 标题 | 指数化配置系列研究(6):相对旋转图RRG框架下的行业和ETF轮动策略 |
| 机构 | 西部证券 |
| 分析师 | 西部金工团队 |
| 报告日期 | 2026-05-20 |
| 类型 | 金工量化策略 |
策略原理
核心逻辑
本策略的核心是**扩散指标 + RRG(相对旋转图)**双层筛选框架:
- 扩散指标:衡量行业趋势强度。计算过去220天内上涨天数占比,然后用MA20平滑。扩散指标越高,说明行业趋势越强。
- RRG筛选:相对旋转图将行业分为四个象限——领先(一)、走强(二)、滞后(三)、疲软(四)。剔除处于三、四象限(滞后/疲软)的行业。
原文关键参数:
- 回看220天、MA20平滑为较优参数
- 每月末筛选扩散指标最高的6个行业
- 剔除RRG三、四象限行业
- 回测区间:2018.12.28 ~ 2026.03.31
- 原文年化收益:20.60%,相对行业等权超额9.49%,相对沪深300超额13.91%
创新点
RRG(Relative Rotation Graph)由Julius de Kempenaer提出,通过两个维度描述行业的相对强弱:
- X轴(RS-Ratio):行业相对基准的比率
- Y轴(RS-Momentum):RS-Ratio的动量变化
RRG的核心价值在于趋势持续性判断——处于一、二象限的行业未来一个月平均表现更优,这为行业轮动提供了额外的过滤维度。
数据准备说明
数据替代标注
| 原文指标 | 复现替代 | 影响 |
|---|---|---|
| 中信一级行业指数(2018-2026) | 行业日线数据(中文行业名称,2024.05-2026.04) | 高影响——数据覆盖仅2年,原文8年,年化不可直接对比 |
| RRG完整计算(RS-Ratio + RS-Momentum三维) | 简化版:过去60天相对沪深300超额收益为正 | 中影响——RRG动量维度的简化可能遗漏趋势拐点 |
| ETF映射(行业暴露打分) | 直接使用行业指数等权持有 | 中影响——跳过ETF映射环节,实际ETF交易有跟踪误差 |
| 等权配置Top行业 | 等权配置通过RRG筛选的行业 | 与原策略一致 |
数据来源
- 行业数据:DuckDB
industry_daily表(54个行业,2024-05-06 ~ 2026-04-30) - 基准指数:DuckDB
index_daily表(沪深300) - 数据约束:本地无2018年的行业数据,无法直接重现原文8年回测
回测设置
| 项目 | 设置 |
|---|---|
| 调仓频率 | 月频(每月最后一个交易日) |
| 选行业数 | 扩散指标Top 6,RRG筛选后最多6个 |
| 成交价格 | 调仓日close买入 -> 下月调仓日close卖出 |
| 交易成本 | 买入万5佣金+千1滑点,卖出千0.5印花税+万5佣金+千1滑点 |
| 权重 | 等权 |
| 数据范围 | 2024-05-06 ~ 2026-04-30 |
回测结果对比
| 指标 | 原文(2018.12-2026.03) | 复现(2025.05-2026.04) | 买入持有沪深300 |
|---|---|---|---|
| 总收益率 | — | 36.61%(12个月) | 25.18% |
| 年化收益率 | 20.60% | 40.48% | — |
| Sharpe | — | 1.53 | — |
| 最大回撤 | — | 12.18% | — |
| 月胜率 | — | 66.67% | — |
重要提示:复现仅覆盖12个月(2025.05-2026.04),原文覆盖8年。短样本下年化40%不可直接置信,仅说明该策略框架在近期市场环境下表现良好。
逐年收益
| 年份 | 策略收益 |
|---|---|
| 2025(5-12月) | +21.97% |
| 2026(1-4月) | +12.00% |
差异分析
| 差异来源 | 影响程度 | 说明 |
|---|---|---|
| 数据覆盖区间 | 高 | 原文8年 / 本地仅2年,年化差异主要由样本长度差异造成 |
| RRG简化 | 中 | 原文使用标准JdK RS-Ratio + RS-Momentum,本地简化为60天超额收益方向判断 |
| 行业范围 | 低 | 原文使用中信一级行业(约30个),本地使用54个中文名行业(含申万二级子行业) |
| 缺少ETF映射 | 中 | 原文最终映射到ETF实现,本地直接持有行业指数 |
复现年化高于原文的原因分析:
- 样本区间不同:2025-2026年A股经历了AI算力链、半导体等结构性行情,扩散指标+RRG框架恰好捕捉到了这一轮强势行业
- 短样本效应:12个月的年化计算天然不稳定,一个月的极端收益即可对年化产生巨大影响
- RRG简化方向:简化版可能比完整版更灵敏,但也更容易过拟合
如果未来数据扩展到8年,预期年化会收敛到15-25%区间。
Guardrails检查
| 检查项 | 状态 | 说明 |
|---|---|---|
| B1 幸存者偏差 | 通过 N/A | 行业指数不涉及退市股 |
| B2 交易日历 | 通过 | 月频调仓,使用实际数据中月末最近交易日 |
| B3 数据排除 | 通过 | 行业指数不含科创板/北交所问题 |
| B4 成交时序 | 简化 T月close到下一个月的close | 简化处理,但月频下影响小 |
| B5 交易成本 | 通过 | 万5佣金+千1滑点+千0.5印花税 |
| B6 退市处理 | 通过 N/A | 行业指数不涉及 |
| B7 年化计算 | 通过 | 资金曲线法 |
| B8 随机基线 | 未做 | 短样本下随机基线意义有限 |
| B9 参数鲁棒性 | 未做 | 建议对回看天数(180/220/250)做敏感性测试 |
| B10 逐年收益 | 通过 | 仅2年数据,两年均为正收益 |
| B11 OOS验证 | 未做 | 数据量不足(仅12个月可测月度),无法做训练/测试分割 |
结论与改进方向
结论
西部证券的RRG ETF轮动策略是一个逻辑自洽的行业轮动框架。扩散指标提供趋势方向,RRG提供趋势质量判断,两者互补。本地简化复现12个月收益36.61%(超额沪深300约11%),验证了该框架在近期A股市场中的有效性。
但必须指出:本地复现样本仅12个月,远短于原文的8年回测,结果不可直接对比。年化40.48%远超原文的20.60%,主要原因在样本区间不同和短样本放大效应,而非策略本身更好。
改进方向
- 扩展数据源:通过akshare获取更长的中信一级行业指数日线(2018年至今),真正还原原文8年回测
- 完整RRG实现:用周线数据计算标准JdK RS-Ratio(4周/12周相对强度)+ RS-Momentum
- ETF映射:建立ETF-行业暴露矩阵,将行业信号转化到实际可交易的ETF组合
- 参数优化验证:对回看天数、平滑窗口、选行业数量做系统性的参数敏感性测试
- 加入止损机制:原文未明确止损机制,实践中建议加入