Qlib
从金融数据和因子处理到模型训练、策略回测、实验记录的机器学习投研框架。
为什么值得学
适合学习可复现的研究流水线,尤其是训练数据、预测信号与组合回测之间的边界。
数据与控制流程
- 1金融数据
- 2特征和标签
- 3模型训练与验证
- 4预测信号
- 5策略决策与回测
- 6实验记录
此流程为教学归纳,便于建立整体认识;完整条件分支与运行细节请对照下方源码。
架构拆解 · 4 个核心模块
每个入口均已核对,点击可阅读源码数据处理器
DataHandler / DataHandlerLP 组织特征、标签及学习与推理的数据处理流程。
- 输入
- 原始特征、标签与处理配置
- 输出
- 供模型读取的数据集
qlib/data/dataset/handler.py基线模型
LGBModel 对接 LightGBM,封装训练、预测与微调等接口。
- 输入
- 训练集、验证集与模型参数
- 输出
- 模型与预测分数
qlib/contrib/model/gbdt.py回测执行器
Executor 负责推进模拟时钟和执行交易决策,支持多层执行结构。
- 输入
- 交易决策与市场数据
- 输出
- 成交结果、持仓与回测指标
qlib/backtest/executor.py实验记录
Recorder / MLflowRecorder 管理参数、指标与实验产物。
- 输入
- 实验参数、模型及结果
- 输出
- 可检索的研究记录
qlib/workflow/recorder.py建议阅读顺序
- 先画清 DataHandler 的特征和标签时间范围
- 用 LGBModel 理解 fit / predict 的输入
- 追踪信号如何进入回测执行器
- 查看 Recorder 如何保存参数与结果
动手做一次
跑通一个 LightGBM 基线,并做一次“移除一组特征”的对照实验。
完成后,检查这些证据
- 训练、验证、测试按时间隔离
- 同时报告 IC 和计入成本后的组合表现
- 记录数据范围、随机种子、特征与实验编号
适用边界与版本说明
主分支可能有尚未发布的配置和产物加载迁移;应按所用版本的说明操作,预测指标高并不代表可交易收益高。
Star 快照:49,548 · 核验日期:2026-10-20 · GitHub 归档标记:未归档
核验默认分支:main · 源码固定提交:543552324638 ↗
来源:GitHub 仓库与 Star 页面、README及上述源文件。分层、阅读顺序与练习为本站归纳;未逐一安装运行这些框架,源码提交不等于推荐安装版本。