npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

koishi-plugin-stock

v2.2.1

Published

A Koishi plugin that fetches stock data and provides market analysis, including active market cap, stock alerts, limit-up board, stock selection features, and heart method card drawing with configurable blacklists for each command.

Readme

koishi-plugin-stock

一个Koishi插件,当用户发送特定命令时自动获取股票数据并显示结果。支持活跃市值、异动分析、涨停看板、跌停看板、选股和心法抽卡功能,并提供指令级黑名单配置和定时广播任务。

功能

  • 用户发送"活跃市值"命令时,自动从 indexesAPI获取数据并格式化显示
  • 用户发送"异动 [股票代码]"命令时,自动从 analyzeAPI获取指定股票的异动分析数据
  • 用户发送"涨停看板"命令时,自动从 limit_upAPI下载图片并显示
  • 用户发送"跌停看板"命令时,自动从 limit_downAPI下载图片并显示
  • 用户发送"选股 [策略名称]"命令时,自动从 dyq_select API获取选股结果
  • 用户发送"骑"命令时,自动返回 images/qi.jpeg 图片
  • 用户发送"心法抽卡"命令时,随机抽取一条交易心法并播放对应音频
  • 用户发送"我要验牌 [序号]"命令时,播放指定序号的心法语音
  • 用户发送"我要验牌 全部"命令时,显示所有心法文本列表
  • 支持定时广播任务,可自定义时间发送活跃市值、涨停/跌停看板(仅交易日广播)
  • 支持为每个指令单独设置黑名单,可限制特定用户使用特定功能
  • 自动格式化数据显示给用户

安装

npm install koishi-plugin-stock

配置

此插件支持以下配置选项:

  • allCommandsBlacklist: 全部指令黑名单用户ID数组
  • activeMarketCapBlacklist: 活跃市值指令黑名单用户ID数组
  • stockAlertBlacklist: 异动指令黑名单用户ID数组
  • limitUpBoardBlacklist: 涨停看板指令黑名单用户ID数组
  • limitDownBoardBlacklist: 跌停看板指令黑名单用户ID数组
  • stockSelectionBlacklist: 选股指令黑名单用户ID数组
  • rideBlacklist: 骑指令黑名单用户ID数组
  • heartMethodBlacklist: 心法抽卡指令黑名单用户ID数组
  • allCommandsChannelBlacklist: 全部指令黑名单频道ID数组
  • activeMarketCapChannelBlacklist: 活跃市值指令黑名单频道ID数组
  • stockAlertChannelBlacklist: 异动指令黑名单频道ID数组
  • limitUpBoardChannelBlacklist: 涨停看板指令黑名单频道ID数组
  • limitDownBoardChannelBlacklist: 跌停看板指令黑名单频道ID数组
  • stockSelectionChannelBlacklist: 选股指令黑名单频道ID数组
  • rideChannelBlacklist: 骑指令黑名单频道ID数组
  • heartMethodChannelBlacklist: 心法抽卡指令黑名单频道ID数组
  • broadcastTasks: 定时广播任务列表,每个任务包含:
    • times: 触发时间 (逗号分隔的事列,如 09:30,15:00)
    • type: 消息类型 (private/channel)
    • targetIds: 目标 ID 列表 (逗号分隔的事列)
    • content: 广播内容 (活跃市值/涨停看板/跌停看板)

使用

  • 发送"活跃市值"获取最新的市场指数数据
  • 发送"异动 [股票代码]"获取指定股票的异动分析,如"异动 000001"
  • 发送"涨停看板"获取涨停股票看板图片
  • 发送"跌停看板"获取跌停股票看板图片
  • 发送"选股 [策略名称或编号]"获取选股结果,支持的策略:N型(1)、填坑(2)、少妇(3)、突破(4)、补票(5)、少妇pro(6)
  • 发送"骑"获取图片
  • 发送"心法抽卡"随机抽取一条交易心法并播放对应音频
  • 发送"我要验牌 全部"查看所有心法文本列表
  • 发送"我要验牌 <序号>"播放指定序号的心法语音(1-58)

配置黑名单可在插件设置中进行,将特定用户ID添加到相应指令的黑名单中即可限制其使用权限。

更新日志

v2.2.0 (2026-03-02)

  • API升级:更新选股功能API端点路径
  • 策略扩展:支持更多选股策略的英文标识映射
  • 功能增强:提升选股命令的可用性和准确性

v2.1.9 (2026-03-02)

  • 消息格式优化:简化定时广播前缀为"[定时广播]",移除冗余的内容标识
  • 格式统一:所有定时推送消息格式为"[定时广播] 指数看板:..."
  • 保持所有功能逻辑不变,仅优化消息显示格式

v2.1.8 (2026-03-02)

  • 用户体验优化:为定时广播消息添加"[定时广播 - 内容]"前缀标识
  • 消息识别:用户可以清楚区分定时推送和手动触发的消息
  • 保持所有功能逻辑不变,仅优化消息格式

v2.1.7 (2026-03-02)

  • 核心修复:修复定时广播任务只发送提示消息的问题
  • 功能完善:定时任务现在直接获取并发送真实数据(活跃市值、涨跌停看板)
  • 重试机制:为定时任务添加HTTP重试机制和错误处理
  • 用户体验:用户无需手动触发,定时任务自动推送完整数据

v2.1.6 (2026-03-02)

  • 性能优化:超时时间从15秒调整为10秒
  • 重试机制:添加3次重试机制,使用指数退避策略(2s/4s/8s)
  • 统一处理:所有API请求使用统一的重试函数
  • 可观测性:增强日志记录,便于问题排查

v2.1.5 (2026-03-02)

  • 性能优化:增加API请求超时时间至15秒
  • 错误处理增强:添加详细的错误类型识别和针对性提示
  • 安全性提升:统一使用HTTPS协议替代HTTP
  • 用户体验改善:区分超时错误与其他网络错误,提供更准确的错误信息

v2.1.4 (2026-02-28)

  • 新增心法:添加第58条心法 "我能怎么办,我真的我,我,我真的没招了,我"
  • 心法总数更新为58条
  • 保持所有功能稳定运行

v2.1.3 (2026-02-28)

  • 紧急修复:修复"骑"命令图片读取问题
  • 改为从本地images/qi.jpeg读取图片而非网络请求
  • 增强错误日志,提供更详细的调试信息
  • 保持所有其他功能不变

v2.1.2 (2026-02-28)

  • 紧急修复:修复插件指令注册问题
  • 恢复所有股票相关指令:活跃市值、异动、涨停看板、跌停看板、选股、骑
  • 将middleware方式改为ctx.command方式,确保指令在插件界面正确显示
  • 保持所有功能逻辑不变,仅修复指令注册方式

v2.1.1 (2026-02-28)

  • 紧急修复:修复插件配置项声明问题
  • 正确导出Config和ConfigSchema供Koishi识别
  • 保持所有功能不变,仅修复配置导出问题

v2.1.0 (2026-02-28)

  • 架构重构:将代码拆分为多个模块文件
  • 模块化:分离commands、core、utils等不同功能模块
  • 代码组织:提高代码可维护性和可读性
  • 保持所有功能不变,仅重构代码结构

v2.0.15 (2026-02-28)

  • 紧急修复:修复交易日API返回格式问题
  • 正确解析{"code":1,"msg":"success","data":{"is_trading_day":true}}格式
  • 增强错误处理,提供更友好的错误提示
  • 保持所有其他功能稳定运行

v2.0.14 (2026-02-28)

  • 紧急修复:修复定时广播任务未触发问题
  • 恢复每日9:30和15:00的定时广播功能
  • 增强日志输出,便于调试和监控
  • 保持所有其他功能不变

v2.0.13 (2026-02-25)

  • 紧急修复:修复心法数据JSON解析错误
  • 将心法数据直接嵌入TypeScript源码,避免编码问题
  • 增强错误处理和日志记录
  • 保持所有其他功能稳定运行

注:更早版本历史请查看Git提交记录

  • 增强编码兼容性:自动检测并移除BOM字符确保JSON解析成功

v2.0.10 (2026-02-25)

  • 增强心法抽卡调试日志:添加详细的状态跟踪和错误诊断信息
  • 优化心法数据加载过程:增加文件存在性检查和JSON解析验证
  • 改进错误处理:提供更清晰的错误信息和堆栈跟踪

v2.0.9 (2026-02-25)

  • 新增心法抽卡功能:用户发送"心法抽卡"命令时,随机抽取一条交易心法并播放对应音频
  • 新增心法抽卡黑白名单配置:支持为心法抽卡功能单独设置用户和频道黑名单
  • 完善插件文件包含:将audio目录和audio_mapping.json包含在npm包中

v2.0.8 (2026-01-30)

  • 优化黑名单处理逻辑:当触发指令的用户或频道处于黑名单时,插件将静默处理(直接不回复),不再发送提示消息。

v2.0.7 (2026-01-30)

  • 新增定时广播任务失败重试机制:当网络中断导致消息发送失败时,自动开启 3 次重试,每次间隔 1 分钟
  • 引入任务时效性检查:重试过程中若达到该任务的下一个执行时间点,则自动取消当前重试,防止消息堆积

v2.0.6 (2026-01-30)

  • 优化定时任务触发逻辑:改用 Intl API 获取确切的上海时区时间,解决部分环境下时区偏移导致的触发失败问题
  • 增强时间格式容错:自动处理 9:30 vs 09:30 以及全角冒号等配置问题
  • 完善节假日 API:增加对 Cloudflare 拦截页面的防御逻辑,请求失败时自动回退到基础周末检查,确保任务触发稳定性
  • 改进日志输出:在 info 级别增加关键任务触发和跳过的日志,方便诊断问题

v2.0.5 (2026-01-28)

  • 使用标准 Koishi 配置注释、每个配置分类上壳有中文注释,更清晰地区分配置组

v2.0.4 (2026-01-28)

  • 实现 Koishi 业界标准的配置分组,每个配置项打上对应的 role 标签,在插件设置页中形成可折叠的分组

v2.0.3 (2026-01-28)

  • 优化插件配置页显示,使用 Koishi 行业标准方式实现配置分类,每个配置项描述前缀形成分类标签

v2.0.2 (2026-01-28)

  • 优化插件配置页显示,描述中添加配置分类标签(用户黑名单、频道黑名单、定时广播)

v2.0.1 (2026-01-28)

  • 优化插件设置页配置展示,按功能分类整理配置项(系统设置、用户黑名单、频道黑名单、定时广播)

v2.0.0 (2026-01-28)

  • 修复时区问题:Node.js 返回 UTC 时间而非本地时间,手动调整 UTC+8 获取中国时间
  • 定时任务功能现已正常工作
  • 添加 enableDebugLog 配置选项,调试日志默认关闭,需要时可启用
  • 清理历史有问题的旧版本

v1.0.22 (2026-01-28)

  • 修复时区问题:手动调整 UTC+8 转换为中国本地时间
  • 优化交易日检查的时区不一致问题

v1.0.21 (2026-01-28)

  • 添加调试信息用于时间不匹配问题诊断

v1.0.20 (2026-01-28)

  • 修复定时任务检查间隔需要重新编译的问题
  • 改为 1 秒检查一次,使用 logger.info 输出日志

v1.0.19 (2026-01-28)

  • 修复定时任务 1 分钟检查一次的问题,改为 1 秒检查一次,确保不会错过任务时间
  • 日志级别改为 info,方便查看日志

v1.0.18 (2026-01-28)

  • 添加详细的执行日志,追踪图片下载、消息发送的全过程
  • 添加机器人信息输出,便于调试发送失败

v1.0.17 (2026-01-28)

  • 修复广播任务配置中 content 字段不保存的问题
  • 添加 content 字段的默认值:活跃市值

v1.0.16 (2026-01-28)

  • 添加插件启动日志,方便确认插件是否正常加载
  • 添加定时任务运行状态日志,方便调试

v1.0.15 (2026-01-28)

  • 修复定时广播任务不发送的问题
  • 优化配置验证逻辑,添加了详细的错误日志
  • 改进了 API 调用的错误处理,单个API失败不会中断整个任务执行

v1.0.14 (2026-01-28)

  • 改进定时广播配置,支持一个任务配置多个触发时间
  • 支持指定多个目标 ID,支持一次广播给多个用户/群组
  • 优化了广播发送逻辑,增强了错误处理能力

v1.0.13 (2026-01-27)

  • 新增定时广播任务功能,支持自定义时间发送指数和看板数据
  • 自动识别中国交易日(排除周末及法定节假日)

v1.0.12 (2026-01-27)

  • 添加了"跌停看板"指令,可获取跌停股票看板图片

v1.0.11 (2026-01-22)

  • 添加了频道/群聊黑名单功能,支持按频道ID限制指令使用

v1.0.10 (2026-01-22)

  • 修复了"骑"指令,使用本地图片路径并返回base64编码的图片

v1.0.9 (2026-01-22)

  • 添加了"骑"指令,可返回本地图片

v1.0.8 (2026-01-22)

  • 添加了指令级黑名单功能,可为每个指令单独设置黑名单

v1.0.7 (2026-01-22)

  • 修复了一些小问题

v1.0.6 (2026-01-22)

  • 优化了部分功能

v1.0.5 (2026-01-22)

  • 添加了选股功能的数字编号支持

v1.0.4 (2026-01-22)

  • 添加了选股功能的数字编号(1-6对应不同策略)

v1.0.3 (2026-01-22)

  • 添加了选股功能,支持多种选股策略

v1.0.2 (2026-01-22)

  • 添加了涨停看板功能

v1.0.1 (2026-01-22)

  • 初始版本,包含活跃市值和异动分析功能