AI 原生量化投研平台AI-native quantitative research platform
正在加载…Loading…
页面仍在加载,可以继续等待,或重新加载。The page is still loading. You can keep waiting or reload.
部分页面资源未能加载,请重新加载。Some page resources could not load. Please reload.
设备当前处于离线状态,恢复连接后可以继续等待或重新加载。Your device is offline. Once connected, you can keep waiting or reload.
7 个字段
刻画日内成交量涨潮退潮过程中的股价变动速度,捕捉投资者过度反应的因子
研报把个股日内成交量由低到高再回到低位的一次更替称为一次「潮汐」:以邻域成交量的最高点为「顶峰时刻」,其前后各自的邻域成交量最低点为「涨潮时刻」与「退潮时刻」。潮汐过程中股价变动越快,说明投资者抛售或建仓越急切、越容易反应过度,未来越可能反向修正。研报进一步以顶峰时刻为界把潮汐拆成两个「半潮汐」,按起止点邻域成交量的高低判定哪一半需要更强的力量推动(强势半潮汐),哪一半相对平和(弱势半潮汐)。
本表基于 cn_stock_bar1m_c 输出 5 个因子:full_tide(研报 3.2 节)、strong_half_tide(3.3 节 (2))、aggressive_weak_half_tide 与 stable_weak_half_tide(3.3 节 (3)),以及研报最终合成的 complete_tide(3.4 节)。全部因子共用同一次分钟线扫描与同一组潮汐切点,故合并为一张表。
数据区间:2013-04-01 ~ 2026-11-03(每个交易日一条记录)。
cn_stock_factors_hf_fz_tidedate + instrument| 字段 | 类型 | 可空 | 含义 |
|---|---|---|---|
date | PlDatetime | 否 | 交易日期 |
instrument | PlString | 否 | 股票代码 |
full_tide | PlFloat64 | 是 | 全潮汐:过去 20 个交易日「涨潮时刻到退潮时刻」价格变动速率的均值,值越大说明投资者买卖意愿越急切、越容易反应过度,因子值越小越好 |
strong_half_tide | PlFloat64 | 是 | 强势半潮汐:过去 20 个交易日「强势半潮汐」价格变动速率的均值,因子值越小越好 |
aggressive_weak_half_tide | PlFloat64 | 是 | 激进弱势半潮汐:过去 20 个交易日「弱势半潮汐」价格变动速率的均值,因子值越小越好 |
stable_weak_half_tide | PlFloat64 | 是 | 稳定弱势半潮汐:过去 20 个交易日「弱势半潮汐」价格变动速率的标准差,值越小说明成交量蓄势与消退阶段越平稳,因子值越小越好 |
complete_tide | PlFloat64 | 是 | 完整潮汐:strong_half_tide 与 stable_weak_half_tide 截面标准化后等权合成,因子值越小越好 |
| 依赖表 | 频率 | 用到的字段 | 用途 |
|---|---|---|---|
cn_stock_bar1m_c | 1 分钟 | date、instrument、close、volume | volume 算 9 分钟邻域成交量,据此定出顶峰、涨潮、退潮三个时刻;close 取三个时刻的收盘价,算潮汐过程的价格变动速率 |
只读取 09:3114:57 共 237 根连续竞价分钟(剔除 09:25 开盘集合竞价与 14:5815:00 收盘集合竞价),实测各年代该区间的 bar 数都是 237 根。
因子回溯 20 个交易日,单日增量实际读取约 20 个交易日的分钟数据,扫描量约为输出区间的 20 倍。
中文名: 全潮汐
描述: 一次完整潮汐过程(涨潮时刻到退潮时刻)的价格变动速率在过去 20 个交易日的均值,作为投资者出售或购买股票意愿强烈程度的代理变量。速率越大越容易反应过度,因子值越小越好。
构建逻辑: 先逐日定出潮汐的三个切点并算出全潮汐价格变动速率,再取过去 20 个交易日的均值。
剔除开盘和收盘数据,仅考虑日内分钟频数据。为减小个别异常点的影响,先算每分钟及其前后各 4 分钟共 9 分钟的成交量总和,作为该分钟的「邻域成交量」:
NVi=j=i−4∑i+4Vj邻域成交量最高的第 t 分钟称为「顶峰时刻」。
在第 5 ~ t−1 分钟里,邻域成交量最低点发生在第 m 分钟,其邻域成交量为 Vm、收盘价为 Cm,这一分钟称为「涨潮时刻」,从涨潮时刻到顶峰时刻的过程为「涨潮」。
在第 t+1 分钟至邻域成交量可算的最后一分钟里,邻域成交量最低点发生在第 n 分钟,其邻域成交量为 Vn、收盘价为 Cn,这一分钟称为「退潮时刻」,从顶峰时刻到退潮时刻的过程为「退潮」。
从涨潮时刻到退潮时刻的全过程为一次「潮汐」,其价格变化率为 (Cn−Cm)/Cm,价格变动速率为该变化率除以持续分钟数:
FullTided=Cm⋅(n−m)Cn−Cm取最近 20 个交易日价格变动速率的平均值,即为本因子。
项目实现说明:
中文名: 强势半潮汐
描述: 以顶峰时刻为界把潮汐拆成两半,起止点成交量跨度更大的那一半需要更强的力量推动、信息密度更高,取其价格变动速率在过去 20 个交易日的均值。因子值越小越好。
构建逻辑: 共用 full_tide 第 1~5 步定出的 m、t、n 与 Vm、Vn。
项目实现说明:
中文名: 激进弱势半潮汐
描述: 与强势半潮汐相对的另一半(成交量跨度较小、推动力量相对较弱的那一段)的价格变动速率在过去 20 个交易日的均值,作为投资者买卖意愿相对较弱时段交易热情的代理变量。因子值越小越好。
构建逻辑: 共用 strong_half_tide 的强弱判定结果,取未被判定为强势的那一半为「弱势半潮汐」。
项目实现说明:
中文名: 稳定弱势半潮汐
描述: 弱势半潮汐价格变动速率在过去 20 个交易日的标准差。把弱势半潮汐视作成交量蓄势或消退的过程,越希望它逐日保持稳定,为强势半潮汐做足准备或做好收尾。因子值越小越好。
构建逻辑: 与 aggressive_weak_half_tide 共用弱势半潮汐价格变动速率,第 2 步改为取最近 20 个交易日该速率的标准差。
项目实现说明:
中文名: 完整潮汐
描述: 研报最终合成的因子,取交易热情高涨时段的「强势半潮汐」与交易冷淡时段的「稳定弱势半潮汐」两个表现更好的分量合成。因子值越小越好。
构建逻辑: 将 strong_half_tide 与 stable_weak_half_tide 等权合成。研报未纳入表现较弱的 aggressive_weak_half_tide。
项目实现说明:
核对口径: 2013-04-01 ~ 2015-12-31(已入库区间,671 个交易日 / 33 个月末截面,占研报样本期 2013-04 ~ 2022-02 的约三成);全市场不做任何股票过滤,未做行业与市值中性化;前向收益取次日开盘到 21 个交易日后开盘(cn_stock_prefactors.open 已是后复权价);rankIC 按截面计算,由 hfwarehouse.utils.ic.validate_factor_ic 得出;研报为月末截面、本项目逐日,故同时给出月末子样本与逐日全样本两列。ICIR 一列同时给出原始值(IC 均值 / IC 标准差)与年化值(月末乘 12、逐日乘 252)。
| 因子 | 本项目(研报口径,月末) | 本项目(逐日全样本) | 研报原文 | 出处 |
|---|---|---|---|---|
full_tide | Rank IC -6.48%,ICIR -0.53(年化 -1.84) | Rank IC -6.62%,ICIR -0.66(年化 -10.43) | Rank IC -7.09%,Rank ICIR -3.73,多空年化 27.11%,信息比 2.94,月度胜率 84.91% | 研报 3.2 节 |
strong_half_tide | Rank IC -4.61%,ICIR -0.56(年化 -1.94) | Rank IC -4.47%,ICIR -0.65(年化 -10.31) | Rank IC -4.88%,Rank ICIR -4.40,多空年化 21.01%,信息比 3.38,月度胜率 83.02% | 研报 3.3 节 (2) |
aggressive_weak_half_tide | Rank IC -2.48%,ICIR -0.35(年化 -1.21) | Rank IC -3.10%,ICIR -0.49(年化 -7.81) | Rank IC -2.69%,Rank ICIR -2.35,多空年化 5.81%,信息比 1.40,月度胜率 71.70% | 研报 3.3 节 (3) |
stable_weak_half_tide | Rank IC -3.37%,ICIR -0.25(年化 -0.88) | Rank IC -4.85%,ICIR -0.37(年化 -5.82) | Rank IC -6.97%,Rank ICIR -3.14,多空年化 19.28%,信息比 1.82,月度胜率 74.53% | 研报 3.3 节 (3) |
complete_tide | Rank IC -5.69%,ICIR -0.46(年化 -1.59) | Rank IC -6.42%,ICIR -0.56(年化 -8.96) | Rank IC -7.90%,Rank ICIR -4.13,多空年化 27.09%,信息比 3.08,月度胜率 83.96% | 研报摘要与 3.4 节 |
差异说明:
full_tide(-6.48% vs -7.09%)、strong_half_tide(-4.61% vs -4.88%)、aggressive_weak_half_tide(-2.48% vs -2.69%)三个因子的月末 IC 与研报相差均在 0.7 个百分点以内,五个因子符号全部为负,与研报「价格变动速率越大越容易反应过度」的反转方向一致;因子间强弱排序也与研报一致(full_tide 最强、aggressive_weak_half_tide 最弱)。切点定位与速率计算可认为复现无误。stable_weak_half_tide 明显弱于研报(-3.37% vs -6.97%),差约 3.6 个百分点,是本次复现最大的对不上项,并连带拉低由它参与合成的 complete_tide(-5.69% vs -7.90%)。两个可能来源:一是标准差类因子对样本期更敏感,2015 年的极端波动使弱势半潮汐速率的时序标准差在截面上趋同、区分度下降;二是研报未说明 20 日标准差用样本标准差还是总体标准差,本项目取 m_nanstd(样本标准差)。待历史回填完成、在完整样本期上重算后再判断是样本期效应还是口径差异,现阶段不调整实现去凑研报。full_tide),研报为 -3.73,相差约一倍;逐日口径按 252 年化后为 -10.43,与研报数量级不可比。除样本期因素外,研报大概率在中性化后的因子上计算 IC(中性化会大幅压低 IC 波动、抬高 ICIR),本项目按仓库规范不做任何中性化与股票过滤。此项标记为待确认。validate_factor_ic 只出 IC 类指标。需要时运行 notebook 第四段的 AlphaMiner.single_factor_backtest() 补齐。注意研报的「月度胜率」指多空组合的月度胜率,与 IC 符号一致的月份占比不是同一个指标,不可混用。按 date、instrument 排序后的前 5 行与后 5 行,由 update_docs() 推送文档时自动填充。
| date | instrument | full_tide | strong_half_tide | aggressive_weak_half_tide | stable_weak_half_tide | complete_tide |
|---|---|---|---|---|---|---|
| 2026-11-03 00:00:00 | 000001.SZ | 0.000056 | 0.000039 | 0.000019 | 0.000391 | -0.553329 |
| 2026-11-03 00:00:00 | 000002.SZ | 0.000040 | 0.000148 | 0.000923 | 0.000911 | -0.161611 |
| 2026-11-03 00:00:00 | 000006.SZ | -0.000013 | -0.000157 | 0.001381 | 0.001305 | -0.632469 |
| 2026-11-03 00:00:00 | 000007.SZ | -0.000028 | 0.000075 | -0.000800 | 0.001405 | -0.138417 |
| 2026-11-03 00:00:00 | 000008.SZ | -0.000047 | -0.000051 | 0.000111 | 0.000749 | -0.611377 |
| 2026-11-03 00:00:00 | 688835.SH | 0.000065 | 0.000045 | 0.000662 | 0.002722 | 0.247707 |
| 2026-11-03 00:00:00 | 688836.SH | 0.000321 | 0.000023 | 0.001753 | 0.001920 | -0.067477 |
| 2026-11-03 00:00:00 | 688837.SH | 0.000060 | 0.000064 | 0.000162 | 0.002432 | 0.187777 |
| 2026-11-03 00:00:00 | 688981.SH | -0.000032 | -0.000002 | -0.000431 | 0.000733 | -0.518909 |
| 2026-11-03 00:00:00 | 689009.SH | 0.000035 | 0.000049 | -0.000369 | 0.002275 | 0.104049 |
SELECT date, instrument, full_tide, strong_half_tide, aggressive_weak_half_tide, stable_weak_half_tide, complete_tide FROM cn_stock_factors_hf_fz_tide WHERE date >= '2026-10-06' ORDER BY date LIMIT 100
SELECT date, instrument, full_tide, strong_half_tide, aggressive_weak_half_tide, stable_weak_half_tide, complete_tide FROM cn_stock_factors_hf_fz_tide WHERE date >= '2026-10-06' ORDER BY date LIMIT 100