exchange.IO("lp.stake", ...)
Aerodrome、Velodrome:把仓位质押进所在池子的gauge,改为领取奖励币(AERO或VELO)。
exchange.IO(k, positionIds)示例
把钱包里没有质押、仍在区间内的仓位都质押进gauge。
javascript
function main() {
var ids = exchange.IO("lp.positions").filter(function (p) {
return !p.staked && !p.closed && p.inRange
}).map(function (p) { return p.id })
if (ids.length == 0) {
return
}
var r = exchange.IO("lp.stake", ids)
if (!r) {
Log("质押失败:", GetLastError())
return
}
r.positions.forEach(function (p) {
Log(p.id, "已质押到", p.gauge, "交易", p.txHash)
})
}返回值
| 类型 | 描述 |
object / 空值 |
|
参数
| 名称 | 类型 | 必填 | 描述 |
k | string | 是 | 固定为 |
positionIds | string / array | 是 | 仓位ID:单个ID或ID数组,Slipstream仓位如 |
参考
Aerodrome / Velodrome exchange.IO exchange.IO("lp.stake") exchange.IO("lp.unstake") exchange.IO("lp.claim") exchange.IO("lp.positions") exchange.IO("lp.pools")
备注
每个仓位各发交易:Slipstream仓位先把NFT授权给gauge(已授权时跳过),再把整个NFT存入,存入时gauge把仓位未领的手续费转给本人;基础池子把钱包里未质押的LP代币全部存入。gauge已被Voter停掉(lp.pools的gaugeAlive为false)时不能存入,报错。
质押期间仓位的交易手续费归投票人,仓位只拿奖励币;Slipstream仓位在区间外时也不发奖励。质押着的仓位不能加减仓或领手续费,要先用lp.unstake取回(lp.remove会自动先取回)。没有质押的Slipstream仓位要把一部分手续费(池子的unstakedFee,目前多为5%)交给gauge。
也可以在建仓时质押:lp.plan的参数写stake: true,lp.add建完直接质押,结果另有stake。