← 返回报告库
ETF 动量 · 形成期 · 上影子 · 2026-10-26

52 周行程跳过近月
—— 形成期终点滞后 SKIP=21 再算 nearness

经典 Jegadeesh/Titman 动量在排名时跳过最近约 1 个月,避免短期反转污染形成期。现行站点用信号日 P[t]/rolling_max(250);本支改为在滞后 SKIP 个交易日的价格上算同一 nearness,再用该分数做主题/QDII/钝化/月初换仓。主候选事先冻结 SKIP=21;邻域与成本只报告不回挑。

底座:主题 CAP=1 + QDII 溢价 8% + 2pp 钝化 + 月初换仓 + 换手×0.1%|IS ≤ 2021-12,OOS ≥ 2022-01|判决:上影子(只记账、不下单、未改站点交易页、未改 engine_gates.py)
0.23基线 OOS 夏普
0.64skip-1m SKIP=21 OOS 夏普(Δ+0.41)
+496bpOOS 日超额年化(IR 0.34 / t 0.73)
73.5%持仓差异月率(122/166)
一句话:改的是排名信号本身的形成窗口终点,不是换仓门控。OOS 明显改善、成本网格 Δ 稳在 +0.38~+0.41、持仓高度不同 → 上影子。需正视:IS 1.24→0.90 变差、全期略逊、SKIP=42 反向、超额 t 仅 0.73;邻域 SKIP=10 事后更好但不回挑;影子期继续盯。

逻辑与正交关系

短期反转会污染「刚冲高」的近月收益;跳过近月是经典做法。本支把 px = df.shift(SKIP) 后再算 sig = px / px.rolling(250).max(),在信号日排名,其余流程照 _base_picks + _dampen_swap。
  • rev5_10:选完后拦短期暴涨新买(继续影子)
  • 秩稳定:对新买加「上月秩」门控(另篇上影子)
  • 本支:改排名信号形成窗口终点
  • dual abs-mom / corr cap / gold prem / inflow avoid / 行业52w:已停挖

冻结规则(回测前写死)

底座engine_gates 同站点:TOPK=3,CAP=1,MARGIN=0.02,PGATE=0.08,COST=0.001,W=250,MINP=200,START=20130101;月初换仓
主候选SKIP=21(约 1 个月交易日)。px = df.shift(21) 后 sig = px / px.rolling(250, min_periods=200).max(),在信号日 dates[i-1] 上排名;其余照 _base_picks + _dampen_swap
基准同引擎 mode='baseline'(标准 nearness,非沪深300)
切分IS ≤ 2021-12-31;OOS ≥ 2022-01-01
邻域只报告不回挑:SKIP ∈ {10, 21, 42}
成本网格5/10/20/30bp,只报主候选 OOS Sharpe vs 基线
换手相对上月持仓名集合,turnover = 1 − |交集|/3;首日扣 turnover×cost
实现run_study.py import engine_gates,自写 run_skip;未改 engine_gates.py

主结果:基线 vs SKIP=21

区间基线夏普基线 CAGR基线 MDD skip21 夏普skip21 CAGRskip21 MDDΔ夏普
IS(≤2021-12)1.2418.3%−18.1%0.9012.9%−24.5%−0.34
OOS(≥2022-01)0.232.4%−29.9%0.648.0%−13.4%+0.41
全期0.8712.5%−31.6%0.8111.2%−24.5%−0.06
OOS 日超额约 +496bp 年化,IR 0.34,t 0.73(N=1162)——点估计大,统计显著性仍弱。回撤从 −29.9% 收到 −13.4%。IS 与全期都变差,改善几乎全在 OOS。

持仓差异与活动

73.5%终仓≠基线的月(122/166)
50OOS 差异月
72IS 差异月
0.287月均换手(基线 0.255→0.287)
典型差异:跳过近月后,短期冲高主题(如电子/消费)排名回落,黄金·外 / 宽基等替补进入;路径依赖钝化后差异在多数月份持续。与秩稳定门控不同,本支换手略升而非下降。

成本网格(主候选 OOS 夏普)

成本基线skip-1mΔ
5bp0.250.66+0.41
10bp(站点)0.230.64+0.41
20bp0.210.61+0.40
30bp0.190.57+0.38
成本网格 OOS Δ夏普稳在 +0.38 ~ +0.41,不翻转。

邻域(只报告,不回挑)

变体OOS 夏普Δ vs 基线持仓差异月率OOS 超额年化月均换手备注
SKIP=101.06+0.8375.3%+929bp0.241事后更好,不回挑
SKIP=21(主)0.64+0.4173.5%+496bp0.287主候选
SKIP=42−0.03−0.2683.1%−407bp0.251窗口过长变差
三档均在 IS 变差;仅短/标准 skip 在 OOS 改善。窗口敏感 → 影子期用冻结的 SKIP=21,不切到 SKIP=10。

分年夏普(基线 → SKIP=21)

年基线夏普skip21 夏普基线 CAGRskip21 CAGR
20130.940.3318.4%5.0%
20142.282.2426.5%25.5%
20151.601.0931.0%22.8%
20161.891.6720.7%13.6%
20171.631.0913.7%10.5%
20180.07−0.270.1%−4.3%
20191.302.1710.2%16.7%
20202.111.3844.7%22.1%
20210.390.465.6%7.2%
2022−0.67−0.24−11.0%−4.4%
20230.041.03−0.3%12.6%
20240.861.158.3%11.8%
20252.890.6447.2%8.0%
2026−1.100.89−25.2%14.3%
OOS 改善主要来自 2022–2024 与 2026 减亏/增盈;2025 基线大胜被 skip 错过(夏普 2.89→0.64),是影子期必须盯的主要风险。

判决与局限

判决上影子 —— 只记账、不下单;SKIP=21 冻结;不改站点、不改 engine_gates.py、不回挑 SKIP=10
通过点OOS Δ夏普 +0.41;成本稳健(+0.38~+0.41);持仓实质不同(73.5%)
风险记录IS 明显变差(Δ−0.34);全期略逊;SKIP=42 反向;超额 t 仅 0.73;2025 年大幅落后基线
明确不做未改站交易页 / 不下单 / 不改实盘逻辑;不因邻域 SKIP=10 更好而回挑

口径与文件

· 研究目录:/root/cb-allotment/research/etf_skip1m_form_20261026_09/(REPORT.md · result.json · run_study.py)
· 引擎(只读):scripts/etf_gate_shadow/engine_gates.py
· 附件:result.json · 原始研究笔记
· 数字以 result.json 为准;夏普按引擎日频年化;所有数字都是回测,不代表未来。