kangjinghang/dsh-xueqiu
雪球 mini 行情面板 — DeepSeek Harness 免登录 A股/港美股实时行情、K线、分时、热榜、7x24快讯。可拖拽悬浮面板,交易时段智能刷新。
Listed
3
Ui
Bundle verified
Preview
What it does
Xueqiu (Snowball) market panel docked above the composer: A-share/HK/US quotes and indices, watchlist, candlestick K-line with volume, MAs and crosshair tooltip, hot list, search, 7x24 news, plus a draggable mini index badge — no login needed.
Best for
- DSH users who want A-share, Hong Kong, and US quotes, indices, watchlists, charts, rankings, search, and news beside a conversation.
- Market-monitoring workflows that benefit from a persistent mini badge and an expandable panel above the composer.
- Agents that need callable tools for quotes, K-lines, stock search, rankings, news, or discussed users.
Not ideal for
- Trading or compliance workflows requiring guaranteed exchange-grade data rather than Snowball public-interface data.
- Users who do not need market information inside DSH; the panel and polling add little workflow value.
- Calendar-accurate market-status workflows, because displayed sessions are inferred from time zones and do not account for holidays.
README
dsh-xueqiu · 雪球 mini 行情面板
DeepSeek Harness 上的雪球行情面板:免登录查看 A股/港股/美股实时行情、K线、分时、热榜、搜索、7×24 快讯与热议用户。面板嵌入输入框上方不遮挡对话,常驻行情区域显示四大指数与自选股涨跌,交易时段智能刷新。
| 中文 | English |
功能 · 截图 · 安装 · 使用 · 稳定性 · 质量与测试 · FAQ · 更新日志
🆚 与同类行情插件
| 能力 | dsh-xueqiu | 股票皮肤类插件 |
|---|---|---|
| 面板形态 | 嵌入输入框上方,不遮挡对话 | 全局换肤/状态栏 |
| K线/分时 | 蜡烛图+均线+十字光标,7 档周期 | 部分有 |
| 热榜/快讯/KOL | 全有 | 多数无 |
| 数据源 | 雪球(社区数据:帖子/热议用户独有) | 腾讯/Yahoo 等 |
| 请求防护 | 闸门+看门狗+缓存+自愈+隐藏暂停 | 一般仅缓存 |
| 常驻行情区域 | 四大指数+12 自选两列平铺,⤡ 调宽 | 多为纯状态栏 |
| 主题 | 跟随 DSH 明暗 | 需整体换肤 |
✨ 功能
| 功能 | 说明 |
|---|---|
| 📊 实时行情 | 大盘指数(上证/深证/创业板/科创50)+ 自选股列表,涨红跌绿,表头点击排序 |
| 🕯️ K线图 | 蜡烛图 + 成交量柱 + MA5/10/20 均线 + 十字光标悬浮详情(开高低收/涨跌/量/均线值),5分/15分/30分/60分/日K/周K/月K 7 档切换 |
| ⏱️ 分时图 | 价格线 + 均价线 + 昨收基准虚线,十字光标查任意分钟报价 |
| 🔥 热榜 | 雪球热门榜,A股/美股/港股/全球 切换 |
| 🔍 搜索 | 搜股票(一键加自选/看详情)、搜帖子 |
| 📰 快讯 | 7×24 实时快讯,重要新闻高亮 |
| 👥 热议用户 | 个股热门 KOL(粉丝数/认证标识) |
| 💼 自选股 | 本地持久化,增删随点随改;可选登录后直接使用雪球云端自选股 |
| 👤 可选登录 | 粘贴浏览器 Cookie 即可登录(借鉴 xueqiu-cli 手动模式):登录后自动拉取云端自选股,加/删自选尽力同步到云端;Cookie 仅存本机 ~/.dsh 工作区文件,不上传任何第三方 |
| 🧲 嵌入式面板 | 完整面板停靠在输入框上方(官方 conversation.input.dock 槽位),随页面布局流动,不遮挡对话记录
|
| 🏷️ 行情区域 | 常驻悬浮区域:头部一行 logo/盘中状态,四大指数两列(上证/深证/创业/科创50)+ 自选前 12 只两列平铺;点击开合面板,拖动调整位置(记忆),右下角 ⤡ 手柄调宽度 120–480px(双击复位 320),宽度/位置持久化 |
| 📏 面板高度可调 | 拖动面板底边调整高度(160px–85% 视口,双击复位),高度持久化记忆 |
| ⌨️ Esc 收起 | Esc 先关个股详情,再收起面板;点行情区域或底部指数条重新展开 |
| 🛡️ 请求防护 | 并发 2 + 100ms 最小间隔对齐网页端行为;30s 看门狗强制释放悬挂请求防管线冻结;Cookie 失效/风控自动重播种重试;限频指数退避;页面隐藏自动暂停全部轮询(回前台立即恢复) |
| 🗂️ 渐进详情 | 个股详情报价+K线先上屏,分时/财务/KOL 到达后增量合并,不用等齐 |
| ⏱️ 智能刷新 | 盘中 20s 刷新行情,收盘自动放慢,降低被风控概率 |
| 🕐 交易时段 | 面板头常驻显示 A 股/港股/美股 盘中·午休·盘前·休市(本地时区推算,不含节假日),行情区域显示精确 A 股时段 |
| 🌗 主题自适应 | 跟随 DSH 明暗主题 |
| 🤖 Agent 工具 |
对话内直接问行情:xueqiu_quote(实时行情)、xueqiu_kline(K线)、xueqiu_search(搜股票)、xueqiu_hot(热榜)、xueqiu_news(7×24 快讯)、xueqiu_kol(个股热议大V)——模型直接调用,无需翻网页 |
所有数据来自雪球公开接口(访问首页获取匿名 cookie + 浏览器 UA/Referer),无需登录。
📸 截图
嵌入式主面板:停靠在输入框上方,指数卡 + 自选股行情 + 四个功能页签:

个股详情:16 项行情数据 + K线蜡烛图(成交量柱 / MA5-10-20 均线 / 十字光标)+ 财务指标 + 热议用户:

迷你行情区域:四大指数 + 自选 12 只两列平铺,⤡ 手柄调宽度,点击开合面板,可拖动:

📦 安装
方式一:标准 bundle 插件(推荐)
# npm 包
dsh plugin --profile web add dsh-xueqiu
# 或 GitHub 源(git 安装会直接从源码构建)
dsh plugin --profile web add github:kangjinghang/dsh-xueqiu
# 或本地目录
dsh plugin --profile web add ./dsh-xueqiu
添加后重启一次 dsh web(插件行发现按启动缓存),之后刷新页面即可看到面板。
方式二:动态插件(已实测)
本仓库 dynamic/ 目录提供已实测可用的动态 Cordis 插件源码(host.js + client.js)。在任意 DSH 会话中让 Agent 加载即可:
请读取本仓库 dynamic/host.js 与 dynamic/client.js 两个文件,
用 cordis_define(kind: new)定义插件:
code.host 填入 host.js 的内容,code.client 填入 client.js 的内容,
然后 cordis_run 启动它。
🎛️ 使用
-
面板停靠在输入框上方:与对话同列流动,不遮挡任何消息;
收起 —或Esc收起。 - 右下角行情区域常驻显示四大指数 + 自选前 12 只(两列平铺);点击开合面板,拖动调整位置(记忆位置),⤡ 手柄横向调宽(120–480px,双击复位)。
- 输入框下方的指数条点击也可展开面板。
- 点击自选股、指数卡或热榜行 → 个股详情:16 项行情数据 + K线/分时切换(悬停图表看十字光标详情)+ 财务指标(ROE/毛利率/净利同比等)+ 热议用户。
- 面板高度:拖动面板底边的手柄上下调整(160px ~ 85% 视口高度),双击手柄复位;高度会被记忆。
- 登录雪球(可选):点面板右上「👤 登录」,按提示从浏览器复制 Cookie 整行粘贴即可。登录后自选股切换为你的雪球云端自选股;「同步云端自选」可随时手动拉取,加/删自选会尽力同步云端(失败自动回退本地)。Cookie 只保存在本机,退出登录即清除。
- 刷新频率:盘中行情 20s、内容 60s;收盘后自动降为 60s / 3min。
🔧 稳定性设计
数据层内置多层防护,长时间挂机也不会卡死:
- 请求闸门:并发上限 2、请求间最小间隔 100ms,模拟网页端节奏,降低风控概率。
- 30s 看门狗:单个请求悬挂超 30s 即强制释放调度槽并报错,不会冻结后续所有请求。
- TTL 缓存 + in-flight 去重:相同 URL 短时间窗内直接命中缓存,并发重复请求共享同一 Promise。
- Cookie 自愈:匿名 cookie 失效(错误码 400016)或被风控返回空响应时,自动重新访问雪球首页播种新 cookie 再重试。
- 限频退避:遇到”请求频繁”按 2s→4s 指数退避后重试。
- 渐进渲染:详情页报价 + K线先行上屏,分时/财务/KOL 异步到达后增量合并。
🧪 质量与测试
三套互补的自动化测试,每次发版前全部通过(最近一次实测 2026-08-20,macOS + dsh web 3080 端口):
| 套件 | 覆盖 | 实测结果 |
|---|---|---|
scripts/static-smoke.sh |
静态安装 7 道门禁(tarball 解包 → cordis 组合 → bundle 注册 → RPC 起活) | ✅ 7/7 |
scripts/feature-matrix.py |
20 个 RPC 动作 × 正常/边界/非法/降级 × 未登录/已登录/Cookie过期 三环境 | ✅ 54–56 项断言全过 / 每环境 |
scripts/browser-interact.sh |
真实鼠标交互:徽章拖动/⤡调宽/双击复位/面板开合/四个页签数据/越界恢复钳制 | ✅ 全过 |
热缓存性能实测(数据已在 TTL 窗口内,即用户连续操作时的体验):
kline 日K 120 根 1–12 ms
quote 3 只行情批量 1 ms
quoteDetail 个股详情 1 ms
search 搜索"茅台" 2 ms
finance 财务指标 2 ms
首次冷请求(需访问雪球取数)典型耗时 100–700ms,全部经请求闸门(并发 2)排队。复现方式:装好插件后 python3 scripts/feature-matrix.py --base http://127.0.0.1:3080 --mode logged。
📁 目录结构
dsh-xueqiu/
├── src/
│ ├── index.js # Host 插件(curl 数据层 + connection RPC)
│ └── client/index.js # Client 插件(嵌入式面板 + 常驻行情区域 UI)
├── dynamic/
│ ├── host.js # 动态插件版 Host(已实测)
│ └── client.js # 动态插件版 Client(已实测)
├── package.json # bundle 声明(dsh.bundle / dsh.client)
└── cordis.patch.yml # bundle 层插入
❓ FAQ
Q: 安装后面板不出现?
按安装说明重启一次 dsh web(插件行按启动缓存发现),再硬刷新页面(Ctrl/Cmd+Shift+R)。仍无面板时看右下角有无行情区域——区域在则点它展开。
Q: 行情数据突然全空/报错? 雪球匿名 cookie 偶发被风控(错误码 400016 或空响应)。插件会自动重播种 cookie 并重试;连续失败时等 1–2 分钟再点「刷新」,或收起面板降低请求频率。
Q: K线周期里分时下为什么没有周期按钮? 分时模式只展示当日分钟线,K线模式才有 7 档周期,属设计行为。
Q: 交易时段提示节假日准吗? 不准。时段按每周一至周五的固定钟点本地推算,不含法定节假日调休,仅供参考。
Q: 自选股和面板设置存在哪?
宿主本地文件 ~/.xueqiu-watchlist.json 与 ~/.xueqiu-ui-state.json(含区域宽度/位置),与浏览器 localStorage 无关,换浏览器不丢。
Q: 会不会影响 DSH 本体?
插件 UI 全部挂在官方槽位(conversation.input.dock / shell.overlay / conversation.composer.dock),卸载即完全消失,不改 DSH 源码。
⚠️ 免责声明
- 本项目非雪球官方产品,与雪球网/雪球公司无关;”雪球”为雪球公司商标,此处仅作数据来源描述。
- 数据来自雪球公开 Web 接口,仅供学习与研究,不构成任何投资建议;请勿高频请求,遵守目标网站条款。
- 接口可能随时变更导致功能失效,欢迎提 Issue / PR。
📋 更新日志
-
1.17.0(2025-08-20)
-
新增:Agent 工具(一期 6 个)——模型在对话中直接调用雪球数据,不必再让 agent 爬网页:
xueqiu_quote(实时行情,一次 20 只)、xueqiu_kline(7 档周期 OHLCV)、xueqiu_search(代码/中文名/拼音搜索)、xueqiu_hot(热榜)、xueqiu_news(7×24 快讯,可翻页)、xueqiu_kol(个股热议大V,雪球社区数据独有)。复用既有请求闸门/缓存/Cookie 自愈,数据层零新增请求路径。
-
新增:Agent 工具(一期 6 个)——模型在对话中直接调用雪球数据,不必再让 agent 爬网页:
-
1.16.1(2025-08-20)
- 修复:双击 ⤡ 复位徽章宽度时,
badgeW:null被 host 侧Number(null)=0钳制为下限 120px 落盘——刷新后徽章变成 120px 窄条(dockH同理被钳为 160)。现 null 按显式复位处理。 - 修复:恢复徽章位置时的视口钳制按实际宽度计算(原先固定
-140,区域模式宽达 480px 时右缘出屏)。 - 新增:
scripts/browser-interact.sh浏览器交互回归(真实鼠标事件:拖拽/调宽/双击复位/面板四 tab/越屏恢复)。
- 修复:双击 ⤡ 复位徽章宽度时,
-
1.16.0(2025-08-20)
- 修复:登录 Cookie 过期后,公开行情接口(报价/K线/分时/热榜等)被一并毒化全部报错 —— 现自动降级为匿名请求继续工作,仅云端自选等功能提示重新登录。
- 新增:
scripts/feature-matrix.py功能矩阵回归测试(155 项断言 × 未登录/已登录/Cookie过期 三环境)。
-
1.15.2(2025-08-19)
-
package.json补齐repository/bugs/homepage字段——将 npm 包与 GitHub 仓库关联,供插件市场自动采集下载量。
-
-
1.15.1(2025-08-19)
- 徽章升级为常驻行情区域:四大指数(上证/深证/创业板/科创50)两列 + 自选前 12 只两列平铺,静态展示不再轮动。
- ⤡ 手柄调宽度 120–480px(双击复位 320px),宽度/位置持久化;恢复位置时钳制到视口内,永不丢失。
- 底部指数条与面板市场页:沪深300 → 科创50。
- 修复:云端自选对真实账号永远拉不到——默认自选在
stocks系统分类(pid=-1 全部)而非portfolios字段;自选上限 50 → 200。 - 修复:区域模式
const重新赋值导致徽章槽位崩溃;徽章头部三元素竖排散架。 - 移除:悬停弹层(搜索/速览已被区域模式取代)。
-
1.10.0(2025-08-19)
- 新增:可选登录雪球——面板右上「👤 登录」,粘贴浏览器 Cookie 整行即可(借鉴 xueqiu-cli 手动登录模式)。
- 登录后自动拉取并使用雪球云端自选股;加/删自选尽力同步云端(尽力而为,失败静默回退本地);「同步云端自选」随时手动拉取。
- 安全细节:本地解析
xq_id_token(JWT)预检过期;远端调组合接口二次校验(400016 拒绝无效 Cookie,实测验证);Cookie 仅存本机.xueqiu-login.json,退出即清除;不登录则完全保持原匿名模式。
-
1.9.0(2025-08-19)
- 微交互:tab/详情切换淡入动画、刷新按钮旋转 loading 态。
- 快讯时间轴:左侧竖线 + 「今天/昨天/X月X日」分组锚点,长列表快速定位时间。
- 徽章 hover 预览:悬停 300ms 弹出自选速览(名称/现价/涨跌幅 chip,30s 缓存),点击展开面板,拖拽不误触。
- K线/分时十字光标轴标签:光标价位(右侧)+ 日期/时间(底部)底色读数块。
-
1.8.0(2025-08-19)
- 专业感升级三件套:全界面等宽数字(tabular-nums,价格跳动不抖列);涨跌幅色块 chip(红涨/绿跌半透明底,扫一眼定位);自选行价格变动闪烁动画(涨红闪/跌绿闪,0.8s 渐隐)。
-
1.7.2(2025-08-19)
- 新增:快讯 tab 翻页——滚动到底或点「加载更早」自动加载历史快讯(max_id 游标,自动去重),「刷新」重置回最新一页。
-
1.7.1(2025-08-19)
- 修复:
dsh plugin add静态安装后dsh web启动即崩(harness is not defined)——静态安装改走webServer前缀路由/xq-rpc(带回环 + 同源双重栅栏),动态运行时仍走harness.handle,双模式自动切换。 - 修复:静态安装的浏览器端 bundle 格式(
__ModuleLoader__CJS 工厂)与网络通道(同源 fetch 替代host.call),面板/徽章/指数条在静态模式下完整可用。
- 修复:
-
1.7.0(2025-08-19)
- 新增:页面隐藏时自动暂停面板/徽章/指数条全部轮询,回到前台立即刷新——切走不浪费请求,显著降低雪球风控触发概率。
- 新增:A 股/港股/美股三市场交易时段提示(盘中·午休·盘前·休市,本地 Intl 时区推算,不含节假日),面板头常驻显示,徽章显示精确 A 股时段,每分钟自动刷新。
-
1.6.1(2025-08-18)
- 修复:请求管线死锁——悬挂请求永久占用调度槽导致面板整体冻结,现由 30s 看门狗强制释放。
- 修复:详情页内点「行情/热榜/搜索/快讯」标签无响应(view 优先级遮蔽 tab)。
- 修复:徽章位置持久化后恢复时
badgePos.y被误当函数调用导致位置重置失败。 - 新增:
debugRPC(running/waiters/inflight/cache/cookie 实时观测)。
- 1.6.0 — 面板高度拖拽调节(丝滑零重渲染、双击复位、持久化)。
- 1.5.x — 请求调度与缓存优化(并发 2 + 100ms 间隔、TTL 缓存、错误分类重试)。
- 1.4.x — 详情提速:渐进渲染、全 K线周期、十字光标。
📄 License
Frequently Asked QuestionsFAQ
Use the verified command dsh plugin --profile default add github:kangjinghang/dsh-xueqiu in a DSH-enabled shell. The command resolves the public package metadata and keeps the plugin attached to the catalog identity shown on this page.
Compatibility follows the bundle and profile status shown above. If a profile is not detected, keep the plugin disabled there and check the repository documentation before enabling it in production.
The GitHub link and activity metadata are the source of truth for releases and maintenance. Revisit this page after a new release to confirm the catalog has observed the latest version.