详细记录10个指数的ETF筛选过程: - 每个指数的匹配规则、候选总数、Top4列表(含规模/成交额/费率) - 完整的组内相关性矩阵(基于单位净值日收益率) - 异常ETF排除记录(增强策略型、沪港通型) - 原油商品价格型vs股票型的排除分析(R²对比) - 最终候选池汇总
16 KiB
轮动策略 ETF 候选池筛选报告
文档版本: v1.0
创建日期: 2026-06-20
数据来源: rotation/results/etf_basic_full.csv(Tushare etf_basic + enrich_etf_data 增强)
一、筛选目标
为 config_simple.yaml 中每个指数/商品标的,从全市场 A 股场内 ETF 中筛选出跟踪同一底层资产、市值最大的 Top4 ETF 作为候选交易标的池。
二、筛选方法
2.1 数据源
- 基础数据: Tushare
etf_basic接口,共 1601 只场内基金(ETF + LOF) - 增强字段: 通过
enrich_etf_data.py补充基金规模(亿份×NAV)、日均成交额、最新净值等 - 净值数据: Tushare
fund_nav接口,取unit_nav(单位净值)计算收益率
2.2 匹配规则
由于 Tushare 的 index_code 字段包含交易所后缀(如 GDAXI.GY、HSI.HI),不可直接精确匹配。采用以下策略:
- 先反查: 用当前
trade_sourceETF 反查其在 CSV 中的真实index_code和index_name - 精确匹配: 对
index_code有值的 ETF,按index_code精确匹配 - 关键词匹配: 对
index_code为 NaN 的(如原油 LOF),按index_name关键词模糊匹配 - 人工校验: 排除增强策略型、沪港通型等底层资产不同的 ETF
2.3 排序规则
按 fund_scale_yi(基金规模,亿元)降序排列,取 Top4。不足 4 只则按实际数量。
2.4 异常排除
| 异常 ETF | 原因 | 替换为 |
|---|---|---|
| 159977.SZ 天弘创业板ETF | 增强策略型,与其他纯跟踪 ETF 相关性仅 0.83 | 159957.SZ 华夏创业板ETF |
| 513660.SH 华夏沪港通恒生ETF | 沪港通机制,净值计算方式不同,与其他恒生 ETF 相关性仅 0.27 | 513210.SH 易方达恒生ETF |
三、各指数筛选过程与原始数据
3.1 创业板指 (399006.SZ)
匹配规则: index_code = 399006.SZ
候选总数: 17 只
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 159915.SZ ★ | 易方达创业板ETF | 448.9 | 567,036 | 0.15% |
| 2 | 159952.SZ | 广发创业板ETF | 87.7 | 59,444 | 0.15% |
| 3 | 159957.SZ | 华夏创业板ETF | 21.5 | 20,636 | 0.15% |
| 4 | 159948.SZ | 南方创业板ETF | 47.6 | 11,196 | 0.15% |
注: 原始 Top3 为 159977.SZ(天弘创业板ETF),因增强策略型排除,替换为 159957.SZ
相关性矩阵 (1568 共同交易日):
| 159915 | 159952 | 159957 | 159948 | |
|---|---|---|---|---|
| 159915 | 1.0000 | 1.0000 | 0.9999 | 1.0000 |
| 159952 | 1.0000 | 1.0000 | 0.9999 | 1.0000 |
| 159957 | 0.9999 | 0.9999 | 1.0000 | 0.9999 |
| 159948 | 1.0000 | 1.0000 | 0.9999 | 1.0000 |
- 平均相关性: 0.9999
- 最低相关性: 0.9999(广发 vs 华夏)
3.2 红利低波 (H30269.CSI)
匹配规则: index_code = H30269.CSI
候选总数: 6 只
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 512890.SH ★ | 华泰柏瑞中证红利低波动ETF | 324.1 | 84,666 | 0.50% |
| 2 | 563020.SH | 易方达中证红利低波动ETF | 111.8 | 29,589 | 0.15% |
| 3 | 159547.SZ | 华夏中证红利低波动ETF | 14.0 | 14,909 | 0.15% |
| 4 | 560150.SH | 红利TK | 7.3 | 1,079 | 0.40% |
相关性矩阵 (539 共同交易日):
| 512890 | 563020 | 159547 | 560150 | |
|---|---|---|---|---|
| 512890 | 1.0000 | 0.9893 | 0.9965 | 0.9932 |
| 563020 | 0.9893 | 1.0000 | 0.9863 | 0.9838 |
| 159547 | 0.9965 | 0.9863 | 1.0000 | 0.9908 |
| 560150 | 0.9932 | 0.9838 | 0.9908 | 1.0000 |
- 平均相关性: 0.9900
- 最低相关性: 0.9838(易方达 vs 红利TK)
3.3 黄金 (Au99.99.SGE / SHAU.SGE)
匹配规则: index_code IN (Au99.99.SGE, SHAU.SGE)
候选总数: 14 只(Au99.99 基准 7 只 + SHAU 基准 7 只)
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 | 基准 |
|---|---|---|---|---|---|---|
| 1 | 518880.SH ★ | 华安黄金ETF | 965.5 | 322,467 | 0.50% | Au99.99 |
| 2 | 159937.SZ | 博时黄金ETF | 433.6 | 74,446 | 0.50% | Au99.99 |
| 3 | 159934.SZ | 易方达黄金ETF | 367.9 | 89,130 | 0.50% | Au99.99 |
| 4 | 518800.SH | 国泰黄金ETF | 353.6 | 55,747 | 0.50% | Au99.99 |
相关性矩阵 (1568 共同交易日):
| 518880 | 159937 | 159934 | 518800 | |
|---|---|---|---|---|
| 518880 | 1.0000 | 0.9999 | 0.9920 | 0.9899 |
| 159937 | 0.9999 | 1.0000 | 0.9920 | 0.9899 |
| 159934 | 0.9920 | 0.9920 | 1.0000 | 0.9821 |
| 518800 | 0.9899 | 0.9899 | 0.9821 | 1.0000 |
- 平均相关性: 0.9910
- 最低相关性: 0.9821(易方达 vs 国泰)
3.4 德国DAX (GDAXI.GY)
匹配规则: index_code = GDAXI.GY
候选总数: 2 只(全市场仅此 2 只跟踪 DAX)
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 159561.SZ | 嘉实德国DAXETF(QDII) | 20.9 | 12,446 | 0.50% |
| 2 | 513030.SH ★ | 华安德国(DAX)ETF | 18.3 | 8,875 | 0.80% |
相关性矩阵 (522 共同交易日):
| 159561 | 513030 | |
|---|---|---|
| 159561 | 1.0000 | 0.9947 |
| 513030 | 0.9947 | 1.0000 |
- 平均相关性: 0.9947
3.5 有色金属 (IMCI.SHF)
匹配规则: index_code = IMCI.SHF
候选总数: 1 只(全市场仅此 1 只跟踪有色金属期货价格指数)
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 159980.SZ ★ | 大成有色金属期货ETF | 61.0 | 46,989 | 0.60% |
注: 其余有色金属 ETF 跟踪的是股票指数(如中证有色金属矿业/工业主题),底层资产不同,不纳入候选。
3.6 恒生指数 (HSI.HI)
匹配规则: index_code = HSI.HI
候选总数: 5 只
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 159920.SZ ★ | 华夏恒生ETF | 93.3 | 33,200 | 0.60% |
| 2 | 513600.SH | 南方恒生指数ETF | 17.1 | 10,292 | 0.50% |
| 3 | 159271.SZ | 鹏华恒生ETF | 2.3 | 520 | 0.50% |
| 4 | 513210.SH | 易方达恒生ETF(QDII) | 0.6 | 732 | 0.50% |
注: 原始 Top2 为 513660.SH(华夏沪港通恒生ETF),因沪港通机制排除,替换为 513210.SH
相关性矩阵 (209 共同交易日):
| 159920 | 513600 | 159271 | 513210 | |
|---|---|---|---|---|
| 159920 | 1.0000 | 0.9988 | 0.9941 | 1.0000 |
| 513600 | 0.9988 | 1.0000 | 0.9952 | 0.9989 |
| 159271 | 0.9941 | 0.9952 | 1.0000 | 0.9942 |
| 513210 | 1.0000 | 0.9989 | 0.9942 | 1.0000 |
- 平均相关性: 0.9969
- 最低相关性: 0.9941(华夏 vs 鹏华)
3.7 恒生科技 (HSTECH.HI)
匹配规则: index_code = HSTECH.HI
候选总数: 13 只
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 513180.SH | 华夏恒生科技ETF(QDII) | 444.0 | 341,088 | 0.50% |
| 2 | 513130.SH ★ | 华泰柏瑞恒生科技ETF(QDII) | 392.9 | 384,592 | 0.20% |
| 3 | 513010.SH | 易方达恒生科技ETF(QDII) | 282.9 | 128,761 | 0.20% |
| 4 | 159740.SZ | 大成恒生科技ETF(QDII) | 171.9 | 134,470 | 0.50% |
相关性矩阵 (1231 共同交易日):
| 513180 | 513130 | 513010 | 159740 | |
|---|---|---|---|---|
| 513180 | 1.0000 | 0.9953 | 0.9999 | 0.9998 |
| 513130 | 0.9953 | 1.0000 | 0.9953 | 0.9953 |
| 513010 | 0.9999 | 0.9953 | 1.0000 | 0.9998 |
| 159740 | 0.9998 | 0.9953 | 0.9998 | 1.0000 |
- 平均相关性: 0.9976
- 最低相关性: 0.9953(华泰柏瑞 vs 易方达/大成)
3.8 日经225 (N225.JT)
匹配规则: index_code = N225.JT
候选总数: 4 只
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 513880.SH | 华安日经225ETF | 27.9 | 47,208 | 0.20% |
| 2 | 513520.SH ★ | 华夏野村日经225ETF | 24.7 | 55,341 | 0.20% |
| 3 | 513000.SH | 易方达奥明日经225ETF(QDII) | 23.1 | 29,234 | 0.20% |
| 4 | 159866.SZ | 日经ETF工银 | 13.5 | 33,442 | 0.20% |
相关性矩阵 (1268 共同交易日):
| 513880 | 513520 | 513000 | 159866 | |
|---|---|---|---|---|
| 513880 | 1.0000 | 0.9336 | 0.9850 | 0.9915 |
| 513520 | 0.9336 | 1.0000 | 0.9442 | 0.9384 |
| 513000 | 0.9850 | 0.9442 | 1.0000 | 0.9873 |
| 159866 | 0.9915 | 0.9384 | 0.9873 | 1.0000 |
- 平均相关性: 0.9634
- 最低相关性: 0.9336(华安 vs 华夏)
- 说明: 华安日经225使用野村指数版本,华夏使用野村另一版本,两者在净值披露时点上略有差异
3.9 纳指100 (NDX.NASDAQ)
匹配规则: index_code = NDX.NASDAQ
候选总数: 12 只
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 |
|---|---|---|---|---|---|
| 1 | 159941.SZ | 广发纳指100ETF | 339.8 | 251,747 | 0.80% |
| 2 | 513100.SH ★ | 国泰纳斯达克100(QDII-ETF) | 190.9 | 116,472 | 0.60% |
| 3 | 513300.SH | 华夏纳斯达克100ETF(QDII) | 129.6 | 88,050 | 0.60% |
| 4 | 159501.SZ | 嘉实纳斯达克100ETF(QDII) | 120.1 | 25,504 | 0.50% |
相关性矩阵 (736 共同交易日):
| 159941 | 513100 | 513300 | 159501 | |
|---|---|---|---|---|
| 159941 | 1.0000 | 0.9996 | 0.9891 | 0.9976 |
| 513100 | 0.9996 | 1.0000 | 0.9889 | 0.9975 |
| 513300 | 0.9891 | 0.9889 | 1.0000 | 0.9870 |
| 159501 | 0.9976 | 0.9975 | 0.9870 | 1.0000 |
- 平均相关性: 0.9933
- 最低相关性: 0.9870(华夏 vs 嘉实)
3.10 原油 (CL=F → WTI 原油价格)
匹配规则: index_name 包含 WTI原油价格 / BRENT原油 / 标普高盛原油商品 / 原油价格收益率
候选总数: 3 只(全市场仅 3 只跟踪原油商品价格的 LOF)
Top4 选取:
| 排名 | 代码 | 名称 | 规模(亿) | 日均成交(万) | 费率 | 跟踪基准 |
|---|---|---|---|---|---|---|
| 1 | 160723.SZ ★ | 嘉实原油(QDII-LOF-FOF) | 14.8 | 70,634 | 1.00% | WTI×100% |
| 2 | 161129.SZ | 易方达原油(QDII-LOF-FOF) | 7.18 | 58,148 | 1.00% | 标普高盛原油×100% |
| 3 | 501018.SH | 南方原油(QDII-LOF-FOF) | 13.36 | 70,781 | 1.00% | WTI×60%+BRENT×40% |
注: 其余 17 只石油天然气 ETF 跟踪的是石油公司股票指数(非商品价格),不纳入候选。
相关性矩阵 (1567 共同交易日):
| 160723 | 161129 | 501018 | |
|---|---|---|---|
| 160723 | 1.0000 | 0.9572 | 0.9581 |
| 161129 | 0.9572 | 1.0000 | 0.9802 |
| 501018 | 0.9581 | 0.9802 | 1.0000 |
- 平均相关性: 0.9651
- 最低相关性: 0.9572(嘉实 vs 易方达)
- 三者的年化 TE(两两之间): 6.67%~9.64%,全区间累计收益差约 20%
石油天然气股票型 ETF 排除分析
全市场另有 17 只石油天然气相关 ETF/LOF,但它们跟踪的是石油天然气公司股票指数(非商品价格),与 WTI 原油价格的相关性远低于商品价格型 LOF。
以 160723.SZ(嘉实原油/WTI)净值为基准,与 17 只石油股票型 ETF 计算相关性:
| 排名 | 代码 | 名称 | 相关系数 | R² | 累计收益 |
|---|---|---|---|---|---|
| 1 | 160416.SZ | 华安标普全球石油LOF | 0.6321 | 0.400 | +89.5% |
| 2 | 162719.SZ | 广发道琼斯美国石油LOF | 0.5579 | 0.311 | +165.0% |
| 3 | 159518.SZ | 嘉实标普石油天然气QDII | 0.5550 | 0.308 | +5.1% |
| 4 | 513350.SH | 富国标普石油天然气QDII | 0.5527 | 0.306 | +10.3% |
| 5 | 162411.SZ | 华宝标普石油天然气上游LOF | 0.5430 | 0.295 | +99.7% |
| 6 | 159588.SZ | 景顺石油天然气ETF | 0.3971 | 0.158 | +21.4% |
| 7-13 | 其余 7 只 | 国证石油天然气系列ETF | 0.20~0.38 | 0.04~0.14 | -14%~+29% |
对照:商品价格型 LOF
| 代码 | 名称 | 相关系数 | R² | 累计收益 |
|---|---|---|---|---|
| 161129.SZ | 易方达原油 | 0.9572 | 0.916 | +28.3% |
| 501018.SH | 南方原油 | 0.9581 | 0.918 | +35.1% |
排除决策依据:
- 相关性断崖式下降:商品价格型 R²=0.92,股票型最高仅 R²=0.40,差距 2.3 倍
- 累计收益严重偏离:WTI 累计 +48%,石油股票型从 -14% 到 +165% 不等,完全不可互换
- 底层资产本质不同:石油股票受公司基本面、分红、管理层等因素影响,与原油价格的联动远不如期货合约直接
结论:当前 3 只商品价格型 LOF(160723/161129/501018)已是原油方向的最优选择,无需补充石油股票型 ETF。
四、汇总
4.1 各指数组内相关性总览
| 指数 | ETF数 | 共同天数 | 平均相关 | 最低相关 | 最高相关 | 状态 |
|---|---|---|---|---|---|---|
| 创业板指 | 4 | 1568 | 0.9999 | 0.9999 | 1.0000 | ✓ |
| 红利低波 | 4 | 539 | 0.9900 | 0.9838 | 0.9965 | ✓ |
| 黄金 | 4 | 1568 | 0.9910 | 0.9821 | 0.9999 | ✓ |
| 德国DAX | 2 | 522 | 0.9947 | 0.9947 | 0.9947 | ✓ |
| 有色金属 | 1 | — | — | — | — | 仅1只 |
| 恒生指数 | 4 | 209 | 0.9969 | 0.9941 | 1.0000 | ✓ |
| 恒生科技 | 4 | 1231 | 0.9976 | 0.9953 | 0.9999 | ✓ |
| 日经225 | 4 | 1268 | 0.9634 | 0.9336 | 0.9915 | ⚠ |
| 纳指100 | 4 | 736 | 0.9933 | 0.9870 | 0.9996 | ✓ |
| 原油 | 3 | 1567 | 0.9651 | 0.9572 | 0.9802 | ✓ |
4.2 最终候选池
| 指数 | 当前ETF | 候选池 |
|---|---|---|
| 创业板指 | 159915.SZ | 159915.SZ, 159952.SZ, 159957.SZ, 159948.SZ |
| 红利低波 | 512890.SH | 512890.SH, 563020.SH, 159547.SZ, 560150.SH |
| 黄金 | 518880.SH | 518880.SH, 159937.SZ, 159934.SZ, 518800.SH |
| 德国DAX | 513030.SH | 159561.SZ, 513030.SH |
| 有色金属 | 159980.SZ | 159980.SZ |
| 恒生指数 | 159920.SZ | 159920.SZ, 513600.SH, 159271.SZ, 513210.SH |
| 恒生科技 | 513130.SH | 513180.SH, 513130.SH, 513010.SH, 159740.SZ |
| 日经225 | 513520.SH | 513880.SH, 513520.SH, 513000.SH, 159866.SZ |
| 纳指100 | 513100.SH | 159941.SZ, 513100.SH, 513300.SH, 159501.SZ |
| 原油 | 160723.SZ | 160723.SZ, 161129.SZ, 501018.SH |
五、关键决策记录
5.1 原油只选商品价格型,不选石油股票型
全市场有 20+ 只石油天然气相关 ETF/LOF,但底层资产完全不同:
- 商品价格型(3 只): 直接投资 WTI/BRENT 原油期货合约
- 石油股票型(17 只): 投资石油天然气上市公司股票
配置中 CL=F 对应 WTI 原油期货价格,因此只纳入商品价格型的 3 只。
5.2 有色金属只有 1 只候选
全市场跟踪有色金属期货价格指数(IMCI.SHF)的 ETF 仅 159980.SZ 一只。其余 23 只跟踪的是有色金属股票指数(如中证有色金属矿业/工业/细分主题),底层资产是股票而非期货,不纳入。
5.3 德国DAX 只有 2 只候选
全市场跟踪 DAX 指数的 ETF 仅 2 只,无其他欧洲宽基可替代(法国 CAC40 是不同指数)。
5.4 排除增强策略型 ETF
159977.SZ(天弘创业板ETF)是增强策略型,与其他纯被动跟踪 ETF 的相关性仅 0.83,替换为 159957.SZ(华夏创业板ETF,纯被动型)。
5.5 排除沪港通型 ETF
513660.SH(华夏沪港通恒生ETF)通过沪港通机制投资,净值计算方式与直接投资的恒生 ETF 完全不同,与其他恒生 ETF 相关性仅 0.27,替换为 513210.SH(易方达恒生ETF)。
六、复现方法
# 数据源
rotation/results/etf_basic_full.csv
# 筛选脚本(交互式)
/Users/aszer/miniforge3/envs/qa/bin/python3
# 关键步骤:
# 1. 用 trade_source ETF 反查 index_code(含交易所后缀)
# 2. 按 index_code 精确匹配 + index_name 关键词匹配
# 3. 按 fund_scale_yi 降序取 Top4
# 4. 排除增强策略型、沪港通型等异常 ETF
# 5. 用 fund_nav 获取 unit_nav,计算日收益率,生成相关性矩阵