預言機與搶跑交易 - Angle 研究系列第 1 部分

中級2/20/2025, 5:32:13 AM
本文深入解析 Angle Protocol 的預言機設計及其對搶先交易的防禦機制。Angle 通過結合 Chainlink 和 Uniswap V3 TWAP,提供了一種創新的解決方案,旨在保護協議免受搶先交易的損害,同時確保用戶獲得公平的交易價格。

引言

Angle 允許用戶鑄造和銷燬 agTokens(穩定幣)以換取其他代幣。交易者也可以在可用的抵押品/穩定幣對上開設多頭頭寸。這些不是傳統的永久合約,因為均衡不依賴於資金費率,而執行價格直接來自預言機。考慮到這些用例,協議需要一種可靠的方式來定價可用資產,以便能夠向用戶報價公平的價格,並保護自身免受搶跑交易的影響。在這篇文章的 FAQ 中,Samcszun 解釋了為何這並不只是簡單地使用現貨價格。

搶跑交易是市場中的一個長期存在的問題。這歸結於某些參與者可以比其他人更早地獲取信息,他們可以利用這些信息在交易的另一方承擔風險的情況下獲取無風險利潤。歷史上,鏈上防止這一現象一直非常困難。以太坊交易的高成本和低速度使得預言機很難快速頻繁地更新價格。這在鏈下和鏈上的價格之間引入了延遲,從而使搶跑交易者能夠利用這一點獲利。

並非所有的穩定幣協議都關心預言機延遲帶來的搶跑交易風險。在 Maker 的 DAI 案例中,預言機延遲通常對協議有利。某人看到她的頭寸將在下一個預言機更新中因價格下跌而被清算,她受到激勵將資金放回保管庫,從而提高協議的健康度和抵押比例。

合成資產(Synthetix)允許在合成資產和抵押品之間進行預言機價值交換,是一個完美的例子,說明穩定幣協議面臨搶跑交易的難題。他們的博客文章總結了該協議與搶跑交易的漫長曆史,包括他們過去遭受的一些攻擊。

與 Synthetix 類似,Angle 允許在預言機價值處於無價格滑移的情況下進行資產交換。因此,Angle 也面臨同樣的搶跑交易問題。Angle 核心團隊為了防止搶跑交易付出了大量努力。在這方面實施了兩個主要改進:特定的預言機設計和動態費用結構。在本文中,我們將解釋 Angle 的預言機設計及其背後的原因。

搶跑交易一個預言機更新:一個例子

在深入瞭解 Angle 的解決方案之前,讓我們先試圖理解搶跑交易是如何對協議造成損害的。我們將考慮一個例子,其中 ETH 被接受作為支持 Angle 穩定幣的抵押品。

沒有交易費用

假設攻擊者正在查看鏈下 ETH 價格,並看到 Chainlink 預言機即將以更高的價格(從 p0 更新到 p1,其中 p0 < p1)更新鏈上數據。這個攻擊者可以發送一筆交易以 p0 的價格銷燬 x 穩定幣,以 x/p0 的 ETH 換取,然後在價格更新到 p1 後將其再賣給協議,從而獲得利潤:

由於這個預言機更新的搶跑交易,這部分利潤已從協議儲備中拿走。如果我們設定 x = 100 ETH 且 p1 = 1.01 * p0(價格上漲 1%),這將意味著攻擊者從協議的儲備中拿走了 1 ETH。

有交易費用

幸運的是,增加交易費用可以減輕這個問題,因為它們會侵蝕搶跑交易者的利潤,減少機會。

例如,如果鑄造和銷燬的交易費用是恆定且相等的 f,則一個在 p0 銷燬 x 穩定幣並在 p1 以 ETH 再出售給協議的攻擊者,最終會出現以下利潤:

與之前的情況相比,費用減少了利潤:

當交易費用為 f=0.3% 並遵循上述例子時,攻擊者的利潤現在僅為 0.39 ETH。

帶交易費用和兩個預言機解決方案

為了進一步減少這個機會,我們可以依賴一個輔助預言機來獲取兩個可能的價格源:pC(Chainlink 價格)和 pU(Uniswap 價格)。協議可以利用最有利的價格(鑄造時較低的價格,即購買用戶的代幣,以及銷燬時較高的價格,即賣出 ETH 給用戶),從而使搶跑交易的機會變得更加不具吸引力。

想象一個交易者正試圖從上述相同機會中獲利,假設 pC0 < pC1。

另一方面,我們可以認為 pU 是恆定的,且更接近於 pC0,因此:我們稍後將看到,由於 Uniswap 時間加權平均價格(TWAP)的設計,pU 往往滯後於 pC。

在這種情況下,試圖從潛在機會中獲利的攻擊者將以 pC0 從協議購買代幣(銷燬穩定幣),換取 x(1-f)/pC0 的 ETH,並在 pU1 以更高價格將其再次賣出,導致操作的損益為:

如果我們保持上述例子的數字,攻擊者在此操作中最終將損失 0.6 ETH。

Angle 的解決方案

Angle 的設計專門為了消除這一搶跑交易風險。因此,協議將實施與上述例子非常相似的機制。在本節中,我們將更詳細地探討潛在的現有選項,關注我們將要實施的設計的具體性,並進行關於我們選擇 TWAP 時間窗口的分析。

選項

可能適合 Angle 用例的主要預言機解決方案有:

  • Chainlink
  • Uniswap V3 TWAP
  • Maker Feeds

Chainlink 是顯而易見的首選:它是一種廣泛使用的去中心化預言機解決方案,提供覆蓋多種資產的多條數據源。它們的價格來自多個數據源,並經過去中心化的中繼網絡,確保這些數據是可靠、可訪問且難以操縱的。然而,某些數據源通常只在“顯著”的價格變化(如 ETH/USD 的 0.5%)後或經過一段時間後更新,這意味著 Chainlink 的價格總是滯後於實際市場價格。因此,Chainlink 的價格更新可能會因為查看鏈下價格或內存池而遭到搶跑交易。

Uniswap V3 時間加權平均價格(TWAP) 是另一個顯而易見的、廣泛使用的預言機解決方案。可以從 Uniswap 的合約中查詢 TWAP,以獲取池中代幣在特定時間段的時間加權平均價格,時間範圍從幾秒到 9 天。價格是根據在指定時間內這兩個代幣之間的價格平均計算得出的。藉助這一點,操縱 TWAP 需要大量資金並且需要較長時間,這在大多數情況下效率不高。

儘管如此,由於 TWAP 是過去區塊觀察的平均價格,它們相比於實時離鏈價格甚至 Chainlink 價格源也往往滯後。如果單獨使用,它們不足以保護協議免受搶先交易。

此外,由於 TWAP 僅報告鏈上代幣對的價格,它們無法滿足協議提供對未在鏈上(因此也不在 Uniswap 池中)表示的資產的訪問目標,例如外匯穩定幣。

使用 Maker Oracles 本可以是 Angle 的另一個選擇。但這意味著要信任 MakerDAO,並經過治理流程申請以訪問價格數據。價格源也僅限於 Maker 使用的那些,這對我們來說不夠,因為我們希望訪問外匯匯率。

Angle 的設計:Chainlink + UniV3 TWAP = 💪

考慮到這一點,決定將 Angle Protocol 的 Chainlink 預言機與 10 分鐘的 Uni V3 TWAP 結合起來。這使得在任何時候都能獲得儘可能公平的價格,同時保護協議免受搶先交易攻擊。

一般來說,Angle 的合約將比較兩個渠道的價格,並使用對協議最有利的價格。通過這種設計,搶先交易協議變得更加複雜,因為在利用協議的匯率時,必須操縱或搶先交易兩個預言機。

具體而言,我們的合約將獲取 Chainlink 和 Uniswap 之間所有波動資產/穩定幣對的最佳價格,並使用 Chainlink 的外匯預言機將價格轉換為所需的法定貨幣。每個抵押品/穩定幣對將有一個專用的預言機合約及其獨立的價格源。

它是如何運作的?

例如,假設用戶想要在 ETH/agEUR 對上進行交易。我們的合約需要獲取 ETH/USD 和 USD/EUR 的價格。它將保留來自 Chainlink 的 ETH/USD 最佳價格和 ETH/USDC UniV3 池的 10 分鐘 TWAP。然後,它將從 Chainlink 獲取外匯 USD/EUR 的價格。

示例: Uniswap ETH/USDC TWAP: 1900 USD(該協議假設 USDC 通常保持其錨定,即 1 USDC 價值 1 USD);Chainlink ETH 價格:1850 USD;Chainlink USD 價格:1.16 EUR。

如果用戶想要在這種情況下 鑄造 agEUR,協議將使用它能找到的較低 ETH/USD 價格,即 Chainlink 的每 ETH 1850 USD。相反,如果在同樣的情況下,用戶想要 銷燬 agEUR 對 wETH,協議將使用較高的價格,即 Uni ETH/USDC TWAP 為 1900。在這兩種情況下,協議將使用 Chainlink 的 USD/EUR 1.16 匯率將 ETH/USD 轉換為 ETH/EUR。

類似地,協議將為希望開設永久合約的用戶使用最高價格,而為希望關閉合約的用戶使用最低價格。

更一般地說:

  1. 需要價格的用戶合約會調用相關的預言機合約。
  2. 根據對的類型,預言機合約可以從 UniV3 TWAP 和 Chainlink 讀取報價,或僅從 Chainlink 讀取(例如用於穩定幣對穩定幣的交換),並將其返回給主合約。
  3. 根據執行的操作(鑄造、銷燬、開設或關閉),相關合約保留協議的最佳報價並執行交易。

選擇 Uni V3 TWAP 時間窗口

Angle 合約將使用 10 分鐘的時間窗口進行 TWAP。這一選擇經過仔細思考,因為不同的時間窗口可能導致截然不同的價格結構。

不同時間窗口之間的差異

在 Angle 的案例中,一方面,時間窗口應該 suffisamment 長,以便為協議與現貨價格之間提供足夠的滯後。這確實允許在價格波動的情況下在鑄造和銷燬價格之間獲得更高的價差,當 Chainlink 的搶先交易風險加倍時。此外,時間窗口越長,操縱 TWAP 價格的難度越大,因為最近的觀察對價格的影響越小。

另一方面,協議仍應向用戶提供公平且最新的報價:使用過寬的時間窗口會使我們與當前市場價格之間產生過大的價格差距,使用過窄的時間窗口則無法給我們想要的價格差異。

Compare 10 分鐘和 60 分鐘的 TWAP 與 Chainlink 的價格源

為了讓你瞭解我們為何最終選擇 10 分鐘時間窗口,下面顯示了 10 分鐘和 60 分鐘的 ETH/USDC TWAP 與 Chainlink ETH/USD 價格和 Coinbase 收盤價格的比較。

你可以看到,在價格之間過渡時,協議在用戶鑄造/關閉和銷燬/開設時使用的上限率和下限率,如何在 Chainlink 和 Uniswap 的 TWAP 之間的最有利價格之間移動。


雖然 60 分鐘的 TWAP 板塊往往給出價格遠離市場,而 10 分鐘的 TWAP 為 Chainlink 的價格源提供了有益的緩衝,保持價格與市場足夠接近。

值得注意的是,從第一個圖表可以看出,波動性越高,Chainlink 和 Uniswap 價格之間的價差越大。相反,當價格在一段時間內保持相對穩定時,Uniswap 和 Chainlink 的價格源互相接近。

將 TWAP 用作對搶先交易的額外保護,實際上等於在價格波動較大的時期動態收取更多的重要費用,因為這種情況下由於鏈上預言機延遲,搶先交易風險更大。這些較高有效費用的代價是降低了套利交易者直接從協議重新定價穩定幣的能力。

在大多數情況下,Uniswap 和 Chainlink 價格將非常相似,使用戶幾乎感覺不到使用了兩個預言機解決方案。在高波動性時期,當協議因為當前和未來 Chainlink 鏈上價格之間的重要價格差異而可能被搶先交易時,協議價格將會不同,協議將受到保護,免受搶先交易。

關注 Synthetix 費用回收/返還

Angle 的預言機研究深受 Synthetix 關於搶先交易的治理討論及其相關博客文章的啟發。在我們的研究中,我們還遇到的另一個選項是他們在 2020 年 2 月實施的費用回收/返還 ,該選項最終是臨時性的。

他們所做的就是為交易增加一個等待期,在此期間用戶無法操縱他們想要使用的 Synth。在此期間,預言機可以檢查交易是否受到不一致的影響,即執行時和等待期結束時之間是否存在價格差異。如果存在,則價格差異必須由用戶或協議支付給另一方(協議或用戶),或者在下一次與 Synthetix 的交易中支付。

