12,282 / 8,490
训练 / 测试 (70/30)
训练日期范围:2021-06-30 ~ 2021-12-31 | 测试日期范围:2022-03-31 ~ 2022-06-30
特征选择:剔除 9 个低相关特征(|r| < 0.01),保留 8 个。
Step 3 · 特征选择(Top-15 相关特征)
特征与目标的 Pearson 相关系数(红负 / 蓝正;虚线为保留阈值 |r|=0.01)
Step 4 · 时间序列划分
按 Date 升序排序,前 70% 日期进入训练集,后 30% 日期进入测试集,避免未来信息泄露,符合金融量化建模习惯。
Step 7 · 模型评估对比
| 模型 | Accuracy | Precision |
Recall | F1 | AUC |
| 逻辑回归 | 0.6472 |
0.3341 | 0.1154 | 0.1715 |
0.4939 |
| 决策树 | 0.5558 |
0.3377 | 0.4198 | 0.3743 |
0.5294 |
| 随机森林 | 0.5903 |
0.3573 | 0.3684 | 0.3628 |
0.5357 |
| 梯度提升树 | 0.5913 |
0.3587 | 0.3699 | 0.3642 |
0.5308 |
| XGBoost | 0.5802 |
0.3478 | 0.3729 | 0.3599 |
0.5359 |
绿色高亮行为该数据集 AUC 最优模型。随机森林关键参数:n_estimators=100, max_depth=10。AUC 越接近 1 表示排序能力越强。
Step 7 · ROC 曲线对比
多模型 ROC 曲线叠加(对角线为随机猜测基准)
Step 8 · 分模型图标分析(混淆矩阵 + ROC / 特征重要性)
逻辑回归
· AUC=0.4939
混淆矩阵 [TN=5185, FP=618, FN=2377, TP=310] | 准确率 0.6472

混淆矩阵 + ROC 曲线

Top-15 特征系数(红负/蓝正)
随机森林
· AUC=0.5357
混淆矩阵 [TN=4022, FP=1781, FN=1697, TP=990] | 准确率 0.5903

混淆矩阵 + ROC 曲线

Top-15 特征重要性
XGBoost
· AUC=0.5359
混淆矩阵 [TN=3924, FP=1879, FN=1685, TP=1002] | 准确率 0.5802

混淆矩阵 + ROC 曲线

Top-15 特征重要性
混淆矩阵:绿色对角=预测正确(TP/TN),红色非对角=预测错误(FP/FN)。此处红/绿仅表示对错,与股票涨跌配色无关。
Step 9 · 保存结果
模型文件:report/models/stock_*.pkl | 预测结果:report/predictions/stock_*.csv