← LiquidityWise

每個數字是怎麼來的

以太坊主網

本站的每個數字都由一般程式碼根據資金池的索引資料和鏈本身算出,並在顯示前經過核對;語言模型只在之後描述這些數字。本頁逐節說明每個數字是怎麼算出來的、遺漏了什麼。它是對程式碼的概括,不對任何資金池作出承諾。

建議區間

起點是資金池自己的每日收盤價,依其子圖公布的資料:最近 31 個完整的 UTC 日,不含今天,因為今天還沒收盤。由此得到 30 個日報酬,每個都是相鄰兩個收盤價的對數之差。來源中缺少的日子會被跳過——從不填補、不沿用前一天、也不內插——期間有缺口時頁面會說明。

波動率是這些報酬的樣本標準差,再乘以 365 的平方根換算成年化。接著依你選擇的時間跨度(7、30或90 天;不選則為 30)乘以該跨度佔一年比例的平方根,再乘以你選擇的寬度(以標準差計:1σ、1.5σ、2σ或3σ;不選則為 1σ)。時間跨度只說明把測出來的走勢往前攤多遠:走勢始終是以同樣的最近 30 天來測量的。

價格帶以今天的價格為中心、在對數上對稱地展開,不加任何漂移:跌一半和漲一倍是同樣的距離,所以兩側的百分比不同。然後把它的兩端向外——從不向內——對齊到資金池的 tick 網格上,所以區間總是至少涵蓋整個價格帶。有兩項檢查守住它:資金池的當前價格必須換算成資金池自己回報的那個 tick,而且必須來自比鏈上最新狀態落後不超過 15 分鐘的區塊。

它不是預測:它說的是價格已經動了多少,而不是會去哪裡。寬度也不是信賴水準——要把「兩個標準差」變成「95% 的時間」,需要一個關於價格如何分布的假設,而這個假設並未確立。它不決定倉位大小,也不說每種代幣該存入多少。

在它從未見過的日子裡檢驗

本站讀取 121 天的收盤價——比波動率需要的多——這樣就能在方法沒有擬合過的日子上檢驗它。方法被往回挪一個時間跨度,只用那個時點之前的 31 個收盤價重新擬合,之後的一概不用,以那個時點的收盤價為中心,再疊放到隨後的日子上;然後再往前重複,直到歷史資料不夠為止。每一天被計為完全在內、完全在外或越過邊界:一天的最高價和最低價無法說明當天價格在什麼時候處於什麼位置,所以越過邊界的一天從不靠猜測來拆分。

這只是一個資金池的幾段時間,不能衡量方法有多常成立。相鄰的擬合彼此重疊,所以這些時段彼此並不獨立,而且沒有人真的持有過這些價格帶。

「如果三十天前開倉」把方法在最近三十天開始時會畫出的區間——用那之前的 31 個收盤價,之後的一概不用——逐日重演這三十天。它給出兩個數字。「相對持有的價值」按每天的收盤價計算,來自集中流動性的精確數量,不需要美元價格。手續費來自價格完全留在區間內的那些日子裡資金池自己的每日手續費,與「一筆資金本可以收到多少」用同樣的方式分配;由於歷史資料沒有每日美元匯率,存入資金按今天的美元匯率折算。

「試試你自己的區間」把你輸入的兩個價格構成的區間,在同樣的三十天裡、從同一個開倉收盤價起,以同樣的手續費分配方式和同樣的美元匯率重演,所以兩欄之間唯一的差別就是區間。不包含開倉價格的區間一開始只持有兩種代幣中的一種,在價格到達它之前不收手續費。在這些日子裡表現好的區間,對接下來的日子什麼也說明不了。

手續費與無常損失

資金池收了多少,來自其子圖為最近三十天每一天公布的手續費和交易量。用一天的手續費除以當天交易量,測出兌換者實際支付的費率——典型的一天、最低和最高的一天,以及以總手續費除以總交易量計算的整個期間——並與資金池聲明的費率對照。沒有交易量的日子不計為零,而是排除在外。

一筆資金本可以收到多少:在價格完全留在區間內的每一天,取當天手續費的 L / (A + L),其中 L 是這筆資金在區間內買到的流動性,A 是來源回報的當天活躍流動性。「+ L」是這筆資金對自己的稀釋,所以資金越多,收到的並不按比例增加。越過邊界的日子不計入;來源沒有公布手續費或活躍流動性的區間內日子,會如實註明,而不是記為零。