這種解決方案在減少搶先交易方面非常有效,但他們不得不延長等待時間並增加費用,這對所有交易者而言都帶來了非常糟糕的用戶體驗。它還阻止了 Synth 與其他協議在許多用例上的組合。在 SIP-120 中,他們用為大型交易添加使用 TWAP 預言機的方案替代了這一解決方案。

結論

Angle 的特定預言機設計對協議有兩個主要影響:

攻擊者需要操縱兩個市場才能欺騙協議,極大地降低了成功搶跑交易的風險。

在市場壓力時期,協議很可能不會給用戶報價最佳價格。

最後一個影響是 在 Fei 的治理論壇中討論過的 議題。因為提供最佳交易執行並不是協議的核心目標,我們認為搶跑交易抗性更為重要,以確保協議更加安全。次級市場在高波動期間將提供更好的交易執行。

我們在 Angle 項目中的目標是設計一個完全支持的高效穩定幣協議。做到這一點需要考慮協議的許多方面,以確保它無法被欺騙到不利地位,其中一個是搶跑交易抵抗。這一點尤為重要,因為依賴預言機的鏈上去中心化穩定幣的穩定性取決於其預言機。

增加以 TWAP 形式的次級價格饋送可以幫助協議減輕高市場波動潛在的惡劣影響,以及在這些時刻出現的搶跑交易機會。

最後需要注意的是,這種預言機解決方案保持靈活性和可擴展性。一方面,Angle 治理可以隨時投票並更新其預言機合約。另一方面,可以為任何由 Chainlink 支持的價格饋送創建預言機。這是最低限度的支持,以實現 Angle 的願景,即以資本高效的方式將金融資產帶入鏈上!

聲明:

  1. 本文轉載自 [登鏈社區],著作權歸屬原作者 [Angle],如對轉載有異議,請聯繫 Gate Learn 團隊,團隊會根據相關流程儘速處理。
  2. 免責聲明:本文所表達的觀點和意見僅代表作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本 由Gate Learn 團隊翻譯, 在未提及 Gate.io 的情況下不得複製、傳播或抄襲經翻譯文章。

預言機與搶跑交易 - Angle 研究系列第 1 部分

中級2/20/2025, 5:32:13 AM
本文深入解析 Angle Protocol 的預言機設計及其對搶先交易的防禦機制。Angle 通過結合 Chainlink 和 Uniswap V3 TWAP,提供了一種創新的解決方案,旨在保護協議免受搶先交易的損害,同時確保用戶獲得公平的交易價格。

引言

Angle 允許用戶鑄造和銷燬 agTokens(穩定幣)以換取其他代幣。交易者也可以在可用的抵押品/穩定幣對上開設多頭頭寸。這些不是傳統的永久合約,因為均衡不依賴於資金費率,而執行價格直接來自預言機。考慮到這些用例,協議需要一種可靠的方式來定價可用資產,以便能夠向用戶報價公平的價格,並保護自身免受搶跑交易的影響。在這篇文章的 FAQ 中,Samcszun 解釋了為何這並不只是簡單地使用現貨價格。

搶跑交易是市場中的一個長期存在的問題。這歸結於某些參與者可以比其他人更早地獲取信息,他們可以利用這些信息在交易的另一方承擔風險的情況下獲取無風險利潤。歷史上,鏈上防止這一現象一直非常困難。以太坊交易的高成本和低速度使得預言機很難快速頻繁地更新價格。這在鏈下和鏈上的價格之間引入了延遲,從而使搶跑交易者能夠利用這一點獲利。

並非所有的穩定幣協議都關心預言機延遲帶來的搶跑交易風險。在 Maker 的 DAI 案例中,預言機延遲通常對協議有利。某人看到她的頭寸將在下一個預言機更新中因價格下跌而被清算,她受到激勵將資金放回保管庫,從而提高協議的健康度和抵押比例。

合成資產(Synthetix)允許在合成資產和抵押品之間進行預言機價值交換,是一個完美的例子,說明穩定幣協議面臨搶跑交易的難題。他們的博客文章總結了該協議與搶跑交易的漫長曆史,包括他們過去遭受的一些攻擊。

