读懂 Charm Alpha Vault :Uniswap V3 LP 极简主义操作策略

链闻
链闻 机构得得号

May 27, 2021 共同发现区块链世界的伟大价值。

摘要: Alpha Vault 在实际运行中实现了比 Uniswap V2 LP 高两倍的利润,来从技术角度理解它的工作机制。

撰文:田少谷 Shao

我曾在之前一篇文章「Uniswap v3 Features Explained in Depth 」中提到的,流动性提供者(LP)的操作策略和 LP NFT 聚合正成为去中心化金融(DeFi)领域新兴初创企业的蓝海。

探索 v3 LP 投资策略圣杯。来源 : uniswap.org & charm.fi

今天,我们将研究第一个上线的 Uniswap v3 LP 策略(据我所知是第一个):

Charm.fi 是一个匿名团队,已经打造了两个 DeFi 产品:分别是代币类产品 Cube Tokens 和期权类产品 Options。

Uniswap v3 在 5 月 5 日发布后两天,Charm 部署了其第三款产品:Uniswap v3 LP 操作策略——Alpha Vault,并且已经被证明是非常成功的产品:利润比 v2 的 LP 高两倍以上!

难怪有许多人纷纷入局,其第一个 ETH / USDC 机枪池资本全部到位,即使其网站上有明显的警告信息:该项目的代码未经审计。

现在让我们深入探讨一下 Alpha Vault 的策略及其代码库!

被动再平衡

本文的理解和解释来自于 官方公告文章,其 Github 代码库 以及我与 Charm 开发人员 mxwtnb 的聊天。

由于他们的文章已经很好地解释了产品,所以我仅在必要时重复一遍。

机枪池中代币对的价格不断变化,这意味着现价并不总是会在 LP 的流动性区间的中间。因此,精心设计的再平衡机制是任何策略的核心。

Alpha Vault 的方法非常简单有效:当两种资产变得不平衡且无法将其全部投入机枪池时,Vault 首先将两种资产的最大可用量投入机枪池中,然后再用有结余的一种资产投下另一个范围定单 。

让我们举个例子。(如果您不清楚以下关于价格变动和资产交换规则的解释,请首先查看 本文 以了解 Uniswap v3 的基本机制。)

最初我们拥有的资产 50% 为 ETH,另外 50% 为 USDC。 一天后,随着 ETH 价格下跌,我们获得了更多的 ETH,而 USDC 减少了。

  • ETH 价格 = 3000 美元 : (50% ETH, 50% USDC)
  • ETH 价格 = 2500 美元 : (70% ETH, 30% USDC) -> 资产全部取出

现在,假设我们可以在当前价格范围内输入机枪池的两者最大金额为 30% ETH 和 30% USDC。

Vault 的工作是先提取所有流动性,然后投下由 30% ETH、
30% USDC 组成的基础订单和由 40% ETH,0 USDC 组成的限价 / 重新平衡订单。

  • 基础订单 : (30% ETH, 30% USDC) -> 按当前价格范围下单
  • 限价 / 重新平衡订单 : (40% ETH, 0 USDC) -> 下单的价格范围 ≥ 现价 , 例如 : (2500, 2600), 这样当价格上涨时 ETH 可以被兑换成 USDC。

允许我厚颜无耻地借用他们文章中的一张图片:

如果 ETH 有结余,以高于当前价格的区间值投入 ETH。 来源 : https://medium.com/charmfinance/introducing-alpha-vaults-an-lp-strategy-for-uniswap-v3-ebf500b67796

同样,如果我们有 USDC 结余,则将结余的 USDC 投入价格 ≤ 当前价格的范围内,这样当价格下跌时,可以将 USDC 兑换为 ETH。

限价 / 重新平衡订单的作用是避免直接 swapping (将 20% ETH 兑换成 20%USDC),那样做会导致被收取 0.1〜1% 的交易费,而是要通过提供流动性自然地发生 swapping,这样不花一分钱手续费,甚至还可以赚取交易费。

这就是采用「被动」重新平衡机制的原因。

但是在上面 ETH 有结余的示例中存在一个假设:只有在 ETH 价格上涨时,限价单才会兑现——这显然与我们资产出现失衡的原因相反:后者是因为 ETH 价格从 3000 美元跌至 2500 美元。

但是,这种假设是很现实的,因为总会有盘整行情。

让我们看一下 ETH 的真实市场价格:有一段时间连续出现几个绿柱 / 拉高,但是始终跟随着红柱 / 盘整。

随时都有价格修正。来源 : tradingview.com

好吧,假设价格一直不停下跌呢?

有条件再平衡

如果价格持续下降,那 Vault 可能无所作为,这意味着:未能实现再平衡。

Uniswap v3 的 LP 如果采用错误的 LP 操作策略,与 v2 相比,可能遭受更大的无常损失。

因此,在某些情况下最好不要采取任何措施,这是很合理的。

而在 AlphaStrategy.sol 中,rebalance ()存在两个条件检查(require ()),以判断是否有必要进行再平衡。

来源: https://github.com/charmfinance/alpha-vaults-contracts/blob/main/contracts/AlphaStrategy.sol

  • 绝不应该发生的极端价格走势
  • 价格波动太大-> 避免市价在再平衡之前遭到操弄或是在极端市场行情时进行再平衡

除了这两个条件之外,还有另一个条件(在我开始撰写本文时):

价格变动不大-> 避免重复花费 Gas

根据开发人员的说法,当前智能合约设计中未包含该条件的原因是该条件现在已移至链下。

在链上还是链下之间的选择取决于该条件是否应始终得到严格遵守:如果是,则为链上;如果「否」,考虑到该策略仍处于初期阶段,将其保持在链下状态可以提供更好的开发灵活性。

Gas 成本低

据上述开发者称,这一功能是近期才开发的,因此与已经部署到主网的 ETH/USDC Vault 未能保持一致。

已经尝试过将流动性投入 v3 机枪池的投资者肯定都已经知道,这一过程的费用成本不便宜。

向 Uniswap v3 资金池投入流动性的随机交易 Gas 成本为 431,134. 来源 : https://etherscan.io/tx/0x06a01a31692fd74057caccebdf7c0449d2fbf0bcec4c67108dbaac1ef76ff642

向 Alpha Vault 存款的 Gas 成本如何? 因为还有 Vault 的逻辑,它会比向 v3 增加流动性成本更昂贵吗?

答案是:比向 v3 资金池增加流动性便宜得多!

向 Alpha Vault 投入流动性的随机交易 Gas 成本为 180,573.。请注意,这一交易是在 Ropsten,由开发者提供。来源 : https://rinkeby.etherscan.io/tx/0x73a20b35c1598e2e891d85ab19e431251558165d13dfa166ac773505072d8fb4

为什么?原因是将美元存入 Alpha Vault 不会导致 v3 上增加流动性的行为。

流动性的变化只会在再平衡时发生,这意味着个人用户无需为增加和移除流动性而支付高昂 Gas 费用。 目前是由该团队自己的 Keeper 最近以每天两次的频率执行再平衡的职责。

Gas 成本低,听上去很棒!但这是否还意味着用户存入资金池中的资金要等到下一次再平衡时才会被使用? 是的。 但是增加流动性并不像购买 10 倍杠杆的永续合约; 通常是一项长期或至少中期的投资。

如果用户计划向其提供数月的流动性,失去几个小时的资本效率并不是什么大不了的事情。 另外,Gas 成本更低!

提示:如果您要向 Alpha Vault 存入资金,请查看 Vault 的智能合约,看看再平衡是否刚刚发生。如果是,那么您不必操之过急,可以等待更低的 Gas 价格!

因此,结合第 2 章节:有条件再平衡中的描述,在极端的市场条件下,用户存款的资金是否有可能被闲置好几天?

答案仍然是「是」,但这恰恰是对 Vault 是否应该再平衡设定条件的原因:为了保护用户。

极简主义

  • 仅在再平衡时才可动用流动资金
  • 仅在需要时进行再平衡
  • 通过提供流动性实现代币 swap,而不是直接 swapping

在他们的 Github 代码库开放之前,我很难想象 v3 LP 策略仅需要约 700 行代码。

显然团队正在尽一切努力使该策略的复杂性降至最低,这就是为什么我将 Alpha Vault 称为「极简主义 LP 策略」!

肯定会有更多的策略出台,并且预计许多策略也将采用 Alpha Vault 的技术,例如避免交易费的被动再平衡技巧。

让我们拭目以待,是否能有另一个项目可以达到与 Alpha Vault 相同水准的性能和简单性!

猿人们 🙈,要小心

有了以上对项目的了解,听起来该时候了跟风出手了(这些搭便车的投资者也被称为「猿人」)……但请先等等。

由于该项目的代码尚未接受审计(正在进行中),因此为特殊情况(例如,发现严重错误)准备了两个紧急按钮。

来源: https://github.com/charmfinance/alpha-vaults-contracts/blob/main/contracts/AlphaVault.sol

在 AlphaVault.sol 中,由于合约尚未最终确定,治理 / 项目所有者有权使用 emergencyBurn() 和 emergencyWithdraw() 指令,意味着他们可以从资金池中提取流动资金,然后将其转移给治理方。

因此,如果团队有一天准备好最终敲定智能合约(finalized 值设定为 true),可能是在通过代码审计之后,人们就不再需要担心这一问题了。

在项目的早期阶段为紧急情况保留特权是很常见的做法,但是请谨记这些风险,三思之后再考虑投入毕生积蓄,尤其 Charm 是一个匿名团队。

我提到这一点并不是要阻止人们使用这一产品,而只是想提醒人们将资金放入智能合约永远存在风险。 毕竟,无论有多少审计报告对产品予以力挺,智能合约仍然可能遭遇黑客入侵。

就我个人而言,我已经阅读了他们的代码,喜欢他们策略的简单性,并且在合同最终确定之后一定会尝试的!但还是要重复那句话:投资额永远不要超过您愿意承受的损失额度。

总结

这几乎就是 Charm 的 Alpha Vault 的所有功能。没有想到会有这么简单的策略,对吧?

如果您对使用 Alpha Vault 跃跃欲试,他们在 5 月 24 日推出另一个 ETH / USDT 机枪池。

我要说的最后一件事是: Charm 所有的产品都是由一个开发人员构建的。真是生命力超强又厉害! 我现在是忠实粉丝😆

链得得仅提供相关信息展示,不构成任何投资建议
本文系作者 链闻 授权链得得发表,并经链得得编辑,转载请注明出处、作者和本文链接

更多精彩内容,关注链得得微信号(ID:ChainDD),或者下载链得得App

分享到:

相关推荐

    评论(0

    Oh! no

    您是否确认要删除该条评论吗?

    分享到微信