跳到主要内容

第一期:A 股双均线,到底有没有用?

本文仅用于教育与研究,不构成投资建议。文中收益、回撤、Calmar 等数据均来自特定样本期回测,不代表未来可复现结果。


读前须知几个常用指标:

CAGR(年化复合收益率):假设每年以相同比例复利增长,折算到持有期末恰好得到相同总收益时的年增长率。不同持有期的策略可以用它横向比较——波动越大,CAGR 会因为复利损耗而低于算术平均年化。最大回撤:历史上从账户最高点到最低点的最大跌幅,衡量的是策略最坏情况下您的账户会缩水多少。Calmar 比率:CAGR 除以最大回撤的绝对值,衡量每承担一单位最大损失能获得多少年化收益,数值越高代表风险调整后回报越好。

这期实验用三个标签标注每条路线的结论:

  • 样本内达标:在该实验的样本窗口内,CAGR 和最大回撤两项指标同时优于基线,标签含义仅限于此,不代表策略已被验证为可采用方案
  • rejected:指标落后,或结构分析发现这条方向本身无效,不值得继续
  • inconclusive:部分指标有改善但未全部超越基线,或改善幅度不足以形成明确结论;也用于作为后续变体对照的基准版本

A 股的均线策略,网上从来不缺"有效"的声音,也不缺"无效"的声音。这期实验想做的事情很简单:把数据摆出来,老实记录。

核心问题是:20/26 双均线在创业板上真的有用吗?如果有用,该怎么扩展它?

先看这期实验的汇总结果,后面逐条拆开分析:

#策略样本窗口CAGRMax DDCalmar结论
B1创业板 ETF 买持2011/09–2026/0410.34%−67.15%0.154基线
MA120/26 双均线(创业板)2011/09–2026/0414.60%−48.44%0.301样本内达标
MA2双均线 + CSI300 MA120 宏观过滤2011/09–2026/045.85%−52.45%0.112rejected
B2三标的等权买持2019/05–2026/0414.76%−47.98%0.308对照基线
MA4三标的独立双均线2019/05–2026/0416.11%−25.88%0.622样本内达标

回测设定说明:价格数据使用复权价(含分红和拆股调整)。双均线信号使用收盘价计算,次日开盘执行。MA20 上穿 MA26 时建仓,下穿时清仓。样本窗口内无做空操作,空仓期持有现金。20/26 这组参数在本样本上观察选定,未经独立的样本外优化。


先立基线:创业板买持,听起来平淡,其实不简单

B1:创业板 ETF(159915)买持

  • 样本窗口:2011-09-20 至 2026-04-22(约 14.6 年)
  • CAGR: 10.34%,Max DD: −67.15%,Calmar: 0.154,期末净值: 4.1996

14.6 年 CAGR 超过 10%,这个结果本身不差。如果 2011 年末投入 10 万元,不做任何操作,到 2026 年 4 月账户里有约 42 万元。

但 Calmar 只有 0.154,说明路上的代价极重。−67.15% 的最大回撤意味着,如果您在一个峰值时点买入,账户曾经缩水超过三分之二。更关键的是:创业板本身的年度收益极度不均匀。

年份买持年度收益
2013+65.91%
2015+70.72%
2018−25.27%
2022−28.01%
2025+48.45%

牛市暴涨、熊市暴跌,这就是创业板的真实面目。它不是美股那种"长期缓慢向上"的市场结构——它的收益高度集中在少数几个牛市年份,但熊市的跌幅同样极端。入场时机的依赖性,在 A 股比美股严重得多。 2015 年底买入的投资者,拿着这个基线策略,到 2018 年底可能还是亏损的。

这就是为什么双均线这类趋势跟踪策略在 A 股有它的讨论价值:如果熊市能少亏一点,复利的积累会完全不同。


第一幕:验证双均线

想法

最简单的思路:MA20 上穿 MA26 时买入,下穿时卖出。这是教科书级别的双均线,不加任何附加条件。在 A 股的牛熊剧烈切换环境下,它能不能有效过滤掉熊市的大跌?

结果(MA1):两项成功标准均超额达成

MA1:创业板 ETF 20/26 双均线

  • 样本窗口:2011-09-20 至 2026-04-22
  • CAGR: 14.60%(+4.26pp),Max DD: −48.44%(改善 18.71pp),Calmar: 0.301,期末净值: 7.3018

和买持基线对比:

指标买持(B1)双均线(MA1)改善幅度
CAGR10.34%14.60%+4.26pp
Max DD−67.15%−48.44%+18.71pp
Calmar0.1540.301翻近一倍
期末净值4.19967.3018

两项成功标准(CAGR 和 Max DD)同时超额达成,结论标注为样本内达标