與 Synthetix 類似,Angle 允許在預言機價值處於無價格滑移的情況下進行資產交換。因此,Angle 也面臨同樣的搶跑交易問題。Angle 核心團隊為了防止搶跑交易付出了大量努力。在這方面實施了兩個主要改進:特定的預言機設計和動態費用結構。在本文中,我們將解釋 Angle 的預言機設計及其背後的原因。

搶跑交易一個預言機更新:一個例子

在深入瞭解 Angle 的解決方案之前,讓我們先試圖理解搶跑交易是如何對協議造成損害的。我們將考慮一個例子,其中 ETH 被接受作為支持 Angle 穩定幣的抵押品。

沒有交易費用

假設攻擊者正在查看鏈下 ETH 價格,並看到 Chainlink 預言機即將以更高的價格(從 p0 更新到 p1,其中 p0 < p1)更新鏈上數據。這個攻擊者可以發送一筆交易以 p0 的價格銷燬 x 穩定幣,以 x/p0 的 ETH 換取,然後在價格更新到 p1 後將其再賣給協議,從而獲得利潤:

由於這個預言機更新的搶跑交易,這部分利潤已從協議儲備中拿走。如果我們設定 x = 100 ETH 且 p1 = 1.01 * p0(價格上漲 1%),這將意味著攻擊者從協議的儲備中拿走了 1 ETH。

有交易費用

幸運的是,增加交易費用可以減輕這個問題,因為它們會侵蝕搶跑交易者的利潤,減少機會。

例如,如果鑄造和銷燬的交易費用是恆定且相等的 f,則一個在 p0 銷燬 x 穩定幣並在 p1 以 ETH 再出售給協議的攻擊者,最終會出現以下利潤:

與之前的情況相比,費用減少了利潤:

當交易費用為 f=0.3% 並遵循上述例子時,攻擊者的利潤現在僅為 0.39 ETH。

帶交易費用和兩個預言機解決方案

為了進一步減少這個機會,我們可以依賴一個輔助預言機來獲取兩個可能的價格源:pC(Chainlink 價格)和 pU(Uniswap 價格)。協議可以利用最有利的價格(鑄造時較低的價格,即購買用戶的代幣,以及銷燬時較高的價格,即賣出 ETH 給用戶),從而使搶跑交易的機會變得更加不具吸引力。

想象一個交易者正試圖從上述相同機會中獲利,假設 pC0 < pC1。

另一方面,我們可以認為 pU 是恆定的,且更接近於 pC0,因此:我們稍後將看到,由於 Uniswap 時間加權平均價格(TWAP)的設計,pU 往往滯後於 pC。

在這種情況下,試圖從潛在機會中獲利的攻擊者將以 pC0 從協議購買代幣(銷燬穩定幣),換取 x(1-f)/pC0 的 ETH,並在 pU1 以更高價格將其再次賣出,導致操作的損益為:

如果我們保持上述例子的數字,攻擊者在此操作中最終將損失 0.6 ETH。

Angle 的解決方案

Angle 的設計專門為了消除這一搶跑交易風險。因此,協議將實施與上述例子非常相似的機制。在本節中,我們將更詳細地探討潛在的現有選項,關注我們將要實施的設計的具體性,並進行關於我們選擇 TWAP 時間窗口的分析。

選項

可能適合 Angle 用例的主要預言機解決方案有:

  • Chainlink
  • Uniswap V3 TWAP
  • Maker Feeds

Chainlink 是顯而易見的首選:它是一種廣泛使用的去中心化預言機解決方案,提供覆蓋多種資產的多條數據源。它們的價格來自多個數據源,並經過去中心化的中繼網絡,確保這些數據是可靠、可訪問且難以操縱的。然而,某些數據源通常只在“顯著”的價格變化(如 ETH/USD 的 0.5%)後或經過一段時間後更新,這意味著 Chainlink 的價格總是滯後於實際市場價格。因此,Chainlink 的價格更新可能會因為查看鏈下價格或內存池而遭到搶跑交易。

Uniswap V3 時間加權平均價格(TWAP) 是另一個顯而易見的、廣泛使用的預言機解決方案。可以從 Uniswap 的合約中查詢 TWAP,以獲取池中代幣在特定時間段的時間加權平均價格,時間範圍從幾秒到 9 天。價格是根據在指定時間內這兩個代幣之間的價格平均計算得出的。藉助這一點,操縱 TWAP 需要大量資金並且需要較長時間,這在大多數情況下效率不高。

