您的位置:首页 >期货 >

金色观察|时间加权自动做市商与AMM有什么区别?

2021-07-30 12:47:33来源:金色财经

金色财经消息,Uniswap创始人正在与Paradigm两名研究院研究新的AMM模型,其研究为在以太坊上处理大额交易,可以将大额交易分成碎片在一定时间内消解。

笔者查阅了Paradigm官网显示文档,将其中关于AMM和时间加权自动做市商TWAMM的区别整理如下:

自动做市商(AMM)

AMM将大部分uniswap上的做市过程实现了自动化。其逻辑是利用恒定乘积公式允许任何人为新资产创建交易和AMM流动性池。

为了在两个资产X和Y之间创建新的恒定乘积AMM流动性池,流动性提供者(LP)需要存入这两种资产形式的准备金x和y。这两种资产在任何时间的比率代表了AMM上的瞬时价格。

如果一个AMM的准备金中包含2,000USDC和1ETH,则ETH的瞬时价格将为2,000USDC。

当交易者与AMM流动性池进行交易时,AMM会根据公式x*y=k给交易者报价,其中x和y分别代表两种资产的准备金数量,k是常数。两者准备金数量的乘积在交易期间始终保持不变(费用忽略不计)。

举例说明

一个包含ETH/USDC两种资产的AMM,其储备资产中有2,000USDC和1ETH,因此x=2,000、y=1和x*y=k=2,000。该AMM的瞬时价格为2,000/1=2,000USDC/ETH。

交易者需购买2000USDC的ETH,他要把用来购买ETH的2000USDC存入资金储备,因此我们有x=2000+2000=4000。

如k=2000,我们必须在上述交易后得到y=k/x=2000/4000=0.5。由于y最初是1,1–0.5=0.5ETH,因此该交易者在此交易中获得了0.5ETH。

交易者用2000USDC购买了0.5ETH,他实际支付的平均价格为4,000USDC/ETH。其升高的价格与瞬时价格的关系,可以反映大规模订单与AMM流动性息息相关。

PS:如果准备金储备很高,在2000USDC购买ETH的时候,价格变化就不会那么快,交易者就可以买到更多ETH,因为交易者一定希望交易发生的价格是ETH等于2000USDC,而不是交易过程里,快速增长。导致本金损失。

时间加权自动做市商(TWAMM)

时间加权自动做市商(TWAMM)的工作原理是将大额订单分拆为无限多的小额订单,并利用AMM,通过时间跨度顺利执行它们。

举例说明

假设Alice想在链上购买价值1亿USDC的ETH,在Uniswap等现有AMM上执行这种规模的订单,成本非常昂贵(会收取高额手续费以及交易损失)。

Alice的最佳选择是手动将她的订单分成几部分,并在几个小时内的时间内一一执行,让市场可以给她一个更好的价格。(因为大额订单会对价格有巨大影响,如果其他人看到了大额订单,可能会带来他人抛盘或者其他操作,需要时间给市场缓冲。)

如果她发送了几个非常庞大的子订单,每个订单仍然会对价格产生重大影响,并且很容易受到恶意交易者的三明治攻击。另一方面,如果她发送很多小的子订单,她将不得不承担活跃交易的工作负荷和风险,且逐笔交易支付gas费用,因此向矿工支付了高额成本。

TWAMM可以代表Alice进行交易,TWAMM将她的订单分拆成无数个无限小的虚拟订单,以确保利用时间跨度而完美地得到执行,并且使用的是嵌入式AMM的特殊函数公式,能够在这些虚拟小订单中分摊gas成本。因为它在区块之间处理交易,所以它也不太容易受到三明治攻击。

如果利用AMM执行大规模交易?

AMM的设计机制决定了在AMM上执行单笔大额订单的成本很高。所以希望在AMM上执行大额订单的交易者不应该用单笔交易来执行,交易者最好将订单分拆成几部分。这就会涉及一次向多个AMM发送订单,但这些AMM在任何给定时间点的流动性可能也是有限的。如果订单越大,利用时间跨度将其拆分就越有吸引力。

我们仍假设一位投资者想在链上购买1亿USDC的ETH。他们没有任何有关ETH价格的短期信息,因此不会介意自己的订单是否需要固定的时间内执行。在这种情况下,他们可能会将其订单拆分成10个部分,每个部分1000万美元,每隔一小时执行一个部分,从而限制每个部分受到的价格冲击。

如果一个非常大的订单被分成几部分,每部分单独的子订单仍然很大,也会相应地产生价格冲击。将订单拆分成更小的订单会降低成本,但也会带来两个新的问题。

第一个问题是操作复杂性,交易者可能输入错误,电脑可能崩溃,即使一切顺利,过程也很耗费时间和精力。

第二个问题是每笔交易都会产生固定的交易成本,例如支付给以太坊矿工处理交易的gas。如果交易者将她的订单分成太多部分,最终可能在费用上花费的钱超过实际购买ETH的开销。

如果利用TWAMM执行大订单交易?

先要提及TWAP(时间加权价格算法)订单,最基本的算法交易类型是时间加权价格或TWAP订单。假设,在8小时内购买价值1亿美元的苹果股票TWAP订单,在这段时间内4个小时定价为100美元,4个小时定价为120美元,则时间加权价格将为($100*4+$120*4)/8=$110,执行经纪机构将执行接近这一价格的TWAP订单。

执行经济机构也可能通过在一天内将这一订单拆分成许多小部分发送到市场来执行此交易。在8小时内购买1亿美元的苹果股票意味着每100毫秒购买大约350美元的苹果股票。

对于如此多的小额交易,执行经纪机构拥有减少或消除其中操作复杂性的基础设施,并且由于它们与市场有直接关联,可能无需支付太多交易成本。

时间加权自动做市商(TWAMM)提供了TWAP订单的链上版本。TWAMM具有用于订单拆分的专门逻辑,并与一家嵌入式交易所具有直接关联,以低gas成本提供顺滑执行。套利者则可以帮助TWAMM嵌入式交易所的价格与市场价格保持一致,确保在资产的时间加权平均价格附近执行。

TWAMM包含一个嵌入式AMM,任何人都可以随时使用这个嵌入式AMM进行交易,与一个普通的AMM没有两样。

交易者可以向TWAMM提交长期订单,这些订单是在固定数量区块上出售固定数量的某种资产的订单——例如,在接下来的2,000个区块中售出100ETH的订单。

TWAMM将这些长期订单分解为无限多个无限小的虚拟子订单,这些子订单在一定时间内以匀速和嵌入式AMM进行交易。

在一定时间跨度内,长期订单的执行将推动嵌入式AMM的价格偏离其他市场的价格。发生这种情况时,套利者会在嵌入式AMM的价格基础上进行套利交易,使其与主流市场恢复一致。

例如,如果长期卖单使得嵌入式AMM上的ETH价格比某一特定中心化交易所的价格更便宜,套利者将从嵌入式AMM买进ETH,导致其价格在该AMM上回升,然后在中心化交易所售出套利。

举例说明

Alice想在接下来的8小时(大约2,000个区块)内购买价值1亿USDC的ETH。她在TWAMM中输入了一个长期订单购买价值1亿USDC的ETH,横跨2,000个区块,或每个区块50,000USDC。

Bob想在接下来的5,000个区块中出售500ETH换取USDC,即每个区块中出售0.1ETH。

Charlie想在接下来的2,000个区块中出售100ETH换取USDC,即每个区块中出售0.05ETH。

在Charlie的订单在2,000个区块后到期之前,Bob和Charlie的订单将被组合在一个订单池中。

这一ETH销售池将在接下来的2,000个区块中以每个区块0.15ETH的速度出售ETH。矿池以这种方式赚取的USDC中,Bob将获得其中0.1/0.15≈66%,Charlie将获得其中的0.05/0.15≈33%。

对于接下来2,000个区块中的每个区块,TWAMM必须代表Alice购买价值50,000USDC的ETH,并代表ETH销售池出售0.15ETH换取USDC。

TWAMM将这两个子订单中的每一个拆分为数万亿个微小的子子订单,我们称之为虚拟订单(实际上,它们将被分解为无数个无穷小的虚拟订单)。然后TWAMM轮流与其嵌入的AMM执行这些虚拟订单:先是Alice的一个虚拟订单,然后是ETH销售池的一个虚拟订单,然后是Alice的另一个虚拟订单,依此类推。

在第2,000个区块后,Alice的订单已经得到了完全执行,Charlie的订单也是如此。Bob出售ETH的订单在接下来的3,000个区块内仍然有效,在此期间TWAMM将继续以每个区块0.1ETH的速度执行这一订单。