feat(data): 财务/日线同步增量 + 新浪「两边一致」校验兜底 + 逐只进度
- financial 默认增量:按 A 股披露节奏判断已最新并跳过;--full 强制全量重拉 - Tushare fina_indicator 增加报告期窗口与 100 条/请求自动分页(修复老报告期静默截断) - 新浪兜底收紧为校验兜底:两源重叠历史一致才导入缺失键,行标记 source=sina; 财务可比字段取 eps/销售毛利率(ROE 两端口径不同不作依据),日线只比较最近重叠交易日 - CLI 输出逐只进度与导入内容描述(来源/行数/报告期与公告区间),失败股票留待重跑 - financial_indicator 增 source 列(迁移 d3f6c9a21b04);新增一致性/分页/服务测试
This commit is contained in:
+14
-3
@@ -110,15 +110,26 @@ uv run python -m app.cli.sync basic # 股票基础信息(
|
||||
uv run python -m app.cli.sync calendar --start 20240101 --end 20241231
|
||||
uv run python -m app.cli.sync daily --symbols 600519.SH,000858.SZ --start 20230101
|
||||
uv run python -m app.cli.sync daily --all --start 20240101 --resume # 全市场 + 断点续传
|
||||
uv run python -m app.cli.sync financial --all # 财务指标快照
|
||||
uv run python -m app.cli.sync financial --all # 财务指标(默认增量)
|
||||
uv run python -m app.cli.sync financial --all --full # 财务指标(强制全量重拉)
|
||||
uv run python -m app.cli.sync verify --symbol 600519.SH # 新浪交叉验证
|
||||
uv run python -m app.cli.sync export [--years 2023,2024] # 日线按年导出 Parquet
|
||||
```
|
||||
|
||||
- 每次拉取写入 `sync_log` 审计(来源 / 成功与否 / 行数 / 区间),禁止静默切换数据源。
|
||||
- `daily` 同时写入日线与复权因子;`--resume` 从本地最新交易日续传。
|
||||
- `daily` 同时写入日线与复权因子;`--resume` 从本地最新交易日续传。`financial`
|
||||
默认增量:本地已含「最新应披露报告期」(按 A 股披露节奏推算)的股票直接跳过;
|
||||
逐只落库,中断/限速后重跑同一命令即可续传补齐(只丢当前一只)。
|
||||
- 新浪兜底带「两边一致」真实性校验:Tushare 报错时,只有当该股票本地历史与新浪
|
||||
返回数据**重叠部分一致**,才把新浪**新数据**(本地缺失键)导入,并标记
|
||||
`source=sina`(日线另标记 `adjust=qfq` 前复权;新浪不提供复权因子)。
|
||||
校验口径:财务为重叠报告期的 eps / 销售毛利率逐期一致(ROE 两端口径不同,
|
||||
不作依据);日线为最近重叠交易日的前复权价一致(老交易日在除权后不可比)。
|
||||
本地无历史可对照或校验不一致 → 拒绝导入并告警,留待 Tushare 恢复后重跑补齐。
|
||||
- 限速时可加 `--sleep 秒数` 加大请求间隔;`financial --full` 重拉全部历史并覆盖既有行。
|
||||
- 新浪(`verify`)仅交叉验证,返回**前复权**口径,不会并入不复权主库。
|
||||
- 财务指标带 `announce_date`(公告日),研究侧只允许使用已公告数据(防未来函数)。
|
||||
- 财务指标带 `announce_date`(公告日)与 `source`(tushare/sina);研究侧只允许
|
||||
使用已公告数据(防未来函数),对同一报告期优先消费 `source=tushare` 的行。
|
||||
- `export`:`data/parquet/stock_daily/<year>.parquet`(列:symbol/trade_date/ohlc/volume/amount),
|
||||
由 pyarrow 写出,可直接用 pandas 读取分析,或作为 Qlib 等引擎的后续数据源。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user