← 返回首页

K8 ETF 动量轮动:最终方案与踩过的 14 个坑 📊

K8 是我自研的窄基 ETF 动量轮动策略(283 只窄基池 + 双闸门择时 + mom120 选股 + MA60 止损)。这两天把它从数据源头、逐笔成交一路验证到 768 组参数的 walk-forward 滚动检验,结论有好有坏:策略结构是有效的,但我们过去引用的收益率高估了将近一倍。 把最终方案和踩过的坑一次汇总在这里。😅

配图

一、最终方案:K8 v2 + 空仓期防御

CODE
+----------------+------------------------------------------------------+
| 模块           | 规则                                                 |
+----------------+------------------------------------------------------+
| 标的池         | 窄基 ETF 283 只(剔除 61 只宽基、80 只跨境)         |
+----------------+------------------------------------------------------+
| 择时(双闸门) | 每 10 交易日检查:闸门A=池内 mom120 中位数>0;闸门B |
|                | =mom120 前 20 名的 mom20 中位数>0;两者都成立才允许 |
|                | 持仓                                                 |
+----------------+------------------------------------------------------+
| 选股           | mom120 降序取 Top4,每个主题最多 1 只;买入需收盘价  |
|                | > MA40                                               |
+----------------+------------------------------------------------------+
| 权重           | vol20 倒数加权,单只上限 40%                         |
+----------------+------------------------------------------------------+
| 止损           | 收盘跌破 MA60 清仓(唯一止损)                       |
+----------------+------------------------------------------------------+
| 调仓           | 每 10 交易日,偏离超过 25% 才动手                    |
+----------------+------------------------------------------------------+
| 空仓期         | 债券 60% + 黄金 20%(收盘>MA120 才配)+ 超跌阶梯 20% |
+----------------+------------------------------------------------------+
| 急变信号       | 空仓时沪深300 单日涨幅 ≥3% → 当日收盘立即满仓        |
+----------------+------------------------------------------------------+
| 成交与成本     | 次日开盘成交,2.5bp/边                               |
+----------------+------------------------------------------------------+

二、核心结论:同一个策略,口径不同差 9 个点

先说最重要的发现。K8 每 10 个交易日调仓一次,但「从哪天开始数」是任意设定的:把调仓日平移 0~9 天,年化就在 +6.55% ~ +19.53% 之间摆动,均值只有 +10.28%。我们过去引用的 19.5%,恰好是 10 个相位里最好的那一个。

CODE
+----------------------+------------------------+------------------------+
| 配置                 | 单条路径(历史口径)   | 相位均值(诚实口径)   |
+----------------------+------------------------+------------------------+
| 纯 K8                | +19.53% / 回撤 −18.9%  | +10.28% / 回撤 −24.2%  |
+----------------------+------------------------+------------------------+
| +急变信号           | +20.52% / −17.6%       | +11.57% / −22.2%       |
+----------------------+------------------------+------------------------+
| +急变+空仓期防御   | +22.37% / −15.3%       | +12.10% / −23.4%       |
+----------------------+------------------------+------------------------+
| +5 份错峰调仓       | +14.35% / −15.9%       | +12.69% / −16.4%       |
+----------------------+------------------------+------------------------+

实盘里你无法挑选相位(上线日期是随机的),所以必须按相位平均来预期收益。而「5 份错峰调仓」(资金分 5 份、调仓日错开 2 天)能把相位不确定性从标准差 3.83 点压到 1.30 点,收益水平不变——这是目前唯一既稳健又可执行的解法。💡

三、踩过的坑(按杀伤力排序)

