feat: operationalize local Tushare Qlib research

This commit is contained in:
2026-07-31 01:26:49 +08:00
parent f81c116bfe
commit 6275370afc
21 changed files with 4438 additions and 401 deletions
+21 -7
View File
@@ -19,13 +19,14 @@ Investment value claim: false
独立仓:
```text
~/boat-workspace/Code/quant-os
$QUANT_OS_ROOT
```
推荐 Python 3.12
```bash
cd ~/boat-workspace/Code/quant-os
export QUANT_OS_ROOT=/path/to/quant-os
cd "$QUANT_OS_ROOT"
python3.12 -m venv .venv-core
source .venv-core/bin/activate
python -m pip install -e .
@@ -36,7 +37,7 @@ python -m pip install -e .
`quant-os` 应在 checkout 内运行;从其他目录调用新命令时显式写:
```bash
quant-os --project-root ~/boat-workspace/Code/quant-os doctor
quant-os --project-root "$QUANT_OS_ROOT" doctor
```
wheel 不是独立的数据/runtime 分发包。
@@ -117,16 +118,29 @@ quant-os verify-research-manifest artifacts/research-smoke/manifest.json
## 5. Tushare 数据与 Qlib
状态:`[已实现到技术 smoke|真实镜像仍不完整]`
状态:`[v2 provider/run 已验证|research-only]`
先阅读 [`../TUSHARE_LOCAL_DATA.md`](../TUSHARE_LOCAL_DATA.md)。当前盘点表明
completed Parquet 能校验并转换为 managed Qlib provider,但缺复权、真实
benchmark历史成分、ST、停牌和涨跌停,不能进入生产 decision。
先阅读 [`../TUSHARE_LOCAL_DATA.md`](../TUSHARE_LOCAL_DATA.md)
[`../runbooks/TUSHARE_QLIB_LOCAL_RUN.md`](../runbooks/TUSHARE_QLIB_LOCAL_RUN.md)。
当前镜像已有复权因子、真实中证 500 benchmark/历史权重、停牌和涨跌停
raw mirror 仍可变化,历史 `stock_st` 权限被拒,所以必须先冻结 scoped
release,再构建、验证 provider。2018—2025 provider 和双次 momentum run
已经完成;月末指数权重保守地从下一 provider 交易日生效,不做 same-session
使用,97 个 observed snapshots 形成 96 个 effective rosters,均严格 500
成分、weight sum 在 100±0.5 内、最大间隔 36 天。但统一 9.5% 涨跌停近似和
ST 缺口仍使其不能进入完整 production decision`gate_credit=[]`
冻结期间全 DB/WAL 可能因无关下载任务变化;验收看的是 221 个 scoped jobs
double verified、验证后仍为 latest;再用 `tools/tushare_lineage.py` 核对
221 jobs 的 6 个身份字段,要求 mismatch 0 且 converter current true。
历史权重没有单独验证的 `published_at`,所以 universe 是 event-time/保守
次日生效 PIT 近似,不是严格 knowledge-time PIT。复权使用首观测锚;不同
`start` 构建的 provider 不能直接拼接价格 level。
典型流程:
```bash
PYTHONPATH=src:. python tools/tushare_qlib.py inventory --help
python tools/tushare_snapshot.py --help
PYTHONPATH=src:. python tools/tushare_qlib.py build --help
PYTHONPATH=src:. python tools/tushare_qlib.py verify --help
PYTHONPATH=src:. python -m platforms.qlib_runner --help