TWAP 与 VWAP 价格算法

  • Chainlink
  • 发布于 2023-05-25 23:46
  • 阅读 30

本文介绍了时间加权平均价格(TWAP)和成交量加权平均价格(VWAP)两种在DeFi生态系统中用于计算资产价格的方法。TWAP简单且易于在链上实现,但容易受到市场操纵和延迟定价的影响。VWAP通过考虑多个交易所的交易量来提供更准确的市场价格,更能抵抗操控,Chainlink Price Feeds 使用 VWAP 机制。

定义

TWAP 和 VWAP 是用于计算 DeFi 生态系统中资产价格的不同方法。

时间加权平均价格 (TWAP) 和成交量加权平均价格 (VWAP) 算法应用不同的方法来计算资产价格,这是几乎所有 去中心化金融 (DeFi) 原语的组成部分。

在本文中,我们将介绍 TWAP 和 VWAP 算法之间的差异,解释它们如何在区块链环境中定价资产,并探讨它们各自的优势和权衡。通过做出更明智的安全设计选择并利用最安全的基础设施,DeFi 协议可以为用户提供更准确、可靠和公平的价格。了解 TWAP 和 VWAP 算法 之间的差异是这个过程的关键部分。

什么是 TWAP?

TWAP 代表“时间加权平均价格”。它是一种定价算法,用于计算资产在设定时期内的平均价格。

在 DeFi 中,一种称为 自动化做市商 (AMM)去中心化交易所 (DEX) 可用于生成可在其他协议中使用的 TWAP 价格。TWAP 也可以指一种交易策略,通过在设定的时间段内将大批量订单分成相等的部分来执行,以最大限度地减少滑点和信号传递。在这篇文章中,我们关注的是定价机制,而不是交易策略。

如何计算 TWAP?

TWAP 的计算方法是将设定时期内多个时间点的价格相加,然后将该总和除以时间点的总数。

这是一个常见的 TWAP 公式:

  • TWAP = (TP1+ TP2… + TPn) / n,其中;
  • TP1 是第一个时间点的价格,
  • n 是时间点的总数。

例如,假设我们想使用 15 秒的价格点间隔来计算资产在一分钟内的 TWAP。如果价格在 0 秒时为 100 美元,在 15 秒时为 102 美元,在 30 秒时为 101 美元,在 45 秒时为 98 美元,在 60 秒时为 103 美元,那么要计算 TWAP,我们将所有价格点(100、102、101、99、103)相加,然后除以时间点的数量(5)。在本例中,TWAP 为 101 美元。

TWAP 的优势

简单性

与更严格的定价机制相比,TWAP 的计算很简单,而且执行的计算成本不高。这使得它们易于在链上实施并高效运行。

防范闪电贷攻击

闪电贷 是一种无抵押贷款,允许用户借入资产并在同一笔交易中偿还。这可能会导致对使用 AMM DEX 作为流动性池现货定价机制的 dApp 的利用,在这种情况下,价格的计算方式很简单,即用双边流动性池中一种资产的数量除以另一种资产的数量。在这种情况下,恶意行为者可以在单笔交易中借入大量资金,利用这些资金操纵现货价格,并攻击任何依赖从该流动性池获得的现货价格的智能合约。

通过使用 TWAP 从 AMM DEX 生成跨多个区块的价格,协议可以保护自己免受这些闪电贷攻击。

什么是 VWAP?

VWAP 代表“成交量加权平均价格”。它是一种用于计算资产价格的机制,方法是从多个交易环境中获取价格数据,并根据资产在每个流动性市场上交易的成交量对每个价格进行加权。VWAP 算法 支撑着大多数 DeFi 协议,因为它被行业领先的价格预言机解决方案 Chainlink Price Feeds 使用。

VWAP 计算方法也在整个金融领域更广泛地用作交易员的技术指标、经纪商或交易所提供的订单选项以及基准。在本文中,我们关注的是它作为一种定价机制的用途。

如何计算 VWAP?

VWAP 的计算方法是从多个交易环境中获取资产的交易价格,并根据每个交易所的交易量对这些价格点进行加权,通常会过滤掉虚假交易和其他异常值。

这是一个常见的 VWAP 公式:

  • VWAP = (V1 x P1 + V2 x P2… + Vn x Pn) / 总成交量,其中;
  • V1 和 P1 是资产在第一个交易环境中的交易量和价格,
  • n 是计算中使用的交易环境的总数。

举例来说,我们将计算一种虚构资产在特定时间范围内的 VWAP。假设在交易所 X 以 101 美元的价格交易了 100 个代币,在交易所 Y 以 102 美元的价格交易了 150 个代币,在交易所 Z 以 100 美元的价格交易了 500 个代币。我们首先将每个交易环境中的价格乘以成交量(100 x 101 + 150 x 102 + 500 x 100),然后将结果除以总成交量(100 + 150 + 500)。我们得到 75,400 除以 750,得到 VWAP 为 100.53 美元。

VWAP 的优势

市场覆盖率

VWAP 可以为用户提供一个反映各种交易环境下(包括小型和大型交易所)资产价格的全球市场价格。这有助于过滤掉流动性较低的市场上的异常值,这些市场更容易受到市场操纵的影响,从而更加重视交易活动更多的市场。随着流动性在各个市场之间的转移,仍然可以生成一个市场范围内的价格。

高度准确和新鲜的数据

通过整合来自多个交易环境的数据,VWAP 机制的用户可以利用更准确地反映资产全球供需的价格数据。此外,所使用的数据更新鲜、更及时,从而使基于 VWAP 的价格点能够紧密跟踪资产的市场范围价格。

抗操纵

VWAP 算法更能抵抗操纵,因为它们不依赖于单个交易市场,而该市场可能被资金雄厚的恶意行为者操纵或通过闪电贷攻击操纵。恶意行为者必须操纵资产的大部分交易市场,这将需要在操纵过程中移动资产本身的市场范围价格。

TWAP 的缺点

虽然 TWAP 和 VWAP 价格机制都有一定的优势,但 TWAP 算法存在许多缺点,使其不适合大多数 DeFi 用例

滞后指标

TWAP 算法依赖于历史价格数据,这使其成为一种内在的滞后指标。这种滞后可能导致价格在适度到高度波动的时期与市场范围内的价格不同步,并为延迟定价和漏洞创造机会。虽然 TWAP 计算可以通过使用较短时间跨度的价格点来减少这种滞后,但这会使资金雄厚的恶意行为者参与操纵的成本更低。

相比之下,VWAP 机制可用于根据新鲜的市场数据计算价格,并提供反映资产在全球交易市场中最新活动的防篡改指标。

市场覆盖率

市场覆盖率是指定价机制考虑的交易环境数量。TWAP 算法,尤其是在链上执行时,通常依赖于来自单个交易环境的数据,这意味着它们不反映具有无数不同中心化和去中心化交易所的全球资产市场。

TWAP 算法的这个问题在 DeFi 中尤其突出,因为去中心化交易所协议通常在多个链上的单独实例中同时运行其 DEX 的不同版本。由于恶意行为者只需要操纵单个交易所即可影响 TWAP 算法,因此交易所之间分散的流动性意味着他们需要更少的资金才能成功发起攻击。此外,流动性可能会随着时间的推移而转移,因此虽然用于 TWAP 数据的交易所可能有一天具有流动性,但不能保证这种流动性会持续存在。

恶意行为者需要操纵整个市场才能影响 VWAP 算法。这是因为 VWAP 算法可以整合资产交易的所有不同交易环境,包括 CEX 和 DEX 实例,从而提供具有全球市场覆盖率的更强大的资产价格。

安全可扩展性

链上计算的 TWAP 机制在提高其安全性方面受到限制。虽然延长测量价格点的时间段有助于提高防篡改能力,但这会降低新鲜度,从而降低价格准确性。从本质上讲,TWAP 机制的安全性和准确性之间存在反比关系,这使得无法同时优化两者。

传统链上 TWAP 机制变得更安全的唯一实用方法是增加跟踪市场的流动性/成交量,从而提高攻击者破坏它的成本。

VWAP 算法在向 DeFi 应用程序提供市场数据方面,可以在许多不同的向量上提高其安全性,而不会影响其价格准确性。提高安全性 的实用方法包括集成更多数据源以消除中心化风险并防止 API 停机,利用更高质量的数据提供商来消除数据异常值和可疑交易活动,以及整合加密经济激励。

