feat(quant): QlibEngine v1 — 本地行情落盘 QlibDataset → D.features 读取 → 因子回测
- qlib_adapter/provider.py:SQLite 行情按 qlib 0.9.8 二进制格式落盘(起始索引头 + 逐日 float32、instruments 3 列、小写 instrument、晚上市 offset)
- qlib_adapter/dataset.py:qlib.init 幂等({'day': uri})+ D.features 读取 close 面板
- qlib_adapter/engine.py:QlibEngine(QuantEngine)v1 —— Qlib 数据管线回测与 LocalEngine 同记账规则(无未来函数/成本/涨跌停标注),factor_test 复用共享实现;Alpha158+LightGBM 为 TODO
- 真实 20 股验证:qlib 落盘 142 文件→读取→回测(-12.81%,Local 对照 -12.97%,差异为 qlib float32 存储)
- tests/test_qlib_engine.py 5 项(格式/roundtrip/晚上市 offset/回测/因子测试)→ pytest 86 passed / ruff clean
This commit is contained in:
+5
-3
@@ -231,9 +231,11 @@ Job 状态机与 Experiment 归档、Agent 工具白名单与编排、API 端到
|
||||
|
||||
## 9. 已知限制与说明
|
||||
|
||||
1. **Qlib 引擎**:本开发机为 Linux aarch64 + Python 3.12,pyqlib 无匹配 wheel,无法安装。
|
||||
默认研究引擎为自研轻量实现(pandas);`backend/app/quant/qlib_adapter/` 保留桥接,
|
||||
在受支持平台(x86_64/macOS/Windows)安装 pyqlib 后可填充实现,业务层无感。
|
||||
1. **Qlib 引擎(v1 数据管线)**:pyqlib 已通过源码安装可用(qlib 0.9.8.dev32,见
|
||||
docs/QLIB_VERIFICATION.md)。`app/quant/qlib_adapter/` 提供 QlibEngine:本地行情按官方
|
||||
二进制格式落盘 QlibDataset → `D.features` 读取 → TopK 因子回测(与 LocalEngine 同记账
|
||||
规则)。默认研究引擎仍为 LocalEngine;切换只需向 ResearchService 注入 QlibEngine。
|
||||
Alpha158 特征 + LightGBM 预测信号(walk-forward)为下一步 TODO。
|
||||
2. **数据规模**:仓库自带示例数据为 20 只权重股 2023–2024 日线;`sync --all` 可扩展
|
||||
全市场,注意耗时与 Tushare 积分限制。
|
||||
3. **回测为近似建模**:涨跌停按收盘相对上一有效收盘判定、成交假设调仓日收盘,未建模
|
||||
|
||||
Reference in New Issue
Block a user