/~learn/s/5f6b7497
> 时间: 2026-05-28 | 数据来源: data_cache/fetch_history.json
| 时间 | 层级 | 成功/总数 | 失败 | 耗时 | 评估 |
| ------ | ------ | ----------- | ------ | ------ | ------ |
| 05/27 21:57 | Tier1 | 4/33 | 29 | 363s | 🔴 严重退化 |
| 05/27 21:58 | Tier2 | 63/63 | 0 | 35s | 🟢 完美 |
| 05/28 02:07 | Tier1 | 4/33 | 29 | 415s | 🔴 严重退化 |
| 05/28 08:06 | Tier1 | 3/33 | 30 | 397s | 🔴 严重退化 |
| 05/28 08:11 | Tier2 | 0/63 | 63 | 271s | ⛔ 全灭 |
| 05/28 09:34 | Tier1 | 28/33 | 5 | 280s | 🟢 良好 |
| 05/28 12:06 | Tier1 | 16/33 | 17 | 389s | 🟡 波动 |
| 05/28 14:05 | Tier1 | 23/33 | 10 | 330s | 🟡 中等 |
| 05/28 20:05 | Tier1 | 24/33 | 9 | 319s | 🟡 中等 |
夜间 (21:00-08:00): 成功率 6~12% | 309~415s
日间 (09:30-20:00): 成功率 48~85% | 280~389s
tushare API 在非交易时段(21:00~08:30)连接成功率极低。夜间 3 次 Tier1 全部近乎全灭(3~4/33)。日间明显改善(最高 28/33)。
建议: 取消凌晨 02:00 拉取;08:00 → 改为 08:45(盘前 15 分钟);保留日间时段。
| 代码 | 失败次数 | 类型 | 根本原因 |
| ------ | --------- | ------ | --------- |
| 159941 | 6/8 | 非后缀 ETF | adata 超时 / Alpha Vantage 限制 |
| 159915.SZ | 5/8 | .SZ ETF | tushare 多段请求超时 |
| 159937.SZ | 5/8 | .SZ ETF | tushare 超时 |
| 159985 | 5/8 | 非后缀 ETF | adata 超时 |
| 180401.SZ | 4/8 | 自由现金流指数 | tushare index_daily 超时 |
| 159941.SZ | 4/8 | .SZ ETF | tushare 超时 |
| GLD | 4/8 | 美股 | Alpha Vantage 日限额(25次/天) |
| QQQ | 4/8 | 美股 | Alpha Vantage 日限额(25次/天) |
| 000933.SH | 3/8 | .SH 指数 | tushare 超时 |
| 510880 | 3/8 | 非后缀 ETF | adata 超时 |
GLD/QQQ 每次失败原因是 Alpha Vantage 免费版日限额 25 次。每天 6 次拉取 × 每次可能调多次 → 必然超限。Excel 备份数据滞后(GLD 最新到 2025-08-14,QQQ 最新到 2025-08-14),但可用。
建议: GLD/QQQ/SPY 降低拉取频率(每天 1 次),其余用 Excel 兜底。
无后缀 ETF(510880, 513050, 513180, 159941 等)只用 adata 一个源。adata 超时=拉取失败,无 fallback。
建议: 无后缀 ETF 给 adata 自动加 .SH/.SZ 后缀后也尝试 tushare。
Tier2(63 个全市场 ETF)全部是 .SH/.SZ 码,走 tushare。08:11 那次 tushare 全挂导致 0/63。但 21:58 那次 Tier2 成功了(可能 adata 补拉生效)。
建议: Tier2 也启用 adata fallback(当前只有 tushare 一条路径)。
| 优先级 | 改动 | 预期效果 |
| -------- | ------ | --------- |
| P0 | 取消 02:00 拉取,08:00 → 08:45 | 消除夜间全灭 |
| P0 | GLD/QQQ 改为 Excel 兜底优先生效 | 解决美股 API 限额 |
| P1 | 无后缀 ETF:adata → 加后缀试 tushare | 增加 fallback |
| P1 | 超时从 45s 提升到 90s | 减少 tushare 超时失败 |
| P2 | Tier2 启用 adata fallback | Tier2 不再因 tushare 挂全灭 |
| P2 | fetch_history 累计更多数据后 AI 自动选最优源 | 长期自适应 |