为什么有效?关键在 2022 年

逐年对比数字最能说明问题:

年份双均线(MA1)买持(B1)差距
2015+84.73%+70.72%+14.01pp
2022+25.22%−28.01%+53.23pp
2025+35.67%+48.45%−12.78pp

2022 年是双均线在这个样本里最关键的一年。当年 A 股进入系统性下跌,买持策略跌了 28%,双均线策略因为之前已经出局,全年正收益 25%。两者差距高达 53 个百分点。

这笔"避免损失"带来的复利改善,远远超过 2025 年均线滞后导致少赚的代价(−12.78pp)。双均线的 alpha 主要来自熊市减损,而不是牛市多赚。

2015 年双均线甚至略微超过了买持(+14pp),但这不是主要故事。趋势跟踪策略在牛市里偶尔会因为信号不滞后而超越,但多赚多少不是关键,关键是熊市少亏多少。

外部交叉验证

bmpi.dev 的公开研究使用 11/22 双均线、样本期 2004–2020,在同类市场上测得 CAGR 约 15.82%,方向与 MA1 的 14.60% 一致。不同参数、不同样本窗口,结论方向相同,一定程度上增加了这个结论的可信度。


第二幕:叠加宏观过滤——听起来更聪明,结果更差

想法

双均线有效之后,一个自然的念头是:能不能让它"更稳"?

A 股有一个特点:大盘状态不好的时候,创业板再强也容易被拖累。如果加入一个宏观过滤条件——只有当 CSI300(沪深 300 指数)在 MA120 上方,也就是大盘处于长期上升通道时,才允许双均线信号建仓——这样能不能减少在熊市里被反复震荡止损的情况?

逻辑听起来合理:大盘好才进创业板,大盘差就全部回避。

结果(MA2):全面恶化

MA2:双均线 + CSI300 MA120 宏观过滤

  • 样本窗口:2011-09-20 至 2026-04-22
  • CAGR: 5.85%(从 14.60% 掉了 8.75pp),Max DD: −52.45%(比双均线还差!),Calmar: 0.112

对比很刺眼:

指标双均线(MA1)加宏观过滤(MA2)变化
CAGR14.60%5.85%−8.75pp
Max DD−48.44%−52.45%反而更差
Calmar0.3010.112腰斩再腰斩

结论标注为 rejected

为什么"更聪明的条件"在 A 股反而失效?

这个结果值得认真解释,因为 MA2 的失败逻辑在 A 股里非常典型。

第一,CSI300 MA120 是一个极慢的信号。 120 日均线需要大盘已经趋势性上涨相当长一段时间,才会发出允许进场的信号。但创业板的启动往往先于或快于沪深 300 的"慢热"——等到 CSI300 MA120 条件满足,创业板已经涨了一大截。

第二,A 股的政策驱动反转极快。 美股的熊市往往是渐进的,宏观过滤有时间窗口让策略在熊市中途出局。A 股经常是政策突然转向、市场单日大幅反弹——一次国家队入市、一次降准公告,创业板可能直接跳空高开 5%。这种反转不给 MA120 留时间反应,过滤条件还没松开,行情已经走了。

第三,创业板本身是"反主流"的高 beta 资产。 沪深 300 更代表银行、地产、工业等传统经济,而创业板代表科技、医药、新能源等成长板块。两者的周期往往不同步:有时候大盘低迷但创业板因为政策利好独自走强,有时候大盘平稳但创业板因为估值过高独自调整。用 CSI300 的状态来"看门"创业板的进出,是在用错误的代理指标过滤信号。

结果是:宏观过滤既没有在真正的系统性熊市里额外保护,反而在创业板独立反弹的关键时间窗口把策略锁在门外。两个问题叠加,收益大幅受损,回撤没有改善。

这期实验里最重要的反面教材就是 MA2:在 A 股,叠加"听起来合理"的宏观过滤,不一定让策略更稳,有时候只是让它更慢。


第三幕:找到真正有效的扩展——多标的分散

想法

既然叠加规则不是正确方向,那什么才是?

一个不同的思路:把同样的双均线信号,应用到多个独立的标的上,然后等权合并。每个标的都按自己的信号独立判断进出,互不干扰。如果标的之间的相关性不高,熊市里不会同时下跌,那么整体回撤会被自然压低。

选取三个标的:

  • 创业板 ETF(159915):科技、医药、新能源驱动的高弹性板块
  • 军工 ETF(512660):政策驱动为主,与创业板周期相关性低
  • AI ETF(159819):主题性板块,波动节奏与宽基创业板不同步

先看三标的买持基线(B2)

B2:三标的等权买持

  • 样本窗口:2019-05-22 至 2026-04-22(约 7 年)
  • CAGR: 14.76%,Max DD: −47.98%,Calmar: 0.308

这是对照基线,不是最终结论。7 年 CAGR 14.76%,比单创业板买持更高,说明这三个标的在这段时间里整体表现不错。但 Max DD 还是接近 −48%,风险依然很大。

三标的各自独立双均线(MA4):Calmar 翻倍

MA4:三标的独立双均线

  • 样本窗口:2019-05-22 至 2026-04-22(约 7 年)
  • CAGR: 16.11%(+1.35pp),Max DD: −25.88%(改善 22.1pp!),Calmar: 0.622,期末净值: 2.8112

对比三标的买持基线:

指标三标的买持(B2)三标的双均线(MA4)改善幅度
CAGR14.76%16.11%+1.35pp
Max DD−47.98%−25.88%+22.10pp
Calmar0.3080.622翻倍

Max DD 从 −48% 压缩到 −26%,Calmar 翻倍到 0.622。这是这期实验里风险调整后表现最好的结果。

关键年份验证:2022 年,三标的买持跌了 −28.90%,三标的独立双均线只跌了 +2.88%,几乎打平。

为什么多标的分散有效,而叠加过滤无效?

这两种"扩展"思路的差异值得仔细说清楚。

叠加过滤(MA2 的思路)是在一个单一决策路径上串联更多条件,每增加一个条件就多一个可能被锁住的情况。问题在于:A 股的行情切换太快,任何"慢"的过滤条件都会在正确的时机错过正确的信号。

多标的分散(MA4 的思路)不改变单个标的的决策逻辑,而是同时运行多个独立的决策流。这三个标的在不同的宏观环境下表现不同步:

  • 军工 ETF 的驱动力是国防政策,与市场整体估值相关性有限,在 2022 年 A 股普跌的环境里也有过独立行情
  • AI ETF 是主题性资产,其启动时机和持续时间往往与宽基创业板不同步,两者不会在同一时间同时触发下穿信号
  • 三个标的独立判断进出,某一个被均线打到空仓时,另外两个可能还在持仓,整体仓位自然平滑

这不是靠"更聪明的规则"赢的,而是靠不相关的风险来源在时间轴上错开了


这期实验真正留下来的

样本内达标(2 条)

MA1,20/26 双均线创业板版,在 2011–2026 这 14.6 年里,CAGR 从 10.34% 提到 14.60%,Max DD 从 −67.15% 改善到 −48.44%,两项成功标准同时达成。Alpha 主要来自熊市减损,2022 年单年差距 53pp 是核心数据点。这个"样本内达标"的含义是:在这个样本窗口内两项指标同时优于基线——这不等于"这条策略已被证明可采用"。20/26 是在本样本内观察选定的参数,未经独立样本外验证。

MA4,三标的独立双均线(创业板+军工+AI ETF 等权合并),在 2019–2026 这 7 年里,CAGR 16.11%,Max DD 压到 −25.88%,Calmar 0.622,是这期实验风险调整后回报最优的结果。驱动力是三个低相关标的在时间轴上的风险错配,而不是更复杂的规则。样本窗口只有 7 年,包含了 A 股的 AI 行情,是重要的局限。

rejected(1 条)

MA2,双均线叠加 CSI300 MA120 宏观过滤,CAGR 从 14.60% 跌到 5.85%,Max DD 反而恶化到 −52.45%。失败原因是宏观过滤信号太慢,与创业板的政策驱动快速反转不匹配,且用沪深 300 的状态代理创业板本身是错误的代理关系。这条方向不值得继续优化。

一句话总结:在 A 股,双均线本身有效,但"叠加更多规则"不一定让它更好。正确的扩展方式是多标的分散,而不是更复杂的过滤逻辑。


这期之后,下一步该问什么

这期实验留下了一个还没回答的问题:多标的分散的具体选法,有多重要?

MA4 的三个标的是特意选择的:创业板、军工、AI ETF。如果换成其他组合,Calmar 的改善还能复现吗?标的之间的低相关性是 A 股的普遍现象,还是这三个标的的特殊性?

另一个方向是:A 股的动量轮动。既然三标的等权合并有效,如果改成动态地把资金集中分配给当前最强的那个标的,结果会更好还是更差?A 股的标的轮动节奏和美股完全不同,直接套用美股动量策略的结论并不合适。

下一期计划从这两个问题出发,在 A 股里认真测一遍动量轮动的基本有效性。


如果您想继续围观后续实验:


重要提醒:本文所有内容仅为学习研究用途,不构成投资建议。用户应独立做出投资决策并承担相应风险。