方正因子球队硬币 (hf_prefactors_fz_team_coin)

数据描述:

文档
数据简介

# hf_prefactors_fz_team_coin ## 文献来源 - **标题**: 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》 - **作者**: 曹春晓 - **机构**: 方正证券 - **时间**: 2022-06-11 研报借用 Moskowitz(2021)的「球队 / 硬币」隐喻:人们对「抛硬币」这件事的「可知性」高,倾向以反转的眼光看待它;对「新赛季哪支球队夺冠」的可知性低,只能以历史成绩外推,于是以动量的眼光看待它。把这套预期搬到股票上却会事与愿违——被当成「球队」(预期动量)的股票因提前超买超卖而实际发生反转,被当成「硬币」(预期反转)的股票实际发生动量。因此只要判断出一只股票当下更像硬币还是更像球队,就能把传统反转因子中混入的动量部分翻转过来,让它成为名副其实的反转因子。研报用波动率水平与换手率变化量两个交易类指标作为「可知性」的代理:波动率低、换手率下降的股票可知性高,属硬币。 本表基于 `cn_stock_prefactors` 输出 12 个因子,全部由日频开盘价、收盘价与换手率派生,共用同一次日频表扫描,故合并为一张表。按研报推进顺序分为四组:日间收益率维度 3 个(研报 2.4~2.6 节)、日内收益率维度 3 个(2.7~2.9 节)、隔夜收益率维度 4 个(2.10~2.13 节)、最终合成的 `team_coin` 与正交化后的 `team_coin_pure`(2.14~2.15 节)。 两类研报内容不作为本表字段输出:一是研报用作比较基准的三个传统因子(传统反转、传统日内反转、传统隔夜涨跌,即各维度收益率的 20 日均值),它们只承担对照作用,不是本篇要交付的信号;二是 2.1 节的「净动量比例」及其衍生的「均净动量比例」「稳净动量比例」,它们需要用到下一期收益率、且每期只有一个市场级取值,不是可用于选股的个股因子。 ## 表结构 - **表名**: `hf_prefactors_fz_team_coin` - **主键**: `date` + `instrument` - **记录粒度**: 每个交易日每只股票一条记录 | 字段 | 类型 | 可空 | 含义 | | ---- | ---- | ---- | ---- | | `date` | `PlDatetime` | 否 | 交易日期 | | `instrument` | `PlString` | 否 | 股票代码 | | `interday_reversal_vol_flip` | `PlFloat64` | 是 | 日间反转-波动翻转因子,20 个交易日日间收益率(收盘价对上一日收盘价)的均值,其中 20 日日间收益率波动率低于当日截面均值的个股(硬币型)取相反数,其余保持不变;值越大未来收益越低 | | `interday_reversal_turn_flip` | `PlFloat64` | 是 | 日间反转-换手翻转因子,先按当日换手率变化量是否低于截面均值逐日翻转日间收益率的符号,再取过去 20 个交易日翻转收益率的均值;值越大未来收益越低 | | `interday_reversal_revised` | `PlFloat64` | 是 | 修正日间反转因子,`interday_reversal_vol_flip` 与 `interday_reversal_turn_flip` 各自截面标准化后等权平均;值越大未来收益越低 | | `intraday_reversal_vol_flip` | `PlFloat64` | 是 | 日内反转-波动翻转因子,20 个交易日日内收益率(收盘价对当日开盘价)的均值,其中 20 日日内收益率波动率低于当日截面均值的个股(硬币型)取相反数,其余保持不变;值越大未来收益越低 | | `intraday_reversal_turn_flip` | `PlFloat64` | 是 | 日内反转-换手翻转因子,先按当日换手率变化量是否低于截面均值逐日翻转日内收益率的符号,再取过去 20 个交易日翻转日内收益率的均值;值越大未来收益越低 | | `intraday_reversal_revised` | `PlFloat64` | 是 | 修正日内反转因子,`intraday_reversal_vol_flip` 与 `intraday_reversal_turn_flip` 各自截面标准化后等权平均;值越大未来收益越低 | | `overnight_distance` | `PlFloat64` | 是 | 隔夜距离因子,先把每日隔夜收益率减去当日截面均值再取绝对值得到「与最平静开盘的距离」,再取过去 20 个交易日的均值;值越大说明开盘报价越激进、越容易反应过度,未来收益越低 | | `overnight_reversal_vol_flip` | `PlFloat64` | 是 | 隔夜反转-波动翻转因子,把 20 日隔夜距离波动率低于当日截面均值的个股(硬币型)的 `overnight_distance` 取相反数,其余保持不变;值越大未来收益越低 | | `overnight_reversal_turn_flip` | `PlFloat64` | 是 | 隔夜反转-换手翻转因子,按上一交易日「换手距离」是否低于截面均值逐日翻转隔夜距离的符号,再取过去 20 个交易日翻转隔夜距离的均值;值越大未来收益越低 | | `overnight_reversal_revised` | `PlFloat64` | 是 | 修正隔夜反转因子,`overnight_reversal_vol_flip` 与 `overnight_reversal_turn_flip` 各自截面标准化后等权平均;值越大未来收益越低 | | `team_coin` | `PlFloat64` | 是 | 球队硬币因子,`interday_reversal_revised`、`intraday_reversal_revised`、`overnight_reversal_revised` 各自截面标准化后等权平均;值越大未来收益越低 | | `team_coin_pure` | `PlFloat64` | 是 | 纯净球队硬币因子,`team_coin` 在当日截面上对申万一级行业哑变量与十个常见风格因子做多元回归后的残差;剥离风格与行业暴露后的增量信息,方向与 `team_coin` 一致 | ## 依赖数据 | 依赖表 | 频率 | 用到的字段 | 用途 | | ---- | ---- | ---- | ---- | | `cn_stock_prefactors` | 日频 | `date`、`instrument`、`open`、`close`、`turn`、`sw2021_level1`、`total_market_cap`、`pb`、`roe_avg_ttm`、`total_operating_revenue_ttm`、`debt_to_asset_lf`、`daily_return`、`beta_000300SH_22` | `open`、`close`(均为后复权)派生日间 / 日内 / 隔夜三种收益率,是前 11 个因子的全部输入;`turn` 派生换手率变化量与「换手距离」,用于换手翻转类因子的硬币 / 球队判定;后 8 个字段仅供 `team_coin_pure` 使用,`sw2021_level1` 生成行业哑变量,其余构造市值、非线性市值、估值、盈利、成长、杠杆、流动性、反转、波动率、贝塔十个风格因子作为回归自变量 | 本表只依赖一张日频表,全部因子共用一次扫描。前 11 个因子只需回溯 22 个交易日(20 日窗口 + 换手率差分与滞后各 1 日),但 `team_coin_pure` 的成长风格因子要与 250 个交易日前的营业总收入 TTM 相比,因此实际读取区间统一按它定为输出区间向前扩 255 个交易日(250 + 5 个交易日余量)。日频表单日全市场约 5600 行,扩到 255 个交易日约 140 万行,成本远低于分钟或逐笔表;单日增量与按年回填的扫描量分别约为 140 万行与 280 万行。 ## 因子列表 ### interday_reversal_vol_flip **中文名**: 日间反转-波动翻转 **描述**: 用日间收益率的波动率水平代理「可知性」,在月频维度上识别可能发生动量效应的股票,并把它们的传统反转因子值翻转过来。传统反转因子即过去 20 个交易日日间收益率的均值,A 股整体呈反转效应,但该因子自 2017 年以来表现走弱,研报认为原因是其中混入了大量呈动量效应的个股。波动率低说明股价走势相对稳定,投资者容易对其未来趋势作出判断,可知性高,属硬币型股票,未来更可能发生动量效应。 **构建逻辑**: 1. 每天计算所有股票的日间收益率,即 $t$ 日收盘价除以 $t-1$ 日收盘价再减 1。 2. 每月月底计算最近 20 天日间收益率的均值和标准差,作为当月的日间收益率(即传统反转因子)和日间波动率。 3. 比较每只股票的日间波动率与市场截面均值的大小关系:日间波动率小于市场均值的股票视为「硬币」型,由于未来发生动量效应的概率更大,将其当月日间收益率乘以 $-1$;日间波动率大于市场均值的股票视为「球队」型,未来发生反转效应的概率更大,因子值保持不变。变换后的因子即「日间反转-波动翻转」因子。 ```math r^{\text{inter}}_{i,t} = \frac{P^{\text{close}}_{i,t}}{P^{\text{close}}_{i,t-1}} - 1 ``` ```math \mu_{i,t} = \frac{1}{20}\sum_{k=0}^{19} r^{\text{inter}}_{i,t-k} \qquad \sigma_{i,t} = \operatorname{std}\left(r^{\text{inter}}_{i,t-19},\dots,r^{\text{inter}}_{i,t}\right) ``` ```math \text{VolFlip}^{\text{inter}}_{i,t} = \begin{cases} -\mu_{i,t}, & \sigma_{i,t} < \overline{\sigma_t} \quad (\text{硬币}) \\ \mu_{i,t}, & \sigma_{i,t} \ge \overline{\sigma_t} \quad (\text{球队}) \end{cases} ``` 其中 $\overline{\sigma_t}$ 为 $t$ 日全市场 $\sigma_{i,t}$ 的截面均值。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 ### interday_reversal_turn_flip **中文名**: 日间反转-换手翻转 **描述**: 用换手率的变化量代理「可知性」,在日频维度上识别可能发生动量效应的股票,并把这一天的日间涨跌幅翻转过来。换手率下降表示投资者对股票的意见分歧逐渐减少,可知性提高,属硬币型股票。与波动翻转在月频上整体翻转不同,换手翻转逐日判定、逐日翻转,因此同一个 20 日窗口内不同交易日的符号可以各不相同。 **构建逻辑**: 1. 计算每只股票 $t$ 日换手率与 $t-1$ 日换手率的差值,作为 $t$ 日换手率的变化量。 2. 将每只股票的换手率变化量与当日全市场换手率变化量的均值做比较:变化量高于市场均值的为「球队」型股票,未来大概率发生反转效应;低于市场均值的为「硬币」型股票,未来大概率发生动量效应。 3. 计算每只股票 $t$ 日的日间收益率,将「硬币」型股票的日间收益率乘以 $-1$,「球队」型股票的日间收益率保持不变,记变化后的日间收益率为「翻转收益率」。 4. 每月月底,计算最近 20 天「翻转收益率」的均值,即本月的「日间反转-换手翻转」因子。 ```math \Delta\text{turn}_{i,t} = \text{turn}_{i,t} - \text{turn}_{i,t-1} \qquad \tilde{r}^{\text{inter}}_{i,t} = \begin{cases} -r^{\text{inter}}_{i,t}, & \Delta\text{turn}_{i,t} < \overline{\Delta\text{turn}_t} \quad (\text{硬币}) \\ r^{\text{inter}}_{i,t}, & \Delta\text{turn}_{i,t} \ge \overline{\Delta\text{turn}_t} \quad (\text{球队}) \end{cases} ``` ```math \text{TurnFlip}^{\text{inter}}_{i,t} = \frac{1}{20}\sum_{k=0}^{19} \tilde{r}^{\text{inter}}_{i,t-k} ``` **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。硬币 / 球队的逐日判定与翻转本身在研报中就是日频的,不受此调整影响。 ### interday_reversal_revised **中文名**: 修正日间反转 **描述**: 同时从波动率和换手率两个维度识别可能发生动量效应的个股并加以修正,是日间收益率维度的最终因子。 **构建逻辑**: 将「日间反转-波动翻转」因子和「日间反转-换手翻转」因子等权合成。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 - 等权合成口径:研报未披露合成前是否做标准化,本项目按仓库既有约定(同 `hf_bar1m_c_fz_moderate_risk`)先对两个分量各自做截面 z-score,再算术平均。任一分量为空时合成结果为空。 ### intraday_reversal_vol_flip **中文名**: 日内反转-波动翻转 **描述**: 把波动翻转的思路搬到日内收益率上:日内收益率波动率低的股票可知性高,属硬币型,未来更可能发生动量效应,因此把它们的日内反转因子值翻转过来。传统日内反转因子即过去 20 个交易日日内收益率的均值。 **构建逻辑**: 1. 每天计算每只股票的日内收益率,即 $t$ 日收盘价除以 $t$ 日开盘价后减 1。 2. 每月月底计算最近 20 天日内收益率的均值和标准差,作为当月的日内收益率(即传统日内反转因子)和日内收益率的波动率。 3. 比较每只股票的日内收益率波动率与市场截面均值的大小关系:波动率小于市场均值的股票视为「硬币」型,将其当月日内收益率乘以 $-1$;波动率大于市场均值的股票视为「球队」型,当月日内收益率保持不变。变换后的因子即「日内反转-波动翻转」因子。 ```math r^{\text{intra}}_{i,t} = \frac{P^{\text{close}}_{i,t}}{P^{\text{open}}_{i,t}} - 1 ``` 翻转规则与 `interday_reversal_vol_flip` 完全一致,只是把 $r^{\text{inter}}$ 换成 $r^{\text{intra}}$。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 ### intraday_reversal_turn_flip **中文名**: 日内反转-换手翻转 **描述**: 把换手翻转的思路搬到日内收益率上:按当日换手率变化量逐日判定硬币 / 球队,逐日翻转日内收益率的符号后再取 20 日均值。 **构建逻辑**: 1. 计算每只股票 $t$ 日换手率与 $t-1$ 日换手率的差值,作为 $t$ 日换手率的变化量。 2. 将每只股票的换手率变化量与当日所有股票换手率变化量的均值做比较:高于市场均值的为「球队」型,未来将发生反转;低于市场均值的为「硬币」型,未来将发生动量。 3. 计算每只股票 $t$ 日的日内收益率,将「硬币」型股票的日内收益率乘以 $-1$,「球队」型股票的日内收益率不变,记变化后的日内收益率为「翻转日内收益率」。 4. 每月月底,计算最近 20 天「翻转日内收益率」的均值,即本月的「日内反转-换手翻转」因子。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。硬币 / 球队的逐日判定与翻转本身在研报中就是日频的,不受此调整影响。 ### intraday_reversal_revised **中文名**: 修正日内反转 **描述**: 同时从波动率和换手率两个维度识别可能发生动量效应的个股并加以修正,是日内收益率维度的最终因子。 **构建逻辑**: 将「日内反转-波动翻转」因子和「日内反转-换手翻转」因子等权合成。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 - 等权合成口径:同 `interday_reversal_revised`,先对两个分量各自做截面 z-score 再算术平均。 ### overnight_distance **中文名**: 隔夜距离 **描述**: 隔夜涨跌幅是一个「两边差、中间好」的因子:开盘集合竞价中,不论方向,所有报价过于激进的交易者都存在反应过度的风险,因此平静开盘是最好的。研报实测传统隔夜涨跌因子(隔夜收益率的 20 日均值)Rank IC 为正值 +2.36%,与日间、日内两个维度的反转特征相反,也印证了它不宜直接当反转因子使用。研报据此对隔夜涨跌幅做「均值距离化」——以市场平均水平为最平静的参照,取个股隔夜涨跌幅与之的绝对偏离作为因子,把双边效应转成单调效应。 **构建逻辑**: 1. 计算每只股票 $t$ 日的隔夜收益率,即 $t$ 日开盘价除以 $t-1$ 日收盘价再减 1。 2. 每天计算每只个股的隔夜涨跌幅与市场平均水平的差值,然后取绝对值,表示这只个股与「最平静」之间的距离,记为当日的「隔夜距离」。 3. 每月月底计算最近 20 天隔夜距离的均值,作为当月的「隔夜距离」因子。 ```math r^{\text{on}}_{i,t} = \frac{P^{\text{open}}_{i,t}}{P^{\text{close}}_{i,t-1}} - 1 ``` ```math d^{\text{on}}_{i,t} = \left| r^{\text{on}}_{i,t} - \overline{r^{\text{on}}_t} \right| \qquad \text{OnDist}_{i,t} = \frac{1}{20}\sum_{k=0}^{19} d^{\text{on}}_{i,t-k} ``` 其中 $\overline{r^{\text{on}}_t}$ 为 $t$ 日全市场隔夜收益率的截面均值。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 ### overnight_reversal_vol_flip **中文名**: 隔夜反转-波动翻转 **描述**: 在「隔夜距离」基础上叠加波动翻转:隔夜距离波动率低的股票可知性高,属硬币型,未来更可能发生动量效应,因此把它们的隔夜距离取相反数。 **构建逻辑**: 1. 每天计算每只股票的「隔夜距离」。 2. 每月月底计算最近 20 天隔夜距离的均值和标准差,作为当月的「隔夜距离」和「隔夜距离波动率」。 3. 比较每只股票的「隔夜距离波动率」与市场截面均值的大小关系:波动率小于市场均值的股票视为「硬币」型,将其当月「隔夜距离」取相反数;波动率大于市场均值的股票视为「球队」型,当月「隔夜距离」保持不变。变换后的因子即「隔夜反转-波动翻转」因子。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 ### overnight_reversal_turn_flip **中文名**: 隔夜反转-换手翻转 **描述**: 在「隔夜距离」基础上叠加换手翻转。与日间、日内两个维度不同,这里对换手率变化量同样先做均值距离化得到「换手距离」,并且取的是 $t-1$ 日的换手距离——研报的理由是希望 $t-1$ 日的换手率变化量越平静越好,这样的股票 $t$ 日开盘受额外因素影响相对较小、开盘会趋于平静,与隔夜涨跌幅「中间好」的逻辑一致。 **构建逻辑**: 1. 计算每只股票 $t-1$ 日换手率与 $t-2$ 日换手率的差值,作为 $t-1$ 日换手率的变化量,然后将该变化量均值距离化,即减去市场均值后再取绝对值,记为「换手距离」。 2. 将每只股票的「换手距离」与所有股票「换手距离」的均值做比较:「换手距离」高于市场均值的为「球队」型股票,未来将发生反转;低于市场均值的为「硬币」型股票,未来将发生动量。 3. 计算每只股票 $t$ 日的「隔夜距离」,将「硬币」型股票的「隔夜距离」乘以 $-1$,「球队」型股票的「隔夜距离」保持不变,记变化后的「隔夜距离」为「翻转隔夜距离」。 4. 每月月底,计算最近 20 天「翻转隔夜距离」的均值,即本月的「隔夜反转-换手翻转」因子。 ```math d^{\text{turn}}_{i,t-1} = \left| \Delta\text{turn}_{i,t-1} - \overline{\Delta\text{turn}_{t-1}} \right| \qquad \tilde{d}^{\text{on}}_{i,t} = \begin{cases} -d^{\text{on}}_{i,t}, & d^{\text{turn}}_{i,t-1} < \overline{d^{\text{turn}}_{t-1}} \quad (\text{硬币}) \\ d^{\text{on}}_{i,t}, & d^{\text{turn}}_{i,t-1} \ge \overline{d^{\text{turn}}_{t-1}} \quad (\text{球队}) \end{cases} ``` **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。硬币 / 球队的逐日判定与翻转本身在研报中就是日频的,不受此调整影响。 - 第 2 步中「所有股票『换手距离』的均值」取的是 $t-1$ 日的截面均值:研报原文写作「当日」,但比较的两侧(个股换手距离与市场均值)必须落在同一截面才有意义,而换手距离本身定义在 $t-1$ 日。 ### overnight_reversal_revised **中文名**: 修正隔夜反转 **描述**: 同时从隔夜距离波动率和换手距离两个维度识别可能发生动量效应的个股并加以修正,是隔夜收益率维度的最终因子。 **构建逻辑**: 将「隔夜反转-波动翻转」因子和「隔夜反转-换手翻转」因子等权合成。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 - 等权合成口径:同 `interday_reversal_revised`,先对两个分量各自做截面 z-score 再算术平均。 ### team_coin **中文名**: 球队硬币 **描述**: 研报的最终因子,把日间、日内、隔夜三个收益率维度上各自完成硬币 / 球队识别与翻转后的反转因子汇总为一个。研报测得其 Rank IC 达 -9.67%、Rank ICIR 为 -4.73,多空组合年化收益率 39.69%、信息比率 3.95、月度胜率 85.14%,选股能力和稳定性超过常规日频量价因子,甚至超过大部分用分钟数据构造的因子。 **构建逻辑**: 将「修正日间反转」因子、「修正日内反转」因子和「修正隔夜反转」因子等权合成。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 - 等权合成口径:先对三个分量各自做截面 z-score 再算术平均。三个分量量纲不同(前两者是收益率均值、后者是绝对偏离均值),若不先标准化,隔夜维度的权重会被量纲差异放大,因此这一步标准化是必要的而非可选。 ### team_coin_pure **中文名**: 纯净球队硬币 **描述**: 剥离常见风格因子与行业暴露之后的球队硬币因子。研报图表 35 给出球队硬币与十个常见风格因子的相关性,其中流动性 36.54%、波动率 35.35% 相对较高,估值 -16.18%、盈利 -14.25%、市值 -12.20%、贝塔 11.76% 次之,其余均在 6% 以内;正交化后因子仍保留较强选股能力(Rank IC -4.35%、Rank ICIR -2.98),说明其信息不能由常见风格解释。 **构建逻辑**: 使用常用风格因子及行业因子对「球队硬币」因子进行正交化处理,得到「纯净球队硬币」因子。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算并输出一条记录。 - 正交化的实现方式:按交易日分截面,因变量为 `team_coin`、自变量为十个风格因子,两者都先做 MAD 5 倍去极值再 z-score 标准化(风格因子中的成长、估值原始分布尾部极重,不去极值会让个别样本主导回归);另加申万一级行业哑变量(去掉一列避免与截距共线)与截距项,用最小二乘求解后取残差。`team_coin` 或行业缺失的个股不参与该日回归,其 `team_coin_pure` 为空;某日有效样本数不足自变量个数的 2 倍时该日整体不输出 `team_coin_pure`。 - 缺失风格暴露按当日同行业均值填补(`c_fillna(x, sw2021_level1)`),这是 Barra 对缺失暴露的标准处理,研报未披露其做法。不填补时九个风格因子同时有效的个股在 2010 年只占 56%,`team_coin_pure` 会被入库前测试的无效值上限拦住;填补后升到 99.8%。代价是 `beta_000300SH_22` 在 2009–2012 年仅 63~78% 覆盖,这些年份约三分之一个股的贝塔暴露是行业代理值而非自身估计值,早期 `team_coin_pure` 的正交化精度因此低于后期。 - **风格因子的具体定义由本项目选定**:研报图表 35 只给出「市值、非线性市值、估值、盈利、成长、杠杆、流动性、反转、波动率、贝塔」十个名称,未披露各因子的计算口径,因此下列代理变量是本项目的选择,与研报原文可能存在差异: | 研报风格名称 | 本项目代理变量 | | ---- | ---- | | 市值 | 总市值的自然对数 | | 非线性市值 | 市值因子标准化后的三次方 | | 估值 | 账面市值比,即市净率的倒数 | | 盈利 | 净资产收益率 TTM(平均) | | 成长 | 营业总收入 TTM 相对 250 个交易日前的同比变化率 | | 杠杆 | 资产负债率(最新一期) | | 流动性 | 过去 20 个交易日换手率均值的自然对数 | | 反转 | 过去 20 个交易日收盘价涨跌幅取负 | | 波动率 | 过去 20 个交易日日收益率的标准差 | | 贝塔 | 个股相对沪深 300 的 22 日 beta | ## 复现核对 **核对口径**: 2010-01-01 ~ 2022-05-31(与研报测试区间一致);全市场不做任何股票过滤;前向收益取次日开盘到 21 个交易日后开盘(`cn_stock_prefactors.open`,后复权);Rank IC(因子与前向收益各自用 `c_pct_rank` 取截面百分位排名后求相关,口径同 `hfwarehouse.utils.ic.validate_factor_ic`);因子按研报口径先做市值 + 行业正交化(`c_neutralize`,申万一级行业 + 流通市值),`team_coin_pure` 已在构建时正交化故不再重复处理。研报为月末截面、本项目逐日,故给出两列:「月末口径」= 每个自然月最后一个交易日截面,共 149 个截面;「逐日全样本」= 区间内全部交易日,共 3013 个截面。 **ICIR 口径差异(对照前必读)**: 研报的 Rank ICIR 是**年化**值,本项目的 ICIR 是未年化的截面 ICIR(IC 均值 / IC 标准差),两者直接比会差 √12 倍。证据来自研报自身:12 个因子的「t 值 ÷ Rank ICIR」全部落在 3.490~3.505,等于 $\sqrt{12}=3.464$(1% 以内),而 $t = \text{ICIR} \times \sqrt{n}$ 在 $n=149$ 个月时要求 $t/\text{ICIR}=12.2$。即研报的 ICIR 已按月频年化、t 值则由未年化 ICIR 乘 $\sqrt{149}$ 得到。因此下表「月末口径」列同时给出未年化值与年化值(× $\sqrt{12}$),与研报可比的是括号里的年化值。 | 因子 | 本项目(月末口径,ICIR 括号内为年化) | 本项目(逐日全样本) | 研报原文 | 出处 | | ---- | ---- | ---- | ---- | ---- | | `interday_reversal_vol_flip` | IC -0.0507,ICIR -0.82(-2.83) | IC -0.0536,ICIR -0.85 | IC -0.0553,ICIR -2.94 | 研报图表 7 | | `interday_reversal_turn_flip` | IC -0.0803,ICIR -1.20(-4.16) | IC -0.0856,ICIR -1.29 | IC -0.0810,ICIR -4.25 | 研报图表 11 | | `interday_reversal_revised` | IC -0.0869,ICIR -1.30(-4.50) | IC -0.0914,ICIR -1.40 | IC -0.0877,ICIR -4.64 | 研报图表 13 | | `intraday_reversal_vol_flip` | IC -0.0528,ICIR -0.88(-3.06) | IC -0.0564,ICIR -0.94 | IC -0.0550,ICIR -3.23 | 研报图表 16 | | `intraday_reversal_turn_flip` | IC -0.0681,ICIR -1.12(-3.87) | IC -0.0713,ICIR -1.20 | IC -0.0677,ICIR -3.93 | 研报图表 18 | | `intraday_reversal_revised` | IC -0.0735,ICIR -1.15(-3.98) | IC -0.0775,ICIR -1.25 | IC -0.0750,ICIR -4.18 | 研报图表 20 | | `overnight_distance` | IC -0.0683,ICIR -0.85(-2.94) | IC -0.0744,ICIR -0.92 | IC -0.0648,ICIR -2.86 | 研报图表 23 | | `overnight_reversal_vol_flip` | IC -0.0346,ICIR -0.89(-3.10) | IC -0.0350,ICIR -0.89 | IC -0.0433,ICIR -3.02 | 研报图表 25 | | `overnight_reversal_turn_flip` | IC -0.0718,ICIR -1.03(-3.56) | IC -0.0766,ICIR -1.11 | IC -0.0740,ICIR -3.78 | 研报图表 27 | | `overnight_reversal_revised` | IC -0.0748,ICIR -1.17(-4.06) | IC -0.0784,ICIR -1.27 | IC -0.0755,ICIR -4.04 | 研报图表 29 | | `team_coin` | IC -0.0966,ICIR -1.33(-4.62) | IC -0.1019,ICIR -1.46 | IC -0.0967,ICIR -4.73 | 研报图表 31 | | `team_coin_pure` | IC -0.0341,ICIR -0.95(-3.29) | IC -0.0355,ICIR -1.06 | IC -0.0435,ICIR -2.98 | 研报图表 36 | 研报用作对照的三个传统因子(传统反转 图表 4、传统日内反转 图表 15、传统隔夜涨跌 图表 22)不在本表输出范围内,故不列入核对。 **整体结论**: 12 个因子的月末口径 Rank IC 与研报的偏差在 -0.0035 ~ +0.0094 之间,年化后的 ICIR 偏差在 -0.31 ~ +0.22 之间;核心因子 `team_coin` 的 IC 为 -0.0966,与研报 -0.0967 相差 0.0001。方向全部一致,无符号矛盾,切割与翻转逻辑可认为复现无误。偏差最大的两个因子是 `overnight_reversal_vol_flip`(IC 差 +0.0087)与 `team_coin_pure`(IC 差 +0.0094),原因见下。 已知的口径差异与待确认事项: - **研报自身对「隔夜距离」给出了两组不一致的数值**:正文 2.10 节写 Rank IC -6.05%、Rank ICIR -2.89,而同节图表 23 写 -6.48%、-2.86。本表取图表 23 的数值,因为其余因子的正文数值均与对应图表一致,仅此一处例外。 - **等权合成前是否标准化未披露**:研报只说「等权合成」。本项目对三个 `_revised` 因子与 `team_coin` 一律先截面 z-score 再平均,若研报直接对原始值平均,`team_coin` 中隔夜维度的实际权重会与本项目不同。 - **`team_coin_pure` 的风格因子口径由本项目选定**,见该因子的「项目实现说明」,与研报差异不可避免。 - **研报未披露窗口内缺失值的处理**:本项目 20 日窗口统计一律用忽略 NaN 的变体(`m_nanavg` / `m_nanstd`),停牌日在 `cn_stock_prefactors` 中价格为空,若用普通 `m_avg` 会让此后整个窗口返回空值,全市场覆盖度将被停牌股拖低。 - **`overnight_reversal_vol_flip` 的 IC 偏差最大(+0.0087,绝对值比研报低约 20%)**,是全表唯一相对偏差超过 10% 的单分量因子。同组的 `overnight_distance` 与 `overnight_reversal_turn_flip` 偏差都在 0.0035 以内,而这三者共用同一个「隔夜距离」序列,因此差异应出在波动翻转那一步——研报未说明「隔夜距离波动率」是用样本标准差还是总体标准差、也未说明与截面均值比较时缺失个股如何处理。本项目取样本标准差(`m_nanstd`)并对波动率为空的个股置空。合成后的 `overnight_reversal_revised` 偏差仅 +0.0007,说明这一差异被换手翻转分量吸收,未传导到 `team_coin`。 - **`team_coin_pure` 偏差 +0.0094 属预期内**:研报未披露十个风格因子的计算口径与缺失处理,本项目的代理变量与行业均值填补都是自选的,正交化掉的信息量必然与研报不同。方向与显著性一致(IC -0.0341、年化 ICIR -3.29,研报 -0.0435、-2.98),可认为结论相同。 **样本外表现(2022-06-01 ~ 2026-09-29,逐日,1032 个截面)**:研报样本期之后因子整体仍然有效,无符号反转。 | 因子 | 样本内逐日 IC | 样本外逐日 IC | 样本内 ICIR | 样本外 ICIR | | ---- | ---- | ---- | ---- | ---- | | `interday_reversal_vol_flip` | -0.0536 | -0.0469 | -0.85 | -0.78 | | `interday_reversal_turn_flip` | -0.0856 | -0.0770 | -1.29 | -1.05 | | `interday_reversal_revised` | -0.0914 | -0.0773 | -1.40 | -1.14 | | `intraday_reversal_vol_flip` | -0.0564 | -0.0547 | -0.94 | -0.95 | | `intraday_reversal_turn_flip` | -0.0713 | -0.0639 | -1.20 | -0.99 | | `intraday_reversal_revised` | -0.0775 | -0.0707 | -1.25 | -1.14 | | `overnight_distance` | -0.0744 | -0.0820 | -0.92 | -0.86 | | `overnight_reversal_vol_flip` | -0.0350 | -0.0344 | -0.89 | -0.70 | | `overnight_reversal_turn_flip` | -0.0766 | -0.0741 | -1.11 | -1.10 | | `overnight_reversal_revised` | -0.0784 | -0.0725 | -1.06 | -1.06 | | `team_coin` | -0.1019 | -0.0887 | -1.46 | -1.20 | | `team_coin_pure` | -0.0355 | -0.0179 | -1.06 | -0.53 | 11 个因子的 IC 衰减在 13% 以内,`overnight_distance` 反而略有增强。唯一需要留意的是 `team_coin_pure`:IC 从 -0.0355 衰减到 -0.0179、ICIR 从 -1.06 降到 -0.53,剥离风格后的增量信息在近四年明显减弱,而未正交化的 `team_coin` 衰减有限。这说明近期 `team_coin` 的选股能力中由常见风格(尤其流动性与波动率)解释的比例上升,使用 `team_coin_pure` 前应复核当期表现。样本外区间末端约 21 个交易日因前向收益窗口不完整而无 IC,已从序列中剔除。 ## 示例数据 按 `date`、`instrument` 排序后的前 5 行与后 5 行,由 `update_docs()` 推送文档时自动填充。 | date | instrument | interday_reversal_vol_flip | interday_reversal_turn_flip | interday_reversal_revised | intraday_reversal_vol_flip | intraday_reversal_turn_flip | intraday_reversal_revised | overnight_distance | overnight_reversal_vol_flip | overnight_reversal_turn_flip | overnight_reversal_revised | team_coin | team_coin_pure | |---------------------|------------|----------------------------|-----------------------------|---------------------------|----------------------------|-----------------------------|---------------------------|--------------------|-----------------------------|------------------------------|----------------------------|-----------|----------------| | 2026-09-29 00:00:00 | 000001.SZ | 0.000481 | -0.000328 | -0.367757 | -0.001225 | -0.000165 | -0.438891 | 0.003315 | -0.003315 | -0.003315 | -0.196287 | -0.491599 | 0.281087 | | 2026-09-29 00:00:00 | 000002.SZ | 0.014024 | 0.021262 | 1.551056 | 0.017284 | 0.017209 | 1.623234 | 0.006175 | -0.006175 | 0.002476 | -0.056819 | 1.369365 | 0.890199 | | 2026-09-29 00:00:00 | 000006.SZ | -0.003182 | 0.008507 | -0.172336 | -0.008231 | 0.004992 | -0.571349 | 0.007875 | 0.007875 | -0.003735 | 0.187147 | -0.178639 | -0.236790 | | 2026-09-29 00:00:00 | 000007.SZ | -0.006993 | -0.014825 | -1.552349 | -0.005901 | -0.014885 | -1.530392 | 0.005391 | -0.005391 | -0.002318 | -0.229023 | -1.532658 | -2.357160 | | 2026-09-29 00:00:00 | 000008.SZ | 0.002765 | 0.000088 | -0.201132 | 0.001921 | -0.000363 | -0.262426 | 0.003109 | -0.003109 | -0.003109 | -0.180263 | -0.328290 | 0.343943 | | 2026-09-29 00:00:00 | 920978.BJ | 0.005548 | -0.004199 | -0.231445 | 0.005108 | -0.002993 | -0.217843 | 0.004576 | -0.004576 | -0.003277 | -0.239870 | -0.367566 | -0.045610 | | 2026-09-29 00:00:00 | 920981.BJ | -0.001632 | 0.021316 | 0.550518 | -0.002074 | 0.016247 | 0.417031 | 0.011840 | 0.011840 | 0.007031 | 0.778999 | 0.979882 | 1.981716 | | 2026-09-29 00:00:00 | 920982.BJ | -0.004366 | 0.006499 | -0.345963 | -0.001027 | 0.004663 | -0.160403 | 0.006254 | 0.006254 | -0.005980 | 0.035284 | -0.211182 | -0.639848 | | 2026-09-29 00:00:00 | 920985.BJ | 0.002260 | 0.002113 | -0.134930 | 0.002828 | 0.001576 | -0.101303 | 0.003981 | -0.003981 | -0.003003 | -0.207117 | -0.251069 | 0.313342 | | 2026-09-29 00:00:00 | 920992.BJ | 0.005746 | 0.009435 | 0.444941 | 0.003561 | 0.007830 | 0.287818 | 0.006123 | -0.006123 | -0.000687 | -0.187092 | 0.204787 | -0.240316 |

用例
表结构
字段 字段类型 字段描述
intraday_reversal_revised double 修正日内反转因子,intraday_reversal_vol_flip 与 intraday_reversal_turn_flip 各自截面标准化后等权平均;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
interday_reversal_vol_flip double 日间反转-波动翻转因子,20 个交易日日间收益率(收盘价对上一日收盘价)的均值,其中 20 日日间收益率波动率低于当日截面均值的个股(硬币型)取相反数,其余保持不变;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
intraday_reversal_vol_flip double 日内反转-波动翻转因子,20 个交易日日内收益率(收盘价对当日开盘价)的均值,其中 20 日日内收益率波动率低于当日截面均值的个股(硬币型)取相反数,其余保持不变;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
overnight_reversal_revised double 修正隔夜反转因子,overnight_reversal_vol_flip 与 overnight_reversal_turn_flip 各自截面标准化后等权平均;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
interday_reversal_turn_flip double 日间反转-换手翻转因子,先按当日换手率变化量是否低于截面均值逐日翻转日间收益率的符号,再取过去 20 个交易日翻转收益率的均值;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
intraday_reversal_turn_flip double 日内反转-换手翻转因子,先按当日换手率变化量是否低于截面均值逐日翻转日内收益率的符号,再取过去 20 个交易日翻转日内收益率的均值;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
instrument string 股票代码
__PARTITION__ string -
overnight_reversal_turn_flip double 隔夜反转-换手翻转因子,按上一交易日「换手距离」是否低于截面均值逐日翻转隔夜距离的符号,再取过去 20 个交易日翻转隔夜距离的均值;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
overnight_reversal_vol_flip double 隔夜反转-波动翻转因子,把 20 日隔夜距离波动率低于当日截面均值的个股(硬币型)的 overnight_distance 取相反数,其余保持不变;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
date timestamp[ns] 交易日期
team_coin double 球队硬币因子,interday_reversal_revised、intraday_reversal_revised、overnight_reversal_revised 各自截面标准化后等权平均;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
team_coin_pure double 纯净球队硬币因子,team_coin 在当日截面上对申万一级行业哑变量与十个常见风格因子做多元回归后的残差;剥离风格与行业暴露后的增量信息,方向与 team_coin 一致。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
overnight_distance double 隔夜距离因子,先把每日隔夜收益率减去当日截面均值再取绝对值得到「与最平静开盘的距离」,再取过去 20 个交易日的均值;值越大说明开盘报价越激进、越容易反应过度,未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券
interday_reversal_revised double 修正日间反转因子,interday_reversal_vol_flip 与 interday_reversal_turn_flip 各自截面标准化后等权平均;值越大未来收益越低。来源:曹春晓. 2022-06-11. 《个股动量效应的识别及“球队硬币”因子构建——多因子选股系列研究之四》. 方正证券

表名:hf_prefactors_fz_team_coin

起始时间:

最近更新时间: