内置函数
结构体
内置变量与常量
通用约定
交易所
能力矩阵
中心化交易所
去中心化交易所
Hyperliquid
Lighter
edgeX
Aster
Aevo
Pendle
WOOFi Pro
Uniswap / PancakeSwap
Aerodrome / Velodrome
KyberSwap
1inch
EVM DEX通用指令
Jupiter
exchange.IO("route", ...)
exchange.IO("token", ...)
exchange.IO("transfer", ...)
exchange.IO("receipt", ...)
exchange.IO("slippage", ...)
exchange.IO("priorityFee", ...)
exchange.IO("dexes", ...)
exchange.IO("rps", ...)
exchange.IO("lp.pools", ...)
exchange.IO("lp.select", ...)
exchange.IO("lp.pool", ...)
exchange.IO("lp.ticks", ...)
exchange.IO("lp.plan", ...)
exchange.IO("lp.simulate", ...)
exchange.IO("lp.add", ...)
exchange.IO("lp.increase", ...)
exchange.IO("lp.decrease", ...)
exchange.IO("lp.collect", ...)
exchange.IO("lp.remove", ...)
exchange.IO("lp.positions", ...)
exchange.IO("pump.*", ...)
exchange.IO("dca.*", ...)
exchange.IO("trigger.*", ...)
exchange.IO("bridge.*", ...)
OKX DEX
DEX策略示例
预测市场
证券与期货
链上与自定义接入
exchange.IO("lp.select", ...)
按TVL门槛与24小时成交额,为一个代币自动选出一个集中流动性池子。
exchange.IO(k, token, budget)
exchange.IO(k, token, budget, options)示例
-
为100 USDC的预算选出SOL/USDC池子。
javascriptfunction main() { var pool = exchange.IO("lp.select", "SOL", 100, {quote: "USDC"}) if (!pool) { Log("选池失败:", GetLastError()) return } Log("选中:", pool.dex, pool.id, "费率", pool.fee / 1e4 + "%", "理由:", pool.reason) } -
只在Raydium与Orca的池子里选。
javascriptfunction main() { var pool = exchange.IO("lp.select", "SOL", 100, {quote: "USDC", protocol: ["raydium", "orca"]}) if (!pool) { Log("选池失败:", GetLastError()) return } Log(pool.dex, pool.id, "tickSpacing", pool.tickSpacing, "24h成交", Math.round(pool.volume24hUsd)) }
返回值
| 类型 | 描述 |
object / 空值 | 选中的池子: |
参数
| 名称 | 类型 | 必填 | 描述 |
k | string | 是 | 固定为 |
token | string | 是 | 代币,写法同 |
budget | number | 是 | 准备投入的金额,按计价币计,用来定TVL门槛。 |
options | object | 否 | 筛选条件 |
参考
备注
筛选条件
| 键 | 说明 |
|---|---|
quote | 计价币;不给时在与SOL、USDC、USDT组成的池子里选 |
protocol | 协议:meteora、raydium、orca,或几个协议组成的数组 |
fee | 基础费率,单位同lp.pools的fee(百万分之一),如400 |
binStep | 只看这个bin步长的Meteora池子 |
tickSpacing | 只看这个tick间距的Raydium、Orca池子 |
选择规则
- 按筛选条件过滤
lp.pools的结果,一个都不剩时报错。 - 门槛取5000美元与
budget折合美元两者中较大的,budget按第一个池子计价币的美元价折算。 - 在美元TVL达到门槛的池子里选24小时成交额最大的;它们都没有成交数据时选TVL最大的;没有池子达到门槛时选全部池子里TVL最大的。
reason对应这三种情况,分别形如highest 24h volume among pools with TVL >= $5000、largest TVL among pools with TVL >= $5000 (no volume data)、no pool reaches $5000 TVL; picked the largest。
exchange.IO("lp.plan")不给pool时按同样的规则选池(fee、protocol、binStep、tickSpacing取自计划参数)。成交额最大的池子不一定最适合建仓:费率与价格粒度(binStep、tickSpacing)决定了手续费收入与可用的区间精度。