Uniswap V2里的手续费换算

    在Uniswap V2中,默认是收取0.3%的手续费,这个手续费是以存入资源池的ΔX为基数计算的,即先扣除0.3%*ΔX个Token X。
    先定义如下几个常用的换算公式,如图(1)所示。

常用的换算公式

图(1) Uniswap V2里常用的计算公式

图(2) 证明与推论

当协议抽成为Φ=1/6时

    由Uniswap白皮书可知,手续费是从0.3%之中,在抽取ϕ比例给开发团队作为协议费,剩下的按比例返还给LP。注意,返还的不是实际参与交易的Token X和Token Y,而是LP Token(即Uniswap的平台币UNI),而且Uniswap不是将UNI马上返还,而是当LP用户自己移除流动性或者直接提现UNI时,才返还UNI给LP用户。

    案例1:HelloSwap是一个独立的Uniswap交易所,它与其他交易所没有互联,该交易所的手续费比例为0.3.%,返还0.25%给LP,剩余0.05%给开发团队即协议抽成ϕ=1/6,有个资源池为LAM-MUT代币对,假设该资源池的持有者只有一个用户名称为Tom,如图(3)所示,即Tom占有LAM-MUT资源池的比例为100%,他初始添加流动性的比例为LAM:MUT = 4000:1000,分2次通过售出100LAM来买入MUT,请问Tom移除LAM-MUT 100%的流动性时,返回给Tom的LP手续费(UNI的个数)是多少?


图(3) 当Φ=1/6时的LP手续费

当协议抽成为Φ=1/2时

    案例2:ByeSwap是一个独立的Uniswap交易所,它与其他交易所没有互联,该交易所的手续费比例为0.3.%,返还0.15%给LP,剩余0.15%给开发团队即协议抽成ϕ=1/2,有个资源池为LAM-MUT代币对,假设该资源池的持有者只有一个用户名称为Jerry,如图(4)所示,即Jerry占有LAM-MUT资源池的比例为100%,他初始添加流动性的比例为LAM:MUT = 4000:1000,分2次通过售出100LAM来买入MUT,请问Jerry移除LAM-MUT 100%的流动性时,返回给Jerry的LP手续费(UNI的个数)是多少?



图(4) 当Φ=1/2时的LP手续费

参考文献

1 Uniswap V2白皮书

https://uniswap.org/whitepaper.pdf

2 Uniswap 计算公式

https://github.com/runtimeverification/verified-smart-contracts/blob/uniswap/uniswap/x-y-k.pdf

猜你喜欢

转载自blog.csdn.net/sanqima/article/details/109667469