koishi-plugin-stock
v2.0.8
Published
A Koishi plugin that fetches stock data and provides market analysis, including active market cap, stock alerts, limit-up board, and stock selection features with configurable blacklists for each command.
Maintainers
Readme
koishi-plugin-stock
一个Koishi插件,当用户发送特定命令时自动获取股票数据并显示结果。支持活跃市值、异动分析、涨停看板、跌停看板和选股功能,并提供指令级黑名单配置和定时广播任务。
功能
- 用户发送"活跃市值"命令时,自动从
indexesAPI获取数据并格式化显示 - 用户发送"异动 [股票代码]"命令时,自动从
analyzeAPI获取指定股票的异动分析数据 - 用户发送"涨停看板"命令时,自动从
limit_upAPI下载图片并显示 - 用户发送"跌停看板"命令时,自动从
limit_downAPI下载图片并显示 - 用户发送"选股 [策略名称]"命令时,自动从
dyq_selectAPI获取选股结果 - 用户发送"骑"命令时,自动返回
images/qi.jpeg图片 - 支持定时广播任务,可自定义时间发送活跃市值、涨停/跌停看板(仅交易日广播)
- 支持为每个指令单独设置黑名单,可限制特定用户使用特定功能
- 自动格式化数据显示给用户
安装
npm install koishi-plugin-stock配置
此插件支持以下配置选项:
allCommandsBlacklist: 全部指令黑名单用户ID数组activeMarketCapBlacklist: 活跃市值指令黑名单用户ID数组stockAlertBlacklist: 异动指令黑名单用户ID数组limitUpBoardBlacklist: 涨停看板指令黑名单用户ID数组limitDownBoardBlacklist: 跌停看板指令黑名单用户ID数组stockSelectionBlacklist: 选股指令黑名单用户ID数组rideBlacklist: 骑指令黑名单用户ID数组allCommandsChannelBlacklist: 全部指令黑名单频道ID数组activeMarketCapChannelBlacklist: 活跃市值指令黑名单频道ID数组stockAlertChannelBlacklist: 异动指令黑名单频道ID数组limitUpBoardChannelBlacklist: 涨停看板指令黑名单频道ID数组limitDownBoardChannelBlacklist: 跌停看板指令黑名单频道ID数组stockSelectionChannelBlacklist: 选股指令黑名单频道ID数组rideChannelBlacklist: 骑指令黑名单频道ID数组broadcastTasks: 定时广播任务列表,每个任务包含:times: 触发时间 (逗号分隔的事列,如09:30,15:00)type: 消息类型 (private/channel)targetIds: 目标 ID 列表 (逗号分隔的事列)content: 广播内容 (活跃市值/涨停看板/跌停看板)
使用
- 发送"活跃市值"获取最新的市场指数数据
- 发送"异动 [股票代码]"获取指定股票的异动分析,如"异动 000001"
- 发送"涨停看板"获取涨停股票看板图片
- 发送"跌停看板"获取跌停股票看板图片
- 发送"选股 [策略名称或编号]"获取选股结果,支持的策略:N型(1)、填坑(2)、少妇(3)、突破(4)、补票(5)、少妇pro(6)
- 发送"骑"获取图片
配置黑名单可在插件设置中进行,将特定用户ID添加到相应指令的黑名单中即可限制其使用权限。
更新日志
v2.0.8 (2026-01-30)
- 优化黑名单处理逻辑:当触发指令的用户或频道处于黑名单时,插件将静默处理(直接不回复),不再发送提示消息。
v2.0.7 (2026-01-30)
- 新增定时广播任务失败重试机制:当网络中断导致消息发送失败时,自动开启 3 次重试,每次间隔 1 分钟
- 引入任务时效性检查:重试过程中若达到该任务的下一个执行时间点,则自动取消当前重试,防止消息堆积
v2.0.6 (2026-01-30)
- 优化定时任务触发逻辑:改用
IntlAPI 获取确切的上海时区时间,解决部分环境下时区偏移导致的触发失败问题 - 增强时间格式容错:自动处理
9:30vs09: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)
- 初始版本,包含活跃市值和异动分析功能
