Skip to content

第32章:股票池与可投资性过滤 ​

第31章最后得到了一个排序。但排序之前还有一步更容易被忽略的动作:决定给谁排序。

先看一个具体的场景。你写了一份过滤清单:剔除上市不满一年、剔除 ST 与退市整理股票、剔除长期停牌的、剔除日均成交额低于 1000 万元的、剔除总市值低于 20 亿元的、剔除净资产为负的。把这些条件加进去,回测年化从 18% 变成 26%。这 8 个百分点是不是"策略变好了"?这一章要回答的正是这件事。

本章围绕三个问题:每一条筛子到底在挡什么,挡住的原因是不是同一类;筛完之后,组合的风格有没有被悄悄改掉;ETF 候选池为什么不能用同一套筛子。

第31章停在一个排序上,第33章要把排序变成持仓。中间这一步交付的是两张名单:一张是可进入排序的 A 股个股池,一张是可进入排序的 ETF 候选池。两张名单的维护规则不同,本章分开讲。

边界先说清楚:本章第一节到第六节讲个股池,第七节讲 ETF 候选池。ETF 候选池不能用个股的筛子——它既没有 ST、净资产为负这类公司属性,又有一批个股没有的失效方式(清盘、合并、更换跟踪指数)。

一、先分清两条线:买不到,和不该持有 ​

现象。 那份过滤清单里,"剔除长期停牌"和"剔除净资产为负"看起来是一类动作——都是把不合格的挑出去。但换到实际交易里,这两只股票会让你遇到完全不同的事:停牌那只,你下不了单;净资产为负那只,你买得进,只是不想买。

这个区别决定了两条线的性质。两条线的差别用文字也能说清,但它们各自处在池子的哪一步、筛完之后剩下什么、这些股票最后送去哪里,串成一张漏斗更容易一眼看清:

股票池的两条过滤线

读图:全市场股票自上而下经过两道关卡。第一道是交易上做不到——不是这些股票表现差,而是那一笔交易在当时根本发生不了。第二道是业务上不该持有——买得进,但你不想要。右侧标出了两道关卡各自带走什么。要注意图的最后一部分:两条线的输出不是终点,终点是送给第31章那套打分排序的名单。

第一条线:交易上做不到。 上市初期的股票(没有可比的收益率序列)、停牌股、一字板、成交额小到无法成交的股票。剔除它们的理由是那笔交易根本发生不了。这一条线的方向是确定的:不剔除,回测收益一定偏高(第30章的"不可成交价格")。

第二条线:业务上不该持有。 ST(简称前面带风险警示标识的股票,第三节展开)、退市风险、财务已经异常、市值小到没法管理。剔除它们是投资判断,不是执行约束——买这些股票在技术上完全可以做到。

为什么必须分开? 因为第一条线几乎没有可争议的余地,"那天不能成交"是事实;而第二条线每一条都可以反过来问一句"凭什么",而且每一条都会顺手改变组合的风格(第六节)。把第二条线混进第一条线的名单里,最容易发生的事是:你以为自己只是在"让回测更贴近现实",实际上在做一次没有记录、也没有检验的选股决策。

落到决策: 维护两张表,而不是一张过滤清单。

  • 不可交易名单:由制度与行情数据自动生成,每个调仓日重算,不写死在配置文件里(上市日期、停牌状态、当日是否一字板、当日成交额)。
  • 主动排除名单:由投资规则决定。每一条都要写清"排除什么、为什么、会影响哪一类股票",并在回测报告里单独统计它贡献了多少收益。

边界。 两条线不是非此即彼。比如"上市不满一年"既是"算不出可比的因子值"(第一条线),也可能是"次新股整体长期表现不佳"(第二条线)。遇到这种双重身份的条件,要明确自己用的是哪个理由——它决定了这条线该不该按参数去做邻域检验。

二、上市时间过滤:新股缺的不是时间,是历史 ​

现象。 一只上市 40 天的股票出现在你的排序里,还排进了前 10%。点开看:过去 20 日涨了 60%,换手率 15%,成交额 8 亿元,看着又强又活跃,动量因子和换手率因子都给了高分。但它上市首日之后的走势是连续一字涨停——这 60% 里,你一分钱也赚不到,因为你买不进去。

