方正因子勇攀高峰 (hf_bar1m_c_fz_brave_climb)

数据描述:

文档
数据简介

# hf_bar1m_c_fz_brave_climb ## 文献来源 - **标题**: 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》 - **作者**: 曹春晓 - **机构**: 方正证券 - **时间**: 2022-05-30 研报借鉴 Moreira 和 Muir(2017)的两条结论,用「收益波动比与波动率的协方差」刻画收益率是否随波动率同步提高,并设计了同时使用分钟开高低收四个价格的「更优波动率」以减少分钟内信息丢失。全天口径下的协方差衡量投资者对波动加剧的反应不足程度,得到负向的「灾后重建」因子;只取波动异常高时段的协方差衡量异常高波动是否得到充足风险补偿,得到正向的「勇攀高峰」因子。 本表基于 `cn_stock_bar1m_c` 输出 9 个因子:灾后重建三件套 `rebuild_mean` / `rebuild_std` / `post_disaster_rebuild`(研报 2.2 节),勇攀高峰三件套 `climb_mean` / `climb_std` / `brave_climb`(3.2 节),以及研报 3.3 节为论证「更优波动率」优越性而用普通收盘波动率重算的对照组 `climb_mean_close` / `climb_std_close` / `brave_climb_close`。全部因子共用同一次分钟线扫描,故合并为一张表。 ## 表结构 - **表名**: `hf_bar1m_c_fz_brave_climb` - **主键**: `date` + `instrument` - **记录粒度**: 每个交易日每只股票一条记录 | 字段 | 类型 | 可空 | 含义 | | ---- | ---- | ---- | ---- | | `date` | `PlDatetime` | 否 | 交易日期 | | `instrument` | `PlString` | 否 | 股票代码 | | `rebuild_mean` | `PlFloat64` | 是 | 月均重建:过去 20 个交易日「全天收益波动比与更优波动率协方差」的均值,值越小说明投资者对波动加剧越反应不足、未来越可能补涨,因子值越小越好 | | `rebuild_std` | `PlFloat64` | 是 | 月稳重建:过去 20 个交易日该协方差的标准差,因子值越小越好 | | `post_disaster_rebuild` | `PlFloat64` | 是 | 灾后重建:`rebuild_mean` 与 `rebuild_std` 截面标准化后等权合成,因子值越小越好 | | `climb_mean` | `PlFloat64` | 是 | 月均攀登:过去 20 个交易日「波动异常高时段收益波动比与更优波动率协方差」的均值,值越大说明异常高波动得到越充足的风险补偿,因子值越大越好 | | `climb_std` | `PlFloat64` | 是 | 月稳攀登:过去 20 个交易日该协方差的标准差,因子值越小越好 | | `brave_climb` | `PlFloat64` | 是 | 勇攀高峰:`climb_mean` 与 `climb_std` 按各自方向对齐后截面标准化等权合成,因子值越大越好 | | `climb_mean_close` | `PlFloat64` | 是 | 月均攀登 2:把「更优波动率」替换为仅用分钟收盘价计算的「收盘波动率」后重算的 `climb_mean`,研报用于论证更优波动率的优越性,因子值越大越好 | | `climb_std_close` | `PlFloat64` | 是 | 月稳攀登 2:收盘波动率版的 `climb_std`,因子值越小越好 | | `brave_climb_close` | `PlFloat64` | 是 | 勇攀高峰 2:收盘波动率版的 `brave_climb`,因子值越大越好 | ## 依赖数据 | 依赖表 | 频率 | 用到的字段 | 用途 | | ---- | ---- | ---- | ---- | | `cn_stock_bar1m_c` | 1 分钟 | `date`、`instrument`、`open`、`high`、`low`、`close` | `open` / `high` / `low` / `close` 四价共同构成「更优波动率」;`close` 单独用于分钟收益率与对照组的「收盘波动率」 | 因子回溯 20 个交易日,单日增量实际读取约 20 个交易日的分钟数据,扫描量约为输出区间的 20 倍。 ## 因子列表 ### rebuild_mean **中文名**: 月均重建 **描述**: 全天口径下「收益波动比与更优波动率的协方差」在过去 20 个交易日的均值,作为投资者对波动变化反应不足程度的代理变量。协方差越小说明波动加剧时收益波动比反而下降、风险补偿不足,股价过度下跌,未来越可能补涨,因子值越小越好。 **构建逻辑**: 先逐日算出全天协方差,再取过去 20 个交易日的均值。 1. 仅考虑日内,剔除开盘与收盘部分的信息。计算第 $t$ 分钟的「更优波动率」:取第 $t-4$ ~ $t$ 共 5 分钟的分钟开盘价、最高价、最低价、收盘价共 20 个价格数据求标准差,除以这 20 个价格的均值,再取平方。这样设计是为了避免仅用分钟收盘价时丢失上一分钟收盘到本分钟收盘之间的波动信息: ```math \sigma^{*2}_t = \left( \frac{\text{std}(P_{t-4..t})}{\text{mean}(P_{t-4..t})} \right)^2, \quad P = \{open, high, low, close\} ``` 2. 用分钟收盘价计算每分钟收益率 $r_t$,再算第 $t$ 分钟的「收益波动比」: ```math RVR_t = \frac{r_t}{\sigma^{*2}_t} ``` 3. 求当天「收益波动比」序列与「更优波动率」序列之间的协方差,作为当日投资者对波动变化反应不足程度的代理变量。 4. 取最近 20 个交易日该协方差的均值,即为本因子。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 - 全天参与协方差的分钟数:研报「剔除开盘与收盘部分的信息」在本项目落为剔除 09:25 开盘集合竞价与 14:58~15:00 收盘集合竞价,保留 09:31~14:57 共 237 根连续竞价分钟(实测 `cn_stock_bar1m_c` 单日 241 根,该区间 237 根)。更优波动率需回溯 4 分钟,故实际参与协方差计算的是第 5 ~ 237 共 **233 分钟**,与研报「全天 233 分钟」完全一致 - 标准差与协方差的自由度:研报只写「求标准差」「求协方差」,未说明用样本还是总体口径。本项目统一取样本口径(更优波动率的 20 价标准差、收盘波动率的 5 价标准差、日内协方差、20 日滚动标准差均为 $n-1$ 分母),与研报作者常用的 pandas 默认行为一致 - 更优波动率为 0 的分钟:5 分钟内 20 个价格完全相同时(一字板、长时间无成交)更优波动率为 0,收益波动比分母为零。本项目依赖 DAI 除零返回 NULL 的行为,让该分钟自动退出协方差计算,不做填充;当日全部分钟都如此时该日协方差为空值,由 20 日窗口的 `m_nan*` 算子跳过 ### rebuild_std **中文名**: 月稳重建 **描述**: 全天协方差在过去 20 个交易日的标准差。因子值越小越好。 **构建逻辑**: 与 `rebuild_mean` 共用第 1~3 步,第 4 步改为取最近 20 个交易日该协方差的标准差。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 ### post_disaster_rebuild **中文名**: 灾后重建 **描述**: 「月均重建」与「月稳重建」的合成因子。因子值越小越好。 **构建逻辑**: 将 `rebuild_mean` 与 `rebuild_std` 等权合成。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 - 等权合成口径:研报只写「等权合成」,未说明是否先标准化。两个分量量纲不同(协方差均值与协方差标准差),直接相加会由量纲更大的一方主导,因此本项目统一实现为「先做截面 z-score 标准化,再等权平均」。两个分量的研报 Rank IC 同为负号,直接相加即可,无需方向对齐 ### climb_mean **中文名**: 月均攀登 **描述**: 只取当日波动异常高的时段计算「收益波动比与更优波动率的协方差」,再取过去 20 个交易日的均值。协方差越大说明异常高波动得到了越充足的风险补偿,这种向好势头更可能持续,因子值越大越好。 **构建逻辑**: 与 `rebuild_mean` 的构造几乎一致,区别只在于协方差只用波动异常高的那些分钟计算。 1. 仅考虑日内,剔除开盘和收盘部分的信息。按 `rebuild_mean` 第 1~2 步计算每分钟的「更优波动率」和「收益波动比」。 2. 计算当日「更优波动率」的均值 $\text{mean}$ 与标准差 $\text{std}$,把「更优波动率」大于等于 $\text{mean} + \text{std}$ 的分钟作为当日波动异常高的时段。 3. 只用这些分钟计算「收益波动比」与「更优波动率」的协方差,作为股票对异常高波动提供风险补偿多少的代理变量。 4. 取最近 20 个交易日该协方差的均值,即为本因子。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 ### climb_std **中文名**: 月稳攀登 **描述**: 异常高波动时段协方差在过去 20 个交易日的标准差。因子值越小越好。 **构建逻辑**: 与 `climb_mean` 共用第 1~3 步,第 4 步改为取最近 20 个交易日该协方差的标准差。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 ### brave_climb **中文名**: 勇攀高峰 **描述**: 「月均攀登」与「月稳攀登」的合成因子,研报本篇的主因子。因子值越大越好。 **构建逻辑**: 将 `climb_mean` 与 `climb_std` 等权合成。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 - 等权合成口径:研报只写「等权合成」,未说明是否先标准化、是否对齐方向。但研报给出的两个分量 Rank IC **符号相反**(`climb_mean` 为 +3.94%,`climb_std` 为 -6.06%),若直接等权相加,合成因子的 Rank IC 只会在 -1% 附近,与研报给出的 +5.62% 不符;按各自方向对齐后再等权(即 $z(\text{climb\_mean}) - z(\text{climb\_std})$)得到的量级才与 +5.62% 一致。因此本项目按方向对齐实现,并统一先做截面 z-score 标准化再等权平均。此处为依据研报实测数值反推的口径,非原文明示,复现结果需人工复核 ### climb_mean_close **中文名**: 月均攀登 2 **描述**: 把「更优波动率」替换为仅用分钟收盘价计算的「收盘波动率」后重算的月均攀登。研报用它与 `climb_mean` 对比,论证更优波动率同时纳入开高低收四个价格信息的优越性。因子值越大越好。 **构建逻辑**: 与 `climb_mean` 完全一致,仅把第 1 步的「更优波动率」替换为「收盘波动率」——取第 $t-4$ ~ $t$ 共 5 个分钟收盘价求标准差,除以这 5 个价格的均值,再取平方;其余步骤不变。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 ### climb_std_close **中文名**: 月稳攀登 2 **描述**: 收盘波动率版的月稳攀登。因子值越小越好。 **构建逻辑**: 与 `climb_std` 完全一致,仅把「更优波动率」替换为「收盘波动率」。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 ### brave_climb_close **中文名**: 勇攀高峰 2 **描述**: 收盘波动率版的勇攀高峰。研报测试显示其 Rank IC、Rank ICIR、年化收益率、信息比率均低于使用更优波动率的 `brave_climb`。因子值越大越好。 **构建逻辑**: 将 `climb_mean_close` 与 `climb_std_close` 等权合成,合成口径同 `brave_climb`。 **项目实现说明**: - 计算频率:研报原文为每月月底计算,本项目按项目规范改为每个交易日计算 - 等权合成口径:同 `brave_climb`,按方向对齐后先截面 z-score 再等权平均 ## 复现核对 **核对口径**: 待填写。本表代码已通过三步构建验证,但 DAI 里目前只有 2026-09-29 一个交易日的增量数据,**尚未回填历史**,无法计算 IC。研报侧数值已逐项与原文核对无误,本项目侧待回填历史后补齐。 回填与核对步骤:先运行 `hf_bar1m_c_fz_brave_climb.ipynb` 第一段(`HISTORY_START` / `HISTORY_END` 已设为 `2005-01-04` / `2026-09-29`),再按下述口径跑 `hfwarehouse.utils.ic.validate_factor_ic` 并回填本表——前向收益取次日开盘到 21 个交易日后开盘(`cn_stock_prefactors.open` 已是后复权价,反转与动量类因子都不要用收盘口径);全市场不做任何股票过滤、不做行业市值中性化;研报为月末截面、本项目逐日,故「本项目」两列分别给月末子样本与逐日全样本。注意研报的测试对因子做了市值与行业正交化,本项目按仓库规范不做,ICIR 一列预期会系统性弱于研报。 | 因子 | 本项目(研报口径) | 本项目(逐日全样本) | 研报原文 | 出处 | | ---- | ---- | ---- | ---- | ---- | | `rebuild_mean` | 待填写 | 待填写 | Rank IC -4.96%,Rank ICIR 约 -2.5 | 研报 2.2 节 | | `rebuild_std` | 待填写 | 待填写 | Rank IC -5.49%,Rank ICIR 约 -2.5 | 研报 2.2 节 | | `post_disaster_rebuild` | 待填写 | 待填写 | Rank IC -6.02%,Rank ICIR 约 -2.5 | 研报 2.2 节 | | `climb_mean` | 待填写 | 待填写 | Rank IC 3.94%,Rank ICIR 4.21 | 研报 3.2 节 | | `climb_std` | 待填写 | 待填写 | Rank IC -6.06%,Rank ICIR -4.02 | 研报 3.2 节 | | `brave_climb` | 待填写 | 待填写 | Rank IC 5.62%,Rank ICIR 4.47,多空年化 19.76%,信息比 3.45,月度胜率 83.02% | 研报摘要与 3.2 节 | | `climb_mean_close` | 待填写 | 待填写 | Rank IC 3.03% | 研报 3.3 节 | | `climb_std_close` | 待填写 | 待填写 | Rank IC -5.41% | 研报 3.3 节 | | `brave_climb_close` | 待填写 | 待填写 | Rank IC 5.10% | 研报 3.3 节 | **差异说明**(待回填后逐条补齐,以下为已知的口径差异,先行记录): - 研报对「灾后重建」三个分量只给出「Rank ICIR 普遍较低,只有 -2.5 左右」的定性描述,未逐因子披露精确 ICIR,三行按同一个约数核对;多空年化、信息比、月度胜率研报只披露了 `brave_climb` 一个因子,其余因子写「研报未披露,无法核对」 - 研报测试「对因子进行市值和行业正交化处理」,本项目按仓库规范不做任何中性化与股票过滤,Rank IC 与 ICIR 预期系统性弱于研报 - `brave_climb` 与 `brave_climb_close` 的合成方向是依据研报实测数值反推的(见该因子的「项目实现说明」),非原文明示。回填后若这两个因子的 Rank IC 符号为负或量级远小于研报,应优先怀疑此处口径,而不是改参数去凑 - 研报未披露前向收益的对齐方式,本项目取次日开盘口径;若研报用收盘口径,本项目数值会偏保守 - 标准差与协方差的自由度、更优波动率为 0 的分钟如何处理,研报均未说明,本项目的取法见 `rebuild_mean` 的「项目实现说明」 ## 示例数据 按 `date`、`instrument` 排序后的前 5 行与后 5 行,由 `update_docs()` 推送文档时自动填充。 | date | instrument | rebuild_mean | rebuild_std | post_disaster_rebuild | climb_mean | climb_std | brave_climb | climb_mean_close | climb_std_close | brave_climb_close | |---------------------|------------|--------------|-------------|-----------------------|------------|-----------|-------------|------------------|-----------------|-------------------| | 2026-09-29 00:00:00 | 000001.SZ | -0.000000 | 0.000023 | -0.085588 | -0.000060 | 0.000135 | 0.362223 | -0.000037 | 0.000096 | 0.369737 | | 2026-09-29 00:00:00 | 000002.SZ | 0.000064 | 0.000130 | -0.034871 | -0.000301 | 0.000811 | -0.417527 | -0.000204 | 0.001296 | -0.951397 | | 2026-09-29 00:00:00 | 000006.SZ | 0.000078 | 0.000100 | -0.032244 | -0.000143 | 0.000350 | 0.105134 | -0.000039 | 0.000572 | -0.027155 | | 2026-09-29 00:00:00 | 000007.SZ | 0.000055 | 0.000109 | -0.042655 | -0.000020 | 0.000306 | 0.306490 | -0.000039 | 0.000407 | 0.108047 | | 2026-09-29 00:00:00 | 000008.SZ | -0.000001 | 0.000033 | -0.084506 | -0.000040 | 0.000124 | 0.397209 | 0.000051 | 0.000284 | 0.387839 | | 2026-09-29 00:00:00 | 920978.BJ | -0.000013 | 0.000235 | -0.058143 | -0.000042 | 0.000282 | 0.290738 | -0.000060 | 0.000412 | 0.062755 | | 2026-09-29 00:00:00 | 920981.BJ | 0.000203 | 0.000217 | 0.051434 | -0.000105 | 0.000567 | 0.015853 | 0.000257 | 0.001043 | 0.169747 | | 2026-09-29 00:00:00 | 920982.BJ | 0.000166 | 0.000497 | 0.076712 | -0.000111 | 0.000354 | 0.146704 | 0.000014 | 0.000582 | 0.068746 | | 2026-09-29 00:00:00 | 920985.BJ | 0.000020 | 0.000136 | -0.056990 | -0.000039 | 0.000239 | 0.323206 | -0.000086 | 0.000206 | 0.180991 | | 2026-09-29 00:00:00 | 920992.BJ | -0.000015 | 0.000419 | -0.030283 | -0.000047 | 0.000425 | 0.189411 | 0.000098 | 0.000599 | 0.221478 |