儘管如此,由於 TWAP 是過去區塊觀察的平均價格,它們相比於實時離鏈價格甚至 Chainlink 價格源也往往滯後。如果單獨使用,它們不足以保護協議免受搶先交易。

此外,由於 TWAP 僅報告鏈上代幣對的價格,它們無法滿足協議提供對未在鏈上(因此也不在 Uniswap 池中)表示的資產的訪問目標,例如外匯穩定幣。

使用 Maker Oracles 本可以是 Angle 的另一個選擇。但這意味著要信任 MakerDAO,並經過治理流程申請以訪問價格數據。價格源也僅限於 Maker 使用的那些,這對我們來說不夠,因為我們希望訪問外匯匯率。

Angle 的設計:Chainlink + UniV3 TWAP = 💪

考慮到這一點,決定將 Angle Protocol 的 Chainlink 預言機與 10 分鐘的 Uni V3 TWAP 結合起來。這使得在任何時候都能獲得儘可能公平的價格,同時保護協議免受搶先交易攻擊。

一般來說,Angle 的合約將比較兩個渠道的價格,並使用對協議最有利的價格。通過這種設計,搶先交易協議變得更加複雜,因為在利用協議的匯率時,必須操縱或搶先交易兩個預言機。

具體而言,我們的合約將獲取 Chainlink 和 Uniswap 之間所有波動資產/穩定幣對的最佳價格,並使用 Chainlink 的外匯預言機將價格轉換為所需的法定貨幣。每個抵押品/穩定幣對將有一個專用的預言機合約及其獨立的價格源。

它是如何運作的?

例如,假設用戶想要在 ETH/agEUR 對上進行交易。我們的合約需要獲取 ETH/USD 和 USD/EUR 的價格。它將保留來自 Chainlink 的 ETH/USD 最佳價格和 ETH/USDC UniV3 池的 10 分鐘 TWAP。然後,它將從 Chainlink 獲取外匯 USD/EUR 的價格。

示例: Uniswap ETH/USDC TWAP: 1900 USD(該協議假設 USDC 通常保持其錨定,即 1 USDC 價值 1 USD);Chainlink ETH 價格:1850 USD;Chainlink USD 價格:1.16 EUR。

如果用戶想要在這種情況下 鑄造 agEUR,協議將使用它能找到的較低 ETH/USD 價格,即 Chainlink 的每 ETH 1850 USD。相反,如果在同樣的情況下,用戶想要 銷燬 agEUR 對 wETH,協議將使用較高的價格,即 Uni ETH/USDC TWAP 為 1900。在這兩種情況下,協議將使用 Chainlink 的 USD/EUR 1.16 匯率將 ETH/USD 轉換為 ETH/EUR。

類似地,協議將為希望開設永久合約的用戶使用最高價格,而為希望關閉合約的用戶使用最低價格。

更一般地說:

  1. 需要價格的用戶合約會調用相關的預言機合約。
  2. 根據對的類型,預言機合約可以從 UniV3 TWAP 和 Chainlink 讀取報價,或僅從 Chainlink 讀取(例如用於穩定幣對穩定幣的交換),並將其返回給主合約。
  3. 根據執行的操作(鑄造、銷燬、開設或關閉),相關合約保留協議的最佳報價並執行交易。

選擇 Uni V3 TWAP 時間窗口

Angle 合約將使用 10 分鐘的時間窗口進行 TWAP。這一選擇經過仔細思考,因為不同的時間窗口可能導致截然不同的價格結構。

不同時間窗口之間的差異

在 Angle 的案例中,一方面,時間窗口應該 suffisamment 長,以便為協議與現貨價格之間提供足夠的滯後。這確實允許在價格波動的情況下在鑄造和銷燬價格之間獲得更高的價差,當 Chainlink 的搶先交易風險加倍時。此外,時間窗口越長,操縱 TWAP 價格的難度越大,因為最近的觀察對價格的影響越小。

另一方面,協議仍應向用戶提供公平且最新的報價:使用過寬的時間窗口會使我們與當前市場價格之間產生過大的價格差距,使用過窄的時間窗口則無法給我們想要的價格差異。

Compare 10 分鐘和 60 分鐘的 TWAP 與 Chainlink 的價格源

