版本:V7.3.0日期:2026 年 03 月

声明:本文档仅供技术交流,不构成任何投资建议。文中所有模型输出仅为技术示例,不代表未来表现。

目录

执行摘要

模型概述

投资理念与方法论

模型架构

特征工程

数据处理流程

模型训练

性能评估

版本演进

技术局限性

未来优化方向

附录:术语表

附录:参考文献


1. 执行摘要

核心亮点

四模型集成:随机森林 (40%) + Gradient Boosting (30%) + XGBoost (15%) + LightGBM (15%)

28 个精选特征:覆盖动量、波动率、成交量、技术指标、资金流五大维度

AUC-ROC 0.6131,准确率 59.07%,基于 132 万 + 样本训练

版本持续优化:V7.0→V7.3,性能稳步提升,提升幅度加速

关键指标

表格

指标

V7.3 实际

目标

状态

特征数

28 个

28-32

✅ 达标

AUC-ROC

0.6131

0.63+

⚠️ 接近(-2.7%)

准确率

59.07%

60%+

⚠️ 接近(-1.55%)

样本数

1,322,406

-

✅ 充足

技术定位

模型是一个面向 A 股市场的多策略选股工具,采用集成学习框架,融合四种主流机器学习算法,基于 28 维特征进行训练和预测。

2. 模型概述

2.1 模型定位

本模型旨在从全市场 5000 + 只股票中筛选出未来 5 个交易日相对收益较高的标的,作为量化投研的辅助工具。

2.2 核心方法

集成学习框架:融合四种主流机器学习算法

多因子选股:28 个特征覆盖五大维度

监督学习:二分类问题(上涨 / 下跌)

时间序列:T 日预测 T+5 日涨跌

2.3 技术参数

表格

项目

说明

目标市场

A 股(沪深主板、创业板、科创板)

股票池

TOP3000(按市值和流动性筛选)

预测周期

5 个交易日(T+5)

调仓频率

每周一次(理论框架)

2.4 性能目标

表格

指标

目标

V7.3 实际

差距

AUC-ROC

≥ 0.63

0.6131

-2.7%

准确率

≥ 60%

59.07%

-1.55%

特征数

28-32

28

✅达标


3. 投资理念与方法论

3.1 核心理念

量化驱动:基于数据而非主观判断

分散投资:不押注单只股票,构建投资组合

风险优先:严格控制仓位和止损(理论框架)

持续优化:版本迭代,性能稳步提升

3.2 方法论基础

有效市场假说:市场弱有效,存在短期定价偏差

行为金融学:投资者情绪导致价格偏离价值

统计套利:利用历史规律获取超额收益

机器学习:从数据中自动学习非线性关系

3.3 策略逻辑

动量效应:过去表现好的股票短期内延续趋势

反转效应:超跌股票存在反弹机会

资金流驱动:大资金流入预示未来上涨

技术面共振:多指标同时发出信号


4. 模型架构

4.1 整体架构

输入层 (45 个原始特征)↓特征工程层 (特征选择、标准化)↓基学习器层 (RF + GB + XGB + LGB)↓集成层 (加权投票)↓输出层 (上涨概率 0-100%)

4.2 基学习器配置

表格

模型

权重

核心参数

作用

随机森林 (RF)

40%

200 棵树,深度 12

捕捉非线性关系,抗过拟合

Gradient Boosting (GB)

30%

150 棵树,学习率 0.05

逐步优化,提升精度

XGBoost (XGB)

15%

200 棵树,学习率 0.05

正则化,防止过拟合

LightGBM (LGB)

15%

200 棵树,深度 10

快速训练,处理大规模数据

4.3 超参数优化

优化框架:Optuna

优化目标:最大化 AUC-ROC

交叉验证:5 折 CV

优化参数:

RF:n_estimators, max_depth, min_samples_split

GB:n_estimators, learning_rate, max_depth

XGB:n_estimators, learning_rate, max_depth, subsample

LGB:n_estimators, max_depth, learning_rate


5. 特征工程

5.1 特征来源

原始特征:45 个

筛选后:28 个

特征保留率:62.2%

5.2 特征类别

表格

类别

特征数

代表特征

动量特征

5

momentum_5d, momentum_10d, momentum_20d, trend_strength

波动率特征

6

volatility_5d, volatility_10d, ATR, volatility_ratio

成交量特征

6

vol_ma5, vol_ma20, vol_ratio, vol_trend, turnover_rate

技术指标

6

RSI, MACD, 布林带上下轨,KDJ

资金流特征

5

聪明钱指数,大单强度,主力净流入

5.3 特征选择流程

步骤 1:低方差过滤

阈值:variance < 0.003

目的:移除变化小的特征(信息量低)

效果:移除 10 个特征(45→35)

步骤 2:高相关过滤

阈值:correlation > 0.99

目的:移除高度相关特征(减少冗余)

效果:移除 7 个特征(35→28)

步骤 3:特征重要性排序

方法:基于 RF 的 feature_importances_

目的:确保保留最具解释力的特征

效果:Top28 特征入选最终模型

5.4 特征构造示例

# 动量特征

momentum_5d = (close - close.shift(5)) / close.shift(5) * 100

momentum_10d = (close - close.shift(10)) / close.shift(10) * 100

# 波动率特征

volatility_5d = returns.rolling(5).std() * np.sqrt(252) * 100

ATR = high - low  # 简化

# 成交量特征

vol_ma5 = volume.rolling(5).mean()

vol_ratio = volume / vol_ma5

# 技术指标

RSI = 100 - (100 / (1 + avg_gain/avg_loss))

MACD = EMA(12) - EMA(26)

# 资金流特征

聪明钱指数 = (大单买入 - 大单卖出) / 总成交额

大单强度 = 大单成交额 / 总成交额


6. 数据处理流程

6.1 数据源

行情数据:日频 OHLCV(开高低收量)

资金流数据:大单 / 中单 / 小单净流入

财务数据:市值、市盈率、市净率等

覆盖范围:全 A 股 5000 + 只

6.2 数据清洗

缺失值处理:剔除缺失率 > 50% 的特征

异常值处理:1%-99% Winsorization 缩尾

ST 股处理:剔除 ST、*ST 股票

新股处理:剔除上市 < 60 日的新股

6.3 标准化

方法:RobustScaler(对异常值鲁棒)

公式:(X - median) / IQR

目的:消除量纲影响,加速收敛

6.4 样本加权(时间衰减)

表格

时间段

权重

近期(3 个月内)

1.5x

中期(3-12 个月)

1.0x

远期(12 个月 +)

0.8x

目的:适应市场风格变化


7. 模型训练

7.1 训练数据

表格

项目

说明

时间跨度

2020-01-01 至 2026-03-19

样本数量

1,322,406 个

特征数量

28 个

正负样本比

约 1:1(平衡)

7.2 训练集 / 测试集划分

训练集:80%(1,057,925 样本)

测试集:20%(264,481 样本)

划分方式:时间序列划分(非随机)

训练集:2020-01-01 至 2025-06-30

测试集:2025-07-01 至 2026-03-19

7.3 训练流程

数据加载:读取 CSV 文件,合并特征

数据清洗:缺失值、异常值处理

特征选择:低方差 + 高相关过滤

标准化:RobustScaler 拟合训练集

模型训练:四个基学习器并行训练

超参数优化:Optuna 自动调优

集成权重:基于验证集性能确定

模型保存:Pickle 序列化

7.4 训练时间

总时间:50-60 分钟

数据预处理:5-10 分钟

模型训练:35-40 分钟

超参数优化:10-15 分钟


8. 性能评估

8.1 核心指标(版本对比)

表格

版本

特征数

AUC-ROC

准确率

状态

V7.0

27

~0.60

56.57%

基准

V7.1

22

0.6090

58.58%

特征过少

V7.2

24

0.6099

58.75%

小幅提升

V7.3

28

0.6131

59.07%

✅当前版本

8.2 多维度评估指标

Precision(查准率):58.5%

Recall(查全率):59.5%

F1-Score:0.590

Matthews Correlation Coefficient:0.181

Log Loss:0.689

训练集 AUC:0.6250

测试集 AUC:0.6131

过拟合程度:< 2%(良好)

8.3 提升趋势分析

表格

版本演进

AUC 提升

准确率提升

特征数增加

V7.1→V7.2

+0.0009 (+0.15%)

+0.17%

+2 (+9.1%)

V7.2→V7.3

+0.0032 (+0.52%)

+0.32%

+4 (+16.7%)

结论:提升幅度加速,优化策略有效 ✅


9. 版本演进

9.1 V7.0(基准版本)

特征数:27 个

AUC:~0.60

准确率:56.57%

状态:基准,已淘汰

9.2 V7.1(特征优化)

修改:新增 18 个特征(共 45 个)

问题:阈值过严(variance<0.01, correlation>0.95)

结果:仅保留 22 个特征,大量新增特征被移除

教训:阈值需要放宽

9.3 V7.2(阈值放宽)

修改:variance<0.005, correlation>0.98

结果:保留 24 个特征

性能:AUC 0.6099,准确率 58.75%

进展:小幅提升,但未达标

9.4 V7.3(进一步优化)

修改:variance<0.003, correlation>0.99

结果:保留 28 个特征 ✅

性能:AUC 0.6131,准确率 59.07%

状态:当前版本

9.5 演进逻辑

核心问题:特征数不足(22-24 < 28-32)

根本原因:阈值过严,误删有效特征

解决方案:逐步放宽阈值

验证结果:特征数增加,性能提升 ✅


10. 技术局限性

10.1 性能待提升

AUC:0.6131 < 0.63(差距 - 2.7%)

准确率:59.07% < 60%(差距 - 1.55%)

原因:特征工程仍有优化空间

计划:V7.4 进一步放宽阈值

10.2 数据依赖

依赖历史数据质量

数据滞后:T 日只能使用 T-1 日数据

数据缺失:部分股票历史数据不完整

应对:数据清洗,插值补全

10.3 黑箱问题

集成学习模型可解释性差

难以解释为何某只股票被选中

应对:使用 SHAP 值分析特征重要性

10.4 市场适应性

模型在震荡市表现较好

在单边牛市 / 熊市可能失效

应对:可加入市场状态识别模块(待实现)

10.5 计算资源

训练时间:50-60 分钟

内存需求:8-10GB

预测时间:10-20 分钟

应对:优化代码,使用更高效算法


11. 未来优化方向

11.1 V7.4 计划(短期)

进一步放宽阈值:variance<0.002, correlation>0.995

目标:特征数 30-32,AUC 0.63+,准确率 60%+

时间:2026 年 3 月下旬

11.2 V8.0 计划(中期)

引入深度学习:LSTM/Transformer 捕捉时序关系

引入另类数据:新闻舆情、社交媒体、研报

多任务学习:同时预测收益、波动率、资金流

时间:2026 年 Q2

11.3 长期规划

强化学习:动态调整参数

图神经网络:捕捉股票间关联关系

在线学习:实时更新模型,适应市场变化

分布式训练:缩短训练时间至 10 分钟内

11.4 特征工程优化

设计独特性更强的特征

增加特征交互项

引入基本面特征(PE、PB、ROE 等)

引入宏观特征(利率、汇率、大宗商品)

11.5 模型融合

增加基学习器数量(如加入神经网络)

动态权重(基于市场状态调整)

Stacking 集成(用元学习器学习权重)


12. 附录:术语表

表格

术语

解释

AUC-ROC

曲线下面积,衡量分类模型性能,0.5 = 随机,1.0 = 完美

准确率

正确预测的样本占比

集成学习

组合多个模型提升性能

随机森林

多棵决策树的集成

Gradient Boosting

梯度提升,逐步优化

XGBoost

极端梯度提升,高效实现

LightGBM

轻量级梯度提升,快速训练

Optuna

自动超参数优化框架

Winsorization

缩尾处理,压缩极端值

RobustScaler

基于中位数和 IQR 的标准化

动量

过去收益率的延续

波动率

价格波动幅度

资金流

大资金净流入 / 流出

SHAP 值

模型可解释性分析方法


13. 附录:参考文献

Breiman, L. (2001). Random Forests. Machine Learning.

Friedman, J. H. (2001). Greedy Function Approximation: A Gradient Boosting Machine. Annals of Statistics.

Chen, T., & Guestrin, C. (2016). XGBoost: A Scalable Tree Boosting System. KDD.

Ke, G., et al. (2017). LightGBM: A Highly Efficient Gradient Boosting Decision Tree. NeurIPS.

Akiba, T., et al. (2019). Optuna: A Next-generation Hyperparameter Optimization Framework. KDD.

Lopez de Prado, M. (2018). Advances in Financial Machine Learning. Wiley.

Gu, S., Kelly, B., & Xiu, D. (2020). Empirical Asset Pricing via Machine Learning. Review of Financial Studies.

李航. (2019). 《统计学习方法》. 清华大学出版社.

周志华. (2016). 《机器学习》. 清华大学出版社.


文档结束

版本:V7.3.0 (CSDN 版)日期:2026 年 03 月状态:✅ 技术交流版

声明:本文档为技术交流用途,不构成任何投资建议。文中所有模型输出和回测结果均为历史数据统计,不代表未来表现。股市有风险,投资需谨慎。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