把美元換算成資金池的流動性需要一個美元價格,本站用的是子圖自己的價格,由資金池持有的每種代幣數量和美元價值推出——也就是它的手續費數字所用的匯率。這是用今天的匯率套用到過去的日子,頁面會說明。結果只是手續費,而且只涵蓋已經過去的日子:不是年化費率,也不是下個月會付多少。

無常損失——倉位與單純持有兩種代幣相比——是協議曲線在區間兩端之間的精確計算,從今天的價格算到頁面上顯示的每個價格。它不需要市場資料,也不需要資金規模,因為流動性在比值裡約掉了。只有價格回來了它才是「無常」的。它只計價格變動,別的都不算,而手續費正是流動性提供者承擔它所得到的報酬,所以兩者必須一起看。

v4 hook

v4 資金池可以指定一個 hook:一個由協議在固定時刻呼叫的合約。它的權限從它的地址讀取:hook 部署在這樣一個地址上,其最低的十四個位元說明 PoolManager 會呼叫哪些回呼,而 PoolManager 檢查的正是這些位元,而不是去問合約。所以本站讀的是協議強制執行的規則——不是登記表、標籤或合約對自己的描述——它說的是 hook 被允許做什麼,從不說它實際做了什麼。

被允許在兌換前介入的 hook 可以改寫兌換的手續費;被允許從兌換中回傳 delta 的 hook 可以自己拿走兌換的一部分。當資金池的 hook 擁有其中任何一項權限時,所有與區間或存入資金掛鉤的手續費數字都會被隱去——價格在區間內那些日子的手續費、一筆資金的份額、三十天重演裡的手續費、交易對頁面上的收益率——因為來源中沒有任何東西能把 hook 的份額和流動性提供者的份額分開。資金池收了多少仍會顯示,作為關於這個資金池的事實;顯示兌換成本的面板會附上說明。PoolKey 中沒有固定手續費的資金池會如實顯示為沒有,它實際收取的費率從它的每日資料中測出。

聰明的流動性

在每個能列出倉位的網路上(Ethereum、Base、Arbitrum One、OP Mainnet和Polygon),頁面查看本週交易最多的 12 個 v3 資金池,取出此刻處於區間內的倉位,並在每個資金池裡向鏈查詢最多 100 個,從最大的開始,每個價值至少 US$10,000。每六小時重新測量一次。

一個倉位的手續費是它自上次變動以來賺到的:它的流動性乘以自倉位管理器上次寫入快照以來其區間內的手續費成長,從鏈上讀取。每個倉位的交易對、費率和 tick 都必須能推回它被列入的那個資金池。這些手續費除以倉位現在的價值,再除以自那次變動以來的天數,年化之後就是它的收益率。價值低於 US$10,000、或變動距今不足 3 天的倉位被排除,因為它們太小或太新,說明不了什麼;收益率最高的 20% 就是聰明的倉位。

子圖只用來列出倉位、標出每個倉位上次變動的日期,別的都不用。它的手續費欄位不被採用:在 2026-09-30 核對時,這些欄位顯示一個只存入了三千二百萬美元的倉位收取了二十億美元。倉位管理器中的應付金額也不計入,因為在提取之後、被領取之前,它們包含的是被提取的本金。

收益率遺漏了什麼:它只是手續費,倉位相對於持有兩種代幣所放棄的部分不在其中。它只涵蓋每個倉位的一段期間,只讀取此刻處於區間內的倉位,對任何倉位接下來會賺多少、由誰持有,什麼也沒說。

每次測量都會被儲存,所以一旦累積了一天的測量,頁面就能說明過去一週的變化。交易對的區間按價格比較,從不按與當前價格的距離比較,因為只要價格一動,這個距離就會變,哪怕沒人碰過任何倉位。「一再出現的持有者」是在至少一半測量中都位於前 20% 的地址,前提是測量已有 8 次或更多。每個地址按鏈上該地址是否存有程式碼被標為錢包或合約:合約是金庫、機器人或別的程式,它的收益率屬於那個程式。

一個交易對,所有資金池

