Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

用Uniswap V2部署自己的去中心化交易所

罗宾虚汉
214 1 0
部署UniswapV2前需要准备的智能合约项目:
l uniswap-v2-core: 核心合约
l uniswap-v2-periphery: 与核心合约交互的边缘合约,主要就是路由合约
l uniswap-lib: 工具合约
整合以上三个项目到一个项目中:
2934571-20221022170644496-505314658.png
+ S5 F% r' z3 ^. W. U- Q+ {
* J7 V; X% D7 L
uniswap-v2-core
core核心主要有三个合约文件:
l UniswapV2Factory.sol: 工厂合约
l **UniswapV2Pair.sol:**配对合约
l **UniswapV2ERC20.sol:**LP Token 合约

2 b% L  r; O. e' G7 d; T% Y! b+ x) h: m, I8 O2 N
UniswapV2Pair.sol管理着流动性资金池,不同币对有着不同的实例,比UniswapV2Pair.sol, 如 USDT-WETH 这一个币对,就对应一个UniswapV2Pair.sol合约地址**,DAI-WETH 又对应另一个UniswapV2Pair.sol**。
UniswapV2ERC20.sol则是用户往资金池里注入流动性的一种凭证,也称为流动性代币,其实也是一种ERC20代币,同样支持转账功能。当用户在Uniswap v2添加两个交易对( 如USDT-WETH),也就是添加流动性, Uniswap会增加对应UniswapV2ERC20.sol实例(如USDT-WETH LP Token)的余额,Uniswap根据用户持有LP Token的额度,计算手续费收益奖励给用户。
每个UniswapV2Pair.sol都有对应的一种UniswapV2ERC20.sol与之绑定。其实,UniswapV2Pair 继承了 UniswapV2ERC20,所以配对合约本身其实也是 LP Token 合约。
UniswapV2Factory.sol则是用来部署UniswapV2Pair.sol的,通过工厂合约的 createPair() 函数来创建新的配对合约实例。
uniswap-v2-periphery
periphery核心有两个合约文件:
l UniswapV2Router01.sol:路由合约 01 版本
l UniswapV2Router02.sol:路由合约 02 版本,相比 01 版本主要增加了几个支持交税费用的函数
这两个合约只要部署一个就行,本教程只部署UniswapV2Router01.sol
uniswap-lib
提供uniswap-v2-periphery的函数库。
: T+ d  y- ]9 Q  r
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

罗宾虚汉 初中生
  • 粉丝

    3

  • 关注

    0

  • 主题

    16