如何理解自動做市商中的價格沖擊

來源 | research.paradigm.xyz

作者 | Hasu

每天有成千上萬的人第一次使用去中心化交易所,然而,公鏈的特性通常會讓新手措手不及,即使是那些熟悉傳統市場的用戶,結果就是交易者的資金流向套利者和搶跑者,導致其操作受到預期之外的影響,

在宏觀層面上,我們可以將每筆交易的成本分解為幾個部分:

  • 價格沖擊
  • 中間費或交易費
  • 滑點
  • 底層區塊鏈的交易費

這篇關于自動做市商 (AMM) 的文章將作為本系列的引介,并討論第一種也是最關鍵的成本:價格沖擊,讀者將了解到:

  • Uniswap v2, Sushiswap 和 Balancer 的 AMM 機制如何確定價格
  • 注:其他使用中心化訂單簿 (如 Serum) 或批量拍賣 (如 Gnosis) 的 DEX 本文不作討論)
  • 如何使用一些簡單策略最小化價格沖擊對個人交易的影響

流動性池是什么?

大多數去中心化交易所的流動性池代表了不同的交易對,例如 ETH/WBTC。不同于在訂單簿中匹配買賣方的方式,這些流動性池作為自動做市商 (AMM, automated market maker) 存在。

流動性池是一個智能合約,其中儲存了兩種或以上的代幣,并且允許任何人在其中進行存款和提款操作,但是受到特定規則的約束,

其中的一條規則就是恒定乘積公式 x * y = k,x 和 y 代表 A, B 兩種代幣的儲備,為了取出一定數量的代幣 A,用戶必須要存入成比數量的代幣 B 以維持恒定的 K 值 (注:每次交易的費用會導致 K 值略微升高),

AMM 如何定價?

根據恒定乘積公式可得,使用代幣 B 儲備量除以代幣 A 儲備量可以簡單得到代幣 A 的價格 (price_token_A = reserve_token_B / reserve token_A)。

表1: 不同的 AMM 公式會產生不同的價格曲線。假設 Uniswap v2 流動性池有 15 個 Y 代幣時,它只會為邊際 Y 代幣支付 0.1 個 X 代幣。但是當只有 2.5 個 Y 代幣時,它會支付 4.0 個 X 代幣,其他價格曲線旨在將更多流動性集中在某個價格 (例如穩定幣為 1.0),來源:Curve 白皮書

舉個真實的例子,在撰寫本文時 Uniswap 的 ETH/WBTC 交易池中有 2,700 WBTC 和 86,000 ETH,該儲備率意味著 ETH 當時的市場價格為 2,700 / 86,000 = 0.0314 WBTC,

至關重要的是,AMM 不會隨著其他市場的變動而更新此價格市場價格只會隨著池中代幣儲備率的變化而變化,當有人在其中進行交易時就會產生變化,

舉個例子,如果 Binance 中的 ETH 價格跌至 0.0310 WBTC 會發生什么?這意味著 Uniswap LP 目前正在以溢價購買 ETH,從而創造了套利機會。套利者在 Binance 上購買“便宜”的 ETH,然后在 Uniswap 上出售以獲利。他們會一直這樣做,直到 Uniswap ETH 單位價格變成 0.0310 WBTC (與 Binance 相同),他們無法再通過賣出 ETH 獲利。在我們上面的示例中,這會發生在以 17.2 WBTC 的價格向交易池出售 550 ETH 后 (為簡單起見,忽略費用和 gas),

因此,即使 AMM 不會根據現實世界的資訊更新其價格,由于持續的套利,交易者仍然可以預期 AMM 的報價會密切跟進全球市場價格。

價格沖擊是什么?

雖然我們學習了如何根據兩種代幣儲備比率計算當前市場價格,但該市場價格僅代表 AMM 想要的邊際代幣價格。然而在實踐中,交易者通常會一次性買賣許多代幣,每單位代幣的成本都比前一個高。

當前市場價格與預期成交價之間的差距就是價格沖擊 (price impact),

價格沖擊是以下兩個因素作用的結果:

  • 你交易量的規模在流動性池中的占比;
  • 流動性池采用的交易規則 (例如恒定乘積公式)。

表2 : 不同訂單規模下的平均成交價 (左 y 軸) 和價格沖擊 (右 y 軸) 對比圖。這兩個參數都隨著訂單規模增大而增加。隨著訂單規模在流動性池規模中的占比增加,成交價相對市場價格會高出更多。

表3: 在 Uniswap v2 上不同規模的流動性池中進行 10 WBTC 的賣單后,平均成交價 (左 y 軸) 和價格沖擊 (右 y 軸) 的對比圖,流動性池規模指的是交易池中兩種資產儲備量的總價值。10 WBTC 的賣單在不同流動性池中的占比分別為 0.19%、1.85% 和 18.52%,因此根據經驗,你的訂單的價格沖擊約為該訂單規模在流動性池中占比的兩倍,

如何最小化價格沖擊?

正如我們之前提到的,價格沖擊在交易總執行成本中占很大一部分,以下是一些能夠將價格沖擊最小化的簡單策略:

找到深度最好的市場到目前為止,我們已經確定價格沖擊取決于交易規模在流動性池或市場規模中的占比,因此,我們希望找到在某個價格區間流動性最好的交易池,以使成交價盡可能接近市場價格。Coingecko 上的市場深度表是一個不錯的切入點,

表4: 市場價格差異 2% 內的 UNI 交易對流動性排序。注意 Uniswap 和 Bitfinex 價差的差異。來源:Coingecko

關注 DeFi 以外的市場:雖然這是一篇關于自動做市商的文章,但是我們知道用戶并不總是能夠在鏈上獲取最佳的交易執行,實際上,由于所討論的自動做市商的流動性分布在一個連續的價格區間內,通常很少會有流動性集中在當前市場價格附近。這是許多去中心化交易所都試圖解決的問題。例如 Uniswap v3 可以讓做市商將其流動性集中在當前市場價格附近,從而提供比中心化交易所更有競爭力的價格。

如果有一筆交易改變了去中心化交易所上某個代幣的價格,且該代幣還在其它市場上交易,就會產生套利機會。如上所述,套利者將進行尾隨交易 (即在某筆交易后立即插入自己的交易),讓去中心化交易所上的價格重新回到全球市場價格,顯然,套利行為的存在本身就是一種執行不當證明,因為交易者無異于向套利者捐贈資金。這引出了一個問題:其它市場存在的情況下,你是否應該接受超過 2%-3% 的價格沖擊來執行鏈上交易?

注意交易費:自動做市商收取 0.3% 的交易費,這就意味著最佳買單和最佳賣單之間的價差是 0.6%,在這個范圍內,自動做市商不會進行報價,換言之,即使是流動性最好的自動做市商交易也明顯存在 0.3% 的價格沖擊,盡可能降低交易費是至關重要的,對于在中心化交易所中受到價格沖擊影響微乎其微的交易來說更是如此,因此,完全可以說中心化交易所可能是更好的交易執行平臺。(做個對比,同樣一筆交易的費用在幣安上可能是 0.1%,在 FTX 交易所中可能是 0.07%)

盡管如此,還有其它原因導致去中心化交易所的成本較高,如全托管、KYC 或存款流程等,但即使在這些情況下,交易者也應該意識到較高的交易價格背后意味著去中心化或即時流動性溢價

分散交易:首先,我們可以將一筆交易分解成幾筆較小的交易陸續完成。這點對于更傾向于使用去中心化交易所的交易者來說尤其重要,暫不論 DeFi 領域之外還存在其它流動性市場。舉個例子,每次買入 20%,然后等待套利者恢復價格,這 5 筆交易的價格沖擊加起來低于一筆大額交易,但 gas 成本會更高,執行時間也會更長。交易的數額越大,這個策略就越有優勢,因為固定的 gas 成本隨著更優的邊際執行降低,這個策略也同樣適用于均值反復資產 (如穩定幣)。

直接交易的成本不一定更低廉:并非每筆交易都存在直接交易對,即使存在,也不一定比使用中間貨幣更便宜,例如,盡管代幣 A 和 B 存在直接交易對,但是在 A-ETH 和 ETH-B 代幣對流動性更充足的情況下,A → ETH → B 的交易路線通常更便宜。從交易路線來看,聚合器的建議非常有幫助,

使用去中心化交易所聚合器:最后,你可以使用1inch、Matcha 或 Paraswap 等去中心化交易所聚合器,這些聚合器相當于 DeFi 領域的智能訂單路由,其運行方式是自動做市商賣出第 1 個代幣的價格會比第 10 個代幣低。每當某代幣在多個流動性池中交易時,聚合器會從所有流動性池買入該代幣,盡可能降低每個流動性池的價格沖擊。不同于在一個市場中拉長交易周期,聚合器會在許多可能的市場中分散交易并立即執行,和手動拆分交易一樣,聚合器的 gas 成本同樣比單筆交易更高,

表5:用 ETH 買入 10 個 (3200 美元)、50 個 (1.6 萬美元)、100 個(3.2 萬美元) 和 200 個 (6.4 萬美元) AAVE 的最佳策略,交易規模越大,交易路徑就會包含越多交易所,避免對單個流動性池造成過大的影響,來源: 1inch

0 条回复 A文章作者 M管理員
    暫無討論,說說你的看法吧