為了讓你瞭解我們為何最終選擇 10 分鐘時間窗口,下面顯示了 10 分鐘和 60 分鐘的 ETH/USDC TWAP 與 Chainlink ETH/USD 價格和 Coinbase 收盤價格的比較。

你可以看到,在價格之間過渡時,協議在用戶鑄造/關閉和銷燬/開設時使用的上限率和下限率,如何在 Chainlink 和 Uniswap 的 TWAP 之間的最有利價格之間移動。


雖然 60 分鐘的 TWAP 板塊往往給出價格遠離市場,而 10 分鐘的 TWAP 為 Chainlink 的價格源提供了有益的緩衝,保持價格與市場足夠接近。

值得注意的是,從第一個圖表可以看出,波動性越高,Chainlink 和 Uniswap 價格之間的價差越大。相反,當價格在一段時間內保持相對穩定時,Uniswap 和 Chainlink 的價格源互相接近。

將 TWAP 用作對搶先交易的額外保護,實際上等於在價格波動較大的時期動態收取更多的重要費用,因為這種情況下由於鏈上預言機延遲,搶先交易風險更大。這些較高有效費用的代價是降低了套利交易者直接從協議重新定價穩定幣的能力。

在大多數情況下,Uniswap 和 Chainlink 價格將非常相似,使用戶幾乎感覺不到使用了兩個預言機解決方案。在高波動性時期,當協議因為當前和未來 Chainlink 鏈上價格之間的重要價格差異而可能被搶先交易時,協議價格將會不同,協議將受到保護,免受搶先交易。

關注 Synthetix 費用回收/返還

Angle 的預言機研究深受 Synthetix 關於搶先交易的治理討論及其相關博客文章的啟發。在我們的研究中,我們還遇到的另一個選項是他們在 2020 年 2 月實施的費用回收/返還 ,該選項最終是臨時性的。

他們所做的就是為交易增加一個等待期,在此期間用戶無法操縱他們想要使用的 Synth。在此期間,預言機可以檢查交易是否受到不一致的影響,即執行時和等待期結束時之間是否存在價格差異。如果存在,則價格差異必須由用戶或協議支付給另一方(協議或用戶),或者在下一次與 Synthetix 的交易中支付。

這種解決方案在減少搶先交易方面非常有效,但他們不得不延長等待時間並增加費用,這對所有交易者而言都帶來了非常糟糕的用戶體驗。它還阻止了 Synth 與其他協議在許多用例上的組合。在 SIP-120 中,他們用為大型交易添加使用 TWAP 預言機的方案替代了這一解決方案。

結論

Angle 的特定預言機設計對協議有兩個主要影響:

攻擊者需要操縱兩個市場才能欺騙協議,極大地降低了成功搶跑交易的風險。

在市場壓力時期,協議很可能不會給用戶報價最佳價格。

最後一個影響是 在 Fei 的治理論壇中討論過的 議題。因為提供最佳交易執行並不是協議的核心目標,我們認為搶跑交易抗性更為重要,以確保協議更加安全。次級市場在高波動期間將提供更好的交易執行。

我們在 Angle 項目中的目標是設計一個完全支持的高效穩定幣協議。做到這一點需要考慮協議的許多方面,以確保它無法被欺騙到不利地位,其中一個是搶跑交易抵抗。這一點尤為重要,因為依賴預言機的鏈上去中心化穩定幣的穩定性取決於其預言機。

增加以 TWAP 形式的次級價格饋送可以幫助協議減輕高市場波動潛在的惡劣影響,以及在這些時刻出現的搶跑交易機會。

最後需要注意的是,這種預言機解決方案保持靈活性和可擴展性。一方面,Angle 治理可以隨時投票並更新其預言機合約。另一方面,可以為任何由 Chainlink 支持的價格饋送創建預言機。這是最低限度的支持,以實現 Angle 的願景,即以資本高效的方式將金融資產帶入鏈上!

聲明:

  1. 本文轉載自 [登鏈社區],著作權歸屬原作者 [Angle],如對轉載有異議,請聯繫 Gate Learn 團隊,團隊會根據相關流程儘速處理。
  2. 免責聲明:本文所表達的觀點和意見僅代表作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本 由Gate Learn 團隊翻譯, 在未提及 Gate.io 的情況下不得複製、傳播或抄襲經翻譯文章。
即刻開始交易
註冊並交易即可獲得
$100
和價值
$5500
理財體驗金獎勵!