mirror of
https://ghfast.top/https://github.com/aeroxw/tick-stock-panel.git
synced 2026-09-12 23:44:16 +08:00
* feat: 自选/个股分析/K线查询接入 ETF 数据层此前已完成 ETF 同步与存储 (instruments_etf / kline_etf_* / adj_factor_etf), 但查询侧仍只走股票路径。本次把已有的 ETF 读取能力 接到面向用户的接口上: - repository: 新增 get_etf_symbol_set / resolve_asset_type 按 symbol 判定资产类型; get_minute / get_minute_batch / latest_minute_date 增加 asset_type 参数切换 ETF 分钟K存储 - kline API: instruments/search 增加 asset_types 参数 (默认 stock, 既有调用方行为不变), 结果附 asset_type; instruments/names 合并 ETF 名称; /daily /minute /minute-batch 按资产类型分流 - watchlist API: /enriched 合并 ETF enriched 缓存行, 名称补齐支持 ETF - 个股分析: /levels 与 AI 分析按资产类型分流, ETF 无财务数据走 已有兜底提示 - 前端: 自选搜索框传 asset_types=stock,etf 并显示 ETF 标记 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix: 修复 ETF 接入的审查发现问题 多智能体代码审查确认的 9 处问题修复: - watchlist /enriched: 仅自选实际含 ETF 时才加载 ETF enriched 缓存, 避免无 ETF 用户在缓存冷启动时触发全量懒加载阻塞请求; 恢复股票 enriched 预热期间 all-or-nothing 旧契约 (不再返回只有 ETF 的部分结果); as_of 取股票/ETF 两类缓存中较旧者, 不再把旧 ETF 行标成股票缓存日期 - repository: refresh_cache 失效 _etf_enriched_cache, 盘后管道跑完 ETF 行不再停留在旧日期; get_etf_symbol_set / get_index_symbol_set 增加 memo (随 instruments 缓存失效), 热路径不再每请求重建全量集合; 新增 get_name_map 统一股票+ETF 名称解析, 收敛三处重复合并逻辑 - kline /daily: 实时蜡烛注入改为资产感知, ETF 开启实时拉取时同样 注入今日 bar (未开启时由"非今日不注入"守卫自然跳过) - kline search: 空关键词早退提前到数据处理之前; symbol 列 dtype 归一到 Utf8, 防两份缓存来源 dtype 不一致导致 concat SchemaError 已知限制 (不在本次范围): kline_etf_minute 目前无盘后同步写入方, ETF 分时依赖"本地缺失 → TickFlow 实时补拉"路径, 与其他未同步分钟K 标的行为一致。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>