使用 Uniswap 這樣的模型對期權進行定價可能不是流動性提供者的最佳選擇。

原文標題:《深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?》
撰文:Aerhy
翻譯:阿瓜

劃重點:

  1. 期權定價取決於各種因素 (如到期時間和隱含波動率等),在大多數情況下,它們往往爲零(指未行權或行權價不合條件)。
  2. 通用 AMMs (如 Uniswap)的價格發現機制通常依賴於交易量,在一個流動性市場中,資產的價格應該由市場力量定價。然而,在本篇文章發表時,DeFi 期權市場仍處於萌芽狀態,期權可能不會頻繁更新,這會使價格過時,給期權池的流動性提供者帶來巨大的無常損失。
  3. 這篇文章探討了 Uniswap v1 背後的數學原理,並得出結論——將其作爲期權代幣的交易場所可能不是最合適的。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

通用 AMM 和無常損失

通用 AMM,如 Uniswap v1 和 v2,是 DeFi 中最重要的構件之一。

它的模型能夠將價格發現和做市結合起來,這使得即使是流動性最差的資產,也會有市場和發展。

它精心設計了激勵機制,鼓勵不同的參與者作爲賣家、買家和流動性提供者參與其中。事實上,流動性提供者是一個在系統中執行重要角色的參與者。這感覺就像是傳統做市商的抽象。這種相似性背後的原因是,AMM 不需要持續的賬本管理和訂單填充,用戶就可以對其資金進行交易。有些人可能會說,那些不是同樣的用戶,也不是執行同樣的業務。但歸根結底,兩個參與者(Uniswap 中的流動性提供者和傳統金融中的做市商)都是在引導一個市場。

目前,流動性提供者要在資金池的兩邊加入等量的資金作爲流動性,作爲回報,期望收取資金池中發生的所有交易的費用,並拿回自己的投資本金。

在 DeFi 中,有些用戶一直將提供流動性的活動理解爲一種「被動收入投資」,即提供資產,持有資金的金額,並收取與初始本金成正比的費用。雖然這對於穩定資產的池子(比如 DAI:USDC)可能是正確的,但對於某些場景下的波動性資產的池子(比如 USDC:ETH)並不完全正確。

有一種現象被稱爲無常損失,Impermanent loss (IL) 是我們用來指在波動性資產對上增加 Uniswap 的流動性與只持有兩種資產相比的負收益的表達方式。

它描述了一種情況,即尋求被動收入的流動性提供者的盈利能力受到了負面影響。如果添加的代幣的價格最終能回到它們加入流動性池時的價格,那麼無常損失是不存在的或很小的。但是,如果價格情況與最初的價格情況不同,與只持有資產的情況相比,提取的金額可能低於後者的總額。

這意味着,只有當流動性提供者(LP)在與最初使用的價格情況不同的情況下移除流動性時,纔會出現無常損失。如果不移除,而等待一個更有機會的時機撤出,損失就不會發生(impermanent loss)。作爲對比,在傳統金融上,我們可以認爲這是一個「賣出永續跨期」的頭寸。之所以說是永續,是因爲這個頭寸沒有到期日,LP 可以持有多久就持有多久。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

這意味着,即使在市場波動的情況下,LP 以其進入時的價格水平去除流動性,LP 將在這一期間從費用中獲利,而不會遭受無常損失。

有些人可能會說,他們期望交易費能彌補他們的損失。這有可能發生,但只是在一定程度上,這取決於撤資時的價格,以及在提供流動性期間,池子裏的流動性有多高,發生了多少交易。所以我們可以理解,對於流動性提供者來說,最有利可圖的組合是一個資產不波動、每天有很多交易的池子。同時也要考慮到,市場定義了資產的定價,每當 Uniswap 中的代幣定價與市場價格發生偏離時,套利者就會利用這個套利機會,在 Uniswap 中進行交易,幫助引導 Uniswap 的價格接近代幣的市場價格。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

模擬收益

爲了分析 Uniswap v2 上流動性提供活動的收益,應考慮以下變量:

在提供流動性的時刻,交易對的現貨價格

撤資時的交易對現貨價格

池中的交易量

池中的資產量

從交易中產生的費用總額將分配給 LP

恆定常數

constant_product (k) 因子是用來給交易定價的一種方式,並保持池子兩邊價值的平衡。當忽略費用時,係數的計算方法是:

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

定價

Uniswap 使用以下定價公式來定義流動性池中每項資產的交易價值。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

將公式 1 和 2 放在一起,我們最終得到以下結果:

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

需要強調的是,在另一個 LP 向池子增加流動性之前,恆定常數用於交易的資產定價。當這種情況發生時,恆定常數會隨着新的池子餘額而更新,並用於後續交易的定價。

例如:

初始池有 100 ETH 和 10,000 DAI。因此,constant_product (k) = 100 * 10,000 = 1,000,000。

如果 1 天后,John 決定用 2 ETH 和 2,000 DAI 爲池子增加流動性(池子裏沒有交易),那麼由於流動性池子的兩邊都增加了,所以需要更新恆定常數。因此,新的 constant_product (k) 將用於以下交易的定價:k = (100 + 2) * (10,000 + 2,000) = 102 * 12,000 = 1,224,000。

考慮到 Uniswap 的 AMM 要求流動性提供者在每個交易對的充值方面保持 50/50 的比例,公式 2 決定了資產的定價取決於每個池中發生的交易量。這意味着,在池中沒有發生交易的情況下(池中發生的唯一活動是流動性提供),eth_price 將保持與池創建時相同。換句話說,只有在有交易活動時纔會更新價格。

當增加流動性時,資產的定價與想從池中購買 1 個資產時的定價發生了一些不同,我們可以看到下面的情況。

例如,讓我們假設 Rob 想要爲一個池子增加一對 ETH:DAI 的流動性。他想增加 1 個 ETH,但他需要提供多少 DAI 代幣?當前的池子餘額是 95 個 ETH 和 10,529.49 個 DAI。按照公式 5,他需要提供的代幣數量 = 1 * (10,529 / 95) = 110.87 DAI

提供流動性後,新的資金池餘額爲:

95 + 1 ETH = 96 ETH

10,529 DAI + 110.87 DAI = 10,640.36 DAI

新的 k = 96 * 10,640.36 = 1,021,169.85

流動性提供者收益

要理解 Uniswap 的 AMM,以及進入池子時代幣的初始價格和撤出流動性時代幣的價格之間的區別,還有一個重要的概念是 LP 代幣。

LP 代幣轉化爲每個流動性提供者在池子裏有多少錢,進而每個 LP 將從池子裏產生的總費用中獲得對應收益。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

無常損失

既然介紹了關鍵概念,我們來分析一下流動性提供者遇到無常損失的場景。

Babi 通過增加 20k 的總流動性(100ETH 和 10000DAI)來創建一個 ETH:DAI 池。作爲第一個流動性提供者,根據公式 6,她共獲得 1000LP。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

LP_tokens_amount = sqrt (100 * 10,000) - 0.00000000000000001 = 1,000LP 份額。

假設在創建池子後,有 9 筆交易發生,如下所示--n 指的是池子創建後的每個時期。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

考慮以下交易類型:

exact_output_x: 當用戶想以任何價格購買 1 個 ETH 時。

exact_output_y: 當用戶想用任意數量的 ETH 購買 1 個 DAI 時。

exact_input_x: 當用戶想花一個準確的 ETH 數量來購買等值的 DAI 時。

exact_input_y: 當用戶想花一個準確的 DAI 數量來購買等值的 ETH 時。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

1,000,000 的產品常數 (k) 是上述交易定價機制的主要指導。它計算的是對資金池每一方的影響應該是什麼,從而使這筆交易能夠發生,並且在忽略費用的情況下仍然保持產品常數。現在我們來計算一下交易發生後,對池子每一方的影響是什麼。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

讓我們來挖掘一下 n=1 時發生的交易

初始資金池餘額 =100 ETH 和 10,000 DAI

Constant_product = 100 * 10,000 = 1,000,000

交易類型:exact_output_x → 交易者想準確地買入 1 個 ETH (所以他將從 eth_liquidity_pool 中刪除 1 個 ETH)。

新的 eth_liquidity_pool = 100 - 1 = 99 ETH → 現在我們有了這個新的 ETH 池餘額,那麼新的 DAI 池餘額是多少,因爲池中會有大量的 DAI 代幣湧入?

新的 DAI_liquidity_pool = constant_product / new eth_pool_balance = 1,000,000 / 99 = 10,101.01。

由池中 DAI 的流入,我們可以假設如下公式。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

eth_price = (10,101.01-10,000)/1 = 101.01 → 所以在 n=1 的交易中,交易者買入 ETH 的價格是 101.01。

最終資金池餘額:99 個 ETH 和 10.101.01 個 DAI。

我們可以在下面的表中看到發生在 Uniswap 的 AMM,考慮到 1,000,000 的恆定產品和交易後的新池餘額。我們也可以直觀地看到價格與每筆交易收取的 0.3% 的費用。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

交易發生後,最終的池子概況是:

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

現在我們假設 Tom (user10_Add_1ETH)想在 n=10 的時刻增加 1 個 ETH 的流動性。由於 AMM 要求 LP 們提供每邊價值相同的一對代幣,所以 Tom 必須提供與 1ETH 價值相同的 DAI 數量,這個價格取自前面介紹的公式 5。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

所以 Tom 必須提供 1 個 ETH。

DAI_amount_to_provide = 1 * (10,529 / 95) = 110.87 DAI

由於新的流動性提供者進入池中,在新的 LP 進入池中之前,需要更新交易定價的恆定常數,新的 K = 96 * 10,640 = 1,021,170 元

就在 Tom 之後,其他 7 個 LP 在池子裏提供流動性,按照 AMM 提供的公式 5 的定價,按照公式 7 獲得相應的 LP 份額,具體如下。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

我們先考慮以下給出的信息,以方便進行無常損失分析。

Tom 入池時的初始倉位是:1ETH 和 110.87DAI。

Tom (user10_Add_1ETH) 決定在 n = 17 之後的任何時刻將他們的代幣從池中移除。

Tom 在池子裏的 LP 是 Tom LP 代幣 / total_LP_tokens = 10.53/1,284.30 = 0.008199 = 0.82%。

在 n = 17 之後,沒有額外的流動性提供者進入池中,只發生了交易。

由於 ETH:DAI 池的交易量很大,我們可以認爲 Uniswap 的定價機制反映了市場的真實定價,因爲套利者會利用套利機會不斷修正價格。

時間段 (n) 代表 AMM 中價格更新的每個時間段。

我們來比較一下,當他把資產放在錢包裏,從池子裏取出流動性的時候,他的資金會發生什麼價格更新。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

現在我們來比較一下,以上每種情況有什麼不同。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

將 Pintail 博文中的無常損失的公式應用到這種情況下,我們有:

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

從上面的模擬中我們可以得到的結論是,與在錢包中持有代幣相比,在提供流動性時確實存在損失。當池子裏的餘額發生變化,每個代幣的價格隨着池子裏的交易更新而變化時,就會發生這種情況。

需要強調的是,LP 提供者可能會從池中移除他的 LP。在這種情況下,湯姆在決定移除流動性的那一刻,移除了當前池子的 0.8%。由於此刻 Tom 想要移除流動性的池子相比添加流動性時的池子可能發生了變化,他的最終價格與他的初始價格不同。

這種現象也可以在下圖中通過繪製價格變化圖來觀察。

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

費用影響

Uniswap 根據 LPs 在池中的參與情況,將所有交易的 0.3% 分配給 LPs。因此,池中發生的交易越多,LPs 獲得的被動收入就越多。其中根據每個 LP 在池中所佔的比例進行相應的分配,如前所述。

我們可以看到,由於 Uniswap 的 AMM 的功能是維持兩個流動性池子的乘積,也就是所謂的 constant_product,與交易前的乘積相同(不包括費用),所以發生了無常的虧損--我們可以說,AMM 是一個復古的價格尺度,確保雙方在價值上的權重相同(50%/50% 的比例)。

需要強調的是,Uniswap 中的代幣價格是隨着池子中發生的交易而更新的,這在很大程度上依賴於套利者在比較 Uniswap 價格和其他交易所時找到有利可圖的套利機會的能力。因此,我們可以說 Uniswap 的 AMM 的定價完全由池中發生的交易決定。

雖然這種模式可能對非波動性資產和高波動性的交易池有很好的適應性,但它可能並不適合所有種類的資產。

期權會怎樣呢?

期權池

在 DeFi 期權中(這裏舉例 Pods 期權),用戶必須鎖定 100% 的抵押品鑄造期權代幣。期權代幣代表了買方的權利和賣方的義務。但是,由於賣方前期鎖定了抵押物,所以沒有什麼可執行的,智能合約掌握賣方義務。

鑄成期權後,用戶可以選擇將其賣出,或者爲池子提供流動性。由於 Uniswap 是一個去中心化的協議,任何人都可以發起任何一對資產的池子,用戶可以直接在 Uniswap 池子中出售每個系列的期權代幣。

a) 假設該期權的市場是最有流動性的,因此,AMM 的價格是正確的,通過純粹的套利力量,代表了一個公平的,最新的價格。

或者

b) 仲裁池價格,如果池子對期權定價錯誤,有機會縮小差距。

遺憾的是,DeFi 纔剛剛開始,DeFi 期權也纔剛剛開始。這意味着,DeFi 期權市場不一定能夠隨時修正 Uniswap 的價格。這意味着,如果一個池子長期停留在沒有交易的情況下,將會有很大的套利機會。雖然這對交易者來說可能是好事,但對流動性提供者來說可能不是那麼好。

但是怎麼知道一個期權的價格是錯誤的呢?

期權的定價

傳統金融中的定價方案有幾種模型,最廣爲人知的叫做 Black-Scholes。 Black-Scholes 公式如下:

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

Black-Scholes 是一種爲期權合約定價的數學模型,這種模型的假設之一是,資產的波動率在期權有效期內保持不變(這一點並不適用--尤其是在加密貨幣中)。該公式只適用於歐式期權(以及非派息資產的美式看漲期權)。

所有的方法都在某種程度上試圖計算出期權到期的概率是多少,如果真的到期了,那現在的價值是多少。爲了計算這樣的理論價格,作者將標的資產的現貨價格、到期時間、隱含波動率、無風險利率和行權價格等因素納入其中。

期權的到期時間也就是期權的時間價值,也是使用 Black-Scholes 模型時影響定價的重要因素。

期權距離到期日越近,其內在價值就越趨於放大,也就是說,如果期權在接近到期日時處於價內,其價值就越高,因爲期權被行權並獲利的概率很高,這就使得期權的定價更昂貴。當期權遠離到期日時,同樣的邏輯也會發生:期權被執行的概率很低,這意味着它的價值接近於無價值(零)。你可以在下面看到關於這個概念的更多細節:

深度 | 爲什麼通用 AMM 模型不適用於期權交易定價?

在到期時,期權價格要麼在價內,要麼在價外。大多數情況下,期權最終都是價外,因此,在到期時,期權的價值爲零。

這意味着,如果用戶向期權池提供流動性,而他們最終處於價外,用戶可以提取更大比例的期權代幣。屆時,期權代幣的價值可能爲零。他們沒有「鑄幣」的期權,也沒有抵押品可以提取。當考慮到無常損失時,在這種情況下,我們就必須考慮到該交易對的其中一個資產在到期時是沒有價值的。

如果在 Uniswap 的定價上不能輸入這些因素,那麼它的期權價格會怎樣呢?

通用 AMM 的期權交易

每個交易者都會按照自己認爲合適的方式對待這些公式。但他們中的大多數人都有一些計算期權價格的方法,可以考慮到影響期權價格的所有因素。交易者很可能會找到套利的機會,但流動性提供者最終可能會因爲將其資產分配給了潛在的錯誤定價交易而導致損失。

出於這個原因,使用 Uniswap 這樣的模型對期權進行定價可能不是流動性提供者的最佳選擇。