Skip to content

Repository files navigation

EndStone 股票交易插件 (Ups and Downs)

一个基于 EndStone 框架的 Minecraft 股票交易模拟插件,支持实时美股数据交易,内置完整的股票知识教学系统。

体验服务器:IP:arcclub.top,端口:19132,你可以在此服务器体验本插件。

📋 系统要求

  • Python: 3.13+
  • Minecraft 服务器: 支持 EndStone 框架
  • 依赖插件: arc_core (经济系统);群日报可选依赖 endstone-arc-qq-sync-astrbot

📦 依赖安装

pip install endstone yfinance

🚀 安装方法

  1. 将插件文件放入服务器的 plugins 目录
  2. 确保已安装 arc_core 经济插件
  3. 重启服务器

✨ 主要功能

🏦 股票交易系统

  • 实时数据: 同步美股市场实时价格
  • 多种订单: 支持市价单和限价单
  • 动态手续费: 可配置的手续费率(默认2%)
  • 持仓管理: 自动计算平均成本和盈亏
  • 多线程优化: 所有网络请求异步处理,不阻塞服务器

📈 合约交易系统(v1.0.0 新增:做空/杠杆)

  • 做多/做空: 看涨开多、看跌开空,对标主流交易所的逐仓合约
  • 杠杆交易: 可配置杠杆档位(默认 2x/3x/5x/10x),以小博大
  • 逐仓风控: 每笔仓位独立核算,爆仓最多亏掉该笔保证金,永不倒欠
  • 强制平仓: 权益跌破维持保证金率(默认10%)自动强平,低保证金在线预警
  • 追加保证金: 临近强平可从余额划入资金自救,强平价拉远、利息变慢
  • 资金利息: 按小时对借入部分计息,平仓时结算
  • 部分平仓: 支持按股数分批了结,仓位历史保留每笔结算单

💰 账户管理

  • 资金转入: 从游戏账户转入股票资金
  • 资金转出: 将股票盈利转回游戏账户
  • 余额查询: 实时查看账户余额和持仓

📊 数据展示

  • 价格走势: 查看股票历史价格变化
  • 持仓详情: 显示每只股票的盈亏情况
  • 历史订单: 完整的交易记录

🏆 排行榜系统

  • 绝对盈亏榜: 按赚/亏金额排序
  • 相对盈亏榜: 按盈亏百分比排序
  • 实时更新: 动态显示玩家排名

📚 教学系统

  • 基础知识: 股票概念、价格决定因素、重要指标
  • 交易技巧: 买卖时机、订单类型、资金管理
  • 风险管理: 风险类型、止损策略、心理控制
  • 分页教学: 循序渐进的学习路径

⚙️ 个性化设置

  • 配色方案: 支持红涨绿跌(中国)和绿涨红跌(美国)
  • 收藏夹: 收藏常用股票
  • UI界面: 现代化的图形界面

🎮 使用方法

基础命令

/stock help                    # 显示帮助信息
/stock ui                      # 打开图形化界面(推荐)
/stock transferin   将资金从服务器经济系统中转入股票账户
/stock transferout  将资金从股票账户中转入服务器经济系统
/stock show <股票代码> [时间范围]   查看股票变化, 时间范围选项: minute (10分钟), day (10天), month (10个月),默认为day
/stock account  查看我的股票账户余额
/stock buy <股票代码> <股份数> [价格]   购买股票,份数为整数,不填写价格则为市价单,填写价格则为限价单
/stock sell <股票代码> <股份数> [价格]   出售股票,份数为整数,不填写价格则为市价单,填写价格则为限价单
/stock long <股票代码> <保证金> [杠杆]   合约开多(看涨),默认最低档杠杆
/stock short <股票代码> <保证金> [杠杆]   合约开空(看跌),亏损达保证金90%会被强制平仓
/stock close <仓位号> [股数]   合约平仓,不填股数则全部平仓
/stock margin <仓位号> <金额>   向合约仓位追加保证金,拉远强平价并减少利息
/stock positions [页数]   查看我的未平仓合约,页数默认为1
/stock orders [页数]    查看我的历史订单,页数默认为1
/stock shares [页数]    查看我的持仓,页数默认为1

📈 支持的股票

  • 美股: AAPL, TSLA, MSFT, GOOGL, AMZN 等
  • 加密货币: BTC-USD, ETH-USD 等
  • 其他: 支持 yfinance 库的所有股票代码

🎨 界面功能

主面板

  • 账户概览
  • 盈亏统计
  • 快速操作入口

持仓管理

  • 实时市值计算
  • 盈亏百分比显示
  • 一键交易操作

股票搜索

  • 实时价格查询
  • 价格走势图表
  • 收藏功能

排行榜

  • 土豪榜(绝对盈亏前5)
  • 高手榜(相对盈亏前5)
  • 韭菜榜(亏损榜)

⚠️ 重要说明

  1. 模拟交易: 本插件为模拟交易,不会产生真实交易
  2. 数据延迟: 价格数据可能有延迟,仅供参考
  3. 风险提示: 投资有风险,请理性交易
  4. 网络要求: 需要稳定的网络连接获取股票数据
  5. 教育目的: 内置教学系统仅供学习参考,不构成投资建议

🔧 配置选项

插件支持以下配置(配置文件:plugins/UpAndDown/stock_setting.yml):

  • 代理设置: 支持 HTTP/HTTPS 代理
  • 颜色方案: 可自定义涨跌颜色
  • 手续费率: 可配置的手续费率(默认2%)
  • 数据更新间隔: 股票数据更新频率(默认60秒)
  • 合约交易: 杠杆档位/上限、维持保证金率、资金利息、强平费、最低保证金、强平检测间隔、预警线(首次启动自动追加到配置文件)

配置示例:

# 代理设置
proxy=127.0.0.1:5555
enable_proxy=true

# 交易手续费率(百分比,例如:2.0 表示2%)
trading_fee_rate=2.0

# 股票数据更新间隔(秒)
update_interval=60

# 合约交易(做空/杠杆)
contract_max_leverage=10
contract_leverage_options=2,3,5,10
contract_maintenance_rate=10
contract_interest_hourly=0.01
contract_liquidation_fee=1.0
contract_min_margin=100
contract_check_interval=20
contract_warning_rate=30

Road Map

  • ✅ 现货交易:实时美股/BTC 行情、市价/限价单、账户转账、收藏夹、教学系统(v0.1 – v0.5)
  • ✅ 排行榜与社区:绝对/相对盈亏榜、韭菜榜/接盘侠榜、QQ 群日报、AI 查询 API(v0.5.x)
  • ✅ 合约交易:做空 / 杠杆 / 强平 / 追加保证金 / 资金利息,逐仓风控(v1.0.0)
  • 🚧 限价挂单队列:从「下单即比价」升级为真实撮合
  • 🚧 止损 / 止盈单:自动触发,守住利润或截断亏损
  • ⏳ 全仓模式:账户级资债、追保与风险度
  • ⏳ 排行榜性能优化
  • ⏳ 多语言支持
  • ⏳ More...

📝 更新日志

v1.0.0 (最新) —— 合约交易系统 🎉

  • 📈 做空/杠杆: 逐仓合约开多/开空,杠杆 2x/3x/5x/10x(可配置),每笔仓位独立核算,爆仓最多亏掉该笔保证金,永不倒欠
  • 🛡️ 强制平仓: 权益跌破维持保证金率(默认10%)自动强平并收强平费;低于预警线在线提醒;支持 /stock margin 追加保证金自救
  • 💰 资金利息: 按小时对借入部分计息,平仓结算;支持部分平仓,每笔平仓/爆仓保留结算单
  • 🏆 排行榜接入合约: 总财富/绝对盈亏/相对盈亏全面纳入合约盈亏,韭菜榜/接盘侠榜自动兼容做空巨亏
  • ⚙️ 8 个合约配置项 首次启动自动写入配置文件;新表自动创建,老玩家数据零迁移
  • 🧪 质量保障: 11 项单元冒烟 + 10 场景全链路仿真(含强平引擎),并已在实际服务器部署验证

v0.5.6

  • 🎨 主菜单入口: 注册按钮自带图标(textures/arc_core/stock.png)

v0.5.5

  • 🛡️ 修复 UI 回调 purecall 崩服:后台线程完成后通过 _run_for_player 重取在线玩家再 send_form/send_message;买卖指令回调同样不再闭包持有 Player

v0.5.4

  • 🐛 修复接盘侠/韭菜榜: 改为全服真正倒数 N 名(此前因 LIMIT 10 + 取第 6–10 名,显示成中游榜)

v0.5.3

  • 🐛 修复群日报停发: Endstone 将 entry-point 的 - 转为 _,改为正确查找 arc_qq_sync_astrbot;发送失败可重试;行情空数据不再打断整次排行榜/日报任务

v0.5.2

  • 🤖 AI 工具 API: 新增 api_get_leaderboard_text / api_get_stock_quote_text,供 ARC AI Helper 与 AstrBot 弧光中枢查询排行与行情

v0.5.1

  • 🔧 群服互通适配: 日报改为对接 arc-qq-sync-astrbot(AstrBot 弧光消息中枢),兼容旧版 qqsync_plugin
  • 📢 发送 API: 优先使用 api_send_raw(自动带服务器前缀),回退 api_send_message

v0.5.0

  • 🎓 新增完整教学系统: 包含基础知识、交易技巧、风险管理三大模块
  • ⚡ 性能优化: 所有UI操作改为多线程异步处理,避免服务器卡顿
  • 🔧 配置优化: 手续费率改为可配置选项,支持动态调整
  • 📚 教学指引: /stock help 改为UI形式,提供分页式详细教学
  • 🎨 UI改进: 主面板新增"教学指引"按钮,优化用户体验

v0.4.0

  • 新增图形化UI界面
  • 优化排行榜显示
  • 修复盈亏计算问题
  • 支持玩家名字显示

完整版本历史见 CHANGELOG.md。

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📄 许可证

本项目采用 MIT 许可证。


免责声明: 本插件仅供娱乐使用,不构成投资建议。请勿将虚拟货币与真实货币混淆。

About

MC 股票交易插件:基于 EndStone 的美股行情模拟交易与股票教学系统

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages