im钱包安卓版下载
数字资产服务平台

im钱包安卓版下载是全球著名的数字资产交易平台之一,主要面向全球用户提供比特币、莱特币、以太币等数字资产的币币和衍生品交易服务。

比特派钱包安卓版官网网址链接|uniswap流动性挖矿

时间:2024-03-16 09:26:49

5分钟读懂DeFi新机遇,“尝鲜”Uniswap流动性挖矿 - 知乎

5分钟读懂DeFi新机遇,“尝鲜”Uniswap流动性挖矿 - 知乎切换模式写文章登录/注册5分钟读懂DeFi新机遇,“尝鲜”Uniswap流动性挖矿啦啦2020开始DeFi合约大约锁定7亿美元的资产,到目前锁定资产150亿美元,增长超过20倍。去中心化金融天然具备的开放、可信、公平的特性,使得越来越多的人关注和参与到DeFi,在DeFi市场获得利益。在DeFi生态中,食物链顶层的仍旧是以交易和推动流动性为主的去中心化交易所。在目前市场上已有的去中心化交易所中,Uniswap可谓是一骑绝尘。作为去中心化交易所的TOP1,Uniswap的交易数量也让其他去中心化交易所望尘莫及,Uniswap以493.17亿美元稳居DEX交易量第一,且是第二名Curve交易量的3倍以上;Uniswap以1865.62万笔交易数问鼎DEX,是第二名Kyberde 36倍。Uniswap到底是什么?Uniswap是部署在以太坊链上的去中心化交易协议。2018年11月Uniswap v1发布就已经获得了Ethereum基金会资助和认可。自动做市商(AMM),是用智能合约来实现去中心化信任的交易机制,没有注册、身份验证和提取限制等让投资者眼前一亮。2020年创新项目纷纷抢上Uniswap,为平台注入流动性。对于普通投资者而言,Uniswap的利益价值在哪里?9月17日,Uniswap向早期参与交易和LP(提供流动性)的用户空投了总计1.5亿枚UNI治理代币,价值十多亿美元,Uniswap的交易额和交易量瞬间出现了陡坡式增长,一个月创造了330亿美元的交易额,占到总交易额的近乎60%。UNI的价格也在一个月上涨近乎30%。作为Uniswap的平台币,我们看到了UNI与Uniswap的相辅相成。我们再横向对比下中心化交易所的平台币。例如,最早推出平台币的头部交易所币安,BNB的价值已经从上线0.4元飙升至200多元,50倍的利益,也体现了币安交易所作为头部交易平台的价值。同理,在DeFi生态即将百花齐放的2021年,越来越多的去中心化DAPP推出的加密货币需要通过去中心化交易所实现流通,这便是Uniswap作为DeFi驱动力的价值,UNI作为主流币,其升值空间可想而知,同比BNB的升值空间而言,UNI的50倍也并不遥远。说白了,Uniswap等DEX的快速崛起,不仅得益于其创新的产品机制和丰富的投资标的,也得益于广大用户对CEX的不满,毕竟这里交易更自由、代币更丰富。在笃定UNI升值空间的前提下,获取UNI的途径是什么?第一,购买。二级市场直接购买的方式可以获取相对的UNI,也就是炒币。需要强调的是,这需要承担的风险,不管行情涨或是跌,投资者将很可能从利益出发,低买高卖,无法从UNI价值出发实现长期持有。第二,挖矿。获取UNI的挖矿方式不同于以往需要购买实体矿机挖矿获取相应的奖励,Uniswap是通过流动性挖矿来获取奖励分红。众所周知,挖矿是重投资,配置矿机成本、高额电费支出、矿机维护成本以及配置挖矿基础设施,没有巨大的资金支持是无法进行挖矿的。同时,加密资产行情波动随时影响矿工收益,一旦跌破关机价,矿工就只能选择关机停产。但Uniswap的流动性挖矿不需要投入高额的挖矿成本。Uniswap实现抵押资产在Uniswap资金池,成为流动性提供者,赚取交易手续费分红。传统中心化交易所以类似于中介的身份为买方和卖方提供自由买卖的市场,卖方和买方通过撮合引擎达成交易,这个过程中用户需要将资产存储在交易所,进行挂单,在买价高于或等于卖价的时候达成交易。Uniswap这类去中心化交易所不存在撮合交易的概念。Uniswap的本质是AMM去中心化交易所,自动做市商(AMM)是创造两种Token的资金池,根据价格波动调整资金池中的Token数量,用户购买的是早期参与用户抵押在流动性池子里的代币,而不是买方和卖方点对点的完成交易。这就涉及到为什么早期参与用户会将自己的加密资产存放在Uniswap的流动性池子中,因为平台会将交易用户的手续费按照一定比例奖励给为流动性池子提供加密资产的用户,而不是去维护平台运营。流动性提供者获得平台奖励的交易手续费,DEX平台获取更多用户和流量,其他使用DEX的交易者则能够享受更便捷的去中心化服务。这也是去中心化交易所运行的底层逻辑。最令投资者放心和安心的是,流动性提供者存放在Uniswap流动性池子中的加密资可以随时提出,不需要投入高额矿机成本、高额电费支出等其他成本。2021年DeFi将呈现百花齐放的景象,在DeFi生态爆发的基础上,去中心化交易所将愈加强势,Uniswap是未来金融的驱动力,UNI攀升主流币指日可待。发布于 2021-01-11 12:02交易所数字货币去中心化​赞同​​添加评论​分享​喜欢​收藏​申请

Uniswap-V3的流动性挖矿原理介绍 | 登链社区 | 区块链技术社区

Uniswap-V3的流动性挖矿原理介绍 | 登链社区 | 区块链技术社区

文章

问答

讲堂

专栏

集市

更多

提问

发表文章

活动

文档

招聘

发现

Toggle navigation

首页 (current)

文章

问答

讲堂

专栏

活动

招聘

文档

集市

搜索

登录/注册

Uniswap-V3的流动性挖矿原理介绍

jusonalien

更新于 2022-07-11 09:50

阅读 2122

为了能够提升协议的资金利用率,Uniswap-V3在流动性管理这块允许用户在提供流动性的时候指定特定的价格区间,这一特性同时也导致了基于用户头寸衍生的一些业务场景的计算模型无法复用V2时代的计算模型。

这里是基于阅读[参考文章后](https://www.paradigm.xyz/2021/05/liquidity-mining-on-uniswap-v3)的笔记记录,中间增加了一些自己结合源码+部分细节的推敲

为了能够提升协议的资金利用率,[Uniswap-V3](https://learnblockchain.cn/article/2302)在流动性管理这块允许用户在提供流动性的时候指定特定的价格区间,这一特性同时也导致了基于用户头寸衍生的一些业务场景的计算模型无法复用V2时代的计算模型。

## V2时代的挖矿收益计算模型

我们先回顾一下V2时代的流动性挖矿收益计算模型,

我们先取

- $R$ 为每秒钟的发放收益,

- $l(t)$ 是在 $t$ 时刻,某用户提供的流动性的总价值

- $L(t)$ 是在 $t$ 时刻,所质押的流动性的总价值

那么该用户在 $t$ 时刻所收到的质押收益是 $R \cdot \frac{l(t)}{L(t)}$

用户在$t_0$ 到 $t_1$ 的这段时间,他所收到的质押收益是

$$

\sum_{t=t_0}^{t1} {R \cdot \frac{l(t)}{L(t)}}

$$

这公式在链下的环境去计算很简单,但是如果放到链上,就会很耗gas,因此需要对其进行优化

如果用户全程都只质押了 $l$ 这么多的资产,上面的公式可以提炼成

$$

R \cdot l \cdot \sum_{t=t_0}^{t1} {\frac{1}{L(t)}}

$$

那么用户在 $t_0$ 到 $t_1$ 这段时间的收益计算公式转换成:

$$

R \cdot l \cdot (\sum_{t=0}^{t0} {\frac{1}{L(t)}}-\sum_{t=0}^{t1} {\frac{1}{L(t)}})

$$

我们令到

$$

S_l(t_i)=\sum_{t=0}^{t_i} {\frac{1}{L(t)}}

$$

每当有用户触发质押和提取的操作的时候,触发更新一下对应的 $S_l$ 的值,注意,这里涉及到两个变量的维护,

最终变成质押收益计算公式,从每次计算都要循环迭代加乘触计算变成每次只要做一次减法计算

$$

R(l,S_l(t_1),S_l(t_0)) = R \cdot l \cdot (S_l(t_1) - S_l(t_0))

$$

我们取用户在 $t_1$ 增加了$\Delta{L}$ 的流动性到池子里面

先更新

$$

S_l(t_1)=\sum_{t=0}^{t_0} {\frac{1}{L(t)}} + \frac{t_1-t_0}{L(t_0)}

$$

然后再更新

$$

L(t_1) = L(t_0) + \Delta{L}

$$

当用户在 $t_2$ 的时刻提取出流动性的时候

先更新

$$

S_l(t_2)=\sum_{t=0}^{t_1} {\frac{1}{L(t)}} + \frac{t_2-t_1}{L(t_1)}

$$

然后再更新

$$

L(t_2) = L(t_1) - \Delta{L}

$$

此时用户的收益情况是

$$

R \cdot l \cdot \frac{t_2-t_1}{L(t_1)}

$$

## 回到V3的挖矿模型中

既然用户在提供流动性的时候就指定了只在价格区间提供流动性,那么影响用户的质押收益的因子就不仅仅跟时间有关,还跟资产的价格有关,如果资产的价格超过或低于对应价格区间,那么用户就不再享有对应的收益

我们这里取用户在提供流动性的时候,对应的价格范围是

$$

i_{lower} \le i_c \le i_{upper}

$$

$$

R \cdot l \cdot \sum_{t=t_1}^{t_2} \left\{\begin{aligned}\frac{1}{L(t)} && i_{lower} \le i_c \le i_{upper} \\ 0 && i_{upper} \le i_c \\ 0 && i_c \le i_{lower} \end{aligned}\right.

$$

可以整合成

$$

R \cdot l \cdot ((\sum_{t=t_1}^{t_2} {\frac{1}{L(t)}})-(\sum_{t=t_1}^{t_2}\left\{\begin{aligned}\frac{1}{L(t)} && i_c \lt i_{lower}\\ 0 && i_{c} \ge i_{lower} \end{aligned}\right.)-(\sum_{t=t_1}^{t_2}\left\{\begin{aligned}\frac{1}{L(t)} && i_c \ge i_{upper}\\ 0 && i_{c} \lt i_{upper} \end{aligned}\right.))

$$

在做这个计算的时候,会用到一些很tricky的技巧,这些技巧都参考甚至直接复用了Uniswap-V3计算手续费的方案

可以观察到,下面的方程其实Uniswap-V3里面有直接的函数可以直接调用求得某个时刻的数值

$$

((\sum_{t=t_1}^{t_2} {\frac{1}{L(t)}})-(\sum_{t=t_1}^{t_2}\left\{\begin{aligned}\frac{1}{L(t)} && i_c \lt i_{lower}\\ 0 && i_{c} \ge i_{lower} \end{aligned}\right.)-(\sum_{t=t_1}^{t_2}\left\{\begin{aligned}\frac{1}{L(t)} && i_c \ge i_{upper}\\ 0 && i_{c} \lt i_{upper} \end{aligned}\right.))

$$

```solidity

//https://github.com/Uniswap/v3-core/blob/main/contracts/UniswapV3Pool.sol#L158

function snapshotCumulativesInside(int24 tickLower, int24 tickUpper)

external

view

override

noDelegateCall

returns (

int56 tickCumulativeInside,

uint160 secondsPerLiquidityInsideX128,

uint32 secondsInside

)

```

在用户stake也就是t1的时候跑一次,保留当前值,然后在计算收益的时候t2再跑一次,保留当前值,两次值相减即可得

我们来看看V3官方的质押挖矿代码里面计算收益的逻辑

```solidity

// https://github.com/Uniswap/v3-staker/blob/main/contracts/UniswapV3Staker.sol#L280

function getRewardInfo(IncentiveKey memory key, uint256 tokenId)

external

view

override

returns (uint256 reward, uint160 secondsInsideX128)

{

bytes32 incentiveId = IncentiveId.compute(key);

(uint160 secondsPerLiquidityInsideInitialX128, uint128 liquidity) = stakes(tokenId, incentiveId);

require(liquidity > 0, 'UniswapV3Staker::getRewardInfo: stake does not exist');

Deposit memory deposit = deposits[tokenId];

Incentive memory incentive = incentives[incentiveId];

(, uint160 secondsPerLiquidityInsideX128, ) =

key.pool.snapshotCumulativesInside(deposit.tickLower, deposit.tickUpper);

(reward, secondsInsideX128) = RewardMath.computeRewardAmount(

incentive.totalRewardUnclaimed,

incentive.totalSecondsClaimedX128,

key.startTime,

key.endTime,

liquidity,

secondsPerLiquidityInsideInitialX128,

secondsPerLiquidityInsideX128,

block.timestamp

);

}

// https://github.com/Uniswap/v3-staker/blob/main/contracts/libraries/RewardMath.sol#L21

function computeRewardAmount(

uint256 totalRewardUnclaimed,

uint160 totalSecondsClaimedX128,

uint256 startTime,

uint256 endTime,

uint128 liquidity,

uint160 secondsPerLiquidityInsideInitialX128,

uint160 secondsPerLiquidityInsideX128,

uint256 currentTime

) internal pure returns (uint256 reward, uint160 secondsInsideX128) {

// this should never be called before the start time

assert(currentTime >= startTime);

// this operation is safe, as the difference cannot be greater than 1/stake.liquidity

// 收益计算时的值减去初始质押时的值

secondsInsideX128 = (secondsPerLiquidityInsideX128 - secondsPerLiquidityInsideInitialX128) * liquidity;

uint256 totalSecondsUnclaimedX128 =

((Math.max(endTime, currentTime) - startTime) << 128) - totalSecondsClaimedX128;

reward = FullMath.mulDiv(totalRewardUnclaimed, secondsInsideX128, totalSecondsUnclaimedX128);

}

```

## 参考

- [Liquidity Mining on Uniswap v3](https://www.paradigm.xyz/2021/05/liquidity-mining-on-uniswap-v3)

- [Scalable Reward Distribution on the Ethereum

Blockchain](https://uploads-ssl.webflow.com/5ad71ffeb79acc67c8bcdaba/5ad8d1193a40977462982470_scalable-reward-distribution-paper.pdf)

- [Uniswap v3 详解(四):交易手续费](https://liaoph.com/uniswap-v3-4/)

- [v3-core](https://github.com/Uniswap/v3-core)

- [v3-staker](https://github.com/Uniswap/v3-staker)

这里是基于阅读参考文章后的笔记记录,中间增加了一些自己结合源码+部分细节的推敲

为了能够提升协议的资金利用率,Uniswap-V3在流动性管理这块允许用户在提供流动性的时候指定特定的价格区间,这一特性同时也导致了基于用户头寸衍生的一些业务场景的计算模型无法复用V2时代的计算模型。

V2时代的挖矿收益计算模型

我们先回顾一下V2时代的流动性挖矿收益计算模型,

我们先取

$R$ 为每秒钟的发放收益,

$l(t)$ 是在 $t$ 时刻,某用户提供的流动性的总价值

$L(t)$ 是在 $t$ 时刻,所质押的流动性的总价值

那么该用户在 $t$ 时刻所收到的质押收益是 $R \cdot \frac{l(t)}{L(t)}$

用户在$t_0$ 到 $t_1$ 的这段时间,他所收到的质押收益是

$$

\sum_{t=t_0}^{t1} {R \cdot \frac{l(t)}{L(t)}}

$$

这公式在链下的环境去计算很简单,但是如果放到链上,就会很耗gas,因此需要对其进行优化

如果用户全程都只质押了 $l$ 这么多的资产,上面的公式可以提炼成

$$

R \cdot l \cdot \sum_{t=t_0}^{t1} {\frac{1}{L(t)}}

$$

那么用户在 $t_0$ 到 $t_1$ 这段时间的收益计算公式转换成:

$$

R \cdot l \cdot (\sum{t=0}^{t0} {\frac{1}{L(t)}}-\sum{t=0}^{t1} {\frac{1}{L(t)}})

$$

我们令到

$$

S_l(ti)=\sum{t=0}^{t_i} {\frac{1}{L(t)}}

$$

每当有用户触发质押和提取的操作的时候,触发更新一下对应的 $S_l$ 的值,注意,这里涉及到两个变量的维护,

最终变成质押收益计算公式,从每次计算都要循环迭代加乘触计算变成每次只要做一次减法计算

$$

R(l,S_l(t_1),S_l(t_0)) = R \cdot l \cdot (S_l(t_1) - S_l(t_0))

$$

我们取用户在 $t_1$ 增加了$\Delta{L}$ 的流动性到池子里面

先更新

$$

S_l(t1)=\sum{t=0}^{t_0} {\frac{1}{L(t)}} + \frac{t_1-t_0}{L(t_0)}

$$

然后再更新

$$

L(t_1) = L(t_0) + \Delta{L}

$$

当用户在 $t_2$ 的时刻提取出流动性的时候

先更新

$$

S_l(t2)=\sum{t=0}^{t_1} {\frac{1}{L(t)}} + \frac{t_2-t_1}{L(t_1)}

$$

然后再更新

$$

L(t_2) = L(t_1) - \Delta{L}

$$

此时用户的收益情况是

$$

R \cdot l \cdot \frac{t_2-t_1}{L(t_1)}

$$

回到V3的挖矿模型中

既然用户在提供流动性的时候就指定了只在价格区间提供流动性,那么影响用户的质押收益的因子就不仅仅跟时间有关,还跟资产的价格有关,如果资产的价格超过或低于对应价格区间,那么用户就不再享有对应的收益

我们这里取用户在提供流动性的时候,对应的价格范围是

$$

i_{lower} \le ic \le i{upper}

$$

$$

R \cdot l \cdot \sum_{t=t_1}^{t2} \left{\begin{aligned}\frac{1}{L(t)} && i{lower} \le ic \le i{upper} \ 0 && i_{upper} \le i_c \ 0 && ic \le i{lower} \end{aligned}\right.

$$

可以整合成

$$

R \cdot l \cdot ((\sum_{t=t_1}^{t2} {\frac{1}{L(t)}})-(\sum{t=t_1}^{t_2}\left{\begin{aligned}\frac{1}{L(t)} && ic \lt i{lower}\ 0 && i{c} \ge i{lower} \end{aligned}\right.)-(\sum_{t=t_1}^{t_2}\left{\begin{aligned}\frac{1}{L(t)} && ic \ge i{upper}\ 0 && i{c} \lt i{upper} \end{aligned}\right.))

$$

在做这个计算的时候,会用到一些很tricky的技巧,这些技巧都参考甚至直接复用了Uniswap-V3计算手续费的方案

可以观察到,下面的方程其实Uniswap-V3里面有直接的函数可以直接调用求得某个时刻的数值

$$

((\sum_{t=t_1}^{t2} {\frac{1}{L(t)}})-(\sum{t=t_1}^{t_2}\left{\begin{aligned}\frac{1}{L(t)} && ic \lt i{lower}\ 0 && i{c} \ge i{lower} \end{aligned}\right.)-(\sum_{t=t_1}^{t_2}\left{\begin{aligned}\frac{1}{L(t)} && ic \ge i{upper}\ 0 && i{c} \lt i{upper} \end{aligned}\right.))

$$

//https://github.com/Uniswap/v3-core/blob/main/contracts/UniswapV3Pool.sol#L158

function snapshotCumulativesInside(int24 tickLower, int24 tickUpper)

external

view

override

noDelegateCall

returns (

int56 tickCumulativeInside,

uint160 secondsPerLiquidityInsideX128,

uint32 secondsInside

)

在用户stake也就是t1的时候跑一次,保留当前值,然后在计算收益的时候t2再跑一次,保留当前值,两次值相减即可得

我们来看看V3官方的质押挖矿代码里面计算收益的逻辑

// https://github.com/Uniswap/v3-staker/blob/main/contracts/UniswapV3Staker.sol#L280

function getRewardInfo(IncentiveKey memory key, uint256 tokenId)

external

view

override

returns (uint256 reward, uint160 secondsInsideX128)

{

bytes32 incentiveId = IncentiveId.compute(key);

(uint160 secondsPerLiquidityInsideInitialX128, uint128 liquidity) = stakes(tokenId, incentiveId);

require(liquidity > 0, 'UniswapV3Staker::getRewardInfo: stake does not exist');

Deposit memory deposit = deposits[tokenId];

Incentive memory incentive = incentives[incentiveId];

(, uint160 secondsPerLiquidityInsideX128, ) =

key.pool.snapshotCumulativesInside(deposit.tickLower, deposit.tickUpper);

(reward, secondsInsideX128) = RewardMath.computeRewardAmount(

incentive.totalRewardUnclaimed,

incentive.totalSecondsClaimedX128,

key.startTime,

key.endTime,

liquidity,

secondsPerLiquidityInsideInitialX128,

secondsPerLiquidityInsideX128,

block.timestamp

);

}

// https://github.com/Uniswap/v3-staker/blob/main/contracts/libraries/RewardMath.sol#L21

function computeRewardAmount(

uint256 totalRewardUnclaimed,

uint160 totalSecondsClaimedX128,

uint256 startTime,

uint256 endTime,

uint128 liquidity,

uint160 secondsPerLiquidityInsideInitialX128,

uint160 secondsPerLiquidityInsideX128,

uint256 currentTime

) internal pure returns (uint256 reward, uint160 secondsInsideX128) {

// this should never be called before the start time

assert(currentTime >= startTime);

// this operation is safe, as the difference cannot be greater than 1/stake.liquidity

// 收益计算时的值减去初始质押时的值

secondsInsideX128 = (secondsPerLiquidityInsideX128 - secondsPerLiquidityInsideInitialX128) * liquidity;

uint256 totalSecondsUnclaimedX128 =

((Math.max(endTime, currentTime) - startTime) << 128) - totalSecondsClaimedX128;

reward = FullMath.mulDiv(totalRewardUnclaimed, secondsInsideX128, totalSecondsUnclaimedX128);

}

参考

Liquidity Mining on Uniswap v3

Scalable Reward Distribution on the Ethereum

Blockchain

Uniswap v3 详解(四):交易手续费

v3-core

v3-staker

学分: 35

分类: Uniswap

标签:

点赞 5

收藏 2

分享

Twitter分享

微信扫码分享

本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论

jusonalien

关注

贡献值: 103

学分: 64

在找Solidity开发岗

个人博客:

https://jusonalien.github.io/

文章目录

关于

关于我们

社区公约

学分规则

Github

伙伴们

DeCert

ChainTool

GCC

合作

广告投放

发布课程

联系我们

友情链接

关注社区

Discord

Twitter

Youtube

B 站

公众号

关注不错过动态

微信群

加入技术圈子

©2024 登链社区 版权所有 |

Powered By Tipask3.5|

粤公网安备 44049102496617号

粤ICP备17140514号

粤B2-20230927

增值电信业务经营许可证

×

发送私信

请将文档链接发给晓娜,我们会尽快安排上架,感谢您的推荐!

发给:

内容:

取消

发送

×

举报此文章

垃圾广告信息:

广告、推广、测试等内容

违规内容:

色情、暴力、血腥、敏感信息等内容

不友善内容:

人身攻击、挑衅辱骂、恶意行为

其他原因:

请补充说明

举报原因:

取消

举报

×

如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!

详解去中心化交易所Uniswap 以及UNI挖矿 - 知乎

详解去中心化交易所Uniswap 以及UNI挖矿 - 知乎切换模式写文章登录/注册详解去中心化交易所Uniswap 以及UNI挖矿Morecoin全球首家数字资产策略交易平台今日,去中心化交易所 Uniswap 已经宣布将于北京时间 9 月 18 日 20 点启动 UNI 初始流动性挖矿计划,Uniswap v2 上的 ETH/USDT、ETH/USDC、ETH/DAI、ETH/WBTC 四个资金池可参与 UNI 挖矿。其中,每个资金池将向流动性提供者分配 500 万代币,这意味着每天将为每个资金池分配 83,333.33 枚 UNI。另外,初始流动性挖矿计划将运行至 11 月 17 日。做为一站式数字资产金融服务平台,Morecoin将对治理代币UNI进行首发支持,于今日11点上线UNI交易对,共享币安深度,所有人纵享丝滑体验。自成立以来,Uniswap 协议一直坚守打造无需信任及高度去中心化的金融基础设施的初心。截止目前 Uniswap 已经完成了价值超过 200 亿美元资产的交换,有超过 250000 个有效地址在 Uniswap 平台上进行过交易,交易的资产种类达到了 8484 种,有超过 49000 个地址在平台上提供了总量达到 10 亿美元的流动性,流动性提供奖励的总额已经达到了 5600 万美元。此外 Uniswap 已经被数百个应用程序集成,成为了真正意义上的 DeFi 基础设施。引入 UNI 代币是为了让社区能够进一步主导 Uniswap 的下一步发展,帮助平台实现社区治理并从社区中获得更多活力。Uniswap 一直秉持中立和信任最小化的宗旨,只在最关键的环节进行治理约束,因此 Uniswap 的治理框架将聚焦于协议的开发和使用以及打造更广泛的 Uniswap 生态系统之上。UNI 将成为 Uniswap 社区自治的重要手段。UNI 代币分配UNI 的初始铸造量为 10 亿枚,初始供应量会在未来 4 年内完成分发,其中:· 60.00% 分发给 Uniswap 社区成员 [600,000,000 UNI]· 21.51% 分发给团队成员 [215,101,000 UNI]· 17.80% 分发给项目投资者 [178,000,000 UNI]· 0.69% 分发给项目顾问 [6,899,000 UNI]4 年后 UNI 将开始每年 2% 的持续通胀,以保证能够有足量的 UNI 来激励那些参与以及为项目发展做出贡献的用户。初始分配 10 年后(计算通货膨胀)代币分配回馈「老用户」Uniswap 的成功归功于过去两年来参与其旅程的数千名社区成员。这些早期的社区成员对于 Uniswap 来说非常珍贵。因此团队将根据 2020 年 9 月 1 日的快照结果(曾参与流动性提供、进行交易以及持有或赎回过 SOCKS 的用户)提供流通总量 15% 的 UNI[150,000,000 UNI] 直接分发给这些用户。其中共计 49,192 个流动性提供者将分配流通总量的 4.92% [49,166,400 UNI];共计 251,534 个历史用户地址将平均分配总量的 10.06%[100,613,600 UNI],每个曾经在 Uniswap v1 或 v2 进行过交易的地址都可收到 400 UNI 的奖励;共计 220 位 SOCKS 赎回 / 持有者将分配总量的 0.02% [220,000 UNI],每个在快照日前已经赎回 SOCKS 或者拥有至少一枚 SOCKS 的地址可以收到 1000 UNI 的奖励。代币解锁 除分配给老用户的占总量 15 %的代币外,治理金库将保留 UNI 总供应量的 43%[430,000,000 UNI] 。以此保证对于贡献者捐赠、社区倡议、流动性挖矿等其他分配计划的顺利进行。治理金库的 UNI 将会在未来四年内逐步解锁,解锁时间从北京时间 2020 年 10 月 18 日 20:00 正式开始,· 第一年将解锁预留总量的 40%[172,000,000 UNI]· 第二年解锁 30%[129,000,000 UNI]· 第三年解锁 20%[86,000,000 UNI]· 第四年解锁 10%[43,000,000 UNI]此外团队预留以及项目投资者和顾问分配到的代币也会以相同的比例在未来四年时间里逐渐释放。流动性挖矿第一阶段每个资金池都将获得共计 5,000,000 UNI,按照提供流动性的比例分配给流动性提供者。即每个池每天将分配 83,333.33 UNI 奖励。这部分奖励的 UNI 将不设锁定期。30 天后项目的投票治理将正式启动,UNI 持有者可以通过投票决定是否新增其他的流动性资金池用以进行流动性挖矿以及其他的治理计划。治理协议治理现已生效, 180 天的宽限期将为 Uniswap 社区提供足够多的时间来熟悉治理系统,并可围绕潜在治理建议进行讨论和交流。治理代币 UNI 持有者拥有的治理权包括 Uniswap 治理权、UNI 社区金库、协议费用转换、以太坊 ENS (以太坊域名服务)、Uniswap 默认列表(tokens.uniswap.eth)以及 SOCKS 流动性代币。初始治理参数:· 需要 UNI 供应量的 1%进行授权· UNI 供应量的 4% 投赞成票· 七天投票期· 投票结束后两天执行另外,Uniswap 团队仍然不会参与 v2 协议的开发、审计以及其他事项。同样,未来团队成员也不会直接参与治理,而是将投票权委托给协议代表。下一步可以做什么?· 所有的老用户目前已经可以获取 UNI 奖励· 支持第一阶段流动性挖矿的四个池子的流动性提供者可以通过提供流动性获取 UNI 奖励· 可以使用 UNI 进行治理投票· 可以在 http://gov.uniswap.org 上建立帐户,以参与协议管理发布于 2020-09-17 11:27比特币 (Bitcoin)区块链(Blockchain)​赞同 5​​1 条评论​分享​喜欢​收藏​申请

一文彻底了解无常损失 - 知乎

一文彻底了解无常损失 - 知乎首发于虫蛋的区块链世界切换模式写文章登录/注册一文彻底了解无常损失虫蛋 2020年上半年去中心化金融变得炙手可热。流动性挖矿一度造富。Uniswap作为现如今最大的去中心化交易所广受瞩目。介绍如何使用uniswap进行流动性挖矿的文章很多,我这里不再说明。这里主要介绍无常损失(Impermanent Loss)这一概念。 大家可能在进入挖矿时并不完全了解这一概念,从而造成一些困惑或投资损失。接下来我们就深入了解一下这个概念。介绍中有公式推导。大家可能对数学公式有一种恐惧感,我尽量不省略中间过程。实在对公式抵触可以直接跳过公式推导看具体例子。接下来还是先介绍一下概念。什么是无常损失(Impermanent Loss) 这是在Uniswap上进行流动性挖矿时会碰到的一种损失。这种损失是由于代币价格背离引起的。当价格回归时,这种损失也就没有了。我们这里说的是损失,不等同亏损。当我们把一对代币存入Uniswap后,如果一种代币以另一种进行计价的价格上升,那么在价格上升后你把他们取出,得到的总价格比直接手握这两种代币要低一些,低的这一部分就是损失,价格偏离越大损失就越大,所以可能造成亏损,特别是当两种代币在实际中都要以其他稳定币来计价时。当然挖矿还会有治理代币的收入。在讨论无常损失这一议题时,我们先抛开治理代币来分析。有的文章里觉得Impermanent Loss这个说法不够准确,所以也会看到有人把它叫做Divergence Loss(背离损失)。接下来我就来深入分析无常损失是怎么来的。为什么会出现无常损失 我们知道Uniswap提供了自动坐市商的协议。我们提供代币对到流动性资源池,代币对之间的交换通过一个简单的公式进行计算。比如说,我们进入代币A跟代币B的流动性池。在池中代币A的数量是a,代币B的数量是b。那么,代币的交换过程中系统始终要保持a与b的积为一个常量c。也就是:a \times b = c ------------ 表达式1 如果我们考虑以代币B来计价代币A,我们用 P_{A} 标识这个价格。为了方便理解我们把A看成是以太币(ETH),我们把B看成是泰达币(USDT)。这样我们就好理解以USDT来计价ETH的概念了。回到分析。代币A的价格计算如下:P_{A} = b \div a ------------- 表达式2接下来我们结合表达式1,2,来推导出池中代币A跟代币B的数量计算公式。 (1) 代币A计算公式推导 a = b \div P_{A} = (a \times b) \div (P_{A} \times a) = \frac{c}{aP_{A}} 所以, a^{2} = \frac{c}{P_{A}} 代币A数量的计算公式 : a = \sqrt{\frac{c}{P_{A}}} ------------ 表达式4 (2)代币B数量公式推导b = a P_{A} 所以 b^{2} = ab P_{A} = c P_{A} 代币B数量的计算公式: b = \sqrt{cP_{A}} -------------- 表达式5 有了表达式1到5,我们就可以来推导下面的问题。问题是,如果我存储了一定比例(这个比例记做 n ,是相对池的总量)的A跟B到流动性池中。 当A以B来记价的价格上涨了一个比率 r后我们会有多大比率的无常损失。 (1)我们先来看如果我们不进入挖矿,价格上涨后,我们手中的总价格 根据表达式4,5。我们知道这个池中代币A的数量是: \sqrt{\frac{c}{P_{A}}} 那我们的代币A的数量就是: n \sqrt{\frac{c}{P_{A}}} 价格上涨后,这一部分代币的价格是: n \sqrt{\frac{c}{P_{A}}} P_{A} (r+1) 我们知道池中代币B的数量是: \sqrt{cP_{A}} 我们所持有的代币B的数量是: n \sqrt{cP_{A}} 因为本来就是以代币B计价的,所以这一部分的价格就是 : n \sqrt{cP_{A}} 我们所持有的价格合计就是: n \sqrt{\frac{c}{P_{A}}} P_{A} (r+1) + n \sqrt{cP_{A}} -------- 表达式6 (2)接下来我们来看如果我们加入流动性池,价格上涨后,我们的总价格 我们知道上涨后的价格是: P_{A} (r+1) 根据表达式4, 我们知道上涨后,代币A的数量为: \sqrt{\frac{c}{P_{A}(r+1)}} 根据我们所占比例n, 以及上面两个公式,我们得到代币A在这种情况下个价格为:nP_{A} (r+1) \sqrt{\frac{c}{P_{A}(r+1)}} = n \sqrt{{c}{P_{A}(r+1)}} 根据表达式5, A价格上涨后,代币B的数量为: \sqrt{{c}{P_{A}(r+1)}} 根据我们的占比n, 我们可以得到代币B的价格为: n \sqrt{{c}{P_{A}(r+1)}} 所以上涨后的总价格为 : 2n \sqrt{{c}{P_{A}(r+1)}} --------- 表达式7 (3)根据表达式6,7 我们计算出损失为: n \sqrt{\frac{c}{P_{A}}} P_{A} (r+1) + n \sqrt{cP_{A}} - 2n \sqrt{{c}{P_{A}(r+1)}} 进一步简化为:n \sqrt{c{P_{A}}} ( r+2 - 2 \sqrt{r+1}) ---------- 表达式8 (4)用表达式8,6,就可以得到损失率 先简化表达式6得到: n(r+2)\sqrt{cP_{A}} 最后,我们得到的损失率计算公式为:\frac{r+2-2\sqrt{r+1}}{r+2} -----表达式9从表达式9我们可知,最终的损失率只跟上涨率r有关。我们可以取值来画出这个损失率的曲线。当上涨率为-1(也就是价格变成0), 损失率为 1 --- -100%当上涨率为 0 (也就是价格不变), 损失率为 0 --- 0.00%当上涨率为 0.25 , 损失率为 0.006 --- 0.6%当上涨率为 0.5 , 损失率为 0.02 --- 2.0%当上涨率为 1 (也就是价格涨一倍) , 损失率为 0.057 --- 5.7%当上涨率为 4 (也就是价格涨4倍) , 损失率为 0.255 --- 25.5% 上面我们展示了造成无常损失的原因。下面再用一个例子,让大家进一步具体感受一下。无常损失举例 假定我们在Uniswap的ETH-USDT池进行挖矿。假设池中ETH跟USDT的个数分别为100跟40000,其中我们投入挖矿的代币数占比为1%,也就是1个ETH,400个USDT。为了分析简单,我们假设接下来没有人进行存储和提取活动。 开始时,ETH的价格为1ETH = 400USDT。 接下来,我们来看看,如果ETH价格上涨50%会是怎么样一个情况。上涨后,1ETH = 600USDT。 我们来看,如果不进行挖矿,价格上涨后,我们总共持有代币的价格。我们的1个ETH相当于600USDT。那我们一共持有600+400等于1000 USDT。 我们再来看看,挖矿情况上不记治理代币奖励部分的价格总和怎么计算。根据表达式1,这个池的c值为 100\times40000 = 4000000 。根据表达式4,价格上涨后ETH在池中个数为 \sqrt{\frac{4000000}{600}} \approx 81.6497 。 根据表达式5,USDT的个数为 \sqrt{4000000\times600} \approx 48989.7946 。因为我们占比是1%。所以我们可取出的ETH是0.816497个。可取出的USDT是489.897946个。根据价格再把ETH换算成USDT, 0.816497\times600=489.8982 USDT 。好了,我们可以取得的总价是979.796146 USDT。我们的无常损失是 1000 USDT - 979.796146 USDT = 20.203854‬ USDT。 我们的损失率为0.0202,也就是2%左右。我们看到这跟表达式9计算出来的一致。 到此为止,我们已经详细介绍了无常损失的由来。当然现实情况更为复杂,在一个流动性池里不断有人进行存取活动。还有就是流动性挖矿是有代币挖出的。但了解无常损失很是重要的,这样在进行流动性挖矿时,我们可以有更全面的认识。发布于 2020-10-25 11:14Uniswap挖矿区块链(Blockchain)​赞同 204​​32 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录虫蛋的区块链世界共同学习区块链知识,期待技术驱动

流动性挖矿原理 - 廖雪峰的官方网站

流动性挖矿原理 - 廖雪峰的官方网站

廖雪峰的官方网站

Blog

Java教程

手写Spring

手写Tomcat

Makefile教程

Python教程

JavaScript教程

区块链教程

SQL教程

Git教程

文章

问答

More

Java教程

手写Spring

手写Tomcat

Makefile教程

Python教程

JavaScript教程

区块链教程

SQL教程

Git教程

文章

问答

Java教程

手写Spring

手写Tomcat

Makefile教程

Python教程

JavaScript教程

区块链教程

SQL教程

Git教程

文章

问答

 

Profile

Passkey

Sign Out

Sign In

English

简体中文

流动性挖矿原理

廖雪峰 / 文章 / ... / Reads: 14969 Edit

流动性挖矿被称为Liquidity Mining,或者Yield Farming,是DeFi领域的一个创新。

我们这里不讨论流动性挖矿到底好还是不好,是不是骗局。因为币圈的无监管特性,任何“创新”都可以直接写代码实施,流动性挖矿也是如此。

最早启动流动性挖矿的项目已经不好考证,但是让流动性挖矿一夜火爆起来的是Compound这个借贷项目。后来Sushi复制了Uniswap V2的代码,通过搞流动性挖矿,一度成功地把Uniswap的流动性给吸走了大部分。

因为Compound的流动性挖矿是基于它的借贷模式,为了便于大家理解,我们用Sushi来解释流动性挖矿的原理,因为Sushi的代码和Uniswap是完全一样的,对于Swap,我们通过对Uniswap的AMM机制剖析,得出结论如下:

一个交易池需要LP放入两种资产,才能实现AMM,让交易员实现Swap交易;

一个LP放入两种资产到交易池后,他会得到相应数量的代币作为LP凭证,这个代币通常就称为LP,因为稍后可以用LP提取前期放入的流动性资产并获取手续费收入。注意到每个交易池对应的LP凭证代币都是不同的,不能用A池的LP代币去B池提取流动性。

手续费是激励LP放入流动性的关键。手续费通常为0.1%~0.3%,其中大部分归LP,小部分由项目本身收取以支付开发运营费用等。

Swap的手续费虽然看上去比传统的撮合交易要高几倍,但是链上交易频率较低,如果交易额度不是很大,手续费实际收入是很少的。越是交易额低的池子,手续费收入越低,做LP的人越少,反过来导致交易额越低。

因此,如何激励LP,尤其是没有什么流动性的新交易池,就是一个大问题。

我们来看看Sushi的流动性挖矿,是如何激励LP的。

假设一个新的交易池ETH/USDC没有什么流动性,为了鼓励大家去做LP,Sushi引入了一种锁仓挖矿的方式:

一个做市商放入ETH/USDC后,获得相应数量的LP;

不要在手里持有LP,而是把LP质押到挖矿合约中,此合约按照设定的规则,按质押金额和质押时长发放奖励,奖励的代币就是SUSHI;

一段时间后,从挖矿合约中解除质押,获得SUSHI奖励,再把解除质押的LP用于提取流动性资产,获得ETH/USDC以及手续费。

由于存在挖矿,因此收益除了手续费,还额外多了挖矿奖励SUSHI。把SUSHI卖掉,那就是双份奖励,自然收获双份快乐。

我们假设第一步投入总价值$10000的资产到交易池,获得10000个LP,再假定10000个LP放入挖矿合约中,每天收获100个SUSHI,一个SUSHI如果是$0.1,那么投入$10000,每天的挖矿收入就是$10,日收益率0.1%,年化收益率36.5%。

但是,且慢,SUSHI也是凭空发出的代币,你挖我挖他也挖,挖出来你卖我卖他也卖,很快就能把SUSHI卖成$0.01,$0.001,直到归零。

不下点套,能让你随随便便卖掉挖出来的SUSHI?

怎么下套?这就是流动性挖矿的“精髓”所在。

对ETH/USDC这种普通的交易池,每10000个LP每日可挖出100个SUSHI,这叫普通矿池。

还有一种交易池,SUSHI/USDC,每10000个LP每日可挖出1000个SUSHI,这叫超级矿池。

那谁会挖普通矿池啊,当然是直接挖超级矿池了!

看仔细了,超级矿池是SUSHI/USDC,为了能挖超级矿池,首先要获得它的LP,而它的LP需要注入的资产是SUSHI和USDC。

一开始挖矿的时候,大家手里有SUSHI么?

为了挖超级矿池,你得先挖普通矿池,等待一段时间,获得SUSHI奖励后,不能把SUSHI卖掉,而是再用USDC配对,去SUSHI/USDC做LP,才能挖超级矿池。

这就是老司机说的一池、二池。一池就是普通矿池,二池就是奖励加倍的超级矿池。

下图就是如何在手里没有SUSHI的情况下先在一池挖矿,再去二池挖矿,以便获得更高的收益:

┌──────┐

│ ▼

ETH USDC │ SUSHI USDC

│ │ │ │ │

▼ ▼ │ ▼ ▼

┌─────────────┐ │ ┌─────────────┐

│Swap: │ │ │Swap: │

│ETH/USDC │ │ │SUSHI/USDC │

└─────────────┘ │ └─────────────┘

│ │ │

ETH-USDC-LP │ SUSHI-USDC-LP

│ │ │

▼ │ ▼

┌─────────────┐ │ ┌─────────────┐

│Mining: │──┘ │Mining: │──> SUSHI

│ETH-USDC-LP │ │SUSHI-USDC-LP│

└─────────────┘ └─────────────┘

也有人会想,既然大家手里都没有SUSHI,要挖二池就要有SUSHI,但是挖一池获得SUSHI奖励太费时间,我直接去SUSHI/USDC池子里买点SUSHI,买到了SUSHI直接挖二池它不香么?

恭喜你有这样聪明的头脑。回顾上文我们讲Uniswap的x * y = k恒乘积公式,买入SUSHI就会直接推高SUSHI的价格,比如把SUSHI从$0.1买到了$1。

这个时候,一池矿工的收益率就从年化36.5%直接变成了365%,二池的收益率更不得了了,这会导致更多的人冲进来挖矿。更多的人去买SUSHI,导致SUSHI价格更高,比如涨到$10,挖矿收益率更高,如此反复循环。

那SUSHI不得涨到天上去?那也不会,因为矿池每天的产出是固定的。比如一池每天产出100个SUSHI,一个人投入$10000每天收获100个SUSHI,但是另一个人也投入$10000,两人每天就各自只能收获50个SUSHI了。因此,随着矿工的涌入,挖矿收益率会降低,低到一个程度,某些矿工就会主动撤退。

撤退的矿工会将手里的SUSHI卖出以获得实际的挖矿收益。有的人在$1的价格卖出,有的人在$10的价格卖出。随着挖出的SUSHI越来越多,必然有越来越多的矿工开始抛售SUSHI,直到某个时间点,卖出的SUSHI比买入的SUSHI多,SUSHI价格开始下降。

这一降不要紧,关键是收益率随之下降。一旦价格下跌的预期形成,矿工就会争先恐后地抛售SUSHI,SUSHI价格也随之断崖下跌,收益率砍掉一个0或者两个0不叫个事儿,老司机称这种现象叫“矿塌了”。

所以流动性挖矿是短期内迅速实现冷启动的一种模式,通过激励,短期内迅速获得大量用户。但是它的泡沫来得快去得也快,早期的矿工获得的收益实际上是由高位接盘的后期买家支付的,参与流动性挖矿一定要认清潜在的风险,包括合约漏洞的风险,不能被表面虚高的年化收益率给蒙蔽了双眼。

也有人会想,这么好的一本万利的生意,为什么以前没有赌场做?这是因为区块链的数学加密算法保证了计算公开透明,没有任何人能篡改规则。大家只有在确信规则透明可靠的情况下,才会参与这个游戏。如果是传统的网站,能随意修改数据库,自然不会有人相信这个游戏规则本身是公平的。

可以肯定的是,大多数流动性挖矿的项目,最终除了早期矿工,肯定是发行代币的项目方大赚特赚。但我们也应该看到流动性挖矿的积极一面:如果一个类似Uniswap的项目可以长期稳定地运行,且项目收益定期分配给持有UNI的投资人,那么流动性挖矿也是一种早期代币分发的机制,因为早期流动性挖矿的矿工作为参与者为项目提供了大量流动性,客观上推动了项目的快速发展。事实上Uniswap也搞过一段时间的流动性挖矿。

通过本文的讲解,关于流动性挖矿,相信各位童鞋已经理解了它的原理。

Comments

Make a comment

Sign in to make a comment

Author: 廖雪峰

Publish at: ...

关注公众号不定期领红包:

加入知识星球社群:

关注微博获取实时动态:

廖雪峰的官方网站

©Copyright 2019-2021

Powered by iTranswarp

Feedback

License

Paradigm 研究合伙人:在 Uniswap v3 之上实现“经典”流动性挖矿 | CoinVoice

Paradigm 研究合伙人:在 Uniswap v3 之上实现“经典”流动性挖矿 | CoinVoice

风险提示:请理性看待区块链,树立正确的货币观念和投资理念,不要盲目跟风投资,本站内容不构成投资建议,请谨慎对待。

免责声明:本站所发布文章仅代表个人观点,与CoinVoice官方立场无关

AC Capital

链声实验室

|

寻求报道

|

App下载

Toggle navigation

首页

快讯

专栏

所有专栏

申请入驻专栏

活动

专题

独角兽

微信扫一扫

下载APP

登录

Toggle navigation

立即登录

首页

快讯

专栏

所有专栏

申请入驻专栏

活动

专题

独角兽

×

欢迎登录COINVOICE

请输入正确的手机号

密码必须包含大小写字母,包含数字,包含8-32个字符

>> 按住滑块,拖拽到最右边

忘记密码

登录

×

注册

使用已有账号登录

请输入正确的手机号

发送验证码 请输入正确的验证码

密码必须包含大小写字母,包含数字,包含8-32个字符

重复密码不一致

为了您的账户安全,密码必须

包含大写字母,包含小写字母,包含数字,包含8-32个字符

我已阅读并同意《COINVOICE服务条款》和 隐私政策

注册

×

重置密码

请输入正确的手机号

发送验证码 请输入正确的验证码

密码必须包含大小写字母,包含数字,包含8-32个字符

重复密码不一致

为了您的账户安全,密码必须

包含大写字母,包含小写字母,包含数字,包含8-32个字符

重置

Paradigm 研究合伙人:在 Uniswap v3 之上实现“经典”流动性挖矿

Defi之道

2021年05月19日

分享

本文来源:https://www.paradigm.xyz/2021/05/liquidity-mining-on-uniswap-v3/作者:Dan RobinsonUniswap v3 用非同质化的 ERC-721 流动性头寸代替了同质化的 ERC-20 流动性头寸。这是否意味着它不再支持灵活的 UniswapV2 风格的流动性挖矿?必须选择特定的激励范围,积极管理流动性挖矿吗?还是可以通过提供大量非活跃流动性来在流动性挖矿中进行博弈?不。Uniswap v3 可以支持与 Uniswap v2 相同类型的流动性挖矿——以每秒固定的速率、按比例激励所有活跃流动性,只需作出相对较小的折衷。它间接地激励了流动性的集中,因为流动性提供者根据他们在虚拟流动性中的份额(当它活跃时)获得奖励,而不是根据所提供代币的总价值。它甚至可以在一个单一的质押合约中做到这一切,使人们可以同时利用多种激励来质押相同的流动性,而无需为不同的激励措施部署新合约。Omar Bohsali (现为 Paradigm 的驻场企业家)最近获得了 Uniswap 资助项目的资助,以实现该算法。您可以在 GitHub 上查看跟踪他的进度。这是关于我如何学会停止担心并喜欢上非同质化流动性系列文章中的第一篇。下一篇文章将讨论 Uniswap v3 头寸将如何被用作抵押品。1价值十亿美元的算法要了解标准流动性挖矿算法如何适用于 Uniswap v3,我们首先需要了解它在早期版本的 Uniswap 中是如何工作的。第一个在链上计算奖励的流动性挖矿项目是 SNX 对 Uniswap sETH 池的奖励。这是 Anton Bukov 在 2019 年撰写的 Unipool sETH 合约中实现的。我认为这是有史以来最具影响力的智能合约之一。假设你想激励 Uniswap v1 或 v2 池在特定时期内的流动性。想要在流动性提供者之间公平地分配代币,并且是随时间线性分配(例如,以每秒 R 个代币的速度)。请想象,以秒为单位将池子切成一片片。对于每个部分,给定的流动性提供者都应收到个代币,其中 l(t) 是单个流动性提供者在 t 时刻的流动性代币余额,L(t) 是该池在 t 时刻已质押的流动性总量。他们从 t0 到 t1 时间内得到的奖励将是这段时间内每秒奖励的总和:这在链下是很容易计算的。但是我们如何才能在链上有效地计算它,在每次有人进入或退出池子时进行增量更新?如果余额 l 在那段时间内是恒定的,则可以将以上公式简化为:然后,我们可以将该和分解为两个和的差。(Uniswap v2 中引入的 oracle accumulator 使用了非常类似的技巧。)这意味着我们需要在质押合同中进行跟踪的是自池子开始时,就跟踪“每流动性秒数”这个指标的 accumulator:在 Unipool 合约中,这个 accumulator 被称为 rewardPerTokenStored。当任何人质押或解押流动性(即改变 L 时,质押合约会通过增加 accumulator到先前的值来更新 Sl accumulator。(从技术上讲,在 Unipool 合同及其大部分的分叉中,accumulator 跟踪 R/L,而不是在后面乘以奖励率。)当某人质押流动性时,合约会检查其累计值的初始值 Sl(t0)。当他们以后解押时,合约将查看 accumulator 的新值 Sl(t1) 并计算该期间的奖励:Uniswap v1 和 v2 不需要对这些激励措施的有任何内置支持,因为这些数字(accumulator 和 checkpointed values)仅在涉及质押合约时才会更改。除了为收益农耕趋势奠定基础(在此过程中它被反复分叉), 这种聪明的算法还具有相当多的用途。例如,Uniswap v3 使用类似的算法来跟踪单个头寸赚取的费用(还有一些其他技巧来支持集中流动性)。它在链上是最有用的(效率很高),同时对简化链下计算也很有用。UNI 追溯分配是基于一个查询,该查询在 SQL 中重新实现了该算法。2转入正题Uniswap v3 使情况复杂化,但并非无法解决。如白皮书中所述,Uniswap v3 支持集中流动性——流动性仅在当前的价格变动(ic)处于特定范围内时才有效。这意味着价格变动可以改变已抵押头寸的流动性余额,而不会涉及到抵押合同。对于具有 l 流动性的给定头寸,我们现在需要计算:这可以分解为:我们可以将其解释为 secondsPerLiquidityInside = secondsPerLiquidity– secondsPerLiquidityBelow(lowerTick) - secondsPerLiquidityAbove(upperTick)。可以使用上述相同的全局 Sl accumulator 来计算第一项。在 Uniswap v3 合约中,该全局 accumulator 与价格预言机一起被跟踪,如 secondsPerLiquidityX128。为了让我们能够计算其他两个项,每经历一个时刻,Uniswap v3 检查点 secondsPerLiquidityOutside() 就会对该时点进行计算。“外部”是指与当前价格相对的价格变动。这让我们可以随时计算 secondsPerLiquidity 任何一方的应计总额。例如,如果 tickCurrent < i,则 secondsPerLiquidityBelow(i) = secondsPerLiquidity - secondsPerLiquidityOutside(i); 如果 tickCurrent >= i,则 secondsPerLiquidityBelow(i) = secondsPerLiquidityOutside(i)。(这与 Uniswap v3 跟踪和计算某时刻前后赚取的费用非常相似。)因此,对于任意范围,我们都可以使用上面的公式来计算 secondsPerLiquidityInside 该范围。Uniswap v3 会为你执行此计算,并通过便捷 snapshotCumulativesInside 函数公开结果。当用户解押时,解押合约可以简单地对此 secondsPerLiquidityInside 进行快照。当他们以后解押时,解押合约会查看新合约 secondsPerLiquidityInside,取其差额,并将其乘以 R·l ,以获得该时期内该头寸赚取的总奖励。3妥协我们确实需要根据新系统的技术局限性作出一些妥协:模糊的截止时间:无法在激励结束的确切时刻自动快照所有 accumulators。截止后,合约不能完全区分截止前存入的流动性和之后存入的流动性。为了适应这一点,合约可以对激励结束后解押的人的奖励率进行衰减处理。想要锁定确切奖励率的人需要在此之前解押。·非质押(Unstaked)的流动性:该算法使用核心合约中的活跃流动性总量,这可能高于总质押的流动性。非质押的流动性仍将被分配一部分奖励,就像它已被质押但未被领取一样。激励措施的创建者可以指定一个认领期限,在此期限之后他们可以收回所有无人认领的奖励。结论Uniswap v3 并没“破坏”流动性挖矿,而是为其开辟了广阔的设计空间。尽管这篇文章描述了一种在 Uniswap v3 之上实现“经典”流动性挖矿的算法,但我认为谈得还是太浅了。如白皮书第 6.3 节所述,Uniswap v3 核心合约公开了其他几个索引(例如 secondsOutside 和 tickCumulativeOutside)。我期待看到协议是如何利用这些新功能的。在以后的文章中,我将解决关于 Uniswap v3 头寸的另一个普遍关注的问题:贷款协议如何将其用作抵押品。 

声明:本内容为作者独立观点,不代表 CoinVoice 立场,且不构成投资建议,请谨慎对待,如需报道或加入交流群,请联系微信:VOICE-V。

来源:Defi之道 原创

评论0条

Defi之道

简介:专业性+洞察力的中文区块链媒体,致力于探索Web 3.0前瞻内容和深度解读。

作者文章

Web3 的阴暗面:去中心化如何助长 AI 偏见

Web3 的阴暗面:去中心化如何助长 AI 偏见

从荣光中坠落,一文浅谈 Silvergate 崩溃的根本原因

了解零知识(ZK)最新进展:哪个项目能够成为第一个“吃螃蟹的人”

查看更多

专栏

更多>>

比特币平均交易费较「减半」后高点下降超90%,目前已不足1美元

4月11日至5月14日期间,该交易费暴涨1250%,由0.38美元增至5.16美元。

GameFi高潮迭起,OEC生态项目一览

仅不到一周时间,OEC公链已部署5个优质GameFi项目

DAO能否解决WHO面临的“断供”局面?

也许我们并不需要一个 WHO 或者其他的官僚组织,需要的是一个公开透明,基于算法而不是官僚机构的去中心化技术协调系统。

XRP 官方数据为何被指误导?起底 Messari 的 XRP 流通量报告风波

1 月 25 日,区块链研究机构 Messari 的首席执行官 、区块链媒体 Coindesk 的联合...

2020 Q1数字资产现货交易所行业研究报告

2020年第一季度数字资产现货市场交易量,环比增长104%。以60%-70%的置信区间计算,全市场交易量在3.9万亿-4.6万亿水平,虽存在虚高成分,行业仍在持续向好发展。

那些陨落在熊市中的加密新星

NEO、EOS 没能抵住 2018 年熊市的侵袭,2022 年能再度崛起吗?

为什么FIL币涨这么多,大家却说它是刚刚开始?

不要看 FIL币涨得那么高,现在才刚刚开始。就像 Filecoin的诞生为因特网带来了全新的发展方向一...

合成资产 — 趋势与机遇

合成资产是产品设计的产物,但是从根源说,其实是流动性的产物。

BTC 支付商 Fold 完成 250 万美元种子轮融资

BTC 支付初创公司 Fold 完成 250 万美元种子轮融资,投资者包括 Craft Ventures、CoinShares、Slow Ventures。 Fold 表示,该笔融资将用于推出其新的移动应用程序,该应用支持信用卡、借记卡和支付返利功能。 Fold 首席执行官 Will Reev...

BSC 最大借贷平台突然收取提款费,多个机枪池受损严重

“Belt 立刻撤出所有本金!”

关注金融科技新变量

关于我们

商务合作

关于我们

加入我们

免责声明

联系我们

邮箱

coinvoice@163.com

微信

VOICE-V

关注我们

微信公众号

扫码关注

CoinVoice

Copyright © 2020 CoinVoice. 沪ICP备18017380号-1

关注金融科技新变量,提供优质、原创、深度的新金融科技资讯,传递新金融科技价值,致力于服务全球金融科技创新者。

风险提示:本站所发布文章仅代表个人观点,与CoinVoice官方立场无关,请理性看待区块链,树立正确的投资理念,增强反诈意识,不要盲目跟风投资,本站内容不构成投资建议,请谨慎对待。

关注金融科技新变量

下载App

流动性挖矿终极指南 | 登链社区 | 区块链技术社区

流动性挖矿终极指南 | 登链社区 | 区块链技术社区

文章

问答

讲堂

专栏

集市

更多

提问

发表文章

活动

文档

招聘

发现

Toggle navigation

首页 (current)

文章

问答

讲堂

专栏

活动

招聘

文档

集市

搜索

登录/注册

流动性挖矿终极指南

dafsic

更新于 2022-02-14 14:25

阅读 3748

流动性挖矿是什么

如何参与流动性挖矿

通过跨链桥转移token

杠杆借贷挖矿(做多做空以及杠杆)

[阅读原文](https://mp.weixin.qq.com/s/hETF3rIFY1QB88p-JvxpkA)

## 本文将分成四部分来介绍:

1. 流动性挖矿是什么

2. 如何参与流动性挖矿

3. 通过跨链桥转移token

4. 杠杆借贷挖矿(做多做空以及杠杆)

## 一、首先解释下什么是流动性挖矿

最原始的POW挖矿类似btc、eth等是用矿机去挖,这就需要大量机器、场地、技术团队等成本。后来有了POS挖矿,只要很少的机器和场地和技术团队成本,但是额外的为了防止女巫攻击,每个矿工都要质押币。还有一些类似存储挖矿等,也差不太多。

他们挖的币来自哪里呢?一个是出块奖励,另一个是转账交易的手续费。但我们只有获得出块权才能获得奖励,这竞争还是很大的,所以一般人挖矿都是加入到大矿池,出块之后奖励大家按照比例分。或者直接出钱买算力,代价就是要收服务费,还要信任服务商不会坑你,不会跑路

另一方面,随着智能合约带来的defi繁荣景象,以及人们对去中心化生态中的中心化交易所的不信任,或者说不纯粹。诞生了去中心化交易所dex,当然首先诞生在eth链上。而dex没有传统交易所的订单簿,取而代之的是一个个的流动性池。比如eth/uni这个交易对,假设1个eth能换100个uni,然后大家就可以按照这个比例往eth/uni的这个池子里存币,假设池子里有10个eth和1000个uni,这个比例就是价格。所以可以用1个eth买走100个uni,那么这个池子现在就是11个eth和900个uni了,比例就变成了11/900,你再用1个eth就只能买走不到90个uni了。显然这个池子越大它的流动性就越好,滑点就越低。如果池子里有1亿个eth和100亿个uni,那么你再用1个eth买走100个uni,对它们的比例的影响基本可以忽略。

这就是流动性挖矿的逻辑,去中心化交易所希望做大它的池子,所以需要我们向池子里添加流动性,把交易的手续费作为奖励按比例分配给我们。dex一般是智能合约,不需要出块,但也会发自己的代币,所以也会有一部分代币奖励给流动性提供者(简称LP)。这看起来与传统挖矿区别就不大了,质押虚拟币,然后按比例分交易手续费和平台代币,代币一般会越来越少,跟出块奖励越来越少一样。

## 二、如何进行流动性挖矿

逻辑讲完后,开始讲下具体怎么挖,简单来说就是往池子里添加流动性。当然各个大公链上都有自己的dex,像什么以eth、bsc、avax、cosmos、fantom等等,甚至每条链上也不止一个,有的提供主流币的交易的,还有专门提供稳定币交易的等等,所以可挖的地方很多。下面以bsc链上的pancakeSwap交易所举例。第一步是创建钱包,在哪条链上挖就要创建哪个链上的钱包,一般都有浏览器插件钱包,我是用metamask钱包添加的bsc网络。

![640.webp](https://img.learnblockchain.cn/attachments/2022/02/t2EPDSIO6209fb7c6426a.webp)

然后添加相应的token,比如我要挖cake和usdt的交易对,我就添加这两个就行了。

第二步是用钱包登录去中心化交易所,直接在浏览器上输入交易所网址,如pancakeswap.finance。进去之后选择连接钱包,在弹出窗口中选择metamask钱包。

![6401.webp](https://img.learnblockchain.cn/attachments/2022/02/egiyzWY76209fb8f64950.webp)

​从网站的导航栏选择找到farm,在farm页面找到cake-usdt交易对,然后质押代币即可。它这里是先授权再质押。过程都要与钱包进行交互,需要花gas费,bsc链上的gas费很低。

## 三、通过跨链桥转移token

前面说过,可以流动性挖矿的地方很多,一会这个链上的收益高一会那个链上的收益高,或者哪个链又出新币了等等。这时候我们就需要把钱转移到别的链上挖收益更高的,当然一般收益高风险也大,看个人对项目的了解程度与风险偏好了。

比如我们现在想从eth链转移到bsc链上去挖矿。最简单的方法是通过中心化交易所如币安等。但是要先从eth把币充值到币安,可能还需要卖币买币,然后再提现到bsc链上。这都是需要手续费的,充提币也比较麻烦,而且中心化交易所还要kyc。这时候就可以考虑跨链桥了,如果项目方有做跨链,就可以通过跨链桥直接从eth转移token到bsc,如果没有就要通过eth链上的dex把token换成usdt等币,然后将usdt转移到bsc链上。

![6403.webp](https://img.learnblockchain.cn/attachments/2022/02/YSEesi9H6209fba4492d9.webp)

上图是用multichain跨链桥把eth链上的usdt转移bsc链上,可以看到我们能收到99.1个usdt。如果先从eth转到中心化交易所,然后再提币到bsc上,估计不剩啥了,eth的gas费太高了

## 四、杠杆借贷流动性挖矿

流动性挖矿中不得不知的一个概念就是无常损失。下面的截图很好的解释了什么是无常损失:

![6404.webp](https://img.learnblockchain.cn/attachments/2022/02/t4LGglgK6209fbb22d30e.webp)

前面说到一个很重要的观点,池子里的比例就是价格。所以,无常损失的本质就是池子里的比例与真实比例不一致,形成差价。套利者就会开始赚差价了,上图的例子就是当bnb涨价时,套利者就会用他的busd来买池子里的bnb,最终使其与真实的比例一致。反之,bnb价格下跌的时候,套利者就会来你的池子里卖他的bnb。既然别人能赚走差价,就意味着无论涨跌都有无常损失。

显然如果池子里的交易对能够同步波动,就不会有无常损失了。所以,像curve提供稳定币挖矿的平台很受欢迎,即使它的收益并不高。我们相信市场是联动的,btc下跌,bnb也会下跌,虽然幅度不同,只要时间够长,方向是一样的。所以我们就可以进行bnb-btc这个交易对挖矿,来减少无常损失。

另外,如果看好bnb不想换成busd去挖矿,我们可以抵押10个bnb借出3200个busd进行挖矿,bnb大幅上涨后,我们依然可以用3200个busd赎回10个bnb,挖矿的同时享受持币收益。或者也可以反过来,抵押usdt借出bnb。但中心化交易所的抵押借币,都是超额抵押,抵押10个bnb可能只借出5个bnb等值的busd。毕竟我们要把币提出平台吗,这很正常。如果有挖矿平台本身提供借贷,我们就可以无抵押借贷了,因为我们借完也不提出来,也在平台上挖矿,这类似于中心化交易所的杠杆交易(不是合约)。即我们可以拿20个bnb,然后借6400个busd进行挖矿,这就是杠杆挖矿。这时我们的账户有20个bnb和6400个busd,如果不考虑无常损失,即使bnb归零,我们依然有6400个busd,够还当时借的债务了。所以,平台只要计算好无常损失,设置好爆仓价格,完全可以借给我们挖矿。平台赚取稳定的借款的利息,我们扩大挖矿收益,这个逻辑是成立的。当然我们也可以向平台存款,收取稳定利息,这就是defi赋予我们的权利。杠杆挖矿平台我用的是alpacafinance.org,最大的杠杆是3倍。

![6405.webp](https://img.learnblockchain.cn/attachments/2022/02/KP5h03226209fbd70212a.webp)

到这里就有太多策略了,就自己组合了,比如同一个交易对,开两个挖矿的单,一个做多一个做空,赚取稳定的挖矿收益,但要不断手动开启关闭来平衡。

总结一下,由于这个领域涉及的太多了,我只是纵向的介绍下,包括各种相似的平台都有很多,大家自行搜索,很多地方我也没讲清楚,操作过程中遇到我没也可以后台留言一起探讨。可以发现,通过去中心化交易所,跨链桥,借贷,c2c ,就不再需要中心化交易所了,除非你是赌狗,想玩合约。

祝大家早日自由!

阅读原文

本文将分成四部分来介绍:

流动性挖矿是什么

如何参与流动性挖矿

通过跨链桥转移token

杠杆借贷挖矿(做多做空以及杠杆)

一、首先解释下什么是流动性挖矿

最原始的POW挖矿类似btc、eth等是用矿机去挖,这就需要大量机器、场地、技术团队等成本。后来有了POS挖矿,只要很少的机器和场地和技术团队成本,但是额外的为了防止女巫攻击,每个矿工都要质押币。还有一些类似存储挖矿等,也差不太多。

他们挖的币来自哪里呢?一个是出块奖励,另一个是转账交易的手续费。但我们只有获得出块权才能获得奖励,这竞争还是很大的,所以一般人挖矿都是加入到大矿池,出块之后奖励大家按照比例分。或者直接出钱买算力,代价就是要收服务费,还要信任服务商不会坑你,不会跑路

另一方面,随着智能合约带来的defi繁荣景象,以及人们对去中心化生态中的中心化交易所的不信任,或者说不纯粹。诞生了去中心化交易所dex,当然首先诞生在eth链上。而dex没有传统交易所的订单簿,取而代之的是一个个的流动性池。比如eth/uni这个交易对,假设1个eth能换100个uni,然后大家就可以按照这个比例往eth/uni的这个池子里存币,假设池子里有10个eth和1000个uni,这个比例就是价格。所以可以用1个eth买走100个uni,那么这个池子现在就是11个eth和900个uni了,比例就变成了11/900,你再用1个eth就只能买走不到90个uni了。显然这个池子越大它的流动性就越好,滑点就越低。如果池子里有1亿个eth和100亿个uni,那么你再用1个eth买走100个uni,对它们的比例的影响基本可以忽略。

这就是流动性挖矿的逻辑,去中心化交易所希望做大它的池子,所以需要我们向池子里添加流动性,把交易的手续费作为奖励按比例分配给我们。dex一般是智能合约,不需要出块,但也会发自己的代币,所以也会有一部分代币奖励给流动性提供者(简称LP)。这看起来与传统挖矿区别就不大了,质押虚拟币,然后按比例分交易手续费和平台代币,代币一般会越来越少,跟出块奖励越来越少一样。

二、如何进行流动性挖矿

逻辑讲完后,开始讲下具体怎么挖,简单来说就是往池子里添加流动性。当然各个大公链上都有自己的dex,像什么以eth、bsc、avax、cosmos、fantom等等,甚至每条链上也不止一个,有的提供主流币的交易的,还有专门提供稳定币交易的等等,所以可挖的地方很多。下面以bsc链上的pancakeSwap交易所举例。第一步是创建钱包,在哪条链上挖就要创建哪个链上的钱包,一般都有浏览器插件钱包,我是用metamask钱包添加的bsc网络。

然后添加相应的token,比如我要挖cake和usdt的交易对,我就添加这两个就行了。

第二步是用钱包登录去中心化交易所,直接在浏览器上输入交易所网址,如pancakeswap.finance。进去之后选择连接钱包,在弹出窗口中选择metamask钱包。

​从网站的导航栏选择找到farm,在farm页面找到cake-usdt交易对,然后质押代币即可。它这里是先授权再质押。过程都要与钱包进行交互,需要花gas费,bsc链上的gas费很低。

三、通过跨链桥转移token

前面说过,可以流动性挖矿的地方很多,一会这个链上的收益高一会那个链上的收益高,或者哪个链又出新币了等等。这时候我们就需要把钱转移到别的链上挖收益更高的,当然一般收益高风险也大,看个人对项目的了解程度与风险偏好了。

比如我们现在想从eth链转移到bsc链上去挖矿。最简单的方法是通过中心化交易所如币安等。但是要先从eth把币充值到币安,可能还需要卖币买币,然后再提现到bsc链上。这都是需要手续费的,充提币也比较麻烦,而且中心化交易所还要kyc。这时候就可以考虑跨链桥了,如果项目方有做跨链,就可以通过跨链桥直接从eth转移token到bsc,如果没有就要通过eth链上的dex把token换成usdt等币,然后将usdt转移到bsc链上。

上图是用multichain跨链桥把eth链上的usdt转移bsc链上,可以看到我们能收到99.1个usdt。如果先从eth转到中心化交易所,然后再提币到bsc上,估计不剩啥了,eth的gas费太高了

四、杠杆借贷流动性挖矿

流动性挖矿中不得不知的一个概念就是无常损失。下面的截图很好的解释了什么是无常损失:

前面说到一个很重要的观点,池子里的比例就是价格。所以,无常损失的本质就是池子里的比例与真实比例不一致,形成差价。套利者就会开始赚差价了,上图的例子就是当bnb涨价时,套利者就会用他的busd来买池子里的bnb,最终使其与真实的比例一致。反之,bnb价格下跌的时候,套利者就会来你的池子里卖他的bnb。既然别人能赚走差价,就意味着无论涨跌都有无常损失。

显然如果池子里的交易对能够同步波动,就不会有无常损失了。所以,像curve提供稳定币挖矿的平台很受欢迎,即使它的收益并不高。我们相信市场是联动的,btc下跌,bnb也会下跌,虽然幅度不同,只要时间够长,方向是一样的。所以我们就可以进行bnb-btc这个交易对挖矿,来减少无常损失。

另外,如果看好bnb不想换成busd去挖矿,我们可以抵押10个bnb借出3200个busd进行挖矿,bnb大幅上涨后,我们依然可以用3200个busd赎回10个bnb,挖矿的同时享受持币收益。或者也可以反过来,抵押usdt借出bnb。但中心化交易所的抵押借币,都是超额抵押,抵押10个bnb可能只借出5个bnb等值的busd。毕竟我们要把币提出平台吗,这很正常。如果有挖矿平台本身提供借贷,我们就可以无抵押借贷了,因为我们借完也不提出来,也在平台上挖矿,这类似于中心化交易所的杠杆交易(不是合约)。即我们可以拿20个bnb,然后借6400个busd进行挖矿,这就是杠杆挖矿。这时我们的账户有20个bnb和6400个busd,如果不考虑无常损失,即使bnb归零,我们依然有6400个busd,够还当时借的债务了。所以,平台只要计算好无常损失,设置好爆仓价格,完全可以借给我们挖矿。平台赚取稳定的借款的利息,我们扩大挖矿收益,这个逻辑是成立的。当然我们也可以向平台存款,收取稳定利息,这就是defi赋予我们的权利。杠杆挖矿平台我用的是alpacafinance.org,最大的杠杆是3倍。

到这里就有太多策略了,就自己组合了,比如同一个交易对,开两个挖矿的单,一个做多一个做空,赚取稳定的挖矿收益,但要不断手动开启关闭来平衡。

总结一下,由于这个领域涉及的太多了,我只是纵向的介绍下,包括各种相似的平台都有很多,大家自行搜索,很多地方我也没讲清楚,操作过程中遇到我没也可以后台留言一起探讨。可以发现,通过去中心化交易所,跨链桥,借贷,c2c ,就不再需要中心化交易所了,除非你是赌狗,想玩合约。

祝大家早日自由!

学分: 0

分类: DeFi

标签:

流动性挖矿 

指南 

点赞 0

收藏 3

分享

Twitter分享

微信扫码分享

你可能感兴趣的文章

Solidity 非权威开发指南(4): OpenGSN

1756 浏览

Move Prover 实用指南

2271 浏览

写给Solidity开发者的Solana入门指南

5437 浏览

Solidity 非权威开发指南(2):语法摘要

1670 浏览

给 Web3 项目的智能合约安全指南

1700 浏览

给程序员的Web3入门指南

3514 浏览

相关问题

求uniswap V3 的流动性挖矿的开源项目链接

2 回答

单币矿池开发问题

3 回答

在本地部署流动性挖矿的时候报错,请问是为什呢么?

1 回答

0 条评论

请先 登录 后评论

dafsic

关注

贡献值: 37

学分: 2

江湖只有他的大名,没有他的介绍。

文章目录

关于

关于我们

社区公约

学分规则

Github

伙伴们

DeCert

ChainTool

GCC

合作

广告投放

发布课程

联系我们

友情链接

关注社区

Discord

Twitter

Youtube

B 站

公众号

关注不错过动态

微信群

加入技术圈子

©2024 登链社区 版权所有 |

Powered By Tipask3.5|

粤公网安备 44049102496617号

粤ICP备17140514号

粤B2-20230927

增值电信业务经营许可证

×

发送私信

请将文档链接发给晓娜,我们会尽快安排上架,感谢您的推荐!

发给:

内容:

取消

发送

×

举报此文章

垃圾广告信息:

广告、推广、测试等内容

违规内容:

色情、暴力、血腥、敏感信息等内容

不友善内容:

人身攻击、挑衅辱骂、恶意行为

其他原因:

请补充说明

举报原因:

取消

举报

×

如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!

Uniswap 流动性挖矿 (完结) | CN | Liquity Docs

wap 流动性挖矿 (完结) | CN | Liquity DocsLiquity DocsCN1.0.0CN Liquity.org Github Discord Spanish Docs搜索Ctrl + KLiquity官方说明FAQ概述借贷稳定池和清算赎回和 LUSD 价格稳定前端运营商LQTY奖励和分配LQTY 质押复原模式Uniswap 流动性挖矿 (完结)DocumentationTechnical ResourcesCommunity ResourcesFrontend SDKBug BountyBrand Assets由 GitBook 提供支持Uniswap 流动性挖矿 (完结)*** 该文档最后一章 ***Liquity协议会奖励Uniswap LP吗?是的。从发行日(4月5日)开始,1,333,333个LQTY 将在6周内将奖励给LUSD:ETH Uniswap池的流动性提供者。

6周后LP(流动性提供者)会有奖励吗?在6周之后(5月16日),暂时没有立即的/公开的额外LP奖励计划。

我该如何获得LP奖励?用户可以通过以下方式获得LP奖励:为LUSD:ETH Uniswap池增加流动性,并在交换中获得UNIv2代币通过Liquity前端将这些UNIv2代币放入Liquity的Unipool奖励合约中 获得与质押代币数量和质押时间成正比的奖励流动性提供者可以在需要时解除UNIv2代币以退出该计划(即停止获得奖励)。

我的 Liquity 前端不支持LP奖励?如果您选择的前端不支持 LP 奖励,请尝试在liquity.org 前端列表中寻找另一个。

我的前端的回扣率与我收到的奖励有关吗?没有关系。回扣率仅与稳定池存款相关。上一页复原模式下一页Technical Resources最后更新于2年前在本页这有帮助吗?Liquity协议会奖励Uniswap LP吗?

6周后LP(流动性提供者)会有奖励吗?

我该如何获得LP奖励?

我的 Liquity 前端不支持LP奖励?

我的前端的回扣率与我收到的奖励有

区块链中的数学- uniswap 中添加移除流动性的影响及算法 | 登链社区 | 区块链技术社区

区块链中的数学- uniswap 中添加移除流动性的影响及算法 | 登链社区 | 区块链技术社区

文章

问答

讲堂

专栏

集市

更多

提问

发表文章

活动

文档

招聘

发现

Toggle navigation

首页 (current)

文章

问答

讲堂

专栏

活动

招聘

文档

集市

搜索

登录/注册

区块链中的数学- uniswap 中添加移除流动性的影响及算法

blocksight

更新于 2020-09-26 14:25

阅读 9134

本文详细地解释了添加、移除流动性对unsiwap状态机状态的变化和具体的算法。

## 写在前面

上一节说了[Uniwap核心算法中的交易价格](https://learnblockchain.cn/article/1492), 这一节继续说Uniwap做市商算法之流动性改变。

本文的基础是上两篇,建议认真理解,否则理解本篇有一定难度。

**百尺之台起于累土,合抱之木生于毫末,不要怕麻烦!!**

下面我们详细说说流动性计算!

## 流动性基本介绍

uniswap流动性是指交易pool池中的代币,由流动性提供者存入到池中,我们之前说的的价格变化就是基于流动性数量来计算的。

流动性提供者可以随时增加或者删除流动性,也就是存入token对和取走token对,在取走token对的同时,取回交易手续费所积累的按比率分配的份额,也就是所谓的”流动性挖矿“收益。

## 添加流动性

以太坊是一个状态机模型(当然,其他区块链也都能看做状态机模型),uniswap本身也可以使用状态机来理解。

Uniswap用一个三元组(e, t, l)来代表交易平台的状态,其中e代表ETH的数量,t代表其他Token的数量,l代表当前流动性总量。添加流动性导致的状态转移方程如下:

![](https://img.learnblockchain.cn/2020/09/29/16013654332109.jpg)

其中

![](https://img.learnblockchain.cn/2020/09/29/16013654494272.jpg)

$\alpha =\Delta e/e$ , 流动性提供者即投资者可以存入 ∆e数量的 ETH 和 ∆t = t′ − t 的其他token,来挖取∆l = l′ − l 流动性。

这里e : t : l 比例是不变的,但是k = e × t是会增长的, 这一点在之前有所提及。

令 k' = e′ × t′, 则可以得到:

1. e : t : l = e′ : t′ : l′

2. k < k′

3. $\frac{k'}{k}=(\frac{l'}{l})^2 $

接下来看一下具体的算法:

![](https://img.learnblockchain.cn/2020/09/29/16013656430325.jpg)

其中,

![](https://img.learnblockchain.cn/2020/09/29/16013656641918.jpg)

t'', l''计算中,采用了向下取整,考虑到具体计算过程中精度的因素,尤其以太坊虚机整数计算的问题。

## 移除流动性

流动性提供者可以收回已经存入的ETH和token,全部或者部分都可以。

状态方程如下:

![](https://img.learnblockchain.cn/2020/09/29/16013657111981.jpg)

其中,

![](https://img.learnblockchain.cn/2020/09/29/16013657211085.jpg)

$\alpha =\Delta l/l$, 表示流动性提供者销毁∆l的流动性,得到∆e = e − e′ 个ETH和∆t = t − t′ token

对于k = e × t,k′ = e′ × t′ 可以得到:

1. e : t : l = e′ : t′ : l′

2. k > k′

3. $\frac{k'}{k}=(\frac{l'}{l})^2 $

移除流动性具体算法如下:

![](https://img.learnblockchain.cn/2020/09/29/16013658081599.jpg)

其中, t'', l''计算采用了向上取整。

![](https://img.learnblockchain.cn/2020/09/29/16013658182892.jpg)

还有一点需要指出的是, 添加和移除流动性结合起来的状态变化,

![](https://img.learnblockchain.cn/2020/09/29/16013658310409.jpg)

必须满足:

1. $e_0

2. $t_0

3. $l_0

这样可以保证流动性提供者即投资者不能通过整数运算舍入误差获取’免费‘的收益。

## 小结

本文详细地解释了添加、移除流动性对unsiwap状态机状态的变化和具体的算法。总体上,简单不失优雅,

下一节继续分析[uniswap中常用的方法](https://learnblockchain.cn/article/1522)并作为总结,结束uniswap核心算法这一系列。

欢迎关注公众号:blocksight

写在前面

上一节说了Uniwap核心算法中的交易价格, 这一节继续说Uniwap做市商算法之流动性改变。

本文的基础是上两篇,建议认真理解,否则理解本篇有一定难度。

百尺之台起于累土,合抱之木生于毫末,不要怕麻烦!!

下面我们详细说说流动性计算!

流动性基本介绍

uniswap流动性是指交易pool池中的代币,由流动性提供者存入到池中,我们之前说的的价格变化就是基于流动性数量来计算的。

流动性提供者可以随时增加或者删除流动性,也就是存入token对和取走token对,在取走token对的同时,取回交易手续费所积累的按比率分配的份额,也就是所谓的”流动性挖矿“收益。

添加流动性

以太坊是一个状态机模型(当然,其他区块链也都能看做状态机模型),uniswap本身也可以使用状态机来理解。

Uniswap用一个三元组(e, t, l)来代表交易平台的状态,其中e代表ETH的数量,t代表其他Token的数量,l代表当前流动性总量。添加流动性导致的状态转移方程如下:

其中

$\alpha =\Delta e/e$ , 流动性提供者即投资者可以存入 ∆e数量的 ETH 和 ∆t = t′ − t 的其他token,来挖取∆l = l′ − l 流动性。

这里e : t : l 比例是不变的,但是k = e × t是会增长的, 这一点在之前有所提及。

令 k' = e′ × t′, 则可以得到:

e : t : l = e′ : t′ : l′

k < k′

$\frac{k'}{k}=(\frac{l'}{l})^2 $

接下来看一下具体的算法:

其中,

t'', l''计算中,采用了向下取整,考虑到具体计算过程中精度的因素,尤其以太坊虚机整数计算的问题。

移除流动性

流动性提供者可以收回已经存入的ETH和token,全部或者部分都可以。

状态方程如下:

其中,

$\alpha =\Delta l/l$, 表示流动性提供者销毁∆l的流动性,得到∆e = e − e′ 个ETH和∆t = t − t′ token

对于k = e × t,k′ = e′ × t′ 可以得到:

e : t : l = e′ : t′ : l′

k > k′

$\frac{k'}{k}=(\frac{l'}{l})^2 $

移除流动性具体算法如下:

其中, t'', l''计算采用了向上取整。

还有一点需要指出的是, 添加和移除流动性结合起来的状态变化,

必须满足:

$e_0

$t_0

$l_0

这样可以保证流动性提供者即投资者不能通过整数运算舍入误差获取’免费‘的收益。

小结

本文详细地解释了添加、移除流动性对unsiwap状态机状态的变化和具体的算法。总体上,简单不失优雅,

下一节继续分析uniswap中常用的方法并作为总结,结束uniswap核心算法这一系列。

欢迎关注公众号:blocksight

学分: 184

分类: 科普与研究

标签:

区块链中的数学 

Uniswap 

点赞 1

收藏 1

分享

Twitter分享

微信扫码分享

本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

你可能感兴趣的文章

UniswapV3 部署 - - Foundry Edition

233 浏览

uniswap v2

313 浏览

Uniswap v3 数学洞察系列翻译 —— 第六部分 共 6 部分

592 浏览

Uniswap v3 数学洞察系列翻译 —— 第五部分 共 6 部分

529 浏览

Uniswap v3 数学洞察系列翻译 —— 第四部分 共 6 部分

528 浏览

Uniswap v3 数学洞察系列翻译 —— 第三部分 共 6 部分

533 浏览

相关问题

有没有已经部署的合约去查询Uniswap V3 NFT仓位的价值

1 回答

一般在编写套利合约中通过什么能直接读取给定交易对uniswap v2中的价格?

4 回答

uniswap 多跳路由寻找相关

1 回答

Uniswap中的LP token的数值是如何计算出来的(需要详细计算过程)

2 回答

如何获取 Uniswap 代币价格,v2 v3 是否不同

1 回答

复制以太坊钱包地址在 Uniswap 上发生交易的机器人

2 回答

1 条评论

请先 登录 后评论

blocksight

关注

贡献值: 924

学分: 2253

江湖只有他的大名,没有他的介绍。

文章目录

关于

关于我们

社区公约

学分规则

Github

伙伴们

DeCert

ChainTool

GCC

合作

广告投放

发布课程

联系我们

友情链接

关注社区

Discord

Twitter

Youtube

B 站

公众号

关注不错过动态

微信群

加入技术圈子

©2024 登链社区 版权所有 |

Powered By Tipask3.5|

粤公网安备 44049102496617号

粤ICP备17140514号

粤B2-20230927

增值电信业务经营许可证

×

发送私信

请将文档链接发给晓娜,我们会尽快安排上架,感谢您的推荐!

发给:

内容:

取消

发送

×

举报此文章

垃圾广告信息:

广告、推广、测试等内容

违规内容:

色情、暴力、血腥、敏感信息等内容

不友善内容:

人身攻击、挑衅辱骂、恶意行为

其他原因:

请补充说明

举报原因:

取消

举报

×

如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!

新手教程科普,手把手教你在bitget walelt用Uniswap_流动性_交易所_价格

新手教程科普,手把手教你在bitget walelt用Uniswap_流动性_交易所_价格

新闻

体育

汽车

房产

旅游

教育

时尚

科技

财经

娱乐

更多

母婴

健康

历史

军事

美食

文化

星座

专题

游戏

搞笑

动漫

宠物

无障碍

关怀版

新手教程科普,手把手教你在bitget walelt用Uniswap

2024-03-13 22:12

来源:

棋局Blockchain

发布于:江苏省

原标题:新手教程科普,手把手教你在bitget walelt用Uniswap

什么是 Uniswap (UNI)?

Uniswap 是以太坊区块链上领先的去中心化交易所 (DEX),允许用户交换和交易各种加密货币。 Uniswap 于 2018 年 11 月推出,是以太坊最早的 DApp 之一。目前有四个版本;其中V1、V2、V3都有开源代码库。

与 Coinbase 或 Binance 等传统中心化交易所 (CEX) 不同,Uniswap 不受任何单一实体控制,也不充当金融中介。它由一个名为 Uniswap 基金会的非营利组织管理。与使用订单簿来匹配买家和卖家的 CEX 不同,Uniswap 使用“流动性池”,由向该池中的交易对贡献 ERC-20 通证的用户提供资金。在不同类型的 DEX 中,Uniswap 特指“恒定乘积自动做市商(CPAMM)”,这意味着 Uniswap 的定价由给定流动性池中通证数量的比例决定。随着通证从池中添加或删除,它们的数量比例会发生变化,因此它们的价格也会相应调整。流动性池越大,单笔交易对价格的影响越小。

Uniswap (UNI)近期价格飙升的原因是什么?

Uniswap (UNI) 通证价格自 2 月份以来上涨了 130%,并于 3 月 6 日短暂触及 17 美元,这是自 2022 年 1 月以来的首次。价格的大幅上涨主要是由于 Uniswap 基金会治理负责人 Erin Koen 提交的一项对 Uniswap 进行彻底改革的提案通过奖励质押和委托其通证的 UNI 通证持有者来建立治理系统。在 Koen 的提案中,他建议升级 Uniswap 的费用机制,以奖励活跃的 UNI 所有者协议费用,这些协议费用是在通证互换期间向交易者收取的,占交易金额的一小部分。根据 Token Terminal 2 月 25 日的数据,Uniswap 收到的年化协议费用超过 6.26 亿美元。据 Coindesk 称,如果社区投票获得批准,Koen 的提案可能会向 UNI 所有者总共支付 6200 万至 1.56 亿美元。这种潜在的治理变化显然会给 UNI 持有者带来经济利益,这可能会激发投资者的乐观情绪并推高 UNI 的价格。

还有哪些其他流行的去中心化交易所(DEX)?

l PancakeSwap (CAKE): PancakeSwap 建立在币安智能链之上,以其流动性挖矿和自动化做市商 (AMM) 功能而闻名。

l SushiSwap (SUSHI): SushiSwap 最初由 Uniswap 分叉,通过其原生通证 SUSHI 具有跨链交换、流媒体、流动性挖矿和社区治理等附加功能。

展开全文

l Curve(CRV): Curve建立在以太坊区块链之上,专注于稳定币交易,为交易者提供低滑点和高流动性。

l Balancer (BAL): Balancer 在以太坊区块链上运行,使用独特的流动性池机制,使用户能够创建具有多种资产和权重的可定制流动性池。

l Orca (ORCA): Orca 基于 Solana 区块链构建,专注于打造用户友好的交易体验,提供高级图表工具、流动性池和通证互换等功能。

Uniswap 的四种协议(V1-V4)有什么区别?

与之前的迭代相比,该协议的每个新版本都在安全性或功能方面做出了一些改进。 2018 年,Uniswap V1 仅限于支持 ETH 和 ERC-20 通证之间的交易对。两个 ERC-20 通证之间的交易需要多次互换。 2020 年,Uniswap V2 作为重大升级出现,允许直接交换任何 ERC-20 通证对。此次升级还引入了“Flash Swaps”,它可以实现无需抵押的临时通证借贷,以及使用“时间加权平均价格(TWAP)”改进的价格预言机。然后,在2021年5月,V3引入了“集中流动性”的创新概念,通过让流动性提供者(LP)能够灵活地指定他们想要分配流动性的价格范围来提高资本效率。另一个重大变化是 V3 中的 LP 收到代表其资金池头寸的 NFT,而不是“流动性通证”。最后,Uniswap V4 计划于 2024 年晚些时候发布,旨在通过添加“挂钩”来构建 V3,从而允许在流动性池中实施自定义逻辑。此外,V4 将转向“单例”合约模型,其中所有池都位于一个智能合约中,从而大大降低了部署成本。要了解有关即将推出的 Uniswap V4 的更多信息,您可以阅读此内容 白皮书由 Uniswap 首席执行官 Hayden Adams 撰写。

Uniswap (UNI) 的通证经济学是什么?

2020 年 9 月,Uniswap 协议铸造了 10 亿枚 UNI 通证,计划在 4 年内兑现。最初的通证分配设计为,60% 的通证保留给社区(15% 空投,43% 保留在财务部门),21.51% 奖励给团队,17.80% 分配给投资者,顾问收到剩余的占总供应量的0.69%。截至 2024 年 3 月上旬,96% 的 UNI 通证已解锁。归属完成后,Uniswap 将引入 2% 的永久年通胀率,这会激励积极参与该协议,并对被动的 UNI 持有者产生负面影响。

您可以用 UNI 通证做什么?

作为 Uniswap 的原生通证,UNI 具有三个主要功能:

l 治理:占 UNI 总供应量 1% 或以上的 UNI 持有者可以提交开发提案,所有 UNI 持有者都可以对这些提案进行投票,只要他们将其 UNI 通证委托给自己或某个地址。

l 质押/流动性提供:您可以将您的 UNI 通证质押到 Uniswap 的流动性池中,以赚取平台上产生的交易费用的一定比例,从而有效地使您成为“流动性提供者(LP)”。当您向池提供流动性时,您还会收到代表您在该池流动性中所占份额的“流动性通证”。

l 投资: UNI是一种可投资、可交易的加密货币,24小时交易量经常达到400+百万美元。由于 UNI 通证代表了最大和最受欢迎的加密项目之一,因此它们的价格可能会升值,并被证明是一个宝贵的投资机会。但是,在做出任何投资决定之前,请自行研究。

哪种钱包最适合 Uniswap (UNI)?

UNI 的理想钱包取决于个人喜好,同时考虑安全性、用户友好性、帐户恢复选项和多通证支持等因素。尽管如此,无论您使用 UNI 的目的是持有、交易还是质押,Bitget Wallet 都是您管理 Uniswap (UNI) 等以太坊加密资产的理想钱包选择。

由于Bitget钱包对100多个主网的强大支持,可以轻松实现跨链交互,让用户轻松进行多币种交易。主网的广泛支持需要兼容多种加密货币,这使得Biget Wallet成为一站式资产管理工具。这种灵活性不仅简化了您的交易流程,还为寻求最大化投资机会的用户提供了可访问性和便利性。此外,通过 Bitget Wallet,您可以立即无缝访问丰富的以太坊 DApp 生态系统,从而增强您的加密体验。

Bitget 钱包脱颖而出,成为 iOS、Android 和 Google Chrome 扩展程序用户的最佳 UNI 钱包。加入全球超过 1500 万信任 Bitget Wallet 的用户,准备好解锁安全且用户友好的加密管理的全新体验!

教程:在 Bitget 钱包上与 Uniswap 交互

如何创建 Uniswap (UNI) 钱包?

1.访问以下地址下载并安装 Bitget 钱包 Bitget Wallet 官方网站(web3.bitget.com/zh)或在您设备的应用商店中找到它。

2.安装后,打开应用程序并选择“创建钱包”。

3.创建后,导航到“钱包”页面并从右上角的主网列表中添加“以太坊”。

4.您已成功创建以太坊 Web3 钱包!现在,您可以通过“通证管理”将ETH、LDO、UNI等以太坊上的通证添加到您的钱包中。

如何在Bitget钱包上购买Uniswap(UNI)?

Bitget Wallet 提供场外交易 (OTC) 服务,您可以使用法定货币购买 UNI、ETH、USDT 和 USDC 等加密货币。该服务接受多种支付方式,包括 Visa、Mastercard、Apple Pay、Google Pay 和美元信用卡。

1. 打开Bitget钱包,进入“钱包”页面。在这里,选择“购买”选项。

2. 选择您要使用的法定货币,然后从下拉菜单中选择“UNI”。

3. 输入您要购买的金额,确认购买,然后选择付款方式。

4. 交易完成后,购买的UNI将出现在您的Bitget钱包首页。

如何将 Uniswap (UNI) 通证存入您的 Bitget 钱包?

要将 Uniswap (UNI) 通证从其他加密钱包或交易所存入您的以太坊钱包,只需:

1.进入Bitget钱包首页,选择“接收”。

2.选择以太坊网络并找到“UNI”。

3.复制您的 meme 币钱包地址,或使用二维码更轻松地转账。

4.从您选择的交易所或钱包中,开始提款或转账流程,然后粘贴您的钱包地址以存入资金。

请记住,在完成存款过程之前,仔细检查地址并确认网络兼容性至关重要。

如何从 Bitget 钱包中提取 Uniswap (UNI) 通证?

要将 UNI 从您的 Uniswap (UNI) 钱包转移到其他加密货币钱包或交易所,只需:

1.进入Bitget钱包首页,选择“发送”。

2.选择ETH网络并找到UNI。

3.输入收款人地址和金额,并确认交易。

请记住,在完成传输过程之前,仔细检查地址并确认网络兼容性至关重要。

如何保护您的 Uniswap (UNI) 钱包?

当 DeFi 用户浏览多个链和协议时,钱包安全始终是他们最关心的问题。以下是确保 Uniswap (UNI) 钱包安全的一些提示:

l 请警惕任何要求您提供钱包信息的意外电子邮件或消息。这些很可能是试图窃取您的资产的骗局。

l 在点击链接或共享敏感信息之前,请务必仔细检查发件人地址是否合法。

l 避免通过公共 WiFi 访问您的钱包,因为流量可能会被拦截。

l 启用任何可用的安全功能(例如 2FA 或多重签名)以增强保护。

l 请记住,像 Bitget Wallet 这样信誉良好的钱包绝不会主动联系您索要私钥或助记词。返回搜狐,查看更多

责任编辑:

平台声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。

阅读 ()

推荐阅读