You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
指标选择器三种视图 — 指标选择器新增「按位置 / 简洁 / 按类型」三种视图 Tab,可按主副图、紧凑网格或业务类型(均线类、趋势类、动量类、波动率类、通道类、成交量类、支撑阻力类、市场结构类等)分组浏览,并支持主/副图徽标标识 Categorized Indicator Selector — The indicator selector adds three view tabs (position / compact / type), grouping indicators by pane, compact grid, or business type (moving-average, trend, momentum, volatility, channel, volume, support-resistance, structure, etc.), with main/sub-pane badges
指标用途说明弹窗 — 无参数指标新增「?」说明按钮,点击弹出指标用途说明;补齐 MA 描述,修复 VP/ChaikinVol 的 UI 元数据键 Indicator Usage Info Popup — Param-less indicators now show an info button that opens a modal with the usage description; filled in the missing MA description and fixed VP/ChaikinVol metadata keys
市场感知的品种交易时段 — 强制符号、搜索结果、缓存、semantic 配置中的市场身份归一化;每个图表实例独立维护 session 注册表,正确路由 gotdx 港股分时数据,并防止不受支持的搜索结果污染有效数据 Market-Aware Symbol Sessions — Require normalized market identity across symbols, search results, caches, and semantic config; add per-chart session registries and route gotdx Hong Kong time-share data without letting unsupported search rows poison valid results
品种错误圆角标签 — 品种 chip 上的获取失败以药丸形标签展示警告图标与失败原因,溢出省略并保留原生 title Symbol Fetch Error Rounded Tag — Fetch failures render as a pill-shaped tag on the symbol chip with warning icon and failure reason, ellipsis overflow, and native title
品种错误原因标题 — DataBuffer 记录显式 Effect 失败的最后错误,暴露 chart dataError,作为 SymbolSelector 原生 title 展示 Fetch Error Reason Title — Record DataBuffer lastError on explicit failures, expose chart dataError, and use it as the SymbolSelector native title
🏗️ 架构与重构 / Architecture & Refactoring
移除默认品种兜底 — 品种选择器不再内置硬编码 DEFAULT_SYMBOLS,完全依赖 controller 的 symbolCatalog 信号从注册数据源获取 Remove DEFAULT_SYMBOLS Fallback — The symbol selector no longer ships hardcoded default symbols, relying entirely on the controller's symbolCatalog signal from registered data sources
🐛 Bug 修复 / Fixes
分时不伪造成交指标 — TimeShareData.volume/amount 改为可选字段,gotdx 适配器不再用 Price×Vol 伪造成交额;量柱区域仅在有 volume 时保留 25% 空间 Stop Synthesizing Timeshare Metrics — volume/amount made optional; the gotdx adapter no longer fabricates turnover from Price×Vol; the volume band keeps 25% pane space only when volume exists
分时手数与细线 — 分时图例补充「手」单位,价格/均价线按 1px 逻辑宽度绘制(DPR 缩放后不再粗于指标线) Timeshare Volume Hands & Thin Lines — Append 手 to the volume text and render price/average lines at 1px logical width
分时按会话时间戳映射点位 — 分时点按交易会话时间戳正确映射,新增 sessionTimeLabels 工具 Map Points by Session Timestamp — Map time-share points by session timestamp with a new sessionTimeLabels utility
透传历史分时接口错误 — gotdx history-tick HTTP 失败时透传后端错误体并记录 lastError,例如「该日期暂无历史分时数据」,成功重载后清除 Surface History-Tick API Errors — Propagate backend error bodies from history-tick failures and record them as lastError, e.g. 「该日期暂无历史分时数据」, cleared on successful reload
保留原始错误消息 — Effect.tryPromise 改用 { try, catch } 重载,避免默认 UnknownException 吞掉原始 Error/KLineChartError 消息 Preserve Original Error Messages — Switch Effect.tryPromise to the { try, catch } overload so Error/KLineChartError instances survive unwrapped
空 K 线响应降级为警告 — 空数据(如 gotdx 无该 ETF 历史)是合法响应,从 Effect.fail 降级为 logWarning,图表渲染空而非拒绝请求;chip 显示「暂无K线数据」 Empty K-line as Warning — Treat empty data as a valid response downgraded from Effect.fail to logWarning; the chart renders empty and the chip shows 「暂无K线数据」
搜索命中展示与拦截 — gotdx 返回无市场会话的交易所(如 EX-0、FUTURES)不再整体搜索失败,行以空市场展示,选中时提示「暂不支持该品种」 Show Unmapped Search Hits — Search no longer fails on exchanges without a market session; rows list with empty market and selection surfaces 「暂不支持该品种」
FUND 搜索结果映射 CN 市场 — 纯基金查询(如「国泰中」)返回的 exchange=FUND 行映射到 CN 市场,修复成功响应却显示「搜索失败」的问题 Map FUND Search Hits to CN — Map mainland fund/money extended exchanges to CN so pure fund queries no longer throw on a successful API response
错误标签始终显示文本 — dataError 为空时兜底「加载失败」,防止胶囊标签在 flex 约束下塌缩为纯图标 Always Show Tag Text — Fall back to 「加载失败」 when dataError is empty and keep the pill from collapsing to icon-only
暗色网格对比度 — 提升暗色主题网格线对比度 / Dark Grid Contrast — Improve grid line contrast in dark theme
📚 文档 / Documentation
数据源后端文档:AGENTS.md 记录 stockbao(BaoStock FastAPI)与 KlineChartQuantGo(gotdx + 加密所)的启动与代理配置 Backend Docs — Document stockbao and KlineChartQuantGo backends (startup and proxy config) in AGENTS.md
注释风格规范:统一为中文注释约定 / Comment Style — Update comment style to Chinese conventions