用例
表结构
字段 字段类型 字段描述
brave_climb double 勇攀高峰:climb_mean 与 climb_std 按各自方向对齐后截面标准化等权合成,因子值越大越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
rebuild_std double 月稳重建:过去 20 个交易日全天协方差的标准差,因子值越小越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
rebuild_mean double 月均重建:过去 20 个交易日「全天收益波动比与更优波动率协方差」的均值,值越小说明投资者对波动加剧越反应不足、未来越可能补涨,因子值越小越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
climb_std_close double 月稳攀登 2:收盘波动率版的 climb_std,因子值越小越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
climb_mean_close double 月均攀登 2:把「更优波动率」替换为仅用分钟收盘价计算的「收盘波动率」后重算的 climb_mean,研报用于论证更优波动率的优越性,因子值越大越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
brave_climb_close double 勇攀高峰 2:收盘波动率版的 brave_climb,因子值越大越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
__PARTITION__ string -
post_disaster_rebuild double 灾后重建:rebuild_mean 与 rebuild_std 截面标准化后等权合成,因子值越小越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
date timestamp[ns] 交易日期
instrument string 股票代码
climb_std double 月稳攀登:过去 20 个交易日异常高波动时段协方差的标准差,因子值越小越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券
climb_mean double 月均攀登:过去 20 个交易日「波动异常高时段收益波动比与更优波动率协方差」的均值,值越大说明异常高波动得到越充足的风险补偿,因子值越大越好。来源:曹春晓. 2022-05-30. 《个股波动率的变动及“勇攀高峰”因子构建——多因子选股系列研究之三》. 方正证券

表名:hf_bar1m_c_fz_brave_climb

起始时间:

最近更新时间: