一家沒有大樓的銀行
想想一家銀行或證券交易所所做的一切:它保管存款,讓你把一種貨幣兌換成另一種,把錢借出去,並為買家和賣家牽線撮合。這一切的背後,都站著一家公司、一張牌照、一棟大樓,以及一堵你別無選擇只能依靠的信任之牆。現在,設想把這些服務逐一改寫成一份公開的智慧合約——一台金融版的自動販賣機,地球上任何人在任何時刻都能使用,無需開戶、也無需申請。
這便是 去中心化金融,即 DeFi:完全由運行在以太坊這類鏈上的合約搭建而成的金融服務,中間沒有任何公司坐鎮。由於每份合約都是公開的、且能呼叫其他每一份合約,它們便能像積木一樣彼此咬合——人們稱之為貨幣樂高。一份借貸合約可以接入一份交易合約,後者再接入一份儲蓄合約,而一個新來者無需徵得任何人同意,就能在這三者之上搭起一項全新的服務。
難題:你跟誰交易?
拿最基本的服務來說——把一種代幣兌換成另一種。傳統交易所維護著一本委託簿:一長串人在以某價買入、又以某價賣出,由一台撮合引擎把他們配成對。這在一台高速中心伺服器上運轉得無比順暢,可一搬到區塊鏈上就垮了——在鏈上,每一次更新都很慢,還要花一筆 gas 費。在鏈上維護一本繁忙的委託簿會貴得令人咋舌,而且到了凌晨三點,對面可能壓根就沒有願意成交的人。
於是 DeFi 乾脆扔掉了委託簿,轉而問了一個更古怪的問題:要是你壓根不跟某個*人*交易,而是跟一池資金交易、由它用一道公式給自己定價,會怎樣?不必等待對手方,也不需要撮合引擎——只需一份始終敞開、始終報價的合約。這就是自動造市商,即 AMM,它是 DeFi 絕大多數交易背後的引擎。
資金池與一行數學
一個 AMM 始於一個流動性池:一份合約,持有兩種代幣的儲備,比如說 ETH 和一種叫 USDC 的美元穩定幣。想賺取手續費的人會把*兩種*代幣都存入池中——他們就是流動性提供者——於是這個池子如今便有了,比如說,一邊 100 個 ETH、另一邊 200,000 個 USDC。真正神奇的,是合約用來定價的那條規則。它讓兩份儲備的乘積保持恆定:
x * y = k
x = amount of token A in the pool (e.g. ETH)
y = amount of token B in the pool (e.g. USDC)
k = a constant -- it must NOT change on a swap
Start: x = 100 ETH , y = 200,000 USDC
k = 100 * 200,000 = 20,000,000
Any trade must leave x * y back at 20,000,000.這一道方程,`x · y = k`,*本身*就是那個造市商。合約從不去任何地方查詢價格——價格不過是兩份儲備的比值,而那個常數 `k`,就是儲備必須永遠遵守的規則。這裡 ETH 當前的價格是 200,000 / 100 = 2,000 USDC。這個數字沒有任何人手動設定,它直截了當地從池中兩種代幣各有多少之中流淌出來。
一筆兌換,逐步拆解
現在來看一筆交易是怎麼發生的。你想買 ETH,於是往池裡送進一些 USDC。你的 USDC 被*加*到了 `y` 那一邊,把 `y` 推高。為了讓 `k` 保持不變,合約必須返還給你恰好夠多的 ETH,把 `x` 往下拉到剛剛好的程度。你並不是以某個固定價格拿走 ETH——你是在沿著曲線滑動,你每取走一個 ETH,池中這種代幣就少一點,於是下一個 ETH 就貴上那麼一點點。
- 你往池裡送進 10,000 USDC。USDC 那一邊上升:y 從 200,000 變成 210,000。
- 常數必須守住:x 須滿足 x * 210,000 = 20,000,000,於是新的 x = 20,000,000 / 210,000 ≈ 95.24 ETH。
- 池子原本持有 100 個 ETH,現在只剩 95.24 個,於是它把差額交給你:≈ 4.76 ETH。
- 你用 10,000 USDC 換得約 4.76 個 ETH——每個約 2,100 USDC,比你交易前看到的 2,000 略高。這道差距就是滑點,它會隨你下單的規模而變大。
提供者所承擔的風險
流動性提供者賺取這些手續費,但他們也確實承擔著一份值得點明的風險。當 ETH 的外部市場價格變動時,交易者會不斷把池子再平衡——買進便宜的那一邊、賣出貴的那一邊——於是提供者最終所持的總價值,可能比他們當初乾脆把這兩種代幣留在自己錢包裡還要少;這一缺口被稱作無常損失。手續費有可能蓋過它,而這恰恰就是提供者所下的那一注。
小結
DeFi 把金融重建成開放、可組合的合約——人人皆可使用、也可堆疊的貨幣樂高。它的交易主力——自動造市商——用一個由單一規則 `x · y = k` 定價的流動性池,取代了由人組成的委託簿:每一筆兌換都沿著那條曲線滑動,越大的交易滑得越遠,而為池子注資的提供者,則以承受無常損失為代價換得手續費。
由這一個基本構件,應用層的其餘部分便生長開來:借貸市場、價值穩穩錨定的穩定幣,以及能代表任何東西的代幣。接下來,我們將認識這些代幣本身——那些在鏈上每一個池子、每一份合約中流動的、標準化的價值單位。