什么是自动化做市商AMM,以Uniswap为例

释放双眼,带上耳机,听听看~!
随着 y 的增加,x 不断减少并且变化率越来越小。 在Uniswap上提供流动性 1、流动性提供商收益:在Uniswap上,每笔交易将会收取千三的手续费分给流动性提供商。 2、多Token敞口:由于恒定乘积x*y=k,如果只存入某个Token,由于k保持不变,存入Token的相对价格会急剧下降,导致存入即被套利。所以要在Uniswap上成为流动性提供商,必须存入与流动池比例等比例的x和y。 3、第三方平台套利:在 Uniswap 系统中依然可以由于不同交易所价差,产生搬砖套利。通过搬砖套利,恒定乘积产生的兑换汇率会趋近于市场真实汇率。 可能产生的问题 1、无常损失:如果流动池中某个Token暴涨或者暴跌,这对于流动性提供商来说会产生“无常损失”,比如在暴涨过程中,对流动性提供商而言,相当于以更低的价格卖出了暴涨的Token,与订单簿交易所提供流动性可能会产生的损失类似,这是一种资产总值没有跑赢不提供流动性时的相对损失,属于机会成本。 2、滑点:在Uniswap交易还有一个概念叫滑点,也就是每次交易,实际上会导致的价格上涨或者下跌的百分比。类似于订单簿交易所的大单买入卖出时,产生的价格较大波动。 可以通过计算得到在流动池为100ETH和等值BU流动性的时候(初始比例1:10000),不断用ETH兑换BU时产生的滑点:

AMM

AMM(Automated Market Maker):即自动化做市商。我们常认知的交易方式为订单簿交易模式,即通过订单簿挂单或吃单由交易所撮合成交。曾经的去中心化交易所也都是通过挂单方式在链上撮合成交,或者链下挂单撮合链上成交。

而AMM没有订单簿,没有挂单吃单,AMM的买卖双方都和链上流动池在进行交互交易,而流动性提供者,基于其在流动池的占比获取交易手续费(通过提供流动性后给予的LP Token占比来确认)。首先出现的AMM类型叫恒定乘积做市商(CPMM),最广为人知的就是Uniswap,下文通过Uniswap更加清晰的介绍AMM。

恒定乘积做市商

Uniswap 和我们以前理解的订单簿交易所不同,没有订单簿,没有挂单吃单,而是使用了一种叫恒定乘积的方案。没有订单簿,怎么定价?Uniswap 的核心思想是一个简单的公式:x * y = k

其中 x 和 y 分别代表两种资产的数量,k 是两种资产数量的乘积。k在每次交易后可能略微变大,k也会在添加或移除流动池后按比例扩大或缩小,但我们可以在单笔交易中将k的变化忽略不计,认定其为恒定值。

我们假设乘积 k 是一个固定不变的常量, x 是 BU 在流动池的储量,数量为 10000,y 是 ETH 在流动池的储量,数量为 1。那么他们数量的乘积k=10000。此时通过Uniswap用1.5ETH兑换BU会产生以下过程(不考虑千三的手续费)。

兑换前

流动池BU的数量:10000
流动池ETH的数量:1
k=10000

中间态

流动池BU的数量:10000
流动池ETH的数量:2.5
k保持不变:10000

结果

由于k保持不变,根据 x(BU)*2.5(ETH)=10000 解得,x=4000。
即为保持k不变,流动池BU的数量将减少到4000枚。
换句话说就是用1.5ETH实际上兑换到了6000枚BU。
此时,
流动池BU数量:4000
流动池ETH数量:2.5
k保持不变=10000

现在ETH与BU的兑换比例从原来的1:10000变成了1:1600。

通过这种简单计算方法,与Uniswap实际比例变化相比,误差不会超过万分之五。

其实我们观察Uniswap的恒定乘积公式 x*y=k
变形后的y=k/x就是我们初中所学的反比例函数。
随着 x 的增加,y 不断减少并且变化率越来越小。

随着 y 的增加,x 不断减少并且变化率越来越小。

什么是自动化做市商AMM,以Uniswap为例

在Uniswap上提供流动性

1、流动性提供商收益:在Uniswap上,每笔交易将会收取千三的手续费分给流动性提供商。

2、多Token敞口:由于恒定乘积x*y=k,如果只存入某个Token,由于k保持不变,存入Token的相对价格会急剧下降,导致存入即被套利。所以要在Uniswap上成为流动性提供商,必须存入与流动池比例等比例的x和y。

3、第三方平台套利:在 Uniswap 系统中依然可以由于不同交易所价差,产生搬砖套利。通过搬砖套利,恒定乘积产生的兑换汇率会趋近于市场真实汇率。

可能产生的问题

1、无常损失:如果流动池中某个Token暴涨或者暴跌,这对于流动性提供商来说会产生“无常损失”,比如在暴涨过程中,对流动性提供商而言,相当于以更低的价格卖出了暴涨的Token,与订单簿交易所提供流动性可能会产生的损失类似,这是一种资产总值没有跑赢不提供流动性时的相对损失,属于机会成本。

2、滑点:在Uniswap交易还有一个概念叫滑点,也就是每次交易,实际上会导致的价格上涨或者下跌的百分比。类似于订单簿交易所的大单买入卖出时,产生的价格较大波动。

可以通过计算得到在流动池为100ETH和等值BU流动性的时候(初始比例1:10000),不断用ETH兑换BU时产生的滑点:

什么是自动化做市商AMM,以Uniswap为例

从上表可以看出,在这个流动池中,大约5ETH的交易量会产生大约9%的滑点。滑点过高,其实是一种低资本效率的体现,因为需要更多的锁定资产去减少滑点。

3、高额矿工费:每笔交易包括提供与移除流动性,都需要支付链上交易矿工费,该矿工费超过普通转账,目前约为0.01-0.02ETH。为普罗大众所不能接受,极大地限制了交易吞吐量。

4、交易时延:由于需要等待区块打包,可能因为交易时延导致在巨大价格波动时成交,应对市场变化的反应被拉慢。
5、仍被大户把控:虽然人人可以提供流动性,但是AMM仍被大户把控。
6、假Token问题:需要通过合约地址来确认是否为真Token。

此外,其他小型的、未通过合约审计的项目可能存在智能合约的安全性问题。合约的授权有可能让黑客利用漏洞调动你钱包里的所有的资产、合约漏洞也可能会导致只能转入而不能转出Token。

其他会用到第三方预言机的项目可能由于预言机数据安全问题,产生的风险。

一些解决方案

恒定乘积方案简洁明了易于理解,由此收获了大量的用户,但存在滑点过高、无常损失过高、需要同时存入两种Token等问题,就此,其他项目进行了广泛探索,如引入恒定平均值做市商(CMMM)、高级混合恒定函数做市商(CFMM)减少交易滑点,如引入第三方预言机使得不用同时存入两种Token并且减少无常损失。

我们给出两个混合CFMM的公式及其图像

1、Curve 的核心公式及图像。

什么是自动化做市商AMM,以Uniswap为例

我们可以从图像中看到其相较于Uniswap,会产生更小的滑点。

2、MOV的核心公式及图像

什么是自动化做市商AMM,以Uniswap为例

蓝色表示恒定乘积曲面,绿色表示恒定之和曲面,中间是核心公式在三维空间下的形态

各位可以尝试用这些公式计算一下。

各个项目还进行了如下可能的尝试:多资产的支持、交易手续费自定义、预言机和动态权重调整、采用主动基金型AMM等,这里不再深入讨论。

在实际使用Uniswap过程中,会有交易时间限制,交易滑点限制,价格波动限制,实际上是为了保障交易者避免由于过大价格波动导致的损失。当然,可以通过调整设置或者开启专家模式避开Uniswap官方设置的保护措施。

流动性挖矿

流动性挖矿,即通过为DeFi应用提供流动性而获取收益。流动性挖矿可以是存入甚至借出特定的Token资产而获取某些Token收益,如治理Token。也可以是为去中心化交易所如Uniswap提供流动性而获取交易费收益,即AMM属于流动性挖矿。

在更大的体系下,用户可以跨协议套利,如在A协议上借贷为B协议提供流动性,如果在B协议的收益超过在A协议上的借贷利息,就存在套利空间。随着越来越多的协议提供流动性挖矿,或者存在利率差,资金就会流向收益和风险综合最优的地方,直到拉平。

下面这两个DeFi常用缩略词也是了解AMM或流动性挖矿所必须知道的:

TVL(Total Value Locked):总锁仓量,为防止DeFi金融套娃,有时会计算排除掉 DeFi 生态内生资产后的真实锁仓量。

APY(Annual percentage yields):可以理解为计算了复利的年化收益率。与之对比的是不计算复利的年化收益率的APR(annual percentage rates),即名义年利率。

AMM在近几个月已经取得了指数型的增长,AMM已经是DeFi概念的重头戏,而有关减小滑点、减少无常损失等方面的讨论和创新不会停止。

郑重声明:本站主要用于区块链行业信息资讯传播,促进行业健康发展,部分信息转载自互联网,文章版权归原作者所有 如作者信息标记有误 请第一时间联系我们修改或删除 谢谢
关键词:
自动化做市商  Uniswap  

生成海报

给TA买糖
共{{data.count}}人
人已赞赏
百科

什么是预言机(Oracle)?

2020-10-10 6:47:44

百科

详解常用哈希函数(Keccak算法)

2020-10-10 8:47:59

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
免责声明:本站所有资讯仅代表作者个人观点,与平台立场无关,且不构成任何投资理财建议。
This is default text for notification bar