大家好,歡迎來到Paul加密奇葩說,如果你現在在刷alpha不想一直都是大額虧損,趕緊跟咱一起學起來底層的原因吧,關注Paul加密奇葩說帶你知道虧損原因。

1.起因

上面是Paul在羣裏看到的兩個圖,第一張圖說的是設置了滑點是0.1,但是還是被夾了600USDT,下面的是一些具體的表象。那咱今天就來好好說下相關的。

2.什麼叫滑點?

咱問下自己是否知道什麼叫做滑點嗎?滑點就是說你能忍受的交易價格偏離市場價格多少。比如你設置 0.1% 滑點,意思是如果成交價格超出市場價格 0.1%,交易會被拒絕,但是,滑點 ≠ 防止虧損。


首先來個問題啊?錢包的交易是採用什麼方式成交的?中心化交易所又是通過什麼方式成交的?

前面咱在廣場跟大家說過中心化交易所是通過撮合的方式來成交訂單的,如果你不是很熟悉可以去看下Paul奇葩說前面的文章,但是錢包依靠的是DEX去中心化交易所,底層是依靠AMM來完成的,那在說下底層吧,其實如果你刷了alpha的時候,錢包頁面會有個提醒說滑點0.1%可能會無法成交,但是爲啥用的是可能呢?因爲DEX依靠的是區塊鏈,區塊鏈每秒都在變化,所以只能說可能。

3.AMM機制

既然都說到這了,咱就詳細說下AMM機制吧。

AMM是DEX(去中心化交易所)的核心機制,該機制是不需要中介的自動化交易撮合,簡單點說AMM機制就是把CEX(中心化交易所)的做市商的工作交給代碼來執行,使得用戶可以在區塊鏈上完成自己的交易。

咱下面用Uniswap V2的版本來進行介紹啊:

AMM核心就是流動性池,在V2的版本里面是遵循了一個 x * y = k 的公式,以ETH/USDC的交易對爲例:

公式: x * y = k

x:池子裏面ETH的數量

y:池子裏面USDC的數量

k:池子裏面的總流動性(一個常數,恆定不變)

那現在如果你購買ETH,那就會導致池子裏面的ETH的數量減少,那價格就會上漲,同理你出售ETH就會導致數量增加,價格下跌。

那是不是咱可以下個結論:當咱在鏈上交易的時候,每一筆交易都會改變池子裏面的價格,所以咱是不是就是在跟池子裏面的流動性做交易。

4.例子帶你明白


還是上面的交易對:ETH/USDC。

現在咱有一個池子專門來交易ETH/USDC的,目前這個池子裏面只有你一個人交易來避免其他人交易導致的不確定因素。

池子的初始狀態:100ETH , 100000 USDC,那按照上面的公式咱可以計算出來初始狀態的ETH的價格是 100000 / 100 = 1000 USDC。

現在你是個大戶,你想購買10ETH,那實際上怎麼實現?

根據公式算K,x * y = k 那k就是 100 * 100000 = 10000000, 那咱無論是買入還是賣出都需要這個k維持不變一直是10000000。

那咱現在需要買入10ETH,那是不是就是放入USDC呢?那公式是不是可以這樣寫:

(x−Δx)×(y+Δy)=10000000 。

當咱買入了10ETH,池子裏面就只有90ETH,那按照公式是不是可以算出來現在池子裏面的USDC爲 10,000,000/90≈111111.11 ,那Δy就是增加的USDC的數量是不是就是11111.11USDC 。

那現在就是付出了11111.11USDC 獲得了 10ETH,那是不是就可以算出來了均價

11111.11 / 10=1111.11USDC/ETH 。

跟我們開始看到的價格是不是有價差呢?那是爲啥呢?

因爲你把自己的價格推高了,自己買貴了。

那咱在來一步步算下咱買入每筆ETH的價格:

其實這就是AMM的一個重要的特點:非線性定價曲線 。


5.非線性定價曲線

還是上面的公式:x * y = k

當咱每次交易的時候,比如你想買ETH,是不是就是需要往這個池子裏面放入USDC,那價格是不是就是由池子裏面的數量來決定的,那在AMM中價格變化是不是就是一種曲線的形式呢?買的越多,漲的就越猛,那這個曲線就增長的越抖。

6.那怎麼減少磨損

  1. 小單分批交易 :不要一次性下大單,特別是池子小的時候,可以分成多筆交易,或者多時間段執行,減少對池子的影響。

  2. 選擇流動性大的池子 :池子大 = 抗衝擊能力強。

  3. 接受合理的滑點 :適當提高滑點(比如0.5%-1%),防止因滑點太低導致交易失敗。

  4. 避開高波動時段 :熱門項目剛上線時、行情劇烈波動時,儘量少做大單交易。