[](https://www.npmjs.com/package/koishi-plugin-monetary-bourse) [  
为 Koishi 提供基于 monetary 通用货币系统的股票交易所功能。
本插件模拟了一个具备自动宏观调控、25种经典K线形态、智能概率博弈和可视化交割单的深度拟真股票市场。用户可以使用机器人通用的货币(如信用点)进行股票买卖、炒股理财。
> 版本:2.1.1
- 📈 拟真 K 线引擎:
- 海量形态库:内置 25 种 经典日内走势形态,分为 看涨/看跌/中性 三大类。包含红三兵、黑三鸦、跳空缺口、收敛/发散三角、箱体震荡等专业技术形态。
- 智能剧本调度:不再是纯随机!系统根据宏观目标价格与当前价的偏离度,动态调整形态出现概率。当股价低估时,看涨形态概率自动提升,模拟市场的“估值修复”功能。
- 周期末端修正:在宏观周期尾声(最后20%时间)自动加强回归力度,确保长周期趋势的有效性。
- 🖼️ 全可视化交互:
- 专业走势图:复刻 TradingView 风格的深色玻璃拟态 K 线图,包含动态呼吸灯、渐变填充与详细指标。
- 持仓资产卡片:精美渲染个人持仓、成本分析、浮动盈亏比及排队中的挂单详情。
- 交易交割单:(New) 买卖成交瞬间生成交易回单图片,在 K 线图上精确标记买卖点位,直观展示单笔盈亏与买入成本线。
- ❄️ 资金冻结与挂单排队:
- 交易采用 T+0 机制,但大额资金/股票会根据金额计算动态冻结时间。
- 挂单采用串行排队模式,同一用户的多个挂单需依次读秒,防止通过拆单绕过冻结机制,增加博弈深度。
- 🏦 银行联动:支持与 koishi-plugin-monetary-bank 联动,现金不足时自动扣除银行活期存款。
本插件需要以下服务:
- database: 用于存储持仓、历史行情和挂单记录。
- puppeteer: 用于渲染股市行情图。
- monetary: (可选) 用于获取用户货币余额(本插件直接操作数据库表,monetary 插件需安装以建立表结构)。
- stock [interval]
- 查看股市行情。
- 参数 interval: 可选 day (日线)、week (周线),不填默认为实时走势(最近100条)。
- 示例:stock (查看实时), stock day (查看日线)。
- stock.buy
- 买入股票。
- 参数 amount: 购买股数(整数)。
- 说明:扣除现金(优先)或银行活期,股票将在冻结时间结束后到账。
- 新特性:若无冻结时间(小额或配置设置),将直接返回一张包含买入点位标记的交易交割单图片。
- stock.sell
- 卖出股票。
- 参数 amount: 卖出股数(整数)。
- 说明:扣除持仓,获得的资金将在冻结时间结束后到账。
- 新特性:成交后返回收益结算图,包含本次交易的盈亏金额、盈亏百分比及买入成本线对比。
- stock.my
- 查看我的账户。
- 显示当前持仓、市值以及正在进行中(冻结中)的买卖订单。
- stock.control
- 设置宏观调控目标。
- 说明:强行引导股价在指定时间内向目标价格移动。若目标涨跌超出±50%限幅,会自动调整至限幅边界后再应用。
- 示例:stock.control 5000 12 (在12小时内让股价涨/跌到5000)。
- stock.pattern (Alpha 2 新增)
- 强制切换 K 线模型。
- 说明:手动随机切换当前使用的日内走势剧本(如从“单边下跌”切换为“尾盘拉升”)。
- bourse.admin.market
- 设置股市开关状态。
- 参数 status: open (开启), close (关闭), auto (自动)。
- 说明:手动开市时会自动重置并切换一个新的日内 K 线形态。
- 【默认不开启】bourse.test.price [ticks]
- 开发测试:推进价格更新若干次并返回当前价格。
- 参数 ticks: 推进次数,默认 1,最大 500。
- 需要在配置中启用 enableDebug 才可使用。
- 【默认不开启】bourse.test.run
- 开发测试:按虚拟时间推进并统计价格分布。
- 参数 ticks: 推进步数;step: 每步秒数(默认120秒)。
- 需要在配置中启用 enableDebug 才可使用。
- 【默认不开启】bourse.test.manualThenAuto
- 开发测试:测试手动调控后切回自动的连续性。
- 需要在配置中启用 enableDebug 才可使用。
Q:Alpha版本有什么区别?
A:本插件在发布一个稳定版之前会进行测试,但是股票的走向和时间有关,即使通过开发调试,也难以测试出稳定的结果。因此,在新版本开发出来后(尤其是算法上的更新),我不确定是否存在非致命但影响体验的漏洞。
Alpha版本就是在新版本稳定之前的过渡版,它们具备了一些没有验证的新功能等更新,但与之一同的是未知的bug。如需使用Alpha版本,请备份数据库和配置文件,防止以外发生。
---
Q: 为什么买了股票没有立刻到账?
A: 本插件设计了基于交易金额的动态冻结机制。交易额越大,冻结时间越长(可配置)。请使用 stock.my 查看剩余解冻时间。
---
Q: 股价是如何波动的?(2.0.0 算法升级)
A: 股价采用 "智能期望模型" 驱动,更贴近真实博弈:
1. 宏观漂移 (Drift):价格总是倾向于向"宏观目标价"回归。
2. 形态博弈 (Pattern Gaming):
- 系统内置了 25种 K线形态(如:bullish_three_soldiers 红三兵, bearish_three_crows 黑三鸦, neutral_converging 收敛三角)。
- 智能选择:每隔一段时间,系统会计算当前价与目标价的偏离度 (Deviation)。
- 如果当前价严重低于目标价,系统选中看涨形态的概率会大幅提升;反之则倾向于看跌形态。
3. 动态波动率:开盘与收盘时段波动率高,午盘平稳(U型曲线)。
4. 随机游走:叠加几何布朗运动噪音,模拟市场不可预测的随机性。
可以在控制台插件配置页进行设置:
信用点)。Koishi股份)。1200)。100000)。8 点)。23 点)。open (强制开启)、close (强制关闭)、auto (自动按时间)。100)。10)。1440 即24小时)。false)。开启后可使用 bourse.test.* 系列调试指令。详细的更新日志请查看 CHANGELOG.md。
---
开发者: BYWled
仓库: koishi-plugin-monetary-bourse
萌新编写,部分借助了AI的力量,若有纰漏,还望海涵QwQ