在 DeFi 领域中,自动化做市商(AMM)被用于描述一种协议或应用,其利用数学函数来确定资产的价格,并促进两种或多种资产的交换。AMM 最著名的例子是 Uniswap,作为一个去中心化交易所(DEX),它利用了恒定乘积函数(x*y=k)来进行代币互换。
1
自动化做市商(AMM)简史
自 2017 年 Bancor 引入链上 AMM 以来,AMM 在不同方面已经有了一些显着的改进。
1.Uniswap (2018 年):首个实现有意义交易量,并在 DeFi 领域掀起 AMM 浪潮的 AMM。Uniswap 的成功,很大程度上是因为它的简单性。
2.Curve (2019 年): 首个针对稳定资产篮子进行优化的 AMM;
3.Balancer (2020 年): 首个使流动性资金池创建者能够自定义单个池中两个或多个资产之间权重的 AMM;
4.Bancor V2 (2020 年):首个引入流动性池动态权重,以减轻流动性提供者(LP)无常损失的 AMM,此外,Bancor 还允许 LP 向资产池提供一种资产来参与做市;
5.Blackholeswap (2020 年):首个利用 Compound 或其它借贷协议的供应,来处理超额流动性池交易的 AMM;
在这一创新链的基础上,很荣幸和大家分享一种由 Perpetual 协议开创的新型 AMM:虚拟自动做市商(以下简称“vAMM”或“vAMMs”)。
2
当前 AMM 的局限性:杠杆、做空和无常损失(IL)
尽管 AMM 领域出现了大量创新,但上述所有改进都集中代币互换服务上,这意味着每一种新方法都只适用于互换,而不能应用于衍生品(如永续合约)。
我们知道,永续合约是加密货币交易者最喜欢的产品。由于衍生产品通常涉及某种杠杆作用,所以很难使其与当前的 AMM 设计兼容。然而,的确有一些可能的方法。例如,利用 AMM 实现杠杆和沽空的一种方法,是鼓励流动性提供者在 AMM 池中提供代币(=1 倍杠杆),并允许交易者以他们想要的杠杆率借入资产。你可以在这里了解更多有关此方法的信息。然而,这种方法的缺点是:
(1) 流动性提供者(LP)会遭受很高的无常损失
(2) 未平仓利率受资产池规模的约束。
3
Perpetual 协议的解决方案:虚拟化 AMM
为了解决当前 AMM 方案存在的局限性,Perpetual 协议引入了一种称为“虚拟 AMM”的全新方法,它从根本上扩展了 AMM 的应用空间,并首次实现了永续合约。
对于那些不熟悉永续合约的来说:永续合约是类似于期货合约的衍生产品,但它没有到期日期。对于 WTI 等常规期货合约,随着到期日的临近,合约的价格将与标的资产的现货市场价格逐渐收敛。而对于永续合约,要使其价格与现货市场价格一致,业内使用最为有效的方式是“融资率”(funding rate)。你可以阅读我们的文档,或 FTX 帮助中心的这篇文章,以了解有关融资运作方式的更多信息。
Perpetual 协议的 vAMM 使用了与 Uniswap 相同的 x*y=k 恒定乘积公式。正如 vAMM“虚拟”部分所暗示的那样,vAMM 本身并没有存储真正的资产池(k)。相反,真实的资产存储在一个智能合约金库中,该金库管理所有支持 vAMM 的抵押品。与传统的 AMM 不同,Perpetual 协议使用 vAMM 作为一种价格发现机制,而不是用于现货交易。
下面是关于 vAMM 工作原理的说明:
1、在区块链上创建 vAMM 之前,创建者设置存储在 vAMM 中虚拟资产的数量。假设以太币的交易价格为 400 DAI,创建者可在 vAMM 上设置 ETH 和 DAI 的初始金额,比例为 1:400。为了简单起见,我们假设创建者将 vAMM 的初始状态设置为 100 vETH 和 40000 vDAI。
2、交易者 Alice 希望以 100 DAI 作为抵押品,然后 10 倍做多 ETH:
(1) Alice 将 100 DAI 存入 Perpetual 协议的金库,如上所述,这是一个 Perpetual 协议上的智能合约。
(2) Perpetual 协议将来自 Alice 的 1,000 vDAI (100 DAI 的 10 倍杠杠)记入 vAMM,vAMM 根据一个恒定乘积函数(x*y=k)计算 Alice 收到的 vETH 数量。
(3) Perpetual 协议记录 Alice 现在有 2.4390244 vETH ,而这个 vAMM 里面的状态变成 97.5609756 vETH 和 41000 vDAI。
3、交易者 Bob 随后以 100 DAI 作为抵押品,10 倍做空 ETH,这意味着:
(1) Bob 将 100 DAI 存入相同的金库。
(2) Perpetual 协议将来自 Bob 的 -1,000 vDAI 记入 vAMM,vAMM 根据一个恒定乘积函数(x*y=k)计算 Bob 收到的负 vETH 的数量。
(3) Perpetual 协议记录 Bob 现在做空了 2.4390244 vETH,而这个 vAMM 内部的状态现在变成了 100 vETH 和 40000 vDAI。
4
vAMM 的独特性质
1、不需要流动性提供者
由于路径独立性,金库将始终拥有足够的抵押品来偿还所有针对 vAMM 进行交易的交易者(假设所有抵押不足的资产在破产前都已成功清算)。传统 AMM 的流动性来源于流动性提供者(LP)为促进交易而提供的资产,与之不同的是,vAMM 的流动性直接来自于 vAMM 之外的金库。换言之,不需要让流动性提供者来为 vAMM 带来流动性,交易者本身就可以彼此提供流动性。
由于在 vAMM 中不需要流动性提供者,因此从一开始就不存在无常损失问题。
2、定期价格调整
vAMM 本身就是一个独立的现金结算市场。如果我们想让 vAMM 市场价格接近某个基本指数,我们需要增加一个融资利率,类似于在中心限价订单簿(CLOB)交易所永续合约的融资支付。例如,以下是 FTX 的融资支付公式:
这个融资支付激励套利者使市场价格尽可能接近标的指数,并使 vAMM 市场跟踪标的指数。
Perpetual 协议利用了与 FTX 类似的融资利率公式,因此允许新的衍生品市场在密切跟踪标的指数的同时,利用杠杆进行交易。
管理滑点
与传统 AMM 相似的是,当 vAMM 的 K 值较高时,交易者遭受的滑点较少,但相似之处到此为止。
对于传统的 AMM,增加 K 值的方法有
(1)鼓励更多的流动性提供者提供更多的流动性
(2)增加交易费用,并回收交易利润以提供更多的流动性。
相比之下,在 vAMM 中,由于 K 值是由 vAMM 运营者在启动时手动设置的,因此即使在 vAMM 创建之后,也可以随时随意增加或减少 K,这有助于市场对最新情况做出响应。话虽如此,尽管 vAMM 运营者具有这种权力,但他 / 她无法转移存储在金库中的用户资金。vAMM 运营者在第一个版本中会是 Perpetual 协议团队,并在之后过渡到 DAO 结构。
虽然 Perpetual 协议的第一个版本将手动设置 K 值,但随着时间的推移,我们希望 K 值是按算法进行设置。例如,K 可设置为交易量、未平仓利率、融资支付、波动率及其他变量的函数。
K 值的设置需要保持微妙的平衡。如果 K 值太低,则协议的自然用户将产生过高的滑点,并抑制他们在系统中的交易。然而,如果 K 值太高,那么套利者将没有足够的资金来维持 vAMM 价格与标的指数价格一致。
End
扫码关注~
你就是圈子里的 DeFi 大咖!
欢迎加入社群,与我们讨论如何参与更多 DeFi 项目、探索 DeFi 规则原理~
加入方式:扫码关注,后台点击【加入社群】
DeFi 之道公众号后台
回复“财富”获取 DeFi 热门项目白皮书合集 !
回复“研究”获取 DeFi 研究报告合集!
回复“论文”获取 DeFi 相关论文合集!
干货持续更新中,敬请关注……
声明:本内容为作者独立观点,不代表 CoinVoice 立场,且不构成投资建议,请谨慎对待,如需报道或加入交流群,请联系微信:VOICE-V。
简介:专业性+洞察力的中文区块链媒体,致力于探索Web 3.0前瞻内容和深度解读。
评论0条