科普:CFMM(恒定函数做市商)的演变

在传统金融市场上,每种证券都需要一个买方和卖方市场才能有效地进行交易。如今,股票交易的速度和简便性被视为理所当然,尤其是在新引入的Robinhood投资模式下。在这个新时代,做市商扮演着举足轻重的角色,为市场参与者创造了无缝的交易体验。在过去的一年里,做市商这个角色以名为自动化做市商(AMMs)的算法代理的形式移植到加密生态系统中。

AMMs执行的功能与传统做市商相同,促进两种数字资产之间的交易。然而,在智能合约里不是由大银行或交易公司来做市,而是通过算法做市。与传统的做市商依靠大量资源提供严格的买卖价差不同,AMMs重新定义了提供流动性的方式,并应用数学公式来决定资产交易的价格。

恒定函数做市商(CFMM)是最流行的AMM系列。当交易者希望将代币A换成代币B时,这种AMM会使用恒定函数作为其定价机制。在这种情况下,术语 "恒定函数 "指的是资产储备的乘积必须在发生任意交易时都保持不变。

自2017年以来,针对不同使用案例的优化,一些DEX已经把这个恒定函数进行了修改。下面将介绍一些最流行的DEX,并详细介绍其采用的恒定函数。

Uniswap

Uniswap是第一个让使用恒定函数(来交换两种资产)变得流行的DEX。它使用了一种被称为 "恒定乘积AMM "的AMM变体,它强制要求两种资产储备量的乘积必须始终保持不变。

在这个等式中,x和y代表流动性池中两种资产的单位数量。举例说明,假设ETH/DAI池包含100 ETH(x的值)和10,000 DAI(y的值)。在这个例子中,Uniswap将这两个数量相乘,得到k的值为1,000,000。现在的目标是保持k值恒定,而不考虑对流动性池的交易量。做到这一点的唯一方法是,x和y的数量反向变化。换句话说,当x的数量增加时(交易者将ETH加入池中),y的数量必须减少(交易者将DAI从池中取出)。最终,任何给定交易所的报价都是常量乘积公式和池中代币比例的函数。

美国累计新冠确诊病例已超2600万例:美国约翰斯·霍普金斯大学当地时间30日发布的最新统计数据显示,美国累计新冠确诊病例已超过2600万例。[2021/1/31 18:29:52]

需要注意的是,x和y之间的关系不是线性的。用10个ETH兑换1000个DAI不等于用20个ETH兑换2000个DAI。相反,这种关系是渐近式的。这意味着随着花费的代币数量增加,收到的代币数量会变小。

恒定乘积函数的特性对AMMs很有用,因为它确保了当任何一种资产的价格接近无穷大时,总会有流动性。

Balancer

Balancer的AMM一般化了Uniswap的恒定乘积功能,创造了一个被称为 "恒定平均AMM"的变体。这个AMM的核心是价值函数,它强制规定资产池中的资产余额的权重次幂的乘积应始终保持不变。

在这个公式中,t代表池中的资产的种类数,Bt是资产数量,Wt是资产权重。虽然与Uniswap简单易懂的常量乘积函数相比,数学公式看起来要复杂得多,但其实很容易理解。例如,假设用户创建了一个Balancer Pool,其中包含三种资产:100 ETH、100 BTC和100,000 DAI,每种资产的权重为33.3%。Balancer对这些数值进行如下处理:

类似于Uniswap,目标是在保持资产权重不变的情况下,只改变资产余额,从而保持k不变。在3种资产Balancer Pool的情况下,交易可以发生在三个资产中的任意两个之间。用户可以用ETH交换DAI,用ETH交换BTC,或者用DAI交换ETH。通过保持k的值不变,可以在三种资产之间生成一个价值面。

SENC突破0.003美元 最高涨幅73.68%:据Gate.io行情显示,交易对SENC/ USDT币价持续上涨,今日突破0.003美元,截至今日11:00,24H涨幅最高达73.68%,当前涨幅19.8%,24H最高价0.003399美元,当前报价0.002408美元。据悉,Gate.io 理财宝”已于2020年8月29日14:00开启《SENC持仓计划40天理财产品(第二期)》认购。[2020/9/1]

有趣的是,这个曲面与Uniswap的常量乘积函数并没有太大区别。另一种思考方式是将图1中的恒积函数,额外增加一个代表池中第三个代币的轴。通过改变图2的角度,两个函数之间的相似性变得更加明显。

由于Balancer池被设计成有2到8种资产,任意两个代币之间的交易价格报价就比较复杂了。池中的每一对代币都有一个价格,这个价格取决于该特定代币的余额B和权重W。从形式上看,交易执行的价格是按照代币余额与代币权重的比值来计算的。

在上面的公式中,代币A代表被卖出的代币(进入池子) 而代币B是被买入的代币(离开池子)。如果池子的持有者不改变资产储备,很容易看出价格的变化完全基于交易,因为资产权重必须始终保持不变。这种机制与图2所示的恒定面相结合,可以保证买入资产的价格上升,而卖出资产的价格下降。在与Uniswap相同的情况下,套利机会保证了Balancer Pools提供的价格与市场其他部分同步变动。

Curve

Curve是一个交易所流动性池,预期价格稳定的资产之间可以在该池里进行高效交易(如稳定币或封装的比特币(wrapped bitcoin))。Uniswap和Balancer主要是针对波动和价格不稳定的代币的交易。然而,当处理那些想要互相保持稳定的资产之间的交易时,低价格滑点是最重要的。之前迭代的各种AMMs固有曲率就有问题了,因为交易规模越大,滑点就越大。

解决价格滑点问题的一个方法是,使用常数和函数作为AMM的内部交易机制。当使用两种资产进行操作时,恒和(constant sum)做市商强制规定资产数量之和必须保持不变,并遵循以下函数:

如图,一个双资产恒和做市商是一条简单的直线。

虽然这个函数的简单性实现了低滑点,但它缺乏恒定产品做市商的关键属性,即当任何一种资产从池子中流出时,池子总还会有流动性,而另一种资产的数量趋于无穷大。

为了解决这些问题,Curve通过结合恒定总和和恒定乘积函数创造了一种混合AMM:在曲线的平衡点附近创建一条相对平坦的曲线,类似于恒定总和函数,以保持价格相对稳定,同时使两端更加倾斜,类似于恒定乘积函数,因此在曲线的每个点都有流动性。在双资产的情况下(x和y),最终的结果是下面的复杂函数。

除了复杂的数学之外,请注意两个常数函数是如何嵌入方程中的。左边是常数和,右手边是常数积。此外,公式中还包含了一些其他的项来达到预期的目的。在公式中,n代表资产数量(在本例中n=2),A是一个 "放大系数 "参数,它决定了函数与常积函数的相似程度。A的值越低,Curve的函数就越接近Uniswap的函数。

就像之前的CFMMs一样,我们的目标是在x和y之间发生交换时保持k的值不变。绘制该函数会像这样:

来源:Curve白皮书

从图5中可以看出,Curve的函数在中间表现为恒定加和函数,但随着x和y的值的变大,则变为恒定乘积函数。这种形状使曲线中间段的价格保持稳定,同时又能在两端提供流动性。

在过去的几年里,AMMs通过以去中心化的、全球可访问的和非托管的方式汇聚和提供流动性,它已经成为DeFi的重要组成部分。具体而言,Uniswap、Balancer和Curve等CFMMs获得了巨大的增长和应用,交易量超过数十亿美元。

自2017年以来,这些去中心化的交易所已经开发了恒定函数的各种变体,以解决特定的交易所问题。随着该领域继续扩大,涵盖各种资产,为使交易更高效,交易所必须对底层功能进行大量思考。虽然这项技术仍处于早期阶段,但它已经带出了新的研究领域,更多的AMM设计将会出现,最终为所有DeFi用户提供更好的流动性。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

DOT应该开始想象 一个具有应用链的多链时代了

跨链这件事,似乎又开始被提及。 不过,与 2019 年炒作不同的是,现在的链,确实有跨的需求。 对于玩家来说,以太坊的性能问题无需赘述,每个人都有切身体会,「贵族链」三个词的概括足够精辟。 于是开始出现解决方案,但梳理了一下目前的现状,发现跨链依然有需求,因为多链似乎是必然。 首先看以太坊的现状。

TUSD晚间必读5篇 | 回看3.12 加密货币大变局

1.回看3.12 加密货币大变局 回看3.12一周年,加密货币总市值上涨10倍;DeFi迎来大爆发,YFI、SNX等上涨近50倍;USDT增发量上涨近10倍!点击阅读 2.全球机构持仓数据一周速览 本周有2家上市公司增持BTC,增持总额为1549.12枚;灰度增持LTC、BCH,ETC减持BTC、ETH;更多数据见图。

币安下载金色趋势丨BTC牛市行情是否终结?

在比特币下跌近10%后,加密市场在过去24小时内损失了超过1200亿美元。周日,比特币飙升至6.1万美元以上,随后加密市场的波动导致了数十亿美元的加密货币多头头寸的清算。根据加密分析公司Bybt发布的最新数据,近20亿美元的比特币多头头寸在过去24小时内被平仓。加密货币多头头寸的清算总金额约为25.2亿美元。

TRX首发 | 不借助漏洞的攻击?True Seigniorage Dollar攻击事件分析

本文由CertiK原创,授权金色财经首发。 北京时间3月14日,CertiK安全技术团队发现DeFi稳定币项目True Seigniorage Dollar发生新型攻击事件,总损失高达约1.66万美金。 此次攻击事件中攻击者利用了去中心化组织(DAO)的机制原理,完成了一次不借助"漏洞"的攻击。

[0:15ms0-7:472ms