交易對頁面列出本站讀取的每個網路上、兩個代幣符號與輸入的交易對完全一致的每個 v3 和 v4 資金池。每個資金池按過去一週收取的手續費除以現在池中的資金、再年化來排序——單利,不複利。這是過去的手續費除以現在的流動性:不是預測,也不是一個倉位會賺到的,因為倉位只有在價格處於其區間內時才賺錢,要與那裡的所有人分享手續費,而且與持有相比還要放棄一些東西。

池中有多少在兩個協議裡的測法不同,所以兩者分開排名:在 v3,是該資金池的代幣合約為它持有的數量;在 v4,所有代幣都在同一個 PoolManager 裡,所以用的是它在當前價格下的深度。只有價值至少 US$100,000 的資金池參與排名——低於這個數,一個下午的交易就會讓數字波動太大,而且更可能是仿冒代幣——其餘的按規模列在下面,不給收益率。hook 可能改變兌換支付金額的 v4 資金池會顯示手續費並附說明,不給收益率。讀取不了的網路會如實列出。

文字解釋

在資金池頁面上,每個數字都算好並核對之後,一個語言模型會寫四段簡短的文字:區間涵蓋了什麼、價格離開區間時會怎樣、波動率衡量什麼和不衡量什麼、以及分析遺漏了什麼。它拿到的數字與頁面顯示的一致,用讀者的語言,方向已經事先寫成句子。訪客寫的任何東西都到不了它那裡——除了通過嚴格格式檢查的資金池地址;沒有代幣描述,也沒有任何自由輸入的文字——tick 更是完全不會給它。

它被要求從不說出數字、從不給建議、從不做預測。這不只是要求,而是強制執行:每一段在顯示前都會被檢查。凡是包含任何文字體系中的數字——包括阿拉伯數字、天城文數字、全形數字、分數和上標——但 v3 和 v4 這兩個名稱除外,或者在十種語言中任何一種裡用文字寫出的十一及以上的數,都會被拒絕;太短或太長的段落也一樣。只要有一段不通過,整個解釋都會被丟棄,數字獨立呈現。

檢查無法強制的是語氣;那留給指令去管,頁面也不假裝不是這樣。頁面會寫明撰寫這段文字的模型,以服務供應商回報的為準;同一資金池、同樣設定和同一語言的解釋最多重複使用一小時。

資料來源與局限

資金池資料讀自 The Graph 上 Uniswap 的 v3 和 v4 子圖,涵蓋 Ethereum、Base、Arbitrum One、Unichain、OP Mainnet和Polygon;Unichain 只讀取 v4。子圖出錯或沒有資料時,就直接唯讀地詢問鏈本身:v3 資金池的 tick 間距及其代幣合約持有的數量、從 PoolManager 讀取 v4 資金池的流動性和價格、從倉位管理器讀取倉位的收益和持有者,以及某個地址上是否有程式碼。每個子圖每小時檢查一次。

資金池的當前狀態必須來自比鏈上最新狀態落後不超過 15 分鐘的區塊,否則會被拒絕。每日歷史保留到當天 UTC 日結束,本週交易最多的資金池保留半小時,搜尋和交易對讀取保留十分鐘,解釋保留一小時;聰明的流動性每六小時重新測量一次。

某個來源失敗時,頁面會說明哪一部分沒能算出,並顯示其餘部分;缺少的數字顯示為缺少,從不顯示為零,也從不用猜測代替。在聰明的流動性頁面上,讀不了的資金池只影響它自己,重新整理失敗時上一次測量會保留到過期為止;在交易對頁面上,讀不了的網路會如實列出。解釋是唯一允許缺少的部分。

本站不儲存任何關於誰在閱讀的資訊。一次造訪記為一行,寫明頁面、資金池(如有,是公開合約)、語言以及是否像機器人——沒有 IP 位址,沒有瀏覽器資訊,沒有搜尋文字,也從不記錄為查看倉位而輸入的地址。唯一儲存的關於讀者的資訊,是他們自己設定的 Telegram 提醒:他們輸入的地址、他們的語言、對話的數字 id,以及每個倉位上一次是否在區間內。/stop 會立即刪除它,備份中的副本七天內消失。

本頁以及本站任何地方的內容都不是財務建議。每個數字描述的不是已經過去的日子,就是協議本身的算術;沒有一個數字告訴你該做什麼,或接下來會發生什麼。

關於聰明的流動性在哪裡