mirror of
https://github.com/shy3130/tick-stock-panel.git
synced 2026-11-02 10:26:13 +00:00
策略结果缓存只记录「计算那一刻」的价格。盘中跑完 run_all 后, 列表里的 close/change_pct 会一直停在那时, 而点开个股详情走的是实时 enriched 缓存, 同一只票在两处显示不同涨幅。实测 002543.SZ: 13:27 扫描时 2.49%, 收盘 4.48%, 缓存里 279 行中有 271 行与实时值不一致。 后端: - /api/screener/cached 与 /cached-result 返回前, 用当前实时快照覆盖纯展示 字段 (open/high/low/close/prev_close/volume/amount/change_pct/ change_amount/turnover_rate/raw_*/quote_ts) - 指标与信号列 (ma20/score/signal_* 等) 保持计算时点值: 用新价格重算会让 「为什么入选」不可解释 - 仅覆盖同日结果 (优先结果级 as_of, 行级 date 兜底), 历史回看不被今日行情 污染; 实时缓存为空时原样返回, 不伪造价格 - 覆盖只发生在响应层, 不写回 strategy_cache.json (写回会让 mtime 指纹失效, 等于每轮触发一次全量重读) 前端: - 明细查询在交易时段 6s 重取、收盘后 60s 兜底, 让覆盖真正反映到页面 验证: 新增 4 条回归 (实时覆盖生效且指标保留/历史日期不覆盖/实时缓存空时 不变/cached-result 同口径); 后端全量 2926 passed; pnpm build 通过; 运行实例上两接口均返回实时价, 缓存文件仍保存原值。