ONLINEFOMO: loading...[->]
Blockchain

解構 Pump.fun 的底層數學:聯合曲線代幣發射機制

·6 min read / 6 分鐘·#Pump.fun#聯合曲線#恆定乘積#Meme幣
Executive Summary // 內容大綱
預計閱讀 6 分鐘

深入拆解 Pump.fun 虛擬儲備與恆定乘積聯合曲線,說明代幣價格、滑點、畢業遷移及搶跑優勢如何由數學機制驅動,揭示 Meme 幣早期市場的流動性與風險結構。

Pump.fun 的代幣發射平台,會讓每一枚新代幣運行在一條採用恆定乘積公式的聯合曲線上,其數學形式與 Uniswap V2 類似,但使用的是虛擬儲備

在代幣部署時,Pump.fun 的全域設定會為每一條聯合曲線預先寫入固定的虛擬儲備,用來建立初始價格,並避免分母為零的問題。

實際上,初始虛擬 SOL 儲備 (v_s) 為:

30 SOL30\text{ SOL}

初始虛擬代幣儲備 (v_t) 為:

1.073×1091.073\times10^9

也就是約 10.73 億枚代幣

兩者相乘得到恆定乘積常數:

k=vs×vtk=v_s\times v_t

因此:

k=30×1.073×1093.219×1010k = 30\times1.073\times10^9 \approx 3.219\times10^{10}

單位為:

SOLToken\text{SOL}\cdot\text{Token}

在整條聯合曲線的交易過程中,(k) 維持不變。

由此可以得到代幣的初始價格:

P0=vsvt=301.073×1092.796×108 SOL/枚P_0 = \frac{v_s}{v_t} = \frac{30}{1.073\times10^9} \approx 2.796\times10^{-8} \text{ SOL/枚}

若按照 10 億枚總供應量計算,初始完全稀釋估值約為:

109×P028 SOL10^9\times P_0 \approx 28\text{ SOL}

換句話說,Pump.fun 在幾乎沒有真實初始流動性的情況下,利用兩組「虛擬儲備」先建立出一個極低的起始價格。


買入機制:恆定乘積如何執行交易

當使用者投入 (s) 枚 SOL 購買代幣時,聯合曲線必須始終滿足:

xy=kx\cdot y=k

其中:

  • (x):當前 SOL 虛擬儲備;
  • (y):當前代幣虛擬儲備;
  • (k):恆定乘積常數。

當使用者投入:

Δs\Delta s

枚 SOL 後,新的 SOL 儲備變成:

x=x+Δsx'=x+\Delta s

由於仍然必須滿足:

xy=kx'y'=k

因此新的代幣儲備為:

y=kx+Δsy' = \frac{k}{x+\Delta s}

買家實際取得的代幣數量,就是交易前後代幣儲備的差值:

Δt=yy\Delta t = y-y'

代入後得到:

Δt=ykx+Δs\Delta t = y-\frac{k}{x+\Delta s}

又因為:

k=xyk=xy

所以可以整理為:

Δt=yΔsx+Δs\boxed{ \Delta t = y\cdot \frac{\Delta s}{x+\Delta s} }

也就是說,每一筆買入都嚴格沿著恆定乘積曲線執行,其數學形式與 Uniswap V2 的兌換公式相同。


為什麼 3.33 SOL 就能拿走大量早期籌碼?

把初始參數代入:

x=30x=30
y=1.073×109y=1.073\times10^9

假設第一名買家投入:

Δs=3.333 SOL\Delta s=3.333\text{ SOL}

那麼:

Δt=1.073×1093.33330+3.333\Delta t = 1.073\times10^9 \cdot \frac{3.333}{30+3.333}

約等於:

Δt1.073×108\Delta t \approx 1.073\times10^8

也就是約:

107,300,000107,300,000

枚代幣。

換言之,只需要約 3.33 SOL,在這套理論模型下便可以取得超過一億枚早期代幣。

這個極端結果直接來自非常小的初始 SOL 虛擬儲備:

x=30x=30

在曲線起點附近,代幣相對 SOL 的邊際取得效率約為:

yx=1.073×109303.57×107\frac{y}{x} = \frac{1.073\times10^9}{30} \approx 3.57\times10^7

即:

3570萬枚代幣/SOL\boxed{ 約3570萬枚代幣/SOL }

這正是 Pump.fun 早期交易具有巨大先發優勢的數學原因。

越早進場,所在位置越接近整條聯合曲線最便宜的區域。

因此在實際市場中,機器人或大額交易者可以利用極快的交易速度,在其他參與者反應之前取得大量早期籌碼。


賣出機制與流動性保障

賣出則是完全相反的過程。

假設使用者向合約賣回:

Δt\Delta t

枚代幣。

代幣儲備增加為:

y=y+Δty'=y+\Delta t

為了繼續維持:

xy=kxy=k

新的 SOL 儲備必須變成:

x=ky+Δtx' = \frac{k}{y+\Delta t}

因此,合約向賣家支付的 SOL 數量為:

Δs=xx\Delta s = x-x'

也就是:

Δs=xky+Δt\Delta s = x-\frac{k}{y+\Delta t}

利用:

k=xyk=xy

可以進一步整理成:

Δs=xΔty+Δt\boxed{ \Delta s = \frac{x\Delta t}{y+\Delta t} }

這正是買入公式的反向運算。

因此,買入與賣出都沿著完全相同的恆定乘積曲線移動。

在這套模型下,池子中的有效真實 SOL 可以理解為:

x30x-30

也就是當前 SOL 儲備扣除最初的 30 SOL 虛擬基準。

只要聯合曲線仍按照:

xy=kxy=k

運作,合約便會按照交易當下的曲線位置計算賣出者可以換回多少 SOL。

因此,這套聯合曲線本身形成了一個封閉式的自動流動性系統。

直到曲線中的真實可售代幣耗盡為止。


價格函數:為什麼價格會加速上升?

代幣在任意時刻的瞬時價格可以表示為:

P(x)=xyP(x) = \frac{x}{y}

由於:

xy=kxy=k

所以:

y=kxy=\frac{k}{x}

代入價格公式:

P(x)=xk/xP(x) = \frac{x}{k/x}

得到:

P(x)=x2k\boxed{ P(x)=\frac{x^2}{k} }

這意味著:

代幣價格與 SOL 儲備的平方成正比。

如果 SOL 儲備增加一倍:

x2xx\rightarrow2x

那麼價格會變成:

P(2x)=(2x)2k=4P(x)P(2x) = \frac{(2x)^2}{k} = 4P(x)

也就是四倍。

因此,SOL 的線性流入,對應的是價格的二次方增長。

這正是 Pump.fun 聯合曲線看起來具有強烈「加速上漲」特徵的原因。


滑點:你買得越多,後面的代幣越貴

每一筆買入本身都會改變曲線的位置。

交易開始之前,瞬時價格為:

P(x)P(x)

但當第一部分 SOL 被投入後:

xx

已經上升,而:

yy

開始下降。

因此價格:

xy\frac{x}{y}

會在整筆交易過程中不斷提高。

所以一筆買單的平均成交價格:

Pavg=ΔsΔtP_{\text{avg}} = \frac{\Delta s}{\Delta t}

通常會高於交易開始前的瞬時價格:

P(x)P(x)

而且:

Δs\Delta s

越大,滑點就越明顯。

這就是典型的 Uniswap 式恆定乘積滑點。

Pump.fun 並不是讓一大筆交易全部按照「螢幕上看到的當前價格」成交。

交易本身就在推動價格。

因此可以把它理解為:

你買得越多,就必須沿著曲線向更昂貴的位置走得越遠。

畢業門檻:曲線的最終價格與市值

當代幣的真實代幣儲備降至零,也就是聯合曲線中約 8 億枚可售代幣全部被買走時,代幣便完成「畢業」。

假設曲線出售:

Scurve=800×106S_{\text{curve}} = 800\times10^6

枚代幣。

初始虛擬代幣儲備為:

1.073×1091.073\times10^9

那麼曲線完成時的虛擬代幣儲備為:

yend=1.073×1098×108y_{\text{end}} = 1.073\times10^9 - 8\times10^8

得到:

yend=2.73×108y_{\text{end}} = 2.73\times10^8

即:

273,000,000273,000,000

枚。

根據:

xy=kxy=k

此時 SOL 儲備為:

xend=kyendx_{\text{end}} = \frac{k}{y_{\text{end}}}

即:

xend=32.19×1092.73×108x_{\text{end}} = \frac{32.19\times10^9} {2.73\times10^8}

約為:

117.912 SOL\boxed{ 117.912\text{ SOL} }

扣除最初的 30 SOL 虛擬基準:

117.91230=87.912117.912-30 = 87.912

因此理論上累積的淨 SOL 約為:

87.912 SOL\boxed{ 87.912\text{ SOL} }

畢業時的瞬時價格

此時價格為:

Pend=xendyendP_{\text{end}} = \frac{x_{\text{end}}}{y_{\text{end}}}

即:

Pend=117.912273×106P_{\text{end}} = \frac{117.912} {273\times10^6}

約為:

4.319×107 SOL/枚\boxed{ 4.319\times10^{-7} \text{ SOL/枚} }

相比初始價格:

P02.796×108P_0 \approx 2.796\times10^{-8}

整條聯合曲線內的理論價格漲幅約為:

PendP015.44\frac{P_{\text{end}}}{P_0} \approx 15.44

也就是:

15.44\boxed{ 約15.44倍 }

如果按照 10 億枚總供應量計算完全稀釋估值:

109×Pend10^9 \times P_{\text{end}}

得到:

431.9 SOL\boxed{ 約431.9\text{ SOL} }

按照不同時期的 SOL 美元價格換算,大約相當於數萬至十萬美元級別的完全稀釋估值。


畢業後的流動性遷移

當聯合曲線完成後,系統會觸發流動性遷移。

Pump.fun 早期主要將完成曲線的代幣遷移至 Raydium

但自 2025 年 3 月 Pump.fun 推出自己的自動做市協議 PumpSwap 後,畢業代幣的流動性遷移開始轉向 PumpSwap。

因此整個生命週期可以理解為:

代幣建立\text{代幣建立}
\downarrow
Pump.fun 聯合曲線交易\text{Pump.fun 聯合曲線交易}
\downarrow
聯合曲線完成\text{聯合曲線完成}
\downarrow
流動性遷移\text{流動性遷移}
\downarrow
PumpSwap 自動做市池\text{PumpSwap 自動做市池}

在遷移階段,系統會把為流動性預留的代幣與聯合曲線累積的 SOL 配對,建立新的鏈上自動做市池。

原文模型中,以約:

200,000,000200,000,000

枚預留代幣,搭配約:

87.9 SOL87.9\text{ SOL}

建立新的流動性池。

產生的流動性提供者憑證則會被銷毀或鎖定,使底層流動性不能再被普通持有人隨意提取。

從使用者的角度來看,遷移完成之後,交易場所便正式從:

Pump.fun 聯合曲線

切換成:

PumpSwap 自動做市池。

也就是說,「畢業」並不代表市場結束。

而是代表:

代幣的價格發現機制,從聯合曲線切換成正式的自動做市池。

這套數學為什麼天然存在搶跑風險?

Pump.fun 的聯合曲線有一個非常明顯的經濟特徵:

最早的交易具有極大的先發優勢。

原因仍然來自初始:

x=30x=30

SOL。

在曲線最開始的位置:

yx3.57×107\frac{y}{x} \approx 3.57\times10^7

意味著邊際上 1 SOL 可以對應約:

3570萬枚代幣3570\text{萬枚代幣}

而隨著 SOL 不斷進入曲線:

xx\uparrow

代幣儲備:

yy\downarrow

價格:

P(x)=x2kP(x)=\frac{x^2}{k}

開始快速上升。

所以晚一點進入的人,不只是在「比較高的位置」買入。

而是在一條本身會加速變昂貴的曲線上買入。

這給速度極快的機器人、大額交易者以及能夠在代幣剛建立時立即成交的參與者,帶來明顯優勢。


機器人搶跑

由於聯合曲線本身沒有時間限制,只要交易符合合約條件,就可以立即執行。

因此機器人可以在新代幣建立後迅速提交交易,搶先取得曲線最前段、成本最低的代幣。

數學本身並不會判斷:

「這是不是機器人?」

也不會判斷:

「這個人是不是買得太早?」

它只會執行:

xy=kxy=k

因此,速度就會直接轉化成經濟優勢。

這不是聯合曲線遭到「破解」。

而是聯合曲線規則本身帶來的博弈結果。


開發者砸盤風險

同樣的數學也解釋了為什麼 Pump.fun 上的早期大額持幣者具有巨大的價格影響力。

如果某個早期地址以極低成本取得大量代幣,那麼隨著後續買家把:

xx

推高,代幣價格也會沿著:

P(x)=x2kP(x)=\frac{x^2}{k}

快速上升。

早期持有人此時再把大量代幣賣回聯合曲線,或者在畢業後透過自動做市池出售,就可以把自己的早期籌碼轉換成後來進入市場的 SOL。

從數學上看,這並不是系統失效。

恰恰相反。

系統正在完全按照原本設計的公式運作。

問題在於籌碼分布。

如果大量低成本籌碼集中在少數早期地址手中,那麼價格上漲之後,這些地址就天然擁有巨大的退出權。


沒有時間鎖,也沒有交易量鎖

標準 Pump.fun 聯合曲線本身並不依靠持倉時間決定交易價格。

無論你持有:

一秒、

一分鐘、

還是一小時,

賣出的核心計算仍然取決於當下的:

xx

與:

yy

也就是:

xy=kxy=k

因此,聯合曲線本身不會因為某個地址剛買入就禁止它立即賣出,也不會因為交易頻率過高而自動改變定價模型。

這意味著高頻投機行為並不會被聯合曲線數學本身阻止。


Pump.fun 真正的數學核心

把所有細節剝掉之後,Pump.fun 的聯合曲線其實可以濃縮成幾條非常簡單的數學關係。

首先:

xy=k\boxed{ xy=k }

買入:

Δt=yΔsx+Δs\boxed{ \Delta t = y\cdot \frac{\Delta s}{x+\Delta s} }

賣出:

Δs=xΔty+Δt\boxed{ \Delta s = \frac{x\Delta t}{y+\Delta t} }

瞬時價格:

P(x)=xy=x2k\boxed{ P(x)=\frac{x}{y} = \frac{x^2}{k} }

這幾個公式共同構成了 Pump.fun 早期代幣發射市場的數學骨架。

它最大的優點,也是最大的殘酷之處,都來自同一件事:

規則極其簡單,而且對所有人一視同仁。

它不需要做市商判斷價格。

不需要人工管理訂單簿。

不需要等待市場雙方找到交易對手。

任何一個人只要投入 SOL,智能合約就可以立即告訴他:

你能拿多少代幣。

任何一個人只要把代幣賣回去,智能合約也可以立即計算:

你能拿回多少 SOL。

這套機制讓一枚剛剛建立、沒有傳統流動性的 Meme 幣,在數秒之內擁有一個可以交易的市場。

但同樣因為規則完全由曲線決定,它也不會替後來者提供任何特殊保護。

越早站上曲線的人,成本越低;越晚進入的人,必須沿著已經被推高的曲線繼續付費。

所以 Pump.fun 最值得理解的地方,從來不只是「它讓任何人都可以發 Meme 幣」。

真正的創新是:

它把一枚新代幣從零流動性、價格發現、持續交易到二級市場遷移的過程,壓縮進了一套可以由智能合約自動執行的數學機器。

而這台機器既不理解 Meme,也不理解情緒。

它只知道:

xy=k\boxed{x\cdot y=k}

Further Read // 延伸閱讀