DEX手續費比較
原文作者:Yule Souza Andrade 翻譯:Block unicorn
用戶在以太坊區塊鏈中發現的主要用例是無需中介即可在加密資產之間進行交換的能力。去中心化交易所或DEX 是用於此活動的平台。它們可以概括為一個應用程序,允許您使用其池中可用的流動性將ETH 或任何代幣交換為其他代幣。
去中心化交換代表了以太坊上最廣泛的手續費消耗。根據The Block 的統計,與代幣交換相關的合約(代碼段)是消耗區塊鏈資源最多的合約之一。
儘管牛逼HESE系統permissionless性質,令人驚嘆的體積和無可爭議的成功,上鍊做業務的成本,使其造成負擔一些用戶。掉期成本可以分解為幾個不同的成本要素:
價格影響
滑移
滑移
底層區塊鏈的交易費用
了解這些成本對於資本效率至關重要,並且可以從做出正確選擇的用戶那裡節省數千美元。
DEX 行業有幾個可供用戶選擇的替代協議應用程序,它們提供相同的代幣交換核心服務。本文旨在根據經驗比較最後一項,即使用市場上可用的不同DEX 時的交易費用成本。
為什麼交易和DEX 之間的gas 成本會有所不同?
任何鏈上操作都需要根據它消耗的計算資源量來定價。在以太坊網絡中,gas 是用於衡量用於執行每個特定操作的計算工作量的單位,並直接影響交易成本。由於每個協議採取不同的方法並且需要執行不同的功能來進行交換,因此每個交易/協議的消耗也不同。
一筆交易可以調用任意數量的函數並與許多不同的智能合約進行交互。下面,我們可以看到使用Tenderly 提供的工具進行的兩個不同交易的gas 消耗明細。如您所見,第二筆交易最終比第一筆交易多花費了70% 的gas。

手續費對比
每個DEX 都有其執行互換的方法,但可以在它們之間確定一些模式。為了比較不同DEX 之間掉期的gas 成本,每種都選擇了一種。 Uniswap V2代表了傳統的恆定產品池,Uniswap V3引入了集中流動性池,選擇了Curve作為其混合和自定義曲線池,最後選擇了帶有加權池的Balancer V2。對於他們中的每一個,都設置了一個沙丘儀表板:
平衡器:https : //duneanalytics.com/yulesa/Balancer-Gas
曲線:https : //duneanalytics.com/yulesa/Curve-Gas-Usage
Uniswap V2:https ://duneanalytics.com/yulesa/Uniswap-V2-Gas-Usage
Uniswap V3:https ://duneanalytics.com/yulesa/Uniswap-V3-Gas-Usage
儀表板允許通過在選擇框中輸入池地址來單獨檢查每個池。它還有一個事務表來過濾異常值以進行更詳細的調查。

在分析一個協議的多個礦池時,只有超過100 筆交易符合上述標準的礦池才會被繪製出來,以獲得更相關的結果。在分析與單個池交互的事務時,事務按交換中涉及的躍點數進行分組。
交換執行可以包裝在也執行其他代碼的事務中。為了排除這種影響,只分析了直接調用協議保險庫/路由器合同的交易。此過濾器用於排除由DEX 聚合器和合約路由的掉期交易,這些合約捆綁了多個會增加交易成本但與DEX 協議本身無關的功能。
Balancer
Balancer池分佈
Balancer 的大部分交易來自DEX 聚合器應用程序,例如1inch、Metamask 等。由於這些交易被排除在分析之外,這自然會減少可用的數據量。儘管如此,仍有14 個礦池符合至少100 個直接調用交易的標準。正如預期的那樣,當單獨評估每個池時,可以看到單跳交換和多跳交換之間的顯著差異。另一項發現是,池中代幣的數量不會改變使用它的交易的gas 支出。重要的是要記住,Balancer 中的2 代幣池可能會或可能不會充當預言機——如果它們這樣做,當存儲價格數據的內存槽被初始化時,gas 成本會更高一些。這可以在這些池的移動平均圖表上查看。
以上3張圖分別為LINK/WET、USDC/WETH 和WBTC/WETH 礦池分佈
Curve(CRV)

Curve池分佈
從本文研究的DEX 來看,Curve 有一個獨特的機制,這使得比較有時會不平衡。每個Curve 池(元池除外)都是為其資產定制的。
曲線顯示了所分析的DEX 之間最顯著的氣體消耗差異。這得到部分解釋,因為Curve 允許交換未包裝的代幣,如DAI 或USDC,而池設計為不依賴其他協議IOU,如cDAI 或yUSDC,並且包裝和拆包過程是交易的一部分。結果,雖然池中的資產積累了這些協議的好處,但它使交換變得更加昂貴。
以上3張分別為Curve 3pool、renBTC 和Tricrypto 池分佈
Uniswap V2
除了是此列表中最古老的協議外,Uniswap V2 還被廣泛採用。協議中已經創建了2500 多個礦池,服務於資產的長尾。繪製上圖時施加了一些限制,但它們可以描繪協議中的gas 成本。一些最受歡迎的代幣,例如穩定幣和BTC,廣泛用於ABC<-> ETH <->WBTC 等交易中的多跳交換。有時ABC 轉賬是gas 密集型的,會增加涉及這些流行代幣的交易中使用的平均gas。再一次,在調查每個池時,交易gas 使用之間最顯著的差異可以分配給每筆交易進行的跳數。
分別為LINK/WET、USDC/WETH 和WBTC/WETH 礦池分佈
Uniswap V3

Uniswap 協議第3 版的最大擔憂之一是交換交易可能會花費更多的gas。 Uniswap V3 掉期受其造成的價格影響。相對於可用流動性的訂單越高,它就越能推動價格跨分時,離散的價格區間代表0.0001% 的價格上漲或下跌,其中流動性需要調整。由於大多數交易對價格的影響相對較小,因此交易成本中位數與之前的版本一致。但是,在處理適度的流動性池時,用戶需要關注訂單對價格的影響。
分別為LINK/WET、USDC/WETH 和WBTC/WETH 礦池分佈
協議費用比較

每個協議的費用成本
選擇了Balancer V2 和Uniswap V2 和V3 共有的三個等效池來進行詳細比較——USDC/WETH、WBTC/WETH 和LINK/WETH。由於Curve 有不同的方法,因此選擇了它的一些池來混合在圖片中,但不會進入比較。
可以觀察到,3 個DEX 之間消耗的氣體沒有顯著差異。觀察到的差異可能與為研究選擇的方法不精確有關。對於2 跳掉期,差異可歸因於交易中涉及的其中一個代幣合約中的轉移函數的二階效應。
結論

結論
結論
該研究表明,所分析的DEX 之間沒有顯著差異。對交易使用的gas 的最大影響是執行交換所必須進行的跳數。 1 跳和2 跳交換之間的差異比DEX 之間的差異更有意義。此外,根據交易規模,掉期成本的其他因素,如LP 費用或滑點,可能會對總成本產生更顯著的影響。
儘管Curve 在gas 支出方面有一些非常有競爭力的礦池,但它的一些礦池是用底層協議IOU 設計的,包裝和解包過程會顯著影響它們的掉期。
關於分析的考慮
執行掉期通常意味著調用參與的代幣合約的轉移函數——例外是由於Balancer 的單一金庫模型或在Balancer 金庫中使用內部用戶餘額而在Balancer 上進行多跳交易。一些代幣在調用transfer 函數時可以執行的不僅僅是簡單的記賬,從而增加了交易的掉期成本。尚未完全實現使用Dune 排除這種影響的實用方法。當交易執行多跳以進行交換並且其中一個令牌表現不佳時,這種行為尤其令人擔憂。雖然,相信這個問題會系統地影響所有協議,並且很少會顯著影響結果。將分析範圍限制為每個令牌池的單跳交易可以減輕這種影響。
由於某些協議從一開始就有數以千計的交易,在Dune/Internet 瀏覽器中處理如此大量的數據會大大降低儀表板的可用性。因此,在這些協議中,對分析的交易數量施加了限制。然而,數據人口的減少不會顯著改變結果。對於單個池視圖,儀表板的上限為1000 筆交易。 Uniswap V2 僅限於上個月的交易。


