← 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 钩子

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 会立即删除它,备份中的副本七天内消失。

本页以及本站任何地方的内容都不是财务建议。每个数字描述的要么是已经过去的日子,要么是协议本身的算术;没有一个数字告诉你该做什么,或接下来会发生什么。

关于聪明的流动性在哪里