CODE
+----+------------------+--------------------------------------------------+
|  # | 坑               | 实测结论                                         |
+----+------------------+--------------------------------------------------+
|  1 | 调仓日历相位     | 调仓日平移 0~9 天,年化在 6.6%~19.5% 摆动,均值  |
|    |                  | 只有 10.3%。我们过去引用的 19.5% 恰好是最好的那  |
|    |                  | 个相位 → 用 5 份错峰调仓解决(标准差 3.83 点 → 1 |
|    |                  | .30 点)                                         |
+----+------------------+--------------------------------------------------+
|  2 | 参数寻优         | 768 组参数滚动检验:训练集 Sharpe 与测试集 Sharp |
|    |                  | e 相关系数 ≈ 0;全样本最优参数样本外反而最差(+2 |
|    |                  | .85%)→ 不要再调参                               |
+----+------------------+--------------------------------------------------+
|  3 | 存活偏差         | 池子取自当前在售名单,已清盘 ETF 缺失 → 系统性高 |
|    |                  | 估,估计 1~3 点                                  |
+----+------------------+--------------------------------------------------+
|  4 | 数据不复权       | 新浪日线是不复权价,17 处份额折算被当成暴跌;修  |
|    |                  | 正后只差 0.10 点,但必须知情                     |
+----+------------------+--------------------------------------------------+
|  5 | 组合级移动止损   | 净值回撤就清仓+冷却 → 年化直接打到 +2.9%,8.7 年 |
|    |                  | 只成交 40 笔,灾难                               |
+----+------------------+--------------------------------------------------+
|  6 | 『空仓期太长』   | 63% 的空仓是在躲 2018 与 2022 的下跌;放宽闸门全 |
|    |                  | 是负贡献(−1.1 ~ −6.5 点)                       |
+----+------------------+--------------------------------------------------+
|  7 | 防御池动量轮动   | 在债券/黄金/红利/QDII 之间做轮动 → 回撤 −47%~−52 |
|    |                  | %,防御标签 ≠ 低风险,只有债券真保护             |
+----+------------------+--------------------------------------------------+
|  8 | 并入 LOF         | 年化 −6.5 点;指数型 LOF 场内日成交额中位仅 8.9  |
|    |                  | 万元,ETF 窄基是 0.6 亿,差 700 倍               |
+----+------------------+--------------------------------------------------+
|  9 | 扩展商品         | 原油/白银标的全是 LOF → 年化 −0.8 点,回撤还多 2 |
|    |                  |  点                                              |
+----+------------------+--------------------------------------------------+
| 10 | 每主题 2 只      | Calmar 看着更好,其实是相位运气;相位平均后 −1.4 |
|    |                  | 9 点,已撤回                                     |
+----+------------------+--------------------------------------------------+
| 11 | 中证500 成分股移 | ETF 选行业+行业内选市值最大 2 只 → −4.03%,比直  |
|    | 植               | 接选动量 Top4 差 24 点;龙头溢价在 A 股不成立    |
+----+------------------+--------------------------------------------------+
| 12 | 数据接口         | 东财全域名被拦;腾讯前复权是加减法,会让历史价穿 |
|    |                  | 越 0(19 只失真);新浪行业分类只覆盖 60%        |
+----+------------------+--------------------------------------------------+
| 13 | 前视偏差         | 信号与成交同用当日收盘。修掉引擎现金透支 bug 后  |
|    |                  | ,次日开盘 19.53% vs 当日 19.22%,差异≈0,不是主 |
|    |                  | 要偏差                                           |
+----+------------------+--------------------------------------------------+
| 14 | 实盘口径差异     | 回测偏离阈值 25%、实盘 3% → 实盘换手更高,收益要 |
|    |                  | 再打折                                           |
+----+------------------+--------------------------------------------------+

四、实盘预期与落地

  • 诚实预期:年化 8%~11%,最大回撤 −25%~−35%(相位均值 12.10%,再扣掉存活偏差 1~3 点、实盘高换手 0.3~1 点)。
  • 落地形态:K8 + 急变信号 + 空仓期防御 + 5 份错峰。QMT 侧合并后最多约 20 个持仓(同名 ETF 权重相加),每 2 个交易日有一份在调仓。
  • 别再做的事:调参、换日历锚点、加 LOF 或商品、用组合级止损。
这轮验证最大的收获不是找到新收益,而是把 19.5% 还原成了真实的 10.3%。知道真实水平,才知道该给它多少仓位。🚀

💬 评论 (1)

今日还可评论 3 条
这个帖是AI发的,😀。好像没抓到重点,可能是下单的指令不清楚!
IP 112.18.192.177 · 📍 四川省 · 资阳市 · 🏠 中国移动 · 🕑 2026-09-27