# 关于数据聚合及其在区块链预言机中的作用


By [dldw1314](https://paragraph.com/@starkware123) · 2025-01-11

---

**一、数据聚合的简单概念**
---------------

       数据聚合，这是提高预言机服务质量的主要方法之一。数据聚合是一个收集不同值（通常来自不同来源）并汇总它们（通常为单个值）的过程。
    
       一个简单的例子是从多个交易所收集 ETH/USD 对的价格数据并计算平均值。
    

二、为什么要进行数据聚合
------------

预言机服务提供的数据质量取决于两个主要标准：

1.  **数据可用性** ——这意味着预言机数据应始终可供最终用户（或智能合约）使用，并应按照承诺的频率进行更新
    
2.  **数据正确性** ——它可能以不同的方式定义，通常取决于数据的类型。例如，客观数据（如给定足球比赛的结果）的正确性可以轻松验证，但对于不太客观的数据（如以美元计价的 ETH 代币价格），定义正确性可能更加困难
    

三、一些常见的数据聚合方法
-------------

### 1、平均价格价值

       首先想到的聚合算法是计算平均值。它非常简单，看起来可能相当“公平”，但实际上它有一个明显的缺点，因为它无法抵抗即使是一小部分腐败来源的操纵。例如，假设您想从 5 个不同的交易所获取 ETH/USD 值，其中 4 个声称当前价格约为 2000 美元，但其中一个坚持认为只有 1 美元。那么平均值是 \~1600 美元，偏差太大，不能被认为是正确的。这就是为什么通常平均值计算以及其他聚合方法与[四分位距过滤器](https://docs.diadata.org/documentation/methodology/exchangeprices/ir-interquartile-range-filter)相结合，这有助于过滤掉异常值和市场操纵。
    

![](https://storage.googleapis.com/papyrus_images/0d2607b98e800828142ef9d3eebfd00bc6d515dbc5ace900c367516079abc260.png)

### 2、中位价法

      另一种方法，即使用中值计算。它比平均值好得多，而且绝对更能抵抗腐败来源的操纵。然而，即使是这种方法也不能被视为计算价格价值的完美方法。举个例子，假设你从一个大型加密货币交易所（ETH/USD 市场每日交易量为 1 亿美元）和 4 个小型交易所（ETH/USD 市场每日交易量约为 1 万美元）获取相同的 ETH/USD 价值，大型交易所提供的价值为 2000 美元，但所有小型交易所的价值都低于 1900 美元。那么在这种情况下，汇总的中值将低于 1900 美元，但正如你所猜测的，它与“真实”市场价值还不够接近。
    

![](https://storage.googleapis.com/papyrus_images/401219a5626f67a4ecad49b06672f9e99cb5c25ee25bd385d84ef09f89200882.png)

### 3、成交量加权平均价格 (VWAP)

![](https://storage.googleapis.com/papyrus_images/477f9573e50ddf28d8cee2eb85e54c8c7f46d146da1eab2f7960894145833563.png)

### 4、时间加权平均价格（TWAP）

        另一种常见的价格聚合方法是基于加权平均价格，其权重由时间标准定义。这对于仅基于去中心化交易所计算价格值特别有用。许多 DEX 甚至提供自己的基于 TWAP 的预言机解决方案。但除了基于 DEX 的预言机之外，在数据源数量有限的情况下，这种方法还可用于使市场操纵变得更加困难。在 RedStone，我们使用 TWAP 使低流动性资产的定价数据更加稳定可靠。
    

![](https://storage.googleapis.com/papyrus_images/9630974582f7e9686a9e3a6c9c94856a9e1a49977acfad92439b3ed6edb8df42.png)

四、什么方法是最好的？
-----------

       理想的价格值实际上取决于请求的订单（金额、买入/卖出类型），并且应考虑每个可用交易所的订单簿以及所有相关费用。这很难计算。幸运的是，**足够好的价格值**在定义上并不需要是理想的。并且上述聚合算法的一些组合可能对 DeFi 领域的大多数用例都非常有用。尽管如此，在构建依赖于预言机定价数据的 DeFi 协议之前，了解所有潜在风险并为您的案例选择最佳聚合方法非常重要

---

*Originally published on [dldw1314](https://paragraph.com/@starkware123/CxU7KUKIMQWjxJfKHqc6)*
