宇宙链 宇宙链
Ctrl+D收藏宇宙链
首页 > 比特币 > 正文

Uni V3的数学原理

作者:

时间:1900/1/1 0:00:00

前言——UniswapV3放出了很多feature,然而其最为本质的迭代依然是对AMM数学曲线的再思考。在过去的两年中,我们也躬身入局AMM领域,认为AMM最基本的曲线形态已经定型,后续的创新应该会在AMM基本曲线形态的基础上实现“策略化”,于是我们创造了MOV超导V2。而如今我们看到了V3,突然有一种“久别重逢”的感觉,在寻找这种感觉之余,我们也希望为大家呈现AMM最为深刻的思考路程。因为AMM的时代将会比想象得更为恢弘壮阔。

让我们直切正题,UniswapV3最耀眼的创新——在AMM上实现集中流动性。

V3给出了一个虚拟储备金的概念,举例讲解:

在传统V2中,Alice一次性将500,000DAI和333.33ETH注入储备池,总价值$1m,提供全区间(0,\infty)的流动性,但实际上ETH的价格波动范围在很长一段时间内是有局部范围的,这种为全区间无私提供流动性的行为大大浪费了资本利用效率。

Uniswap在Avalanche上部署Uniswap V3提案投票已通过,预计5周内部署:金色财经报道,Uniswap 关于在 Avalanche 上部署 Uniswap V3链上投票现已通过,赞成率为 95.08%。该提案考虑到 Uniswap V3 核心代码版权商业保护将于 4 月 1 日到期,届时将会拥有诸多项目复制 Uniswap V3 并分叉代码用于商业目的的合法权利。因此,Uniswap V3 决定在大量模仿产品出现前,提前在 Avalanche 上部署,以确保 Uniswap 抢占 Avalanche DEX 市场,并与 Avalanche 上 DEX Trader Joe 竞争。根据计划,合约部署预计需 5 周时间完成。[2023/3/17 13:11:04]

所谓的集中流动性便是让LP自主选择波动范围,只为该范围提供局部流动性,例如Bob认为未来一段时间内ETH的价格区间在(1000,2250),并且如果未来真的是在这个区间波动,Bob希望自己获得的收益能够跟百万富豪Alice一样多,于是Bob一开始只需要投入91,751DAI和61.17ETH,总价值$183,500,远远小于Alice实际投入的资金。我们对照下图来解释其中的道理。

Uniswap创始人发起关于Uniswap是否应支持NFT交易的推特投票:9月16日消息,Uniswap创始人Hayden Adams转发关于建议Uniswap建立NFT交易所的推文,提问称“Uniswap Labs是否应该在NFT领域做更多尝试呢”,并发起推特投票。截至目前,赞成票数占56.4%。[2021/9/16 23:29:12]

即Bob所获得的虚拟曲线几乎跟Alice一样。

上述计算过程是一种反证法,实际上用户Bob会向系统算法提出自己的需求输入,包括预测价格区间范围、当前价格点、最终想要获得的一个virtualreserves规模。有了虚拟曲线表达式的确定,可以轻松算出a、b、c三个确定的点坐标,进而便算出?x_{real}=61.17以及y_{real}=91751。

同时,也可以看到,一旦未来价格越出了区间,Bob其中一种资产将彻底消失。

Uniswap的总锁仓量环比下降7.65%:据欧科云链OKLink数据显示,截至今日18时,当前以太坊上DeFi协议总锁仓量约合158.1亿美元。其中锁仓量排名前三的分别是Maker 24.4亿美元(+2.66%),WBTC 22.6亿美元(+8.95%)以及Uniswap V2 16.9亿美元(-7.65%)。[2020/11/18 21:14:04]

全局状态中有feeGrowthGlobal0(f_{g},0)和feeGrowthGlobal1(f_{g},1)—f_{g},用来从全局角度统计总的手续费收益。例如,当在一个tick内发生了一笔交易,系统会计算出该笔交易产生的手续费:

f_{a}变量是对所有高于itick的区间的fee统计,f_{b}是对所有低于itick的区间的fee统计,因此在上述总公式中,我们从全局总累计手续费f_{g}中减去所有低于下界i_{l}的累计手续费,再减去所有高于上界i_{u}的累计手续费,便是(i_{l},i_{u})?之间的累计手续费。

BKEX Global将于今日11:00上线UNI:据BKEX Global公告,BKEX Global将于2020年9月17日11:00(UTC+8)上线UNI(Uniswap),开放交易对:UNI/USDT。 Uniswap是一种基于以太坊的协议,旨在促进ETH和ERC20 代币数字资产之间的自动兑换交易,在以太坊上自动提供流动性。Uniswap完全部署在链上,任何个人用户,只要安装了去中心化钱包软件都可以使用这个协议。Uniswap试图利用去中心化协议来让数字资产交易过程中彻底实现去中介化。[2020/9/17]

f_{o}可以理解为一个计算单元,用于累积截止到i?tick的手续费,在它的初始化过程中,我们约定如下:

再来看f_{a}的计算,分成了两段,可以理解为——

如果当前tick等于i或者高于i,此时从全局总手续费f_{g}中减去“累积到itick”的手续费f_{o}(i),剩下的便是对所有高于itick的区间的fee统计;

动态 | BitUniverse:Coinbase等交易所持有BTC很大程度是旗下客户所持有:BitUniverse发布的新数据显示,加密货币交易所Coinbase持有大约966,230个BTC,价值约70亿美元,位于全球第一。第二的是BitMEX,持有大约265,540个BTC,价值约为19亿美元;排名第三的是Bitstamp,持有225,660 个BTC,价值约为16亿美元。这些比特币在很大程度上是交易所旗下客户持有,而不仅仅是公司的财富。(DailyHODL)[2019/12/5]

但如果当前tick还未抵达i,此时根据对f_{o}的初始化定义为0,则所有高于itick的区间的fee统计尚未产生,为0。

同样对于f_{b}——

如果当前tick抵达或者超过了i,f_{o}(i)表示累计到i的手续费,也即对所有低于itick的区间的fee统计;

如果当前tick还未抵达i,对所有低于itick的区间的fee统计值即为当前的全局变量f_{g}。

通俗来概括,系统算法要统计某一个range内累计的手续费,

如果当前tick已经处于range内部,即i_{l}\leqi_{c}<i_{u},只需要从全局手续费f_{g}减去所有低于i_{l}组成的range累计的手续费;

如果当前tick不处于range内部,且低于下界i_{l},说明尚未在(i_{l},i_{u})区间内产生交易,也就未产生手续费,因此该range内累计量为0;

如果当前tick不处于range内部,且高于上界i_{u},需要从全局总量中分别去除“两头”各自的累计量,即从全局f_{g}中减去所有低于i_{l}区间累计量,再减去“从i_{u}到当前tick区间累计量”。

UniV3计算手续费的过程是一种从微观走向宏观的思想,它将空间划分成离散的,每一个时间刻度只会在一个离散空间上产生交易,从而产生手续费,每一个微观tick都在各自记录着自己从最低tick到自身这段区间内的累计手续费总和,然后供上述公式不断调用,以计算各种宏观结果。

UniV3已经改变了传统AMM对LP行为的设定,也不再基于全局流动性和份额来为每一个LP计算手续费收益。对V3来讲,它只关注在每一个tick里存在多少“虚拟”流动性,以及这些虚拟流动性产生了多少手续费,算得单位虚拟流动性对应的手续费值;在这个时空之下,我们再把视角切到具体每一个LP上,对于任何LP,都会存在一个“开仓”的区间设定,他在自己设定的区间提供了虚拟流动性,可能是一个tick,也可能是连续多个tick,从最简单的“一个tick”角度解释,系统会记得同一时空下每一个LP在此tick注入的虚拟流动性值,并为他们确定出一个比例,以此分得该tick内所有手续费累计。

在实际情况中,LP们还会存在复杂的行为,比如注入/退出的时间纷杂、选择的range/tick纷杂。但UniV3的大道至简之处正是利用全局计算来屏蔽掉单个LP视角,只关心ticks视角和Position视角。在确定好上述所述的一系列全局状态变量的定义后,认真记录好每一笔swap交易在ticks中发生的情况,同时只记录每个tick内虚拟流动性的大小,以此为根本去提供swap交易公式以及swap后手续费如何分配给参与该tick的所有LP们。LP的复杂行为体现在空间的不连续性和时间的不统一性两方面,对于时间不统一性,UniV3还会引入Position这一级别的全局变量为每一个身份记录下其对range/tick加入/退出时手续费的统计,确保后来的LP不会参与到前序LP们已经累计的收益分配。

如果总结来讲,tick-level是对空间上发生的统计,确保起点一致的LP们fee分配,而Position-level是对时间上发生的统计,确保不同起点的LP们fee累计起点不一样。建议实现者深入V3代码,才能真正获得安全计算法。

最后,UniV3过于复杂,但大道至简,即便去模仿,模仿者依然需要下功夫深刻了解其“微积分”思维。这篇文章只选择了fee这一个角度呈现UniV3的“数学原理”,也是其实现集中流动性的核心逻辑。而在数学之外,我们有更多惊喜的“哲学意义”发现与大家分享,例如LPtoken的进化、NFT其实并不只属于艺术领域、V3会存在一个策略博弈、V3对基金池/合成资产的启示等等,当然也包括与MOV超导V2的“心有灵犀”——AMM的本质是连续性的无限网格,UniV3是在这个无限网格基础之上再实现了微观无限网格,是“无数网格机器人的叠加”,MOV超导V2则是在无限网格基础之上进行了更为宏观的无限网格,是超级网格。请期待下一篇《UniV3的自然哲学》。

作者:比原链研究院

标签:UNITICICKSWAPuni币发行价STIC币mickeychainswap币交易所

比特币热门资讯
Delta.Finance「虚假交易量」被拉黑引发讨论:Uniswap做错了吗?

3月30日,在助推Uniswap创下历史新高的日交易量(尽管短暂且可疑)后,Delta.Finance被Uniswap官方以「非真实交易」的理由屏蔽了,但事情还没有结束.

1900/1/1 0:00:00
如何向D网账户充值数字货币?

一、视频教学 点此观看-APP充币视频教学 二、文字版教学: 第一步:登陆D网APP,并点击右下方的“资产” -》点击“充值” -》选择您想充值的币种 第二步:复制钱包地址/保存二维码第三步:切换到您第三方平台提币的界面粘贴D网充币地.

1900/1/1 0:00:00
币安将上线 OGN 1-25倍 U本位永续合约

亲爱的用户:币安将于香港时间2021年04月01日15:00上线OGNUSDT1-25倍U本位永续合约。注意:OGNU本位合约是正向合约,即稳定币合约,采用稳定币作为保证金.

1900/1/1 0:00:00
imToken 完成 3000 万美元 B 轮投资,启明创投领投

链闻消息,去中心化钱包imToken宣布完成由启明创投领投的3000万美元B轮投资,A轮投资者IDGCapital和新投资者BreyerCapital、HashKey、SignumCapital、隆领投资、SNZ以及复星集团联合创始人.

1900/1/1 0:00:00
ZBG Token(ZT)更新ERC20合约的公告

公告编号2021033103各位关心ZBG.io的投资者们和项目方:为拓展ZBG平台通证更多的生态应用场景,ZT近期已跨链接入HECO生态链,并同步更新ERC20合约.

1900/1/1 0:00:00
库币将支持Pundi X (NPXS)总量缩减的计划,并启动 NPXS升级换币成 PUNDIX的工作

亲爱的库币用户, 库币将支持PundiX(NPXS)总量缩减的计划,并即将启动PundiX(NPXS)升级换币成PUNDIX的工作.

1900/1/1 0:00:00