机器学习因子选股月报(2026年1月)-20251231
西南证券·2025-12-31 02:04

量化模型与构建方式 1. 模型名称:GAN_GRU模型[4][13] 模型构建思路:利用生成式对抗网络(GAN)模型对量价时序特征进行增强处理,再利用门控循环单元(GRU)模型对处理后的时序特征进行编码,最终输出股票的未来收益预测值作为选股因子[4][13] 模型具体构建过程: * 数据准备:使用18个量价特征,包括日频特征(如前收盘价、开盘价、收盘价、最高价、最低价、成交量、成交金额、涨跌幅、振幅、换手率、均价)和月频特征(如月成交金额、月涨跌幅、月振幅、月换手率、月收盘最高价、月收盘最低价、月日均换手率)[17][19] * 特征采样:对每只个股,取过去400天内的18个量价特征,每5个交易日进行一次采样,采样形状为40(天)* 18(特征),用以预测未来20个交易日的累计收益[18] * 数据处理:每次采样的40天内,每个特征在时序上进行去极值和标准化处理;同时,每个特征在个股层面上进行截面标准化[18] * GAN特征生成: * 生成器(G):采用LSTM模型,输入原始量价时序特征(形状为(40, 18)),输出增强后的时序特征(形状仍为(40, 18))[33][37] * 判别器(D):采用CNN模型,用于区分真实量价特征与生成器生成的特征[33] * 对抗训练:生成器与判别器交替训练。生成器的目标是让判别器无法区分其生成的特征与真实特征,其损失函数为: LG=EzPz(z)[log(D(G(z)))]L_{G}\,=\,-\mathbb{E}_{z\sim P_{z}(z)}[\log(D(G(z)))] 其中,(z) 表示随机噪声,(G(z)) 表示生成器生成的数据,(D(G(z))) 表示判别器判断生成数据为真实数据的概率[24][25] 判别器的目标是准确区分真实数据与生成数据,其损失函数为: LD=ExPdata(x)[log ⁣D(x)]EzPz(z)[log(1D(G(z)))]L_{D}=-\mathbb{E}_{x\sim P_{d a t a}(x)}[\log\!D(x)]-\mathbb{E}_{z\sim P_{z}(z)}[\log(1-D(G(z)))] 其中,(x) 表示真实数据,(D(x)) 表示判别器对真实数据的输出概率[27] * GRU收益预测:将GAN生成器输出的增强特征,输入到一个两层GRU网络(GRU(128, 128))中,后面再接一个多层感知机(MLP(256, 64, 64)),模型最终输出的预测收益(pRet)即为GAN_GRU因子[22] * 模型训练:采用半年滚动训练方式,训练时间点为每年的6月30日及12月31日,使用过去数据训练模型并用于未来半年的预测[18] * 股票筛选:选取全市场股票,剔除ST及上市不足半年的股票[18] 模型评价:该模型结合了GAN的数据增强能力和GRU的时序建模能力,旨在挖掘更深层次的量价时序规律以预测股票收益[4][13] 量化因子与构建方式 1. 因子名称:GAN_GRU因子[4][13] 因子构建思路:GAN_GRU模型最终输出的股票未来收益预测值,直接作为选股因子使用[4][13][22] 因子具体构建过程:如上述模型构建过程所述,经过GAN特征生成和GRU模型预测后,得到每只股票的未来收益预测值(pRet),即为因子值[22]。在因子测试前,会对该因子值进行行业和市值中性化处理,并进行标准化[22] 模型的回测效果 1. GAN_GRU模型(因子)[41][42] * IC均值:0.1119***[41][42] * ICIR(未年化):0.89[42] * 年化收益率:37.40%[42] * 年化波动率:23.39%[42] * 信息比率(IR):1.60[42] * 最大回撤率:27.29%[42] * 年化超额收益率:22.42%[41][42] * 换手率:0.83X[42] * 最新一期IC(截至2025年12月29日):0.0331***[41][42] * 近一年IC均值(截至2025年12月29日):0.0669***[41][42] 因子的回测效果 1. GAN_GRU因子[41][42] * IC均值:0.1119***[41][42] * ICIR(未年化):0.89[42] * 年化收益率:37.40%[42] * 年化波动率:23.39%[42] * 信息比率(IR):1.60[42] * 最大回撤率:27.29%[42] * 年化超额收益率:22.42%[41][42] * 换手率:0.83X[42] * 最新一期IC(截至2025年12月29日):0.0331***[41][42] * 近一年IC均值(截至2025年12月29日):0.0669***[41][42]