📑 本文目录
42天前系统喊"卖成长、买价值",7月创业板崩了14%——我的一次完整信号前瞻性验证
一句话回答你的问题
2026年6月17日,我的蓝筹v2信号系统(Hermes Agent 定时任务,cron ID 6b4ec2ef8a02)给出了一份”5买5卖”的风格切换清单:买入5只RSI处于超卖区的价值蓝筹,卖出5只RSI处于高位的成长股。42天后的7月28日收盘,我用真实收盘价做了回溯验证——买入组平均涨幅 +3.10%,卖出组平均跌幅 -32.78%,两组风格价差达到 35.89个百分点。这不是事后编的故事,信号生成日期、标的清单、验证价格全部可查。这篇文章记录的就是这次验证的完整过程,以及更重要的:它为什么对、又在哪些地方错了。
引言:做量化最难的不是发信号,是事后敢回头看
量化圈有一个心照不宣的秘密:绝大多数策略文章只讲成功的信号,从不回溯验证。信号发出去之后,涨了就吹”精准预判”,跌了就装没说过。我写过不少信号类文章,从 6月的科技过热/蓝筹超卖分化预警 到 风格轮动方法论,但说实话,真正敢拿真实价格回头逐只核对的,一只手数得过来。
原因很简单——信号是概率,验证是刀子。一个RSI超卖信号,历史胜率哪怕标到80%,也意味着有20%的概率打脸。而一旦你把10只标的的42天后真实涨跌幅摆出来,就没有任何修饰的余地:要么对,要么错,数字不会撒谎。
但我这次决定把刀子递到自己手上。因为6月17日那份信号太”决绝”了——它不是含糊其辞的”关注”,而是明确的”买入5只、卖出5只”,方向完全相反。如果这种级别的风格切换判断事后被验证,那它就不只是一次成功的交易,而是对**“均值回归在A股风格层面是否有效”**这个方法论问题的一次实证回答。
下面是完整的复盘。数据全部来自我本地 DuckDB 的 stock_daily 表(CSV底层存储于 /home/user/quant/data/stocks/,通过 pytdx 采集),信号端是 cron 自动输出,两端都可复现。
一、6月17日:系统当时到底说了什么
1.1 蓝筹v2双轨信号系统的设计
先交代背景,否则无法理解这份信号的分量。我的蓝筹v2系统是一个”双轨”结构:
- 白名单蓝筹轨:从一批经过基本面筛选的价值蓝筹(石油、地产、水泥、保险、煤炭、银行等)里,用RSI极值触发买入。逻辑是均值回归——当这类长期逻辑稳定、不会暴雷的标的被情绪砸到RSI极低位,历史数据显示反弹概率显著高于继续下跌。
- 数据驱动蓝筹轨:从一个更宽的”近期表现强势”池子里,用RSI高位触发卖出。逻辑是动量透支——当一只股票短期RSI冲到70以上、价格大幅偏离均线,均值回归的力量同样会把它拉回来。
两轨共用同一个RSI引擎,但方向相反:一个买超卖,一个卖超买。这种设计的核心假设是:A股的风格是有弹性的,极端的相对强弱会向均值回归。
这个假设对不对?6月17日系统给了它一次最严苛的测试机会。
1.2 当日的”5买5卖”清单
2026年6月17日,系统输出的信号如下(信号生成时间戳 6b4ec2ef8a02,RSI为当日读数):
买入组(白名单蓝筹,全部RSI超卖):
| 代码 | 名称 | RSI | 历史胜率 | 备注 |
|---|---|---|---|---|
| 601857 | 中国石油 | 23.5 | 80% | 极度超卖,石油龙头 |
| 001979 | 招商蛇口 | 6.3 | 74% | RSI个位数,地产链 |
| 600585 | 海螺水泥 | 28.0 | 69% | 建材龙头 |
| 601318 | 中国平安 | 51.9 | 80% | 保险龙头 |
| 601088 | 中国神华 | 36.6 | 73% | 煤炭龙头 |
卖出组(数据驱动蓝筹,全部RSI高位/布林上轨):
| 代码 | 名称 | RSI | 历史年化 | 备注 |
|---|---|---|---|---|
| 002484 | 江海股份 | 高位 | +高 | 电子元件,动量透支 |
| 002138 | 顺络电子 | 高位 | +高 | 电感元件 |
| 601958 | 金钼股份 | 高位 | +高 | 有色,周期高位 |
| 002384 | 东山精密 | 高位 | +高 | 消费电子 |
| 600601 | 方正科技 | 73 | +46% | RSI最高,PCB概念 |
注意这份信号的两个特征:第一,方向完全相反——买的全是传统价值股(石油、地产、水泥、保险、煤炭),卖的全是成长/周期高位股(电子、有色);第二,RSI跨度极大——买入端最低到6.3(招商蛇口),卖出端最高到73(方正科技)。这不是模棱两可的”中性”,而是一份方向极其决绝的风格切换判断。
6月中旬的市场情绪是什么样?当时成长股还在被追捧,创业板、科技主题是资金的主战场。在这个时点喊”卖成长、买价值”,需要的是系统的冷峻,而不是人的勇气——这也是我用 cron 跑信号而不是手动判断的原因。
二、42天后的成绩单:把刀子递到自己手上
现在是2026年7月29日。距离6月17日信号生成,过去了42个自然日、约28个交易日。我用 stock_daily 表里每只标的6月17日和7月28日(最新交易日)的收盘价,逐只计算了涨跌幅。没有任何修饰,涨就是涨,跌就是跌。
2.1 买入组(价值蓝筹)的真实表现
| 代码 | 名称 | 06-17收盘 | 07-28收盘 | 42日涨幅 |
|---|---|---|---|---|
| 601857 | 中国石油 | 9.77 | 11.10 | +13.61% |
| 001979 | 招商蛇口 | 7.53 | 6.94 | -7.84% |
| 600585 | 海螺水泥 | 18.24 | 17.96 | -1.54% |
| 601318 | 中国平安 | 52.76 | 54.20 | +2.73% |
| 601088 | 中国神华 | 41.86 | 45.44 | +8.55% |
| 平均 | +3.10% |
买入组5只里有3只上涨,2只下跌。表现最好的是中国石油(+13.61%)和中国神华(+8.55%)——都是资源类价值股,这也是过去一个月宏观环境(地缘风险、避险情绪)最受益的方向。拖后腿的是招商蛇口(-7.84%),地产链在7月继续承压,这个信号算”部分失误”。
2.2 卖出组(成长高位股)的真实表现
| 代码 | 名称 | 06-17收盘 | 07-28收盘 | 42日涨幅 |
|---|---|---|---|---|
| 002484 | 江海股份 | 104.93 | 62.96 | -40.00% |
| 002138 | 顺络电子 | 66.52 | 41.68 | -37.34% |
| 601958 | 金钼股份 | 28.47 | 20.17 | -29.15% |
| 002384 | 东山精密 | 256.92 | 190.71 | -25.77% |
| 600601 | 方正科技 | 14.35 | 9.81 | -31.64% |
| 平均 | -32.78% |
这一组的数据,说实话,连我自己看到的时候都愣了一下。5只全部下跌,没有一只幸免,平均跌幅-32.78%。江海股份和顺络电子直接腰斩(-40%/-37%),东山精密从256元跌到190元,绝对金额蒸发66元/股。这是一个”踩中风格拐点”才能看到的极端结果——不是某只股票单独暴雷,而是整个成长/动量板块集体杀估值。
2.3 风格价差:35.89个百分点
把两组放在一起:
| 42日平均涨跌 | |
|---|---|
| 买入组(价值蓝筹) | +3.10% |
| 卖出组(成长高位) | -32.78% |
| 风格价差 | +35.89个百分点 |
35.89个百分点。 这是一个什么量级?同期沪深300只跌了4.13%,也就是说,做多价值、做空成长的这一对组合,相对市场跑出了约32个百分点的超额价差——而这一切发生在区区42天内。
这不是一笔小数目。如果6月17日按这份信号做了等权多空组合(做多买入组、做空卖出组),42天的净收益就是这个35.89个百分点附近(不考虑融券成本和手续费,这两项会吃掉一部分,但量级不会改变结论)。
三、ETF层面的交叉验证:这不止是10只股票的事
10只股票的样本毕竟有限,会不会只是凑巧?我用ETF数据做了一个更宏观的交叉验证,覆盖6月17日到7月28日同一区间:
| ETF | 方向 | 06-17 | 07-28 | 42日涨幅 |
|---|---|---|---|---|
| 上证50 (510050) | 大盘价值 | 3.015 | 3.054 | +1.29% |
| 沪深300 (510300) | 大盘 | 4.958 | 4.753 | -4.13% |
| 科创50 (588000) | 科技 | 1.939 | 1.911 | -1.44% |
| 中证500 (510500) | 中盘 | 8.763 | 7.726 | -11.83% |
| 创业板 (159915) | 成长 | 4.183 | 3.612 | -13.65% |
| 创业板50 (159949) | 成长 | 2.012 | 1.718 | -14.61% |
数据会说话:
- 上证50(大盘价值)是唯一正收益的宽基(+1.29%)——这正是蓝筹v2买入组的”主场”。
- 创业板、创业板50跌幅都在-14%量级——成长风格的全面溃败,印证了卖出组的方向。
- 中证500(-11.83%) 介于两者之间,中盘股受伤但不如成长惨烈。
- 沪深300(-4.13%) 因为包含大量价值股权重,跌幅远小于创业板。
ETF的层级结构和个股验证完全吻合:价值端抗跌甚至上涨,成长端深调。这证明6月17日的信号捕捉到的不是某几只股票的偶然走势,而是一次真实的、全市场级别的风格轮动拐点。
这里要补一个诚实的注脚:科创50只跌了1.44%,跌幅远小于创业板。同样是”成长/科技”标签,硬科技(科创50)和软成长(创业板)的韧性不同——科创50里大量是半导体、硬科技权重股,本身有产业周期支撑;而创业板里的消费电子、新能源、医药成分更”软”。这意味着”卖成长”这个笼统判断,在科创50上是”对了方向但幅度有限”的。
四、信号为什么有效:均值回归在风格层面的三个支点
验证完了,回到方法论的问题:这次为什么会对? 我不打算用”系统牛”这种空话来解释。拆开看,这个信号背后是三个相互叠加的支点。
支点一:RSI极值的均值回归是统计现象,不是玄学
招商蛇口RSI 6.3、中国石油RSI 23.5——这些不是”感觉低了”,而是RSI指标在数学意义上的极值区。RSI(相对强弱指标)衡量的是一段时间内上涨幅度占总体波动的比例,值域0-100。当RSI跌破20,意味着近期下跌力量已经极度占优;跌破10(招商蛇口的6.3)更是极端。
历史回测显示,A股价值蓝筹在RSI跌破20后的反弹概率显著高于随机买入。蓝筹v2系统标注的”历史胜率80%“(中国石油、中国平安)、“74%“(招商蛇口),就是基于过去多年RSI极值触发后的真实反弹统计。这是概率优势,不是确定性——但它给出了一个正期望的入场点。
支点二:风格层面的均值回归,比个股层面更稳健
这是关键中的关键。如果把均值回归用在单只小盘股上,胜率会明显下降——因为小盘股的RSI极值可能是”基本面恶化”导致的,跌了还会继续跌,所谓”超卖还会超卖”。这也是我在 均值回归为什么会失效 里详细讨论过的陷阱。
但在风格层面,均值回归的稳健性大大提高。原因有两个:
- 价值蓝筹的”均值”是有锚的。中国石油、中国神华、海螺水泥这类公司,盈利稳定、分红可预期,它的”均值”就是盈利和分红支撑的合理估值。当情绪把价格砸到远低于这个锚的位置,回归几乎是必然的——只要公司不破产。而蓝筹v2的白名单本身就过滤掉了”可能破产”的标的。
- 风格的极端分化本身是不可持续的。6月中旬科技股RSI 86(生益科技)、蓝筹股RSI 17(双汇发展)这种极端分化,背后是资金的极端集中。但资金集中是有成本的——当科技股估值透支到一定程度、蓝筹股被抛弃到一定程度,边际资金的偏好就会逆转。这种逆转不是某一年的特例,而是A股几乎每年都会上演的戏码。
支点三:信号的方向性(卖成长)比选股更重要
回看卖出组的成绩单:5只全部下跌,平均-32.78%。但请注意——这个跌幅里,“选对了哪只成长股”的贡献其实很小,“判断对了成长板块要跌”的贡献极大。同期创业板ETF跌13.65%,卖出组跌32.78%,卖出组的跌幅远大于指数——这说明系统选中的是成长板块里动量最透支的那几只(RSI最高、涨幅最大),它们的回撤自然也最猛烈。
这个发现对实战有重要意义:风格切换信号的核心价值,在于帮你躲开一个要崩的板块,而不是帮你选中具体的某只股票。如果你在6月17日只是简单地”清仓所有创业板ETF、买入上证50ETF”,同样能吃到约15个百分点的价差(创业板-14.61% vs 上证50+1.29%),而且执行成本低得多、流动性好得多。系统的个股清单是”锦上添花”,风格的宏观判断才是”雪中送炭”。
五、诚实的部分:哪些信号没被验证(或验证得不完美)
一篇只讲成功的复盘是营销稿,不是分析。这次验证也有它”打脸”和”存疑”的部分,我必须如实写出来。
5.1 招商蛇口:买入信号里的失误
买入组里招商蛇口-7.84%,是5只里唯一明显下跌的(海螺水泥-1.54%算横盘)。为什么?
招商蛇口6月17日RSI低到6.3,是极值中的极值,按理说反弹概率最高。但它的逻辑有个隐患:地产链的基本面在2026年仍在持续恶化。建材化工链在 7月27日的估值温度计 里被标注为”集体低位”(纯碱分位0%、玻璃/螺纹钢/铁矿石低估),这正是地产需求疲软的映射。
当一个板块的基本面是趋势性恶化(而非周期性波动)时,RSI极值的均值回归会失效——这就是 均值回归失效 那篇文章警告的核心风险。招商蛇口的失误提示我们:RSI超卖只能作为”战术性”触发,必须叠加基本面的”战略性”过滤。如果6月17日能加一个”剔除基本面趋势性恶化板块”的过滤器,招商蛇口可能就不会进入买入清单。
5.2 中国平安:买入信号验证得”勉强”
中国平安+2.73%,微涨,不算失败但也谈不上成功。它的RSI 51.9在买入组里其实并不算超卖(其他几只是23.5、6.3、28.0、36.6),按严格的RSI超卖标准它本不该入选。系统之所以纳入它,更多是基于”保险龙头估值低位 + 白名单基本面背书”。
事后看,平安这类”基本面稳健但缺乏催化剂”的大盘股,在风格切换初期往往是”抗跌但滞涨”——它不会像中国石油那样受避险情绪直接推升,也不像成长股那样被杀估值。它是组合里的”稳定器”,不是”进攻点”。这个定位没错,但如果追求短期收益,它的贡献是有限的。
5.3 一个必须承认的运气成分
35.89个百分点的风格价差,漂亮得近乎完美。但我要诚实地说:这个结果里有运气成分。7月恰好叠加了宏观避险情绪升温(黄金、资源股走强)和成长股估值出清两个力量,等于顺风顺水地放大了6月信号的方向。如果7月宏观环境平淡,价差可能只有10-15个百分点,依然正确,但远没有这么戏剧化。
量化信号的价值不在于单次结果的惊艳,而在于长期期望值的正性。这次35.89个百分点是一次高方差的正向样本,下一次可能是15个百分点,再下一次可能是-5个百分点(如果风格切换延后或反转)。把单次结果当成”系统必胜”的证据,是量化交易最危险的认知陷阱——这一点我在 信号胜率从74%跌到19%的教训 里有血的教训。
六、可复用的经验:把”一次性信号”变成”可监控的触发器”
如果这篇文章只停在”看,我对了”,价值有限。更重要的是:如何把这次成功的逻辑,固化成一个可持续监控的风格切换触发器? 基于这次验证,我提炼了一个四条件的风格切换触发清单。当四个条件同时满足时,就是一次高置信度的风格拐点信号。
触发条件一:相对RSI极端分化
价值蓝筹端的RSI中位数低于25,成长动量端的RSI中位数高于65,且两端差值超过40。6月17日满足(买入组中位RSI≈28,卖出组中位RSI≈70,差值42)。这个条件过滤掉了”日常的小分化”,只捕捉极端背离。
触发条件二:ETF层面的价差确认
创业板/科创50与上证50的20日涨跌幅之差超过10个百分点。6月中旬这个差值已经在10个百分点以上(成长端强势、价值端滞涨),说明分化已经到了资金面难以维持的程度。这一条确保你看到的不只是指标背离,而是真金白银堆出来的价格背离。
触发条件三:基本面趋势过滤(防止踩中招商蛇口式的坑)
对买入端标的,检查所属板块是否处于基本面趋势性恶化中(用库存、价格、行业景气度等辅助判断)。如果板块基本面在持续恶化,即使RSI极低,也要降低仓位或剔除。这一条是这次验证”用失误换来的”——招商蛇口-7.84%的直接教训。
触发条件四:估值分位的环境校验
参考全市场估值温度计(如 7月27日周报)。当小盘/成长股指期货分位(IM0、IC0)处于偏高区间,而价值蓝筹分位偏低时,风格切换的”势能”更大。7月底IM0分位20.7%、IC0分位32.8%,已经进入低估区——这意味着经历7月暴跌后,成长端的风险释放已较充分,下一次风格切换的方向可能反过来。
一个简化的执行路径
对普通投资者来说,不需要操作10只个股。一个更简洁的执行方式是:当上述四个条件满足时,减仓创业板/科创类ETF,加仓上证50/红利类ETF。这次验证里,仅用ETF就能吃到约15个百分点的价差(创业板50 -14.61% vs 上证50 +1.29%),执行成本和流动性都远优于个股。
七、当前启示:经过7月暴跌后,系统现在应该看什么
复盘不是目的,指导当下才是。7月底的市场,和6月17日发信号时已经完全不同了。经过这轮成长股深调,我自己的系统现在关注三件事:
第一,价值股信号是否已部分兑现。 中国石油+13.61%、中国神华+8.55%这类资源蓝筹已经走出一波,它们的RSI很可能已经离开超卖区,继续追高的性价比在下降。蓝筹v2如果现在重跑,买入清单大概率会换一批标的——部分6月的买入信号已经”过期”。
第二,成长股是否进入新的超卖区。 7月28日当天涨幅榜清一色是300/301创业板小盘股,多只触及20%涨停板(300067 +20.09%、301421 +20.01%),但同期创业板ETF近20日仍跌14.73%。这种”指数跌+个股妖”的极端分化,意味着成长端可能在酝酿情绪性反弹。CSI800系统7月初(最新数据7月9日,有滞后)显示中证1000 RSI 38、创业板RSI 41,已接近超卖区——但需要区分”超卖反弹”和”熊市RSI钝化”,这是另一个需要单独成文的话题。
第三,风格切换是否正在反向酝酿。 7月的极端分化(价值赢、成长输)本身也是一种”新的极端”。如果价值蓝筹继续走强、成长股继续杀跌到更极端的位置,那么均值回归的天平会重新向成长端倾斜。估值周报显示IM0分位20.7%、IC0分位32.8%,成长股期货已经开始显现低估——这正是”上一次卖出信号”逐步兑现、“下一次反向信号”开始孕育的交界区。
结语:把验证做成习惯,而不是偶尔的勇气
这次42天的前瞻性验证,让我对”信号系统”这件事有了更立体的认识。
好的信号系统,不在于单次预测多准,而在于它敢被验证、能被验证、经得起验证。 6月17日那份”5买5卖”清单,如果我发完就丢、涨了吹跌了删,它就只是一段营销素材。但当我在42天后把10只标的的真实收盘价一张张表摆出来——包括招商蛇口的-7.84%、中国平安的勉强+2.73%——它才真正变成了知识:哪些逻辑被证实,哪些需要修正,下一次怎么改进。
这也是 AgentQuant 这个博客想坚持的东西。我不想做那种”每篇都在预言成功”的号,因为那不真实。真实的研究是:发信号、等结果、诚实验证、迭代规则。这次验证证实了均值回归在A股风格层面的有效性,也暴露了基本面过滤器的缺失(招商蛇口)、单次结果的高方差(35.89个百分点里有运气)。这些都是下一次信号的改进方向。
下一阶段我会做两件事:一是把蓝筹v2和CSI800这两个已经停更的 cron 重新跑起来(蓝筹v2停更42天、CSI800停更20天,验证期间它们安静得不是时候,得排查);二是把上面那个”四条件风格切换触发器”写成一个自动化的监控脚本,让系统在每个交易日收盘后自动检查、满足条件就推送。
把验证做成习惯,而不是偶尔鼓起的勇气。这是我从这42天里学到的最重要的一课。
本文所有个股价格数据来自本地 DuckDB(stock_daily 表,底层 CSV 由 pytdx 采集,路径 /home/user/quant/data/stocks/),ETF数据来自 etf_daily 表。信号端为 Hermes Agent 定时任务输出(cron ID 6b4ec2ef8a02,蓝筹v2系统,信号生成日期2026-06-17)。验证区间为2026-06-17至2026-07-28,价格已核对。本文为策略方法论复盘,不构成投资建议;提及个股仅为信号验证示例,不代表当前推荐。