Workflow
量价特征周期规律
icon
搜索文档
因子选股系列之一一八:DFQ-TimesNet:捕捉量价特征周期规律,提升股票收益预测效果
东方证券· 2026-04-16 17:41
量化模型与构建方式 1. **模型名称**:DFQ-TimesNet [2][4] **模型构建思路**:针对A股量价时序存在的显著多周期结构,基于TimesNet二维时序建模框架,将一维量价序列转为二维结构以解耦周期内波动与跨周期关联,从而提升周期特征捕捉能力和收益率预测的稳定性[3][4][20]。 **模型具体构建过程**:模型主要分为三个模块[34]。 * **输入特征嵌入模块**:将原始输入序列 `[batch, seq_len, C_in]` 映射到统一的高维特征表示空间 `[B, T, d_model]`。经实证测试,仅使用TokenEmbedding(采用核大小为3的1D卷积沿时间轴滑动)效果最优,不使用位置编码和时间戳编码[37][38][39]。 * **时序特征提取模块(TimesBlock)**:这是模型的核心,具体流程如下[39][41]: 1. **周期发现**:放弃不稳定的FFT自动周期识别方法,采用人为确定的5日(短周期,对应交易周)和60日(长周期,对应季度)双周期设定[42][44][46]。 2. **序列重塑**:对每个选定周期 `period`,将输入 `[batch, seq_len, d_model]` 填充至长度 `pad_len`(满足 `pad_len % period = 0`),然后重塑为 `[batch, num_period, period, d_model]`,其中 `num_period = pad_len / period`。最后将维度交换为 `[batch, d_model, num_period, period]` 以适配后续2D卷积[50]。 3. **Inception卷积**:对重塑后的二维张量,采用两层串联的Inception模块进行特征提取。每层模块并行使用多个不同大小的2D卷积核(如1x1, 3x3, 5x5等),以同时捕捉不同尺度的周期特征。第一层将通道数由 `d_model` 提升至 `d_ff`,经GELU激活后,第二层将通道数映射回 `d_model`,输出维度仍为 `[batch, d_model, num_period, period]`[51][53][54]。 4. **融合输出**:将每个周期经Inception处理后的输出 `[batch, d_model, num_period, period]` 置换并展开回 `[batch, seq_len, d_model]`。将不同周期的输出合并后 `[batch, seq_len, d_model, K]`(K为周期个数),采用直接平均的方式融合,得到 `[batch, seq_len, d_model]`。最后,将该输出与TimesBlock的原始输入相加,构成残差连接[56][58][59]。 * **预测输出模块**:从TimesBlock的最终输出 `[batch, seq_len, d_model]` 中,选取最后一个时间步得到 `[batch, d_model]`,再通过一个全连接层 `nn.Linear(d_model, c_out)` 投影到预测目标维度 `c_out`,得到最终预测值 `[batch, c_out]`[36][60][61]。 **模型评价**:该模型通过二维多周期建模有效挖掘A股量价周期规律,具备强周期感知能力,且规避了Transformer的计算瓶颈,更适配长时序量价数据[4][8][64][65]。 模型的回测效果 (注:以下所有模型测试结果均基于中证全指股票池,测试区间为2020.01.01-2025.08.29,预测标签为未来20日收益率[88]。指标“信息比率”的英文是IR。) 1. **DFQ-TimesNet模型**,IC 12.50%,IC_IR 1.24,rankIC 14.51%,rankIC_IR 1.33,多头月度胜率 77.94%,多头日超额收益夏普比 3.07,多头日超额年化收益 30.05%,多头日超额收益最大回撤 -7.09%,多头月均单边换手率 77.49%[89][90]。 量化因子与构建方式 1. **因子名称**:TimesNet因子 [88] **因子的构建思路**:将DFQ-TimesNet模型对个股未来收益的预测值作为选股因子[88]。 **因子具体构建过程**:使用经过最优配置训练的DFQ-TimesNet模型进行推断。模型输入为经过处理的60个基础量价特征序列,输出即为每个样本(股票)的预测收益率,该值被用作因子得分[71][72][88]。具体数据处理和模型配置如下: * **样本空间**:中证全指同期成分股[67]。 * **数据区间**:训练集(2014-2018)、验证集(2019)、测试集(2020-2025.6.30),数据集间设有隔离间隙[67]。 * **解释变量X处理**:按每日截面做Z-score标准化 + clip(-3,3),用0填充缺失值[68]。 * **预测标签Y**:个股未来20日收益率,按每日截面做Z-score标准化[68][73]。 * **输入特征**:60个基础量价特征(包括原始日线行情、基于分钟线和level2数据提取的日频特征)[71]。 * **关键超参**:序列长度 `seq_len=60`,隐藏层大小 `hidden_size=128`,周期 `periods=[5,60]`,TimesBlock层数 `e_layers=1`,Inception中间通道数 `hidden_size2=128`等[76]。 因子的回测效果 (注:以下因子测试结果涵盖多个股票池,测试区间为2020.01.01-2025.08.29[88]。不同股票池的分组数不同:中证全指20组,沪深300和中证500为5组,中证1000为10组[88]。) 1. **TimesNet因子(中证全指股票池)**,IC 12.50%,IC_IR 1.24,rankIC 14.51%,rankIC_IR 1.33,多头月度胜率 77.94%,多头日超额收益夏普比 3.07,多头日超额年化收益 30.05%,多头日超额收益最大回撤 -7.09%,多头月均单边换手率 77.49%[89][90]。 2. **TimesNet因子(沪深300股票池)**,IC 6.23%,IC_IR 0.72,rankIC 7.69%,rankIC_IR 0.81,多头月度胜率 70.59%,多头日超额收益夏普比 1.70,多头日超额年化收益 9.10%,多头日超额收益最大回撤 -7.31%,多头月均单边换手率 68.10%[29]。 3. **TimesNet因子(中证500股票池)**,IC 9.13%,IC_IR 1.10,rankIC 10.70%,rankIC_IR 1.18,多头月度胜率 77.94%,多头日超额收益夏普比 2.42,多头日超额年化收益 18.47%,多头日超额收益最大回撤 -6.30%,多头月均单边换手率 74.70%[32]。 4. **TimesNet因子(中证1000股票池)**,IC 11.71%,IC_IR 1.40,rankIC 13.68%,rankIC_IR 1.50,多头月度胜率 83.82%,多头日超额收益夏普比 2.99,多头日超额年化收益 25.63%,多头日超额收益最大回撤 -5.37%,多头月均单边换手率 77.49%[35]。