/~learn/s/9e886663
> 本文档列出「截面选基按什么系数 × 择时仓位」的所有可行方案,以及业界常用方法和论文参考。 > 目标:选出一个最佳方案并实施。
---
A股宽基: 399102.SZ(创业板综), 399006.SZ(创业板指), 399300.SZ(沪深300), 399001.SZ(深证成指)
A股行业: 000933.SH(医药) 策略: 980092.CNI(自由现金流), 510880(红利), 000015.SH(红利指数)
港股: 513050(恒生互联网), 513180(恒生科技), HSI(恒指)
美股: 159941(纳指-中国), QQQ(纳指-美国)
商品: GLD(黄金), 159985(豆粕)
REITs: 7只
债券: 511260(10年国债,有weight但无策略注册)
| 截面大类 | 数量 | 能找到择时映射的品种 | 映射质量 |
| --------- | :---: | ------------------- | :-------: |
| 宽基指数 | 14 | 399102/006/300/001 | 🟢 高(r>0.85) |
| 行业主题 | 35 | 000933(仅医药) | 🟡 中(需依赖A股宽基做代理) |
| 策略风格 | 7 | 510880/000015/980092 | 🟢 高 |
| 跨境 | 9 | 513050/180/HSI/159941/QQQ | 🟢 高 |
| 债券 | 5 | — | 🔴 无直接覆盖 |
| 商品 | 3 | GLD/159985 | 🟢 高 |
| REITs | 3 | 7只REIT择时品种 | 🟢 高 |
关键发现:最大的盲区是行业主题(35只)——这些 ETF 在择时系统中没有直接覆盖,需要用 A 股宽基指数做代理。
---
方案1: 单宏观总控 ← 最简单,创业板做唯一系数
方案2: 大类资产映射 ← 推荐,6类各配一个择时锚点
方案3: 滚动相关性动态映射 ← 最精细,每只ETF每周重新找最近似的择时品种
方案4: 波动率目标制 ← 学术路线,择时控制波动率而非仓位
方案5: Black-Litterman融合 ← 学术路线,贝叶斯融合截面"观点"和择时"置信度"
方案6: 双层仓位信息展示 ← 不改系统,只改推送显示(方案A)
---
每只ETF实际仓位 = 截面权重 × 创业板择时仓位
---
| 截面大类 | 择时锚点品种 | 择时信号来源 | 理由 |
| --------- | ------------ | ------------ | ------ |
| 宽基指数 | 399102.SZ(创业板) | 30+策略加权 | 覆盖最全,信号最可靠 |
| 行业主题 | 399102.SZ(创业板) | 同上 | A股行业ETF高度跟随创业板 |
| 策略风格 | 000015.SH(红利指数) | 20策略 | 红利类专用锚点 |
| 跨境 | 159941(纳指-中国) | 11策略 | 跨境龙头,跟港股也相关 |
| 商品 | GLD(黄金) | 7策略 | 商品专用锚点 |
| 债券 | 399300.SZ(沪深300) | 19策略 | 股债跷跷板:股市不好→债券好 |
| REITs | 508068.SH(华夏保障房REIT) | 11策略 | REIT专用锚点 |
每只ETF实际仓位 = 截面权重 × 该ETF所属大类的择时锚点仓位
---
for etf in selected_etfs:
best_corr = -1
best_anchor = None
for anchor in timing_anchors:
corr = rolling_corr(etf.returns, anchor.returns, window=60)
if corr > best_corr:
best_corr, best_anchor = corr, anchor
final_position = cross_section_weight × timing_position[best_anchor]
---
目标波动率 = f(择时信号)
- 择时说「进攻」→ 目标波动率 15%
- 择时说「防守」→ 目标波动率 5%
每只ETF实际仓位 = 截面权重 × (目标波动率 / ETF实际波动率)
创业板择时说「防守」,目标波动率 = 5%
159949(创业板50) 实际波动率 = 25%
→ 159949仓位 = 10.2% × (5% / 25%) = 2.04%
511220(城投债) 实际波动率 = 3%
→ 511220仓位 = 8.5% × (5% / 3%) = 14.2%(债券波动低,同样目标下可以多配)
---
截面评分 → "我认为半导体应该跑赢平均 5%"(观点)
择时仓位 → "我对这个观点有 80% 的置信度"(置信度)
BL模型 → 输出最优权重
---
📋 双层仓位配置方案
─────────────────────────────────────────────
代码 名称 截面权重 大类锚点 择时仓位 实际建议
159949.SZ 创业板50ETF 10.2% 创业板 2.99% 0.30%
515880.SH 通信ETF 10.1% 创业板 2.99% 0.30%
159941.SZ 纳指ETF 8.7% 纳指 93.33% 8.12% ← 注意!纳指择时仓位很高
511220.SH 城投债ETF 8.5% 沪深300 64.98% 5.52% ← 债用沪深300代理
─────────────────────────────────────────────
截面合计 96.0% → 实际合计 17.x%
---
核心发现:时序动量(Timing—何时买)和截面动量(Selection—买什么)是两个独立且互补的信号源。组合使用比单独使用更优。论文做法是每只资产独立计算时序信号,不通过代理。
→ 启发:理想方案是对截面选出的每只 ETF 都单独跑择时。但计算量大。
核心发现:用已实现波动率的倒数缩放仓位,可以显著提高夏普比率。简单、鲁棒、学界广泛验证。
→ 启发:方案4的学术基础。不判断「牛熊」,只判断「波动大不大」,然后用波动率调节仓位。
核心发现:趋势跟踪(你择时系统的本质)在所有资产大类上都有效,但各资产大类的趋势信号应该独立计算。
→ 启发:不要用创业板的趋势信号去判断黄金该不该配。支持方案2(大类独立映射)。
核心发现:价值和动量在全球各资产大类都有效,且组合在一起可以显著提高夏普比率。
→ 启发:你的截面系统(动量因子)和择时系统(趋势跟踪)是两个独立的 alpha 源,应该系统化组合。
Alpha = 截面因子(选品种)+ 时序因子(择时)
Risk = 波动率目标制(控制总风险)
执行 = Alpha × Risk → 最终仓位
这个框架和你想要做的事情完全一致。
---
第一周(方案6 → 方案2):推送里显示双层仓位
- 按大类资产映射计算每只ETF的实际建议仓位
- 在推送中展示「截面权重 → 大类锚点 → 择时仓位 → 实际建议」
- 你周一可以直接按实际建议执行
第二周(方案2回测):回测验证大类映射方案
- 用历史数据跑「截面选基 × 大类择时」的回测
- 对比纯截面、纯择时、融合后的收益/回撤/夏普
第三周+(方案4探索):波动率目标制作为进阶
- 作为长期优化方向,不急于实现
---
| 维度 | 方案2(大类映射) | 方案3(动态相关性) |
| ------ | :---: | :---: |
| 稳定性 | ✅ 映射关系固定,不跳变 | ❌ 相关性每周变化,锚点可能每周切换 |
| 可解释性 | ✅ 你知道每只ETF受哪个择时控制 | ❌ 「这周跟创业板r最高所以用创业板」——你自己都会怀疑 |
| 学术支持 | ✅ Moskowitz(2012)支持大类独立信号 | ❌ 无直接文献支持相关性映射 |
| 实际效果 | 行业ETF跟创业板r本来就近0.7-0.85,代理误差不大 | 多算一步但实际输出很可能和方案2相同 |
当大部分A股ETF跟创业板的r已经在0.7以上时,动态相关性搜索的结果大概率还是创业板——你花了计算成本,结果和直接映射一样。
---