exchange.IO("lp.pools", ...)
列出一个代币在Meteora DLMM、Raydium CLMM与Orca Whirlpools上的集中流动性池子,按美元TVL从大到小排列。
exchange.IO(k, token)
exchange.IO(k, token, quote)示例
-
列出SOL/USDC美元TVL最大的5个池子。
javascriptfunction main() { var pools = exchange.IO("lp.pools", "SOL", "USDC") if (!pools) { Log("查询失败:", GetLastError()) return } Log("共", pools.length, "个池子") for (var i = 0; i < pools.length && i < 5; i++) { var p = pools[i] var grid = p.protocol == "meteora" ? "binStep " + p.binStep : "tickSpacing " + p.tickSpacing Log(p.dex, p.id, "费率", p.fee / 1e4 + "%", grid, "价格", p.price, "TVL", Math.round(p.tvlUsd), "24h成交", Math.round(p.volume24hUsd)) } } -
列出TVL最大的10个SOL池子的farm奖励,以及奖励是否在发放(Meteora的行没有active)。
javascriptfunction main() { var pools = exchange.IO("lp.pools", "SOL") if (!pools) { Log("查询失败:", GetLastError()) return } pools.slice(0, 10).forEach(function(p) { var names = (p.rewards || []).map(function(r) { var state = r.active === undefined ? "" : (r.active ? "(发放中)" : "(已停)") return r.symbol + state }) Log(p.dex, p.symbol, p.id, "奖励:", names.length ? names.join(", ") : "无") }) }
返回值
| 类型 | 描述 |
array / 空值 | 池子数组,按 |
参数
| 名称 | 类型 | 必填 | 描述 |
k | string | 是 | 固定为 |
token | string | 是 | 要查的代币:代币表里的名字、Jupiter认证代币名或mint地址,例如 |
quote | string | 否 | 只列与这个计价币组成的池子。不传时列出与SOL、USDC、USDT组成的池子(不含代币自己)。 |
参考
Jupiter exchange.IO exchange.IO("lp.select") exchange.IO("lp.pool") exchange.IO("lp.ticks") exchange.IO("lp.plan")
备注
通用字段
id为池子地址,可以直接传给lp.pool、lp.ticks与lp.plan的pool参数;protocol为meteora、raydium或orca,dex为显示名(Meteora DLMM、Raydium CLMM、Orca Whirlpools)。symbol写成代币_计价币;base、quote为两种代币的mint地址;price为1个代币值多少计价币;reserveBase、reserveQuote为池子里两种代币的余额,tvlQuote为按现价折成计价币的总值。fee为基础费率,单位为百万分之一(400即0.04%,与Uniswap交易所对象的fee同单位),feeRate为同一费率的比例(0.0004)。tvlUsd、volume24hUsd、fees24hUsd为美元TVL、24小时成交额与手续费,取自各协议的数据接口;某个协议的接口不可用时,它的池子改用节点的getProgramAccounts按mint在链上查找,这些行的三项为null。empty为true表示空池(还没有价格),这时price、tvlQuote为null;空池不能用lp.plan建仓。
各协议的字段
protocol | 价格粒度 | 另有的字段 | rewards的每一项 |
|---|---|---|---|
meteora | bin:binStep(万分之几)、现价所在的activeId | feeRateNow(含波动附加费的当前费率)、enabled | {mint, symbol} |
raydium | tick:tickSpacing、现价所在的tick | liquidity(现价处的流动性)、sqrtPriceX64、enabled | {mint, symbol, active, endTime} |
orca | tick:tickSpacing、现价所在的tick | liquidity、sqrtPriceX64、adaptiveFee、fullRangeOnly | {mint, symbol, active} |
rewards为池子的farm奖励代币,active为true表示奖励正在发放。Orca的adaptiveFee为true表示费率随波动变化(fee为基础费率),fullRangeOnly为true表示Splash池,只能建全区间仓位。
数据来源:价格、余额从链上读(Raydium的费率取池子所属的AmmConfig账户);美元统计分别来自Meteora的数据API(dlmm.datapi.meteora.ag)、Raydium API v3(api-v3.raydium.io)与Orca的公开API(api.orca.so)。
热门代币往往有上百个池子(大多数TVL很小),按规则自动选一个用exchange.IO("lp.select")。