ANC:读懂自动做市商Balancer的发展逻辑与缺陷

本文于2020年5月2日发布于链闻,作者潘致雄系链闻研究总监。

现在是关注DeFi领域中「自动化做市商」这个赛道最好的时候。这个赛道中,此前最靓丽的明星是去中心化交易平台?Uniswap?。据Alethio最新发布的DeFi数据报告,Uniswap正蚕食以太坊链上越来越多的交易量。作为一款以自动化算法实现交易的协议,Uniswap竟然在3月12日「黑色星期四」期间吸引了以太坊链上交易平台中?40%?的日活用户。

而4月初刚上线的?Balancer,又是另一个值得关注的明星。这个新上线的DeFi平台,为Uniswap这类AMM工具注入了更多的想象力:Balancer不仅能成为一个交易工具,还能扩展为一款大众化的「指数基金投资工具」,投资回报有望超过专业投资者。

如果说Uniswap实现了0到1的突破,那Balancer有可能要?推动1到10?的增长。

Balancer是对链上流动性工具的一次巨大提升。与前辈Uniswap相比,它提供了更多的设置和功能,所以你可以将它理解为是一个「高级版的Uniswap」。

在Balancer之前,?Uniswap?和?Curve?是同类产品中最典型的两个:Uniswap提供了简洁的通用型解决方案,而Curve则针对?稳定币?的场景深度优化。但Uniswap和Curve这两个产品只能局限在「交易」的场景中,没法扩展更多应用。而且在交易功能中,他们自定义化程度并不高。以Uniswap为例,流动性提供方不可以自定义费率、每个资金池无法按照特定比例分配、每个资金池仅支持两个代币。

但Balancer突破了这个问题。为了给做市商提供更全面和可自定义的解决方案,Balancer解决了上述的这些问题。在Balancer的设计中,做市商和流动性提供方可以自行创建一个支持?高度自定义的交易资金池?,以实现:

费率自定义?:交易费率更低或更高的资金池,而Uniswap固定为0.3%;

资产配比自定义?:资金池中的资产可以按照任意比例添加流动性,而Uniswap必须以1:1的比例添加;

支持?最多8种资产?:甚至,一个资金池内可以添加最多8种资产,而Uniswap每个资金池只包含2种资产;

指数基金?:一个多资产的资金池可以实现指数基金的功能,用户还可以通过它进行被动式投资。

从某种角度来看,可以把Uniswap看作是Balancer的一个?子集?。用户可以通过Balancer创建出一个几乎与Uniswap相同的资金池,不过流动性取决于资金池的资金体量,所以两者存在竞争关系。

而广义上来说,Balancer还在和其他的?资产管理类DeFi协议?竞争。作为Balancer的流动性提供方,投入资本的主要目的是为了赚取交易手续费,所以如果有更高收益且更低风险的投资机会,可能会最终影响到Balancer的流动性表现。

Bitmex上ETH永续期货合约的未平仓合约创一个月低点:金色财经报道,数据显示,Bitmex上ETH永续期货合约的未平仓合约刚刚达到 57,092,624.04 美元,创一个月低点。[2023/4/23 14:21:55]

Balancer在4月1日上线以太坊主网后,整体增长良好。目前已创建29个独立资金池,累计的交易量达到36万美元,累计流动性达?137万美元?。

其中流动性最佳的资金池是由?WETH?和?MKR?组成的,汇集资产约76万美元。这也和Uniswap类似,Uniswap中流动性比较具有优势的资金池也是由以太坊和MakerDAO的治理代币MKR组成的。

总体来看,Balancer的发展值得期待。

小科普:什么是做市商、AMM、资金池?

在深入探究Balancer之前,有必要对「?自动化做市商?」做一个简单科普。

Uniswap和Balancer,都属于自动化做市商。这类DeFi产品已成为DeFi的基础设施。越来越多的链上交易平台,或去中心化交易所已经集成了AMM,作为托底的?流动性保障?。

做市商是交易市场的流动性提供者,有助于提升市场的?交易效率?。

自动化做市商则基于特定算法或模型实现,比如Uniswap采用的是?恒定乘积做市模型?,还有更复杂的AMM模型可以根据交易品类或行情波动定制。

每个AMM协议都会包含多个资金池,可以把它理解成是交易所的?交易对?,但其中包含了部分资产用作执行AMM的?做市模型?。用户与AMM的资金池之间的交互方式主要有三种:注入流动性、提取流动性和交易。注入流动性的用户相当于成为?做市商?,提取流动性的用户相当于从资金池中?拿回?之前的资金。

为了促进更多普通用户将闲置资金池注入资金池成为做市商的一员,AMM协议一般都会内置「?分红?」机制,将收集而来的交易费按照资金池的占有比例分配给所有流动性提供方?。

Balancer和Uniswap有何区别?

上文我们已经简单介绍过,可以把Balancer理解为是一个「高级版的Uniswap」,而Uniswap则可以被视为是Balancer的一个子集。

所谓「高级」,不是指性能,毕竟两者同样基于以太坊Layer1,很难拉开性能或交易吞吐量的差距;而是差别体现在?可定制化?上和?可伸缩性?上。

Coinbase CEO:交易所将整合比特币闪电网络:金色财经报道,Coinbase首席执行官称,交易所将整合比特币闪电网络。[2023/4/10 13:53:47]

作为以太坊DEX的基础设施,Uniswap的优点为做市算法与产品逻辑简单,而且因为没有?管理员特殊权限?,被社区认为是去中心化程度较高的协议。其他一些常见的去中心化交易协议如Kyber、0xAPI,也会将部分交易订单转交由Uniswap撮合完成。

为了保持产品逻辑的简洁,Uniswap的部分参数被?固化?在协议内,未开放给用户设置,未来是否会开放也不得而知。不过从目前UniswapV2的改进来看,这些仍然不是Uniswap现阶段的关注重点。

而这正好构成了Balancer的突破口,足够与Uniswap进行?差异化竞争?。相比Uniswap,Balancer主要增加了三个组件的可自定义化:

资金池的费率可设置?:该参数决定了交易者需要为每笔交易付出的额外交易成本,也就是流动性提供方可以获得的收入比例;

支持的?资产数量最多8个?:这也就意味着普通用户可以在单个资金池内实现最多8个资产的交易,而在Uniswap中,用户大多需要使用多个资金池才可以实现两个代币交易;

资金池中?资产的占比可配置?:创建资金池时,不用按照相等的价值投入资产,而可以根据任何比例添加。

第一条是比较明确的特性,但是第二第三条需要通过更多具体案例进行理解。

除此之外,AMM工具的最核心模块「?做市算法?」因此需要调整。之前在Uniswap中采用的「恒定乘积做市商」算法模型不再适用,需要升级为更通用的模型,或许我们可以称之为「?加强版恒定乘积做市商?」,比Uniswap的模型增加了权重和多代币的属性,以便更好的支持上述第二和第三条特性。

我们希望通过一个案例理解这两者的区别。为便于计算,以下案例均去除了交易费用的影响,并简化计算量级。

Uniswap的恒定乘积做市模型

假设Uniswap的ETH/DAI的资金池中拥有10个ETH和1000个DAI,那该资金池的恒定乘积模型为:

该模型规定了,无论后续的用户如何交易,该资金池中保留的ETH数量和DAI数量的乘积等于10000保持不变,如果用户通过该资金池交易,提交10个ETH可以换得500个DAI:

Balancer的「加强版」恒定乘积做市模型

Gitcoin上Fantom生态激励计划Grants Protocol申请将改为11月中旬开放:金色财经报道,Gitcoin上应用于Fantom生态激励计划的Grants Protocol申请将由原计划的10月底改为11月中旬开放,并持续到年底,以进一步改善Fantom社区的体验。[2022/10/20 16:31:42]

Uniswap中,单资金池仅两个代币,所以上述公式是有效的。但是Balancer的做市商模型支持?多代币?,也就是一个资金池内共有?8个代币?可以互相交换,于是,最多就会涉及到最多8个变量。

更需要指出的是,该模型可以支持更多代币,或许未来会放开该限制。

假设Balancer某个资金池中含有?ETH?、?DAI?和?SNT?三个资产,初始状态下资金池包含了10个ETH、500个DAI和100000个SNT,而这个资金池的创建者设置的三个资产的占比分别是30%、30%和40%,则该资金池模型的恒定乘积为:

该公式考虑到了多资产以及权重在其中的影响,可以通过计算得出每一次交易时的比例。如果资产数量更多,就加上更多的乘积,以此类推。

通过「?加强版?」恒定乘积做市模型,资金池最多就可以支持8种资产了。

优势:为何支持多代币?

Uniswap可以实现任意两个?ERC-20代币?的兑换,但其实背后是由两个资金池实现的。每一种ERC-20资产都可以创建一个与ETH之间的资金池,然后普通用户可以为该特定的资金池提供流动性。

比如用户将SNT换为BAT,其实是通过SNT/ETH资金池和BAT/ETH资金池实现的,ETH作为一种?交易媒介?,促成两个交易对同时成交,不过这样需要付出两次交易费。

但在Balancer中,由于一个资金池可以包含多个代币,所以ERC-20之间的交易可以在?同一个资金池?内实现,也许可以减少交易费和链上Gas费用。

不过很多时候为了减少?交易成本?,Balancer也可以帮助用户从多个资金池内寻找并聚合最优交易路径。

优势:费率自定义可促进市场化

Balancer的一大改进是资金池创建者可以设置资金池的?交易费率?,而自定义费率可以促进流动性供给的市场化。

在Uniswap中,每一个资金池的费率固定为?0.3%?,而Curve中的费率仅?0.04%?,所以如果遇到稳定币交易的场景,用户应该会优先选择Curve,而且Curve的做市模型更适合稳定币,滑点更低。

多链DEX ApeSwap已开放面向BAB持有者的NFT铸造:9月13日消息,多链DEX ApeSwap已开放面向BNB Chain灵魂绑定Token BAB持有者的NFT铸造。BAB持有者可在指定页面铸造一个联名NFT。该联名NFT持有者可在10月1日至31日参加每日抽奖以赢取该项目的特定NFT。[2022/9/13 13:26:21]

Balancer为资金池创建者提供了?费率自定义?的功能,不同资金池之间为了争夺交易量,可能会以费率作为竞争的核心参数。预计这会降低DEX的整体交易费率。

而对于那些具有?大量资金?的流动性提供方,或者提供某些特殊资产的资金池,可以设置一个更高的交易费率,因为他们为市场提供了更多流动性和特殊资源。

为什么普通用户要为AMM提供流动性?可盈利,但也可能亏损

流动性提供方可以将AMM看作是一种?资产管理工具?。

AMM为了激励更多用户投入闲置资金建立流动性资金池,所以需要将资金池中的收益分配给所有流动性提供方。

收益取决于资金池交易费率和资金池的总交易量,比如Curve的资金池的交易费率较低仅0.04%,但是由于交易量大,可以为流动性提供方带去最高可达年化?20%?左右的收益。不过,最近Curve资金池的收益回落比较严重,一度低至4%。

随着流动性供给的市场化,收益终将回归至?平衡点?。如果某个资金池的年化收益率显著高于其他资金池,那更多用户就会将资金投入该收益更高的资金池中,随着资金池总量增加,单位成本的收益就会下降。

但也不可避免存在一些风险。

从协议的安全风险角度来说,开源且通过安全审计的AMM风险相对较低,所有交易均通过智能合约执行。但一个很明显的缺点:用户收益需要以?一篮子货币?计价。当用户提供流动性时,需要注入该资金池中所有支持的代币;当用户提取流动性时,也是获得该资金池中所有支持的代币。

从上述的「?收益率?」公式来看,为了简化计算,其实漏了一个很重要的变量,就是资产本身价值的变动。所以上述的公式适合那些资产价值变化并不显著的资金池。如果增加了?资产价值变化?的变量,那资金池的收益率还需要减去资产本身贬值的价格,或加上额外的收益,计算起来是比较复杂的。

毕竟资产之间的价格会根据市场变化,波动可能会很剧烈。

以Uniswap这类均衡型的资金池为例,用户初始投入了1ETH和100DAI的流动性资金,但是取回前ETH价格相比DAI?大涨?,所以只能取回0.9ETH和120DAI。

如果完全以?ETH?计价,用户初始投入的2ETH已经跌为了1.8ETH,如果完全以DAI计价,用户初始投入的200DAI涨至240DAI。相比之下,如果用户没有参与资金池,而是持有2ETH,此时他持有的资产价值以DAI来计算,为266.67DAI。

Helium团队在网络中断4小时后解决共识错误:7月12日消息,7月11日,由于软件更新导致验证器中断,物联网区块链Helium宕机约4小时,导致交易完成延迟。在中断期间,通过网络传输数据的设备没有受到影响,但矿工奖励和代币转移被搁置。团队通过将区块链向前跳过一个区块并恢复正常功能来解决这个问题。根据最新状态,美国东部时间上午10:20,ConsensusGroup停止在Helium区块链区块高度1435692处生产区块。缺乏网络共识,代币转移无法完成,新区块无法产生。在事后分析中,Helium的工程师们指出了验证器停止在网络上建立共识的两个原因。首先,7月8日针对验证器的软件更新导致了这个问题。v1.12.3更新旨在提供对5GMobile子网及其MOBILE代币的支持。此外,“本地网络中断”也是原因之一。在该项目的Discord频道中,Helium的Moderator“Digerati”解释说,在宕机时,被随机选为ConsensusGroup的大量验证器在同一个亚马逊网络服务(AWS)网络上运行,而AWS遇到了技术上的困难。(Cointelegraph)[2022/7/12 2:07:55]

CryptoEspa?ol频道博主AlfaBlok曾?专门撰文,对该风险做了更详细的分析。当?固定?某些参数的时候,以一个比较贴合实际的案例来说,在1ETH=100DAI、交易费为0.3%、资金池大小为30KETH、月交易量为20万ETH、持有期间为1年的前提下,对于Uniswap的ETH/DAI资金池,当ETH/DAI价格在?-80%至120%?左右的范围内波动,投入资金池的收益更高,否则的话,不如持有ETH。

在整个收益的计算中,变量包括资金池?大小?、资金池?交易量?、?交易费率?、两个资产间的价格波动、以何种资产计价等等,所以这不是个很简单的资产管理投资工具,这或许会成为很多入门流动性提供者的门槛。

缺点:Balancer资金池可能会增加交易滑点

从?交易滑点?来看,Uniswap的AMM模型更优。因为在Uniswap中,每个资金池都是按照50%和50%的比例设立的,所以其曲线就是一个标准的反比例函数。

而在Balancer中,由于可以设定资金池中每个资产的占比,比如代币A与代币B以85%和15%的比例组合为一个资金池,该资金池的恒定乘积曲线如下。

蓝色的曲线

上文已经介绍过了Uniswap模型和Balancer模型的具体公式,根据公式就可以推导出Uniswap这种1:1的模型整体的滑点更低。或者你可以参考上图,在该资金池中,绿点是一个很明显的?分水岭?,在绿点的左侧,代币B需要付出极大的代价才可以兑换极少数量的代币A。

如果将该情况扩展到Balancer的多代币资金池中,情况也差不多。不过为了减少滑点,Balancer的资金池也可以将资产的比例设置为?1:1?或?1:1:1?等,那这样就和Uniswap差不多了。

重新想象Balancer的潜力:指数基金生成器

Balancer有机会成为Uniswap很好的补充,或成为链上资产流动性的重要提供方。但这不是全部:Balancer的另一个本质,是成为?指数基金?创建工具。

指数基金投资在传统金融领域是一种基础的投资策略,比如常说的标普500或沪深300就是两个大盘指数,基金公司可以根据指数创建对应的指数基金,追踪大盘走势。

由于这类被动投资基金费率低,且很多时候投资回报不输主动管理基金,所以是市场中主流且大众化的?被动投资方式?。

指数基金之父,先锋集团创始人?约翰·博格?曾说:「不管市场如何,指数基金给你合理的市场回报。」?巴菲特?曾表示:「通过定期投资指数基金,一个什么也不懂的业余投资者能够战胜大部分专业投资者。」

具体而言,指数基金由多种资产标的以相应的比例组合而成,用以追踪某些特定市场指标或资产价格的投资工具。正巧,这就是Balancer资金池的设定。

Balancer每一个资金池支持最多8种资产,所以用户可以通过Balancer创建一个最多由8种资产组合而成的?指数基金?,比如:

追踪?加密货币大盘?情况,可以由比特币、以太坊和DAI组成;

追踪?DeFi生态?,可以由DeFi协议的原生代币组成,比如MKR、ZRX、KNC、BNT等;

追踪?预言机?生态,可以由预言机产品的原生代币组成,如LINK、TRB、NEST等。

这样的例子还有很多。如果功能允许的话,Balancer还可以用来发行?组合型基金或母基金?,只需要支持将各个指数基金的流动性代币再汇总至一个Balancer的资金池中即可。

为什么指数基金生成器可以解决流动性问题?

因为指数基金有?再平衡?的需求,而交易者有寻找最优汇率或套利的需求。将这两个需求匹配起来,就为市场提供了流动性,我们通过一个案例来理解整个过程。

假设目前的市场价格为1BTC=10000USDC,我们在Balancer上创建一个由50%比特币和50%USDC组成的基金,试图追踪美元以及比特币的价格。

如果在5天后,BTC的市场公允价格涨了20%达到了12000USDC,那资金池的中的两个资产按照最新的市场价格,在资金池中的价值占比也就发生了相应的调整,分别为?55%?和45%。

但是该资金池的兑换比例依旧保持在1BTC=10000USDC的恒定乘积曲线上。对于外部交易者来说,资金池内价格与市场价格偏离,?外部交易者?是有利可图的。

根据恒定乘积模型来计算,套利者可以对资金池投入500美元换得0.0476个比特币,这个BTC的价格远低于市场,用户可以把0.0476个比特币在公开市场上卖出,获得571.2USDC。

500美元成本赚得71.2美元,单次收益率高达?14%?,一定会有很多套利者进入,压榨其中的套利空间,增加市场流动性。

最终市场价应该与该资金池内的兑换比例非常接近,而且这是一个?动态持续?的过程,所以该资金池的资产分布应该也会继续保持为初始化时的比例。

如果把上述的这个资金池看作是一个指数基金,那上面描述的这个市场自动调节机制,就相当于进行了指数基金的「?再平衡?」,恢复至初始化时设置的指数分配比例。常规的指数基金会按照日、周、月或者年的频率执行再平衡,但是在Balancer中,再平衡是?随时发生?的。

利用联合曲面发行流动性代币

Balancer协议如何记录每个流动性提供方投入的资金数额呢?发行「流动性代币」作为一种记账凭证。为了更好地描述「发行流动性代币」的过程,Balancer还提出了名为「联合曲面」的概念。

「联合曲面」一词来自于「联合曲线」,前者是后者的更通用版本,或许你也可以把「联合曲面」理解为「联合曲线」的?升级版?。

首先来了解一下DeFi领域大名鼎鼎的「联合曲线」,这是一种通过智能合约发行代币的方法。很多人可能以为「联合曲线」是一种特定的曲线,其实它只是一个概念,用以描述「代币发行量」和「代币价格」之间的关系,所以无论这两者之间的函数关系在直角坐标系中绘制成曲线还是直线,都可以统称为「联合曲线」。

为什么「代币价格」和「代币发行量」存在函数关系?那为什么比特币或以太坊的发行量和价格就不存在任何关联呢?

因为利用「联合曲线」进行的代币发行类似于?一级市场?,不是二级市场。而且这个一级市场与项目方融资的一级市场不同,联合曲线发行代币的过程,是通过智能合约实现的。

那联合曲线与Balancer有什么关系?

就一个主要作用:发行「流动性代币」,作为投入流动性的记账凭证。当用户为Balancer的某个资金池提供相应的流动性后,Balancer会按照投入资产的数量,配合上相应公式计算得出?用户投入的贡献?,并发放相应的「流动性代币」,作为一种凭证。

如果在一段时间之后,该资金池没有发生任何变化,那用户就可以将之前的流动性代币换回相同资产。但如果在此期间该资金池收集了更多的?交易费?,用户就可以将之前的流动性代币换回相同的资产外加?所分得的交易收益?。

称之为联合曲面,是因为联合曲线只涉及到两个代币,分别是投入的代币A和获得的代币B。但是在Balancer的双资产资金池中,其实涉及到三个代币,分别是资金池中的代币A和代币B,以及对应的「流动性代币」。

X和Y轴代表了代币A和B、Z轴代表了流动性代币

联合曲面即是描述了资金池中?代币A、代币B?和?流动性代币?这三者关系的。不过如果Balancer的资金池超过两个代币,那联合曲面也将升级为更多维的曲面。虽然很难通过计算机绘制更多维的联合曲面,但是所有的公式和定义还是依旧有效的。

Balancer已打开AMM应用场景的大门

由Uniswap和Bancor发起的AMM概念,一直都束缚在现货交易这一种场景内。而Balancer是第一款将AMM应用场景拓宽的工具,它用实际行动证明了AMM不仅可以进行普通的?现货交易?,还可以成为?指数基金管理平台?,用来管理大规模的被动投资基金,并且是以去中心化的形式进行的。

现在也有越来越多的DeFi项目也在探索AMM的各种极限,比如Curve和?ShellProtocol?在优化?稳定币?AMM算法,?MCDEX?和?Futureswap?则是在探索?衍生品交易?领域,如20倍杠杆的永续掉期合约。

在目前阶段,以太坊的性能捉襟见肘,DeFi生态可能是需要AMM等自动化工具减少链上提交频率省下网络性能的,但如果有一天以太坊2.0提升了上百上千倍的交易吞吐量,可能就是另一番场景了,或许会和现在的中心化交易所一样,做市商几乎是由?专业化的机构?主导的。到时候通用型AMM的场景在哪里,是DeFi生态现在就可以考虑起来的问题。

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

金星链

[0:15ms0-1:335ms