AI交易引擎 · 机器学习分类算法 9 步实战报告

Task 5 — 算法与场景应用 | 数据范围:仅股票数据(财务因子选股 + 收益率预测)| 生成时间:2026-07-18 00:53

逻辑回归 LR 决策树 DT 随机森林 RF 梯度提升树 GBDT XGBoost
本报告严格遵循「完整实战流程 9 步」:准备数据 → 构造标签 → 选择特征 → 时间序列划分 → 训练模型 → 预测 → 评估 → 特征重要性 → 保存结果。所有图表、模型、预测均已落盘归档。

完整实战流程(9 步)

1
准备数据
2
构造标签
3
选择特征
4
时间序列划分
5
训练模型
6
预测
7
评估
8
特征重要性
9
保存结果
关键模型:随机森林分类器
关键参数:n_estimators=100
关键参数:max_depth=10
划分方式:时间序列 70% 训练 / 30% 测试
特征选择:|Pearson r| ≥ 0.01

前置知识:模型策略与评估指标

算法选择策略
算法选择策略:先简单后复杂 — 先用线性/逻辑回归建立基线,再尝试树模型,最后调参与特征工程。
回归评估指标
回归指标:RMSE、MAE、R²(本任务主要聚焦分类,但需了解连续收益预测时的评估体系)。
分类评估指标
分类指标:Accuracy / Precision / Recall / F1,各有适用场景,Accuracy 在类别不平衡时容易误导。
混淆矩阵
混淆矩阵:FP(错误买入)在交易中最危险,直接造成资金亏损,是风控核心。
ROC与AUC
ROC 与 AUC:AUC 衡量模型排序能力;1.0 完美,>0.8 良好,0.5 等价于随机猜测。

场景:股票财务因子选股

目标变量 Y | 正类含义:Y=True (选中/合格标的) | 每行代表某股票某期财务因子快照,目标 Y=True 表示被选中/合格标的。
20,772
样本总数
8
入选特征数
12,282 / 8,490
训练 / 测试 (70/30)
40.4%
正类占比 (1)
训练日期范围:2021-06-30 ~ 2021-12-31 | 测试日期范围:2022-03-31 ~ 2022-06-30
特征选择:剔除 9 个低相关特征(|r| < 0.01),保留 8 个。
feature selection
特征与目标的 Pearson 相关系数(红负 / 蓝正;虚线为保留阈值 |r|=0.01)
按 Date 升序排序,前 70% 日期进入训练集,后 30% 日期进入测试集,避免未来信息泄露,符合金融量化建模习惯。
模型AccuracyPrecision RecallF1AUC
逻辑回归0.6472 0.33410.11540.1715 0.4939
决策树0.5558 0.33770.41980.3743 0.5294
随机森林0.5903 0.35730.36840.3628 0.5357
梯度提升树0.5913 0.35870.36990.3642 0.5308
XGBoost0.5802 0.34780.37290.3599 0.5359
绿色高亮行为该数据集 AUC 最优模型。随机森林关键参数:n_estimators=100, max_depth=10。AUC 越接近 1 表示排序能力越强。
ROC overlay
多模型 ROC 曲线叠加(对角线为随机猜测基准)

逻辑回归 · AUC=0.4939

混淆矩阵 [TN=5185, FP=618, FN=2377, TP=310] | 准确率 0.6472
LR cm roc
混淆矩阵 + ROC 曲线
LR importance
Top-15 特征系数(红负/蓝正)

随机森林 · AUC=0.5357

混淆矩阵 [TN=4022, FP=1781, FN=1697, TP=990] | 准确率 0.5903
RF cm roc
混淆矩阵 + ROC 曲线
RF importance
Top-15 特征重要性

XGBoost · AUC=0.5359

混淆矩阵 [TN=3924, FP=1879, FN=1685, TP=1002] | 准确率 0.5802
XGB cm roc
混淆矩阵 + ROC 曲线
XGB importance
Top-15 特征重要性
混淆矩阵:绿色对角=预测正确(TP/TN)红色非对角=预测错误(FP/FN)。此处红/绿仅表示对错,与股票涨跌配色无关。
模型文件:report/models/stock_*.pkl | 预测结果:report/predictions/stock_*.csv

场景:股票收益率预测

目标变量 Next_Ret | 正类含义:Next_Ret>0 (盈利) | 下一期收益率 Next_Ret 为连续值,按 >0 转为二分类:盈利=1,亏损=0。
39,616
样本总数
5
入选特征数
26,953 / 12,663
训练 / 测试 (70/30)
46.4%
正类占比 (1)
训练日期范围:2020-03-31 ~ 2021-09-30 | 测试日期范围:2021-12-31 ~ 2022-06-30
特征选择:剔除 14 个低相关特征(|r| < 0.01),保留 5 个。
feature selection
特征与目标的 Pearson 相关系数(红负 / 蓝正;虚线为保留阈值 |r|=0.01)
按 Date 升序排序,前 70% 日期进入训练集,后 30% 日期进入测试集,避免未来信息泄露,符合金融量化建模习惯。
模型AccuracyPrecision RecallF1AUC
逻辑回归0.3051 0.29430.98060.4527 0.5530
决策树0.4884 0.32500.69210.4423 0.5740
随机森林0.4851 0.32750.71820.4499 0.5813
梯度提升树0.4822 0.32680.72310.4501 0.5863
XGBoost0.4841 0.32380.69850.4425 0.5689
绿色高亮行为该数据集 AUC 最优模型。随机森林关键参数:n_estimators=100, max_depth=10。AUC 越接近 1 表示排序能力越强。
ROC overlay
多模型 ROC 曲线叠加(对角线为随机猜测基准)

逻辑回归 · AUC=0.5530

混淆矩阵 [TN=223, FP=8728, FN=72, TP=3640] | 准确率 0.3051
LR cm roc
混淆矩阵 + ROC 曲线
LR importance
Top-15 特征系数(红负/蓝正)

随机森林 · AUC=0.5813

混淆矩阵 [TN=3477, FP=5474, FN=1046, TP=2666] | 准确率 0.4851
RF cm roc
混淆矩阵 + ROC 曲线
RF importance
Top-15 特征重要性

XGBoost · AUC=0.5689

混淆矩阵 [TN=3537, FP=5414, FN=1119, TP=2593] | 准确率 0.4841
XGB cm roc
混淆矩阵 + ROC 曲线
XGB importance
Top-15 特征重要性
混淆矩阵:绿色对角=预测正确(TP/TN)红色非对角=预测错误(FP/FN)。此处红/绿仅表示对错,与股票涨跌配色无关。
模型文件:report/models/ret_*.pkl | 预测结果:report/predictions/ret_*.csv