# SwapExchange **Repository Path**: blockchainworld/swap-exchange ## Basic Information - **Project Name**: SwapExchange - **Description**: 最新去中心化,数字货币交易所、永续合约交易所、钱包加密签名,资金安全,交易安全 支持Eth Tron BSC Polygon Optimism等多种公链 充提透明 链上可查 兼容Metamask TokenPacket IMtoken等各大钱包 汇集全球6大交易所指数价格,市场稳定 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 11 - **Forks**: 0 - **Created**: 2023-04-26 - **Last Updated**: 2025-10-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # BlockChainWorld / SwapExchange # 开源代码仅供参考学习, 永续合约交易所,委托,止盈止损,强平,锁仓等,请勿用于非法用途; ## 运行演示 ### 暂停开放 ## 联系方式 Telegram飞机:@magicblockchainworld。 ## 基于ETH发行ERC20代币可参考: [https://gitee.com/ethergo/ether-erc20-token](https://gitee.com/ethergo/ether-erc20-token) 收集了431个基于以太坊发行的ERC20代币源码,基本上能找到各种业务模型的ERC20代币业务模型 ## 亮点功能: 1. 分布式架构,支持分布式部署 2. 支持市面主流DAPP钱包(如:TP,IMtoken,小狐狸等) 3. 钱包地址安全签名验证 4. Nacos统一配置中心,降低配置难度 5. 支持Docker及K8S,K3s容器编排部署方式 6. 邮件支持 7. 全球七大主流交易所指数价格 8. 自动化机器人(行情、吃单、市值,跟随等) 9. 全新K线控件 10. 开放API接口、文档,基于ApiKey鉴权 11. 行情推送流程无卡顿,毫秒级推送体验 12. 多语言支持(中,英文) 13. 设计全新交易所UI,提升用户体验&避免撞脸 14. 代理商佣金系统 # 特色 > 特色1: 基于内存撮合引擎,相比与传统基于数据库的撮合更快 > 特色2: 前后端分离,基于Token的Api授权机制 > 特色3: 基于SpringCloud,Pigx商业版微服务架构,扩展更容易 > 特色4: MySQL、MongoDB、Redis多种数据存储方式,只为更快 > 特色5: RabbitMQ发布订阅消息队列,让订单更快流转 > 特色6: 主流币种对接区块链接口齐全,开箱即用 > 特色7: 冷热钱包分离,两种提现方式,保证安全 > 特色8: 机器人系统,同步行情,维护深度,防止搬砖 > 特色9: 支持市面主流DAPP钱包(如:TP,IMtoken,小狐狸等) > 特色10: 交易所设计者提供技术支持,部署+二开无忧 > 特色11: 支持添加自定义平台币及其他币种 > 声明一:开源代码仅供参考学习, 永续合约交易所,请勿用于非法用途; > 声明二:部分功能代码未开源,有需要的添加飞机:@magicblockchainworld > 声明五:本交易所完整源码仅向有技术团队或技术实力的人提供,小白或不同技术的请勿咨询! ## 简要介绍 本项目是基于Java(SpringCloud,Pigx)开发的比特币永续合约交易所 | BTC交易所 | ETH交易所 | 数字货币交易所 | 交易平台 | 撮合交易引擎。本项目基于SpringCloud微服务开发,可用来搭建和二次开发数字货币交易所,有完整的系统组成部分。 - 撮合交易引擎 - 后台管理(后端+前端) - 前台(交易页面、活动页面、个人中心等) - 币种钱包RPC源码 ## 联系方式 飞机:@magicblockchainworld ## 关于SpringCloud Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。 一般而言,一个完整的SpringCloud框架应该如下图所示: 如果对SpringCloud尚不熟悉,可以先简单学习一下SpringCloud的相关教程,这样再回来看本项目,会更加容易上手。 提醒一下,因为Springcloud框架图中是完整的架构,在开发的时候,我们会适当的裁剪一些内容,从而让开发和部署更加快速,所以有一些出入的地方。 ## 关于撮合交易引擎 本系统对交易队列采用内存撮合的方式进行,以RabbitMQ做撮合订单信息传输,MongoDB持久化订单成交明细,MySQL记录订单总体成交。 包括: - K线数据,间隔分别为:1分钟、5分钟、15分钟、30分钟、1小时、1天、1周、1月 - 所有交易对的市场深度(market depth)数据 - 所有交易对的最新价格 - 最近成交的交易对 **内存撮合交易支持的模式** - 限价订单与限价订单撮合 - 市价订单与限价订单撮合 - 限价订单与市价订单撮合 - 市价订单与市价订单撮合 **限价&市价订单处理逻辑** 市价单下单 ## 关于技术构成 - 后端:Spring、SpringMVC、SpringData、SpringCloud、SpringBoot - 数据库:Mysql、Mongodb - 其他:Redis、RabbitMQ、阿里云OSS、腾讯防水校验 - 前端:Vue、iView、less > 关于交易机器人 > 交易机器人是自动交易的程序,可以根据外部行情,自动进行交易,让本交易所的交易对价格与外部保持一致,防止因部分用户“搬砖”导致的损失。 > 关于搬砖 > 例如A交易所BTC价格是10000USDT,而B交易所的BTC价格是9500USDT,搬砖就是在B交易所通过9500USDT的价格买入BTC,然后转账到A交易所,赚取差价(500USDT)。 > 如果交易所没有交易机器人,就会导致本交易所的币种价格与其他主流交易所相比有差价,从而让用户“搬砖”,导致交易所损失。 > 另外,交易机器人还有一个功能,就是在交易所初期运营的时候,形成一个初期的交易深度,不会让用户觉得交易所冷清,没有用户。 ============================================== ## 系统运行环境 1. Centos 2. MySQL 5.7及以上 3. Redis 4. Mongodb 5.0.10及以上 5. RabbitMQ 3.10.7及以上 6. nginx 7. JRE 8u241 8. JDK 1.8及以上 9. Vue 10. Nacos ## 文件目录说明 1. 客户端(前端):[Ripple-client](Ripple-client) 2. 管理后台(前端):[Ripple-client-manager](Ripple-client-manager) 3. 服务端(后端):[Ripple-server](Ripple-server) ## 使用教程 各项目目录下README.md中有项目启动教程 ## 核心功能说明(用户端) 1. 注册/登录 2. 钱包充提 3. 永续合约 * 市价/限价委托 * 止盈止损 * 仓位平仓 * 仓位强平 * 资金费率 * 全仓盈亏共享、锁仓 * 开放API、ApiKey申请 * K线 ## 核心功能说明(管理端) 1. 概要(查看平台运行数据,包含交易额、注册人数、充值等) 2. 用户管理(用户信息管理、用户余额管理、用户充值/冻结余额等) 3. 合约管理(币对信息管理、委托信息管理、成交记录管理、仓位信息管理、止盈止损管理等) 4. 机器人管理(吃单机器人管理、行情机器人管理等) 5. 代理管理(代理人信息管理) ## 特别注意 任何使用本源码从事商业活动,对别人和自己造成损失的,本人概不负责!