风险提示:理性看待区块链,提高风险意识!
读懂 Uniswap LP Token 机制:铸造、销毁与权益
首页 > 币界资讯 > 竞争币新闻 2021-04-12 09:14:06
币界网报道:

Uniswap 的交易对手盘模式

在中心化交易所,用户间挂买单和卖单,交易所的撮合引擎会按时间和价格进行排序,一旦买单和卖单价格重叠,就可以成交完成交换。

但 Uniswap 里没有挂单这个设计,取而代之的是流动性资金池充当所有交易的对手盘。

流动性资金池是包含了需要交易的两种币,比如 ETH 和 USDT。比如一个流动性池里有 x 个 ETH 和 y 个 USDT。此时 k=x*y (k 是一个常数)

当用户 A 想用 dy 个 USDT 买 ETH,在不考虑滑点的前提下,用户 A 买入的价格是 y/x。而真实成交时,用户能买到的 ETH 数量 dx 为 (不考虑 0.3% 的手续费):k=(x-dx)*(y+dy),dx=x-k/(y+dy)

交易所,流动性池里的资金就成了:(x-dx)个 ETH 和(y+dy)个 USDT,而此时 ETH 的价格变成了 (y+dy)/(x-dx)。

以上就是 Uniswap 交易的基本模式。

下面来讲这个流动性资金池的设计。

LP Token 铸造

在 Uniswap 里对某个交易对(pair) 第一次添加流动性的人,可以任意对交易对的价格进行定价,即 x、y 和 k 都是这个人定的。

创世流动性之后再添加 dx 和 dy,如果按系统默认值去添加,都会受 dx/dy=x/y 的约束。

添加流动性后,Uniswap 会给用户返回一个 erc20 代币,这就是 LP Token。

LP Token 的总量是变化的,添加流动性就会铸造新的 LP Token,即增发,而赎回流动性则会销毁 LP Token。

假设创世流动性里用户注入了 x 个 ETH 和 y 个 USDT,则创世铸造 LP Token 的数量 =sqrt(x*y)。(注:sqrt 是开方;注:代码里的公式是 sqrt(x*y)-1000*10^-18,这个 1000*10^-18 是个啥不管它,我没研究,反正这么小无所谓)

创世流动性之后,有用户添加了 (dx,dy) 个币的流动性,并且 dx/dy=x/y,则系统新铸造出 d(LP Token 数量)=dx/x*铸造前 LP Token 的总量,返回给用户。

但如果 (dx-ddx)/dy=x/y (注:ddx>0),新铸造的 d(LP Token 数量)=dy/y*铸前总量,而这 ddx 个币则相当于捐赠给了所有的 LP Token 持有者。

如果 dx/(dy-ddy)=x/y(注:ddy>0),则新铸造的 d(LP Token 数量)=dx/x*铸前总量。ddy 变成了捐赠。

可以总结为:添加流动性获得的 LP Token 数量 =min(dx/x*铸前总额,dy/y*铸前总额)。(注:min 是取最小值函数)

在极端情况下,有人误打了 dx>0 个币,但 dy=0 个币,则不会铸造新的 LP Token,dx 全部变成了现有 LP Token 里的成分,捐赠给了所有现有 LP Token 的用户。

这种误打币到某个 LP Token 合约地址,是经常会发生的。

LP Token 销毁

当用户想赎回流动性时,需要将 LP Token 销毁掉。按 Uniswap 系统的流程就可以完成销毁。

假设现在一个交易对(ETH/USDT)的流动性有 x 个 ETH,y 个 USDT,现在有用户销毁 z 个 token,则用户可以得到 ETH 和 USDT 的数量分别是 :dx=(z/ 总 LP Token)*x,dy=(z/ 总 LP Token)*y

LP Token 的权益

从上面分析可以清晰地知道,LP Token 代表了一个交易对的资金池的所有权,可以从这个资金池里按比例提取交易对代币的份额。

LP Token 的成分包括了两种币,如 ETH/USDT 交易对的 LP Token 就包括了 ETH 和 USDT 两种币。

随着流动性资金池里成分不一样,LP Token 的价值也不一样。

用户在 Uniswap 交易,是需要付 0.3% 的手续费。比如用户用 dy 个 USDT 去 ETH/USDT 交易对买 dx 个 ETH。

Uniswap 首先会扣除用户 0.3%*dy 的本金,然后去计算该给用户的 dx,在给完用户 dx 后,这 0.3%*dy 的本金会注入到 LP Token 的成分里,相当于 LP Token 增值了。

LP Token 会获得所有的捐赠收益,比如用户误将 dx 个 ETH 转入了 ETH/USDT 这个 pair 的 LP Token 合约地址,dx 个 ETH 就会变成捐赠给 LP Token,增加了 LP Token 的价值。

感谢 Plancker Dao 成员李世胜对本文的贡献

上一篇: 2020年几大加密货币的炒作活动比率指数:价格和炒作热度有关联吗?
下一篇: 三币模式算法稳定币红利:Basis Cash及其分叉协议的挖矿和套利机会简析
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
61184.18 USDT
¥444,723.33
-0.29%
Solana
139.01 USDT
¥1,010.41
+1.59%
Filecoin
4.4066 USDT
¥32.03
+0.71%
Curve
0.2933 USDT
¥2.13
-5.51%
柚子
0.5826 USDT
¥4.23
+1.08%
Conflux
0.1626 USDT
¥1.18
+4.23%
狗狗币
0.1221 USDT
¥0.89
-1.53%
Terra Classic
8.251E-5 USDT
¥0.00
+1.8%
Shiba Inu
1.721E-5 USDT
¥0.00
-1.32%
Arweave
26.598 USDT
¥193.33
-4.59%
Livepeer Token
16.6379 USDT
¥120.93
-2.19%
以太坊
3422.86 USDT
¥24,879.40
+1.49%
最新快讯
更多
BLAST空投申领参与地址突破30万
2024-06-27 20:51:26
PufferFinance将与以太坊基金会合作开发Rollups
2024-06-27 20:50:58
土耳其通过《资本市场法修正案》引入加密资产相关法规
2024-06-27 20:47:23
ETHGlobal公布7个StarkHack决赛入选名单
2024-06-27 20:45:41
丹麦金融监管局拟废除非托管比特币钱包
2024-06-27 20:36:57
Dfinity推出基于ICP的新平台以应对网络安全问题
2024-06-27 20:35:25
美国至6月22日当周初请失业金人数23.3万人,预期23.6万人,前值23.8万人
2024-06-27 20:33:57
下载币界网APP