新股的问题不是"时间短",而是每一列因子都还没有可比的历史:

  • 价格类因子:收益序列被涨跌停截断(第3章),算出来的波动率没有意义;20 日涨幅里还含着上市首日的高开。
  • 财务类因子:没有同比数据。成长因子(第23章)需要去年同期,质量因子(第22章)要看"多年中位回报"——上市才一个季度,无从说起。
  • 交易类因子:换手率极高(打新与炒新资金),Amihud 落在极端位置(第25章)。这些数字是"新股"这个状态的特征,不是这家公司的特征。
  • 还有一条容易忘掉的:上市一年内,首发原股东的限售股陆续解禁(第26章),供给冲击会被算进因子的"预测能力"里。

先看量级,再决定这条线画在哪里。 新股的历史表现不是单调的"差":

  • 开源证券对 2014—2020 年上市新股做过统计:上市或开板首日起 12 个月内股价高度分化,2020 年涨幅前 20% 的新股平均上涨 51.3%,后 20% 平均下跌 50.3%。
  • 证券时报·数据宝的口径是:2014—2016 年上市一年内的新股平均涨幅均超过 100%,2016 年以后再没出现过;2021 年上市的新股自上市以来平均涨幅不到 15%,是近九年最低。
  • 长期趋势是向下的:通达信次新股指数(动态收录上市一年内的股票)从 2017 年 3 月 23 日的 7616.89 点跌到 2025 年 4 月 9 日的 842.65 点,跌幅 88.94%。
  • 但短期完全可以反过来:在 2026 年 5 月上旬往前数的 1 个月里,同一个指数上涨了 25.11%。

这些数字放在一起的含义是:新股不是一类"会跌的股票",而是一类"波动来源不同、数字不可比"的股票。 它可以在一个月里猛涨,也可以长期向下——上面第三个和第四个数字讲的是同一批股票,只是时间尺度差了九年。所以剔除新股的理由应该写成"这列数字没有可比性",而不是"新股会跌"——后者会把你引向错误的检验方式。

通常做法: 上市满 6 个月或 12 个月才进池。这是两个常见取值,不是标准答案,切多少个月是要检验的参数(第30章)。

代价与边界。 ① 这是一条硬切:线两侧的股票差异很大,切 6 个月还是 12 个月会显著改变结果,所以要事先写死,并做参数邻域检验。② 它放弃了一类信息——早期买入高成长公司本身就是一种投资逻辑。③ 它会系统性改变池子的行业构成:近年上市的公司集中在电子、计算机、电力设备、医药等行业(第2章、第16章),剔除新股会让池子偏向传统行业。这一条直接连到第六节。

三、风险警示股票:ST 过滤先是操作约束,然后才是风险判断 ​

现象。 ST 股票在交易软件里能正常下单,为什么几乎所有量化策略都把它剔掉?

先把它是什么说清。风险警示是交易所对存在重大风险状况的公司股票加的一个特别标识,简称前面加 "ST"(其他风险警示)或 "*ST"(退市风险警示)。它带来的不是"禁止交易",而是一组限制:

  • 首次买入之前,必须签署《风险警示股票风险揭示书》,未签署的,券商不得接受买入委托(卖出不受此限制);
  • 只能使用限价委托(自己指定一个价格挂单,等对手方来成交),不能使用市价委托(按盘口现成的报价立刻成交);
  • 退市整理股票(第27章:交易所作出终止上市决定后的 15 个交易日整理期)另有更严的适当性要求:个人投资者需要 2 年以上股票交易经历,且申请开通权限前 20 个交易日日均资产不低于 50 万元;不符合条件的只能卖出已持有的部分,而且每次下单前都要确认风险提示。

也就是说,ST 池子不是一个"收益特征不同"的池子,而是一个"操作方式不同"的池子。 对一个自动化策略来说,"要签协议、只能限价、部分账户买不了"本身就足够构成把它排除在外的理由。

涨跌幅这一条要单独讲,因为它 2026 年刚变过。 主板风险警示股票的涨跌幅限制长期是 ±5%,2026 年 7 月 6 日起调整为 ±10%,与主板普通股票一致(沪深交易所同步修订交易规则,当时涉及主板约 150 只 ST 与 *ST 股票);创业板与科创板的 ST 股票仍是 20%,北交所的 *ST 股票仍是 30%。

这件事的意义超出 ST 本身:它是"过滤条件必须带生效日期"的最好例子。 用今天的 ±10% 去回测 2020 年,会把当年的 ST 股票按普通股票的波动区间处理,一字板的判定、可成交性、甚至波动率都会算错(第3章、第27章)。规则表要按日期存,不能只存最新版。

通常做法: 剔除 ST 与 *ST,以及退市整理期股票。有些策略只剔除 *ST、保留 ST,理由是被实施其他风险警示的公司里仍有经营正常的。

代价与边界。 ① 剔除 ST 几乎一定会让回测变好,但改善的部分不是因子的贡献——它是"我换了一个股票池"。这两件事在归因报告里必须分开写,否则第38章会把池子调整的收益记到因子头上。② ST 股票不是天然下跌的资产,它的价格里含着重组与壳价值的预期(第20章)。③ 如果一个策略的原型就是"困境反转",剔除 ST 等于把策略本身删掉了——那属于换了一个策略,要重新做完整检验,而不是"清理数据"。真要做,就单独建池、单独算成本与容量。

四、停牌与涨跌停:这两条挡的是当天真的做不出的交易 ​

现象。 信号说买入某只股票,那天它一字涨停,全天几乎没有成交。回测按开盘价给你成交了,实盘你挂了一天也没买到。这不是数据错误,是第30章"不可成交价格"在股票池这一层的表现。

停牌要分成两类,它们对池子的影响完全不同。

  • 例行停牌:股东大会、重大事项,通常 1 天,对策略几乎没有影响。
  • 长期停牌:重大资产重组等,停牌数月。这才是问题所在。第27章讲过,停牌期间的价格是"陈旧价格"——它不反映任何新信息,却会被算进收益序列。

处理要分成两层,不能混:

  • 信号层:停牌股当天标记为"不可交易"。注意这和"因子缺失"不是一回事——第28章讲缺失值时的三类处理在这里都不适用,因为事实是"今天这只股票不在市场上",不是"这个数没取到"。
  • 持仓层:已经持有的停牌股只能被动持有,卖不掉(第34章)。回测里如果允许你在停牌期间卖出,收益会凭空变好。

常见门槛:连续停牌超过一定交易日数(比如 5 到 20 日)的股票出池。门槛放得越宽,池子里留下的"陈旧价格"越多。

涨跌停要区分两种情形:一字板(开盘即封死、全天几乎没有成交)与触及涨跌停但仍有成交。第3章讲过这个区别,第24章给过三条处理规则(剔除不可成交的股票、事先约定订单处理方式、统计不可成交的比例)。这里补一句:这三条规则是股票池维护的一部分,不是回测引擎的内部细节。 一只股票当天可不可成交,决定了它今天在不在你的池子里。

板块规则差异:门槛不是研究问题,是账户问题 ​

不同板块的规则会直接决定"哪些股票你的账户根本买不了",这必须在建池时就处理掉,不能留给回测去发现。

维度主板创业板科创板北交所
日涨跌幅限制10%20%20%30%
新股上市初期安排前 5 个交易日不设涨跌幅前 5 个交易日不设涨跌幅前 5 个交易日不设涨跌幅上市首日不设,次日起 30%
个人投资者开通门槛无资产要求开通前 20 个交易日日均资产 10 万元 + 24 个月交易经验50 万元 + 24 个月交易经验50 万元 + 24 个月(已开通科创板可豁免资产与经验核验)
风险警示股票涨跌幅10%(2026 年 7 月 6 日起,此前 5%)20%20%30%

这张表的作用是提醒你:一个包含科创板的策略,默认要求账户有 50 万元资产和两年交易经验;而一个包含北交所的策略,还要回答"那里日均成交额与沪深差一个量级,组合容量还剩多少"(第41章)。多数只做多的个人策略会把北交所单独处理或者整体剔除——理由不是北交所的股票不好,而是交易成本与容量撑不住。

落到决策: 不可交易名单要每个调仓日重算,并且记录每一只股票当天因为哪一条被剔除。原因统计本身就是诊断工具:如果某个月有三百只股票因为一字板被剔除,说明你的因子在追涨停(第24章)。

五、流动性、微盘与财务异常:三条筛子各自带走什么 ​

这三条都属于第一节说的"第二条线"(主动排除),但性质并不一样:流动性是执行约束,微盘是风险与容量判断,财务异常是投资判断。放在一节里讲,是因为它们最常被一起写进同一份过滤清单,然后一起被当成"清理数据"。

流动性:成交额门槛同时在做一次隐性的规模筛选 ​

现象。 你设了"日均成交额不低于 1000 万元"。这条线的本意是"保证我的单子能成交"。但把被它剔掉的那批股票翻出来看看,会发现大部分是小盘股——你以为你在筛流动性,实际上一半的力气用在筛市值上。

第25章讲过 Amihud 非流动性指标(单位成交额推动价格多少)。这里要用的是它的倒推用法:门槛不该是一个拍出来的金额,而该从你自己的委托规模推出来。

Dmin=Cq

Dmin 是日均成交额下限,C 是你在单只股票上打算投入的钱(单笔委托金额),q 是你愿意让自己的单子占该股当日成交额的比例。举例:单笔 50 万元、愿意占比 10%,门槛就是 500 万元;如果认为占比只能到 2%,门槛变成 2500 万元。q 怎么定属于第41章的容量问题——占比越高,你自己的买入行为就越会推动价格,滑点越大。

代价要说清:成交额与市值高度相关,所以这条线会自动砍掉一批小盘股。 第30章有一个明确的先例:Hou、Xue 和 Zhang(2020)用统一口径重跑了 452 个已发表的异象,剔除最小市值股票、并改用市值加权之后,大部分异象消失。"为了让回测能成交"而加的流动性门槛,有可能正好把你因子里最赚钱的那一段删掉。

落到决策: 报告门槛前后的市值分位分布变化(做法见第六节)。如果市值中位数被抬高了一半以上,就要在归因里写明"这一部分收益来自可投资性筛选,不是来自因子"。

微盘:单列一条,因为它和容量、退市、壳价值三件事绑在一起 ​

现象与定义。 "微盘"是一个口语化的划分,常用口径是总市值或流通市值低于 20 亿元或 30 亿元。它不是一条固定的线,因为落在这条线下面的公司数量本身就在大幅变化。

证券时报·数据宝统计的"流通市值不足 20 亿元"的公司家数:2026 年 3 月 23 日是 407 家,5 月 15 日是 285 家,7 月 20 日是 640 家。同一条线,四个月里筛出的家数相差一倍以上。 这意味着"剔除微盘"这条规则在不同时点做的事很不一样,而它剔掉的那张名单里还混着大量 ST 股票。

为什么微盘要单列,而不是并进流动性门槛? 因为它同时压着三件事:

  1. 容量。 微盘股成交额小,资金规模稍微大一点,就没法在不动价格的前提下建仓(第41章)。
  2. 退市风险集中。 第30章的数字:2024 年 A 股退市 52 家,其中 40 家是因连续 20 个交易日收盘价低于 1 元的面值退市,占七成以上。面值退市天然发生在低价、小市值的公司里。被这条线剔掉的股票里,有相当比例会走向退市。
  3. 壳价值会变。 第20章讲过:上市资格的稀缺性让"市值小、盈利差"的公司获得重组价值,而这个价值基础随注册制推进与退市趋严而改变。

边界。 剔除微盘会显著改变小市值策略的表现。这不是"清理数据",是关掉一个因子。要做小盘策略,就必须接受微盘的容量与退市问题并单独评估;不能在主池里"顺手"剔掉,然后声称规模因子的收益已经被验证过。

财务异常:只筛"硬"的,否则和第22章的质量因子算了两遍 ​

现象。 你在过滤层加了"剔除净资产为负、剔除毛利率连续两年下滑、剔除应收账款增速超过收入增速 50% 以上、剔除商誉占净资产超过 30%"。跑出来比不加好很多。问题在于:后三条正是第22章质量因子的原料。

  • 硬的信号(规则明确、几乎没有解释空间):净资产为负、审计报告被出具无法表示意见或否定意见、被交易所认定存在资金占用或违规担保、已进入退市风险警示程序。这些适合直接做过滤条件。
  • 软的判断(毛利率下滑、应收激增、商誉占比高、经营现金流低于净利润):这些应该交给因子分数。

为什么软判断要交给分数,而不是过滤器? 三个原因:

  1. 会重复计权重。 在过滤层剔掉一批"质量可疑"的公司,又在打分时给质量因子 1/4 的权重,等于给质量算了两次(第31章第四节"两个因子在说同一件事")。
  2. 会看不见。 被静默删除的公司不会出现在任何归因里。你没法回答"这个策略排除了多少家公司、它们后来表现如何"。
  3. 会切掉可检验的空间。 财务可疑不等于一定出事。交给分数,这个判断才处在可以被检验、被调参、被推翻的位置上。

边界。 硬信号也有时滞:一条"被立案调查"的公告有自己的公告日,它的可用日同样要按第27章的规则取。

六、每一条过滤都是在悄悄调整组合的暴露 ​

现象。 把本节前面的规则连起来看,会发现一件不像是巧合的事:"剔除上市不满一年"(小公司里新股多)、"剔除市值低于 20 亿"(小公司)、"剔除成交额低于 1000 万"(小公司)三条线,指向的是同一类股票。 你以为做了三件事,实际是同一件事做了三次,而那件事是"避开新上市的小公司"。

这不是错误,而是必须被记录的动作。 把哪些股票、行业或风格放多少比重进组合,业内叫暴露(第17章、第28章都用过这个词)。股票池的调整和因子权重的调整在做同一件事——改变暴露。区别在于:因子权重写在报告里、要过检验;股票池调整经常只写在代码里。

检查有三步,从便宜到贵。

第一步,看数量的变化。 过滤前后剩多少只股票、被剔掉的部分长什么样。这一步最便宜,也最能暴露问题。如果被剔掉的股票里有一半以上来自同一两个行业,说明你的过滤条件其实是一条行业规则。

第二步,看暴露的变化。 把过滤前后的池子分别算几个数:市值中位数、各行业权重、价值/质量/成长因子的分位均值。下图是用来说明要看什么形状(数据为示意):

过滤前后股票池的市值分位分布变化

读图:横轴是市值分位档,左端是最小的 10%、右端是最大的 10%;每档有两根柱子,深色是过滤前、浅色是过滤后。过滤前,股票数量从最小的那一档开始逐档下降——这是 A 股市值分布右偏(第20章、第28章)在股票数量上的表现。过滤后,各档数量变得接近,被削掉最多的是最左边那一档,大约少了四百只,而右侧几档的数量基本没动。图要说明的是:过滤确实减少了股票数量,但它不是平均地减少,而是几乎全部从小的那一头减。

再把上面读到的分布压成几个可以写进报告的数(同样是示意):

指标过滤前过滤后变化说明
股票数量4880 只3990 只剔掉约五分之一
市值中位数80 亿元150 亿元重心被推向大市值
机械设备行业权重12%8%小公司集中的行业被削
电子行业权重11%14%大市值电子公司占比上升
质量因子分位均值5258过滤顺手加了 6 分质量

这张表里有两条要特别留意:市值中位数从 80 亿抬到 150 亿,说明这套组合在还没做任何因子之前,就已经主动放弃了小盘;质量分位从 52 涨到 58,说明你还没用质量因子,就已经拿到了 6 分的质量优势。这两件事都会变成第38章归因里"市值下沉的收益"和"质量暴露的收益",而它们跟你的因子没关系。

第三步,做一次对照回测。 同一套因子分数,分别在"宽池"(只保留第一条线的可成交性过滤)和"过滤池"上各跑一遍。两种结果的差别回答的是一个很直接的问题:

  • 宽池也赚钱、只是低一些 → 过滤主要是成本(用来换可成交性),可以接受;
  • 宽池根本不赚钱 → 超额收益来自"过滤"这个动作本身,而不是来自因子。这时要么承认策略其实是"避开新上市小公司"的风格投资,要么回到因子层去研究这件事为什么有效。

落到决策:过滤条件必须和因子一起进归因报告。 第38章会把市场、行业、市值、个股选择四类收益拆开——如果这里没有记录池子被改过,那里的归因会给出错误答案。

边界。 不做过滤也不行,那会引入第30章讲的一整类偏差。所以正确的目标不是"避免改变暴露",而是知道改变了多少,并把改变的程度写进报告。

七、ETF 候选池要单独维护:三张筛子不一样 ​

现象。 你把个股的过滤清单直接套到 ETF 上:ETF 没有 ST,没有净资产为负,也没有"上市不满一年算不出同比"的问题(它上市之前就有净值序列)。反过来,ETF 有一批个股没有的失效方式——清盘、合并、更换跟踪指数。同一套筛子套上去,漏掉的全是 ETF 真正会出问题的地方。

第18章已经给过同一指数多只 ETF 的筛选框架(规模、成交额、价差、做市、申赎、跟踪质量、折溢价)。这一节不重复那张清单,只讲三件在建池阶段才会遇到的事。

上市时间、规模与成交额:清盘线让规模变成一条硬约束 ​

ETF 的"上市时间"要等的东西不一样。 个股等的是财务可比性;ETF 等的是:①足够长的可交易记录去算跟踪误差;②走完建仓期,避开上市初期因为建仓未完成而产生的大幅偏离;③开局那段高溢价、低流动性的阶段过去。

规模为什么是硬约束,而不是偏好。 公募基金的合同里通常写着:基金合同生效后,连续 20 个工作日出现基金份额持有人数量不满 200 人、或基金资产净值低于 5000 万元的情形,管理人应当报告并说明原因;连续 60 个工作日出现上述情形的,多数合同直接约定基金合同终止并进入清算,无需召开持有人大会。

把这条规则翻译成策略语言:规模贴近清盘线的 ETF 不是"风险高",而是"确定会在某个时点消失",而它会以你无法选择的价格把持仓变成现金。

这不是个别现象。 到 2025 年三季度末,全市场还有 2924 只基金(不同份额分开计算)规模不足 5000 万元,其中 324 只不足 1000 万元——它们每一只的合同里都写着上面那条终止条款;作为对照,2025 年全年清盘的基金超过 270 只,其中就包含 ETF。近三千只产品贴着同一条线,意味着"买了一只后来消失的 ETF"不是小概率意外。

落到决策: 候选池设一条规模下限(常见 2 亿元或 5 亿元,这是示意值,不是标准),低于这条线的不进池;并且记录这个规模是哪一天取的。

成交额与价差是产品属性,与底层指数无关——同一指数的两只 ETF,成交额可以差几十倍(第18章)。门槛按自己的单笔规模倒推(用第五节的式子),不要用"越大越好"的直觉。

还有一条与个股最不一样的地方:ETF 的规模会自己缩水。 一只曾经 50 亿元的 ETF 可能因为持续赎回变成 3 亿元。所以规模必须取调仓日当时的值,不能用今天的——这和个股要取"形成日当时可见的股本"是同一个纪律(第20章、第27章)。

跟踪质量与折溢价:这两条只在 ETF 池里出现 ​

第18章解释过跟踪偏离度(长期少拿了多少、往哪个方向偏)与跟踪误差(差异是否稳定),也解释过折溢价的算法。到了建池这一步,它们变成两条具体的线:

  • 跟踪误差设上限:跟踪误差衡量的是 ETF 收益与指数收益之间差异的波动幅度——差异时大时小、不稳定,这个数就大(算法见第18章)。你要的是"准确交付这个市场的收益",就不能接受一个长期偏离过大的产品。
  • 折溢价绝对值设上限:折溢价是二级市场价格相对基金净值的偏离,溢价意味着你付出的价格高于基金真实的资产价值(算法见第18章),买进去就等于立刻亏掉那部分差额。跨境 ETF 尤其要小心——因为额度限制与限购,溢价可以到 10% 以上并且持续很久,此时折溢价是主要风险,不是次要指标。

边界。 这两条线没有通用标准,但有一个判断顺序:先定用途,再定线。 同一只 ETF,拿来做长期配置时对跟踪误差的要求更高——你要持有它几年,长期偏离会一直累积;拿来做短期轮动时它反而没那么要紧,持有几周就换掉,长期偏离还没显现出来。折溢价的要求正好相反:轮动策略频繁进出,每次多付一点溢价,几次下来就是实实在在的成本,所以对折溢价的容忍度要更低。把用途写在前面,这两条线才不会变成拍出来的数字。

指数变更、清盘合并与持续营销:ETF 版本的幸存者偏差 ​

ETF 候选池有三个个股没有的失真来源,共同点是它们都会让"今天的名单"不等于"当时的名单":

  1. 指数变更。 ETF 可以更换跟踪的标的指数。同一个代码,前后跟踪两个完全不同的市场。历史序列被拼在一起,回测会把它当成一个连续的策略。→ 候选池必须记录"该产品在每个调仓日跟踪的是哪个指数"。
  2. 清盘与合并。 清盘时份额被变现,合并时换成另一只产品的份额。如果回测只取今天还在的产品,你保留的就是"活下来的赢家"——也就是只统计活到今天的样本、把已经消失的那些漏掉,这就是第30章讲的幸存者偏差在 ETF 上的形态,第18章也用 A、B、C 三只同指数 ETF 分别存续、清盘、合并的例子讲过。
  3. 持续营销。 ETF 的规模常常靠渠道短促冲量:季末规模暴增,之后回落。用"当前规模"去筛历史候选池,会把当时规模很小、根本不该入选的产品放进来。

落到决策: ETF 候选池的维护规则和个股池一样要带日期,但要多记三列个股没有的字段:跟踪指数、规模与份额、折溢价。这三列在任何时点都必须取"那一天的值"。

本章小结 ​

  • 先分清两条线:交易上做不到(上市初期、停牌、一字板、成交额过小)与业务上不该持有(ST、退市风险、财务异常、微盘)。前者是事实,后者是判断。两者分开记录,回测报告里分别统计各自贡献了多少收益。
  • 新股的真正问题是"每一列因子都还没有可比的历史":涨跌停截断的收益序列、没有同比财务、打新资金造成的极端换手、限售股解禁。它的表现高度分化,不是单调地差——2020 年上市新股 12 个月内涨幅前 20% 平均 +51.3%、后 20% 平均 −50.3%;次新股指数长期跌幅 88.94%,但短期也能一个月涨 25%。常见门槛是上市满 6 个月或 12 个月,切多少是要检验的参数。
  • ST 过滤首先是操作约束:首次买入要签风险揭示书、只能限价委托,退市整理股票要求 2 年交易经验 + 20 个交易日日均资产 50 万元。主板 ST 股票的涨跌幅 2026 年 7 月 6 日从 ±5% 改为 ±10%(创业板、科创板仍为 20%)——过滤条件必须带生效日期。
  • 停牌要分信号层与持仓层:信号层标记"不可交易"(不等于因子缺失),持仓层承认"卖不掉"。涨跌停造成的不可成交性属于股票池维护,不属于回测引擎细节。板块的投资者门槛不是研究问题,是账户问题。
  • 流动性门槛要从自己的委托规模倒推(单笔金额 ÷ 愿意承担的成交额占比),不要拍一个金额。它同时是一次隐性的规模筛选——Hou、Xue 和 Zhang(2020)剔掉最小市值股票后大部分异象消失,就是这条线代价的上限。
  • 微盘单列,因为容量、退市(2024 年 40 家面值退市,占当年退市七成以上)、壳价值三件事同时压在上面。同一条"20 亿元以下"的线,2026 年 3 月筛出 407 家、5 月 285 家、7 月 640 家。
  • 财务异常只筛"硬"的(净资产为负、非标审计意见、立案调查)。软的判断交给第22章的质量因子分数,否则等于给质量算了两次权重,而且被静默删除的公司在归因里看不见。
  • 每一条过滤都是一次没写进因子表的暴露调整。 三步检查:看数量与行业、看市值与因子分位的变化、用宽池与过滤池做对照回测。过滤条件要和因子一起进归因报告(第38章)。
  • ETF 候选池单独维护:它等的是可交易记录而不是财务可比性;规模是硬约束(连续 60 个工作日低于 5000 万元,多数合同直接清盘;2025 年全年清盘基金超 270 只);还要多记三列——跟踪指数、规模与份额、折溢价,因为 ETF 会更换跟踪指数、会清盘合并、规模会被持续营销做出来。

下一章把这张名单变成持仓:从排序里选前 N 只还是分层选、等权还是按因子权重加权、单只股票与单个行业最多配多少,以及为什么需要一条缓冲区来降低换手。