项目简介
TradeX 是一款完整的全栈分布式加密货币模拟交易系统,旨在为用户提供真实的交易体验而不涉及真实资金。系统包含实时行情推送、杠杆交易(最高 100 倍)、K 线图表、订单管理、实时盈亏计算等功能,支持 BTC、ETH、SOL 三种主流数字货币。用户通过模拟资金即可体验完整的交易流程,适合用于金融教育、量化策略测试或产品演示。系统采用微服务架构,前后端分离,同时提供 Web 端和移动端界面,方便不同场景下的使用。
核心功能
- 实时价格订阅:通过 WebSocket 连接 Backpack Exchange,每 100 毫秒推送一次 BTC、ETH、SOL 的实时价格。
- 杠杆交易:支持 1 倍至 100 倍杠杆,通过滑块调节,保证金自动按公式 (数量 × 价格) / 杠杆 计算。
- K 线图表:集成 TradingView Lightweight Charts,提供 1 分钟、5 分钟、30 分钟、1 小时、6 小时、1 日、3 日共 7 个时间周期。
- 订单管理:支持开仓(LONG/SHORT)、平仓、查看持仓(开仓订单)、历史订单(已平仓/已取消)。
- 用户认证:JWT 身份认证,密码使用 bcrypt 加密,安全可靠。
- 余额追踪:实时更新模拟余额,显示可用保证金与已锁定资金。
- 数据持久化:PostgreSQL 存储用户与订单数据,Redis 用于实时消息中间件,MongoDB 存储引擎快照用于故障恢复。
适用场景
- 加密货币交易教育平台:为初学者提供零风险的模拟交易环境,学习杠杆交易与市场分析。
- 量化策略回测前端:对接自定义策略引擎,将 TradeX 作为可视化交易前台。
- 企业内部培训系统:模拟杠杆交易流程,帮助员工熟悉交易操作而不承担实际风险。
- 金融科技产品 Demo:展示实时数据流、交易 UI、微服务协作能力,用于向客户或投资人演示。
- 分布式系统教学案例:展示微服务、消息队列(Redis Streams)、多数据库协作的完整架构。
技术特点
- 技术栈:TypeScript 全栈,前端 React + TailwindCSS,后端 Node.js + Express,交易引擎使用 Bun 运行时。
- 实时性:WebSocket 实时推送价格与订单状态,Redis Pub/Sub + Streams 保障低延迟与消息可靠性。
- 微服务架构:报价服务、交易引擎、WebSocket 服务、REST API 服务独立部署,通过 Turborepo 统一管理。
- 数据库组合:PostgreSQL(Prisma ORM)存储用户与订单,Redis 缓存与消息,MongoDB 存储引擎状态快照,实现服务重启后恢复。
- 多端支持:Web 端与 React Native 移动端共享同一后端,移动端具备完整交易功能。
二开价值
系统采用模块化微服务设计,每个服务均可独立扩展或替换。开发者可以:替换报价源头对接真实交易所;修改交易引擎实现自定义风控逻辑;增加新的数字货币支持;调整前端 UI 以匹配品牌风格;或作为分布式架构模板用于金融科技教学。Prisma ORM 使数据库迁移简单,Redis 和 MongoDB 提供了灵活的消息与状态管理机制,适合作为二次开发的坚实基础。




声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。