主页 > imtoken钱包官网登录 > 使用 Uniswap V2 部署您自己的去中心化交易所

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

imtoken钱包官网登录 2023-10-17 05:13:01

usdt要缴税才可以提现吗_羌活液相要现配现用吗_4s现车提车要多久

去中心化链接:

部署UniswapV2前需要准备的智能合约项目:

uniswap-v2-core:核心合约

uniswap-v2-periphery:与核心合约交互的边缘合约,主要是路由合约

uniswap-lib:工具合约

将以上三个项目整合为一个项目:

4s现车提车要多久_羌活液相要现配现用吗_usdt要缴税才可以提现吗

uniswap-v2-核心

core核心主要有三个合约文件:

UniswapV2Factory.sol:工厂合约

**UniswapV2Pair.sol:**配对合约

**UniswapV2ERC20.sol:**LP Token合约

UniswapV2Pair.sol 管理流动资金池。 不同的货币对有不同的实例。 比如UniswapV2Pair.sol,比如USDT-WETH对应一个UniswapV2Pair.sol合约地址**,DAI-WETH对应另一个UniswapV2Pair.sol**。

UniswapV2ERC20.sol是用户向资金池注入流动性的凭证。 它也被称为流动性代币。 它实际上是一种ERC20代币,同样支持转账功能。 当用户在Uniswap v2中添加两个交易对(如USDT-WETH)usdt要缴税才可以提现吗,即增加流动性时,Uniswap会增加对应UniswapV2ERC20.sol实例(如USDT-WETH LP Token)的余额,Uniswap会增加对应UniswapV2ERC20.sol实例的余额(如USDT-WETH LP Token)。 配额,计算手续费收入,奖励用户。

每个 UniswapV2Pair.sol 都绑定了相应的 UniswapV2ERC20.sol。 事实上,UniswapV2Pair继承了UniswapV2ERC20,所以配对合约本身其实就是一个LP Token合约。

UniswapV2Factory.sol用于部署UniswapV2Pair.sol,通过工厂合约的createPair()函数创建新的配对合约实例。

uniswap-v2-周边

外设核心有两个合约文件:

UniswapV2Router01.sol:路由合约版本01

UniswapV2Router02.sol:路由合约02版本,与01版本相比,主要增加了几个支持纳税的功能

这两个合同中只需要部署一个。 本教程只部署UniswapV2Router01.sol

uniswap-lib

提供uniswap-v2-periphery的函数库。

开始部署 Uniswap V2

在部署Uniswap V2之前,我们需要更改Uniswap V2代码中的init代码哈希值,否则即使部署成功也无法使用。 pairFor 函数位于项目 contracts/libraries/UniswapV2Library.sol 文件中:

4s现车提车要多久_羌活液相要现配现用吗_usdt要缴税才可以提现吗

init code hash是UniswapV2Pair的字节码通过keccak-256计算出来的值:

usdt要缴税才可以提现吗_4s现车提车要多久_羌活液相要现配现用吗

点击Bytecode按钮,复制弹出框中的**Bytecode值,**打开网址

usdt要缴税才可以提现吗_4s现车提车要多久_羌活液相要现配现用吗

记得选择Input type为“Hex”usdt要缴税才可以提现吗,最后得到“02253df52a97965e4b0f62119b1048e43d71c7e02dd706e7a1d07655ed5f8642”,这就是我们要的init code hash

部署合约

只需部署三个合约:

Uniswap V2Factory

WETH(可选,也可以使用链上已有的WETH地址)

 Uniswap V2 Router01

usdt要缴税才可以提现吗_羌活液相要现配现用吗_4s现车提车要多久

UniswapV2Factory 参数:

_feeToSetter:设置费用的管理员,可以选择钱包地址

UniswapV2Router01参数:

_factory:部署UniswapV2Factory后的合约地址

_WETH:WETH合约地址

添加流通池

addLiquidity:该接口支持添加两个ERC20代币作为流动性

addLiquidityETH:与之前的接口不同,该接口提供流动性资产,其中之一是ETH

添加两个代币流动性池

usdt要缴税才可以提现吗_4s现车提车要多久_羌活液相要现配现用吗

添加代币和 ETH 流动性池

4s现车提车要多久_usdt要缴税才可以提现吗_羌活液相要现配现用吗

令牌授权

添加流动性时,需要先授权代币到路由合约地址

可以使用授权面板,记得将最下方的合约地址修改为要授权的token地址

羌活液相要现配现用吗_usdt要缴税才可以提现吗_4s现车提车要多久

贸易

swapExactTokensForTokens:用ERC20兑换ERC20,但支付的金额是指定的,而兑换回的金额未定

swapTokensForExactTokens:同样使用ERC20兑换ERC20,区别于之前的函数,指定兑换的金额

swapExactETHForTokens:指定兑换ERC20的ETH数量

swapTokensForExactETH:使用ERC20兑换指定数量的ETH

swapExactTokensForETH:用指定数量的ERC20兑换ETH

swapETHForExactTokens:用ETH兑换指定数量的ERC20

swapExactTokensForTokensSupportingFeeOnTransferTokens:指定数量的ERC20可以兑换成ERC20,支持转账扣费

swapExactETHForTokensSupportingFeeOnTransferTokens:指定数量的ETH兑换成ERC20,支持转账扣费

swapExactTokensForETHSupportingFeeOnTransferTokens:指定数量的ERC20可以兑换ETH,支持转账扣费

代币之间的交易

羌活液相要现配现用吗_4s现车提车要多久_usdt要缴税才可以提现吗

原始链接(包括可重现的代码):