dsh-leekbox
A-share market dashboard for DeepSeek Harness (DSH): realtime quotes and indices, full-market search, intraday and forward-adjusted candlestick K-line with F10 fundamentals, stock/ETF/convertible-bond/LOF boards, watchlist with position P/L and price alerts, 13-signal screener with 7 preset strategi
Install
dsh plugin --profile web add dsh-leekbox
Sandbox test results
| Stage | Result |
|---|---|
| 1 install | ✓ |
| 2 list | ✓ |
| 3 mount | ✓ |
| 4 boot | — |
Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).
README
韭菜盒子 LeekBox · A股看盘助手(DeepSeek Harness 插件)




[English](README.en.md) | 简体中文
<img src="docs/og.png" alt="韭菜盒子 LeekBox — A股看盘助手 · DeepSeek Harness (DSH) 插件:实时行情、分时与K线、自选股盈亏与预警、技术信号选股、涨停情绪、龙虎榜、AI 分析" width="100%">
韭菜盒子(LeekBox)是一个 A 股实时行情看板,形态是 DeepSeek Harness(DSH)的 Web 客户端插件:装好后 DSH 左侧边栏多出一个 🥬 入口,点开就是行情面板——实时行情与大盘指数、分时图与前复权 K 线、自选股(持仓成本 / 实时盈亏 / 价格预警)、技术信号选股、涨停情绪温度计与龙虎榜、7×24 三源聚合快讯、以及可自带模型的 AI 个股分析。全部请求由插件服务端在本机代理,浏览器同源访问 /api/leekbox/*,只监听 loopback。
如果你在找「DeepSeek Harness / DSH 的 A 股插件」「开源 A 股看盘面板」「自选股 + 价格预警 + 选股器」「涨停 / 龙虎榜 / 情绪温度计」,这个仓库就是它。数据来自腾讯财经、东方财富、新浪财经、金十数据的公开接口,开箱即用、不需要任何 API key(AI 分析除外,模型密钥由你自己配置)。
目录
- [这是什么](#这是什么)
- [功能亮点](#功能亮点)
- [快速开始](#快速开始)
- [六个标签页](#六个标签页)
- [数据源](#数据源)
- [交易时段与交易日历](#交易时段与交易日历)
- [上游请求治理](#上游请求治理)
- [写接口的跨站防护](#写接口的跨站防护)
- [龙虎榜的日期语义](#龙虎榜的日期语义)
- [出错了要说得出来](#出错了要说得出来)
- [构建产物与源码必须一致](#构建产物与源码必须一致)
- [环境要求](#环境要求)
- [安装](#安装)
- [结构](#结构)
- [常见问题](#常见问题)
- [相关链接](#相关链接)
- [免责声明](#免责声明)
这是什么
一个开源、可自托管、嵌在你自己的 AI 工作台里的 A 股看盘工具。和同花顺 / 东方财富客户端的区别不是行情深度,而是形态:它不是一个独立 App,而是 DSH 面板里的一个标签页集群——看盘、选股、快讯、AI 分析在同一个窗口里,代码全部开放,数据链路可审计(每个上游都能在 lib/ 里找到对应的适配器)。
- 面向 A 股:沪深京 A 股、ETF / 场内基金、可转债、LOF;不含港股、美股、期货。
- 行情实时:交易时段内 30~60 秒自动刷新,非交易时段不发请求(见[交易时段与交易日历](#交易时段与交易日历))。
- 零配置起步:免费公开行情接口,装完就能用;只有 AI 分析需要你自己填模型密钥。
- 纯本机:服务端路由随 DSH 进程运行,只监听 127.0.0.1,密钥只落盘在服务端、界面只显示脱敏值。
功能亮点
- 📈 实时行情与大盘指数 — 上证 / 深成 / 创业板 / 科创50,15 项实时指标;个股详情弹窗带当日分时图、日/周/月/5分/30分前复权 K 线(MA5/10/20 + 成交量 + 十字光标)、主力资金流向柱状图、F10 财务摘要。
- ⭐ 自选股 + 持仓盈亏 + 价格预警 — 分组管理,按持仓成本实时计算浮动盈亏与收益率;行内设置「涨到 / 跌破 / 涨跌幅达到」阈值,交易时段自动盯盘,触发后 toast + 浏览器通知 + 蜂鸣。
- 🔍 选股器 — 两种模式:13 项技术信号加权评分排序,以及 7 个预设策略的并行交集(交叉选股);信号定义集中在服务端,界面按元数据自动渲染。
- 🌡️ 涨停情绪温度计 — 市场宽度 / 涨停强度 / 封板率 / 连板高度加权成 0~100 分,配连板梯队、炸板率、涨跌家数、涨停池明细。
- 🐉 龙虎榜 — 按日期回溯到最近一个已发布的交易日,不把"当天还没发布"伪装成"没有数据"。
- 📰 7×24 快讯 — 新浪 / 东财 / 金十三源聚合,跨源去重(同一事件措辞不同也合并),重要资讯高亮,可点相关股票直达详情。
- 🤖 AI 个股分析 — 服务端汇总实时行情 + 近 60 日 K 线 + F10 财务后送模型,输出结构化中文分析(含风险提示);支持 DeepSeek / OpenAI / Anthropic Claude / Moonshot Kimi / 智谱 / 通义 等服务商。
- 🔎 毫秒级全市场搜索 — 约 8 千只标的的本地索引,代码 / 名称 / 拼音首字母匹配,结果卡带实时价格。
快速开始
# 1) 拿代码 git clone https://github.com/SuCriss/dsh-leekbox.git # 2) 链进 web profile 的 node_modules # Windows mklink /J "%DSH_HOME%\profiles\web\node_modules\dsh-leekbox" "<仓库路径>" # macOS / Linux ln -s "<仓库路径>" "$DSH_HOME/profiles/web/node_modules/dsh-leekbox" # 3) 在 $DSH_HOME/profiles/web/cordis.patch.yml 追加一行注册: # - insert: # - id: leekbox # name: 'dsh-leekbox' # 4) profile watcher 约 1 秒内热重组合;刷新浏览器,侧边栏出现 🥬
细节与常见坑见[安装](#安装)。要求 DSH ≥ 0.1.1-rc.1、web profile。
六个标签页
Tab · 功能
📊 大盘 · 上证 / 深成 / 创业板 / 科创50 实时指数,30 秒自动刷新;顶部市场情绪温度计——半圆分段仪表盘呈现综合情绪温度 0~100°(市场宽度 40% + 涨停强度 25% + 封板率 20% + 连板高度 15%,数据缺失自动按剩余权重归一),冰点→沸腾五档弧段当前档位高亮、游标点平滑转动,右侧无框数据行:涨跌家数(红绿占比微条)/ 涨跌停 / 炸板 / 封板率 / 最高板
💹 行情 · 股票/ETF/转债/LOF 搜索(代码/名称/拼音首字母,本地索引毫秒级返回,带实时价格涨幅的下拉结果卡)+ 多池榜单(沪深A股/主板/非主板/ETF·场内基金/可转债/LOF,按涨幅/成交额/换手/主力净流入)+ 板块榜 + 龙虎榜
⭐ 自选 · 自选股实时行情(持久化在 $DSH_HOME/.leekbox-watchlist.json),支持分组、持仓成本与实时盈亏(点击持仓/成本单元格内联编辑,按现价实时计算浮动盈亏额 + 收益率 + 汇总条)、价格预警(🔔 行内按钮设置价格涨到/跌破、涨跌幅达到;交易时段自动盯盘,触发后 toast + 浏览器通知 + 蜂鸣并自动移除,持久化在 $DSH_HOME/.leekbox-alerts.json)、一键 JSON 备份 / CSV 导出(含持仓字段)、从 JSON/CSV/文本导入(合并或覆盖)
🔍 选股 · 两种模式:评分选股(按价格/涨跌幅/换手率筛选 + 13 项技术信号勾选 + 加权评分排序)和 多策略交叉选股(7 个预设策略的并行交集,个股需同时命中多个策略,按命中数排序)
📰 快讯 · 新浪 / 东财 / 金十 三源聚合 7×24 快讯,来源可筛选,重要资讯红色高亮,60 秒自动刷新,可点相关股票直达详情
🤖 分析 · AI 个股分析:搜索选股后由服务端汇总实时行情 + 近 60 日 K 线概览 + F10 财务摘要,调模型生成结构化中文分析(含风险提示与免责声明,支持复制 / 重新生成)。模型在面板头部 ⚙️ 全局设置里配置:多服务商下拉(DeepSeek / OpenAI / Anthropic Claude / Moonshot Kimi / 智谱 / 通义 / b.ai 等;OpenAI 兼容 + Anthropic 原生两种协议)+ 模型下拉(可一键「获取模型」拉取真实列表,也可手填),持久化在 $DSH_HOME/.leekbox-analysis.json,密钥仅服务端保存、界面只显示脱敏值
行情页顶部保留连板梯队(2板/3板/…及最高板数),可展开涨停池列表(点击直达个股详情)。
点击任意股票(自选里点股票名称即可)会弹出独立的个股详情窗口(类似同花顺):大字现价 + 涨跌、15 项实时指标、当日分时图(价格线 + 成交量加权均价线 + 成交量 + 昨收基准 + 相对涨跌幅纵轴,悬停浮窗)、日/周/月/5分/30分 K 线(前复权,蜡烛图 + MA5/10/20 均线 + 成交量 + 十字光标)、主力资金流向柱状图(最近 15 日,流入红/流出绿,悬停显示当日净流入额)+ 资金流分明细表、F10 财务摘要(最近 8 个报告期:营收/归母净利+同比、ROE、毛利率、负债率、EPS,东财 F10 数据源),一键加自选。详情窗口可拖动、可同时打开多个,ESC 或点击遮罩逐层关闭。
数据源
- 实时行情 / 指数 / 分时 / K线:腾讯财经(qt.gtimg.cn / web.ifzq.gtimg.cn / ifzq.gtimg.cn)
- F10 财务摘要:东方财富 F10 报表(datacenter.eastmoney.com,双主机回退)
- 榜单 / 选股:东方财富(push2.eastmoney.com,多镜像自动回退)
- 搜索:本地全市场索引(东方财富 push2 clist 快照,约 8 千只标的,缓存 6 小时)+ 腾讯 smartbox 全拼兜底 + 批量实时行情(qt.gtimg.cn);索引未就绪时自动回退东方财富 searchadapter
- 7×24 快讯:新浪财经直播流(zhibo.sina.com.cn)+ 东方财富快讯(np-listapi.eastmoney.com)+ 金十数据(jin10.com);重要资讯 = 各源官方标记(金十星标 / 新浪焦点)+ 关键词兜底(突发/重磅/重大/紧急/超预期);跨源自动去重——同一事件多家源措辞不同(截断/扩写/换措辞)也按归一化文本 + 10 分钟时间窗内相似度合并为一条,保留信息最全的副本
- AI 个股分析:模型由用户自行配置(OpenAI 兼容接口,如 OpenAI / DeepSeek 等),个股数据复用上面的行情 / K线 / F10 源汇总后送入模型;调用走服务端
/chat/completions代理,密钥明文只在服务端落盘、绝不下发浏览器
所有数据由插件服务端(web profile 内的 cordis 插件)代理抓取并标准化,浏览器端同源调用 /api/leekbox/*,仅限本机 loopback 访问。数据仅供研究参考,不构成投资建议。
交易时段与交易日历
交易日不是"周一到周五"——国庆/春节这类工作日假期要靠真实日历才判得对。插件不从零维护节假日表,而是用指数日 K 的日期序列反推交易日(节假日没有 K 线),缓存 12 小时:
- 服务端
lib/calendar.js提供sessionState():preOpen/auction(9:15–9:25)/open/lunch/closed/weekend/holiday,时刻一律按东八区判定(宿主机时区不参与)。GET /api/leekbox/calendar下发交易日列表,/health、/sentiment顺带回带时段摘要。首次请求不阻塞:先用"工作日"启发式回答并标注source: weekday-fallback,后台把真日历建好后再切换,拿不到就永远如实标注是兜底。 - 客户端据此判定两件事:面板顶部标签(盘前 / 集合竞价 / 交易中 / 午间休市 / 已收盘 / 休市)与要不要轮询——非交易时段与页面不可见时都不再发请求,回到前台立刻补一次。此前国庆假期会显示"交易中"并整天重复打上游。
- 非交易时段上游数据不再变化,服务端缓存 TTL 自动放宽(`
…(truncated)
Rendered from the README published on npm. Formatted only, not edited.
Versions
Published on npm::11,最后更新 2026-10-27