资产多样性

使用链上流动性池生成 TWAP 定价的 DeFi 协议受到其交易所可交易资产的限制。这意味着它们将始终受到在其运行的 区块链 上可用代币的限制。例如,基于以太坊的协议只能生成针对该网络上其他代币定价的 ERC-20 代币的 TWAP 价格。

相反,Chainlink 网络使 DeFi 协议不仅可以利用来自 Web3 生态系统的原生资产的 VWAP 价格数据,还可以利用各种各样的现实世界资产,例如货币、商品和合成资产,以及直接针对法定货币定价的资产。

容易受到多区块攻击

在权益证明区块链上使用链上 TWAP 定价机制的协议可能容易受到多区块 MEV 攻击。与在闪电贷中在单笔交易中操纵 AMM DEX 中的现货价格不同,这些攻击涉及恶意行为者跨两个或多个连续区块操纵价格。这是可能的,因为具有足够大权益的攻击者偶尔会控制分配给发布两个或多个连续区块的验证者,并且因为未来区块的选定验证者通常会提前知道。

利用 Chainlink Price Feeds 的 VWAP

虽然 Chainlink 网络能够支持 TWAP 或任何其他定价方法,但 Chainlink Price Feeds 使用基于 VWAP 的机制,因为它生成最准确、防篡改和可靠的市场数据。

Chainlink Price Feeds 由一组高质量的数据提供商提供支持,这些数据提供商提供基于 VWAP 的资产定价,以 使用高质量的市场数据为 DeFi 经济提供动力,涵盖各种资产,即使在极端的市场波动时期也能保持准确性。这使用户能够检索资产的最新定价数据,以便以最小化信任的方式在链上的智能合约或链下的应用程序中使用。

更具体地说,Chainlink Price Feeds 是链上 参考合约,它们存储最新的和历史的资产价格,这些价格由由独立预言机节点运营商组成的去中心化预言机网络 (DON) 自动更新。由于区块链无法原生访问外部系统,因此预言机网络在 DeFi 生态系统中发挥着关键作用,它使 智能合约 能够根据来自现实世界的输入和输出来执行。

Chainlink Price Feeds 为各种 DeFi 用例 提供支持,包括货币市场、稳定币、期权、期货、合成资产、保险等。截至 2022 年 9 月 1 日,Chainlink Price Feeds 已在链上交付了 42 亿个数据点,帮助保护了 1,470 多个项目和价值数百亿美元的资产。

Chainlink Price Feeds 通过去中心化、可靠和高度准确的市场数据来支撑 DeFi 经济。

Chainlink Price Feeds 通过去中心化、可靠和高度准确的市场数据来支撑 DeFi 经济。

结论

准确和防篡改的价格数据是成功和安全的 DeFi 协议的核心,有助于确保用户获得其资产的公平价格,并且恶意行为者无法操纵价格。对于大多数 DeFi 用例,基于 VWAP 的价格机制比 TWAP 计算更合适。借助 Chainlink Price Feeds,协议可以无缝集成基于 VWAP 的价格数据,这些数据具有超可靠、高质量和 在多个级别上实现去中心化,以便更好地服务于用户、项目和更广泛的领域。

要了解更多信息,请阅读有关 Chainlink Price Feeds 如何 保护 DeFi 生态系统 https://blog.chain.link/chainlink-price-feeds-secure-defi/ 、探索其 用例 https://chain.link/use-cases 或访问 文档 https://docs.chain.link/docs/using-chainlink-reference-contracts/

市场操纵与预言机漏洞

什么是区块链预言机问题?

区块链和预言机:相似之处、差异和协同作用

预言机计算:将预言机的用途扩展到数据交付和链下计算

什么是链下数据和计算?

区块链和预言机:相似之处、差异和协同作用

市场操纵与预言机漏洞

预言机计算:将预言机的用途扩展到数据交付和链下计算

基于推送与基于拉取的预言机:为你的链上应用程序选择正确的模型

TWAP 与 VWAP 价格算法

区块链预言机问题

什么是链下数据和计算?

  • 原文链接: chain.link/education-hub...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Chainlink
Chainlink
顶尖的智能合约去中心化预言机网络解决方案 https://chain.link/