LP质押奖励智能合约开发
- 供应商
- 广州杰肯狸网络科技有限公司
- 认证
- 联系电话
- 18125913365
- 手机号
- 19927739756
- 联系人
- 何经理
- 所在地
- 广州天河区中山大道
- 更新时间
- 2024-05-03 10:48
stake(uint256 pid, uint256 amount, addressto) 质押代币到指定池子。pid 表示池子的id,amount 表示质押的数量,to 表示用户的地址。注意:调用此接口之前必须确保质押合约拥有用户足额的代币授权,参考 erc-20token standard |ethereum.org 中 approve 方法。
unstake(uint256 pid, uint256 amount, addressto) 解除代币质押。pid 表示池子的id,amount 表示质押的数量,to 表示用户到账地址。
claim(uint256 pid, addressto) 领取质押奖励。pid 表示池子的id,to 表示用户到账地址。
unstakeandclaim(uint256 pid, uint256 amount, addressto) 解除代币质押并领取质押奖励。pid 表示池子的id,amount 表示质押的数量,to 表示用户到账地址。
annual percentage rate (apr)
查询total staked并将单位转换为美元
查询today’s rewards并将单位转换为美元
用第二步计算的值除以第一步计算的值然后乘以365
total rewards
let blocks = stakingsharedpooll2.endblock() - stakingsharedpooll2.startblock()let tokenperblock = stakingsharedpooll2.tokenperblock()let allocpoint = stakingsharedpooll2.pollinfo(pid).allocpoint;return tokenperblock * blocks * (allocpoint / stakingsharedpooll2.totalallocpoint())today’s rewards
每个区块奖励数量乘以每天产生的区块数(币安链三秒产生一个区块)
staking period
(stakingsharedpooll2.endblock - stakingsharedpooll2.startblock) * 3/ (60 * 60 * 24)
your stake percentage
stakingsharedpooll2.userinfo(pid, user).amount /stakingsharedpooll2.poolinfo(pid).totalstaked
ends in
使用 rpc接口 eth_blocknumber 获取当前区块高度。
(stakingsharedpooll2.endblock - currentbloack) * 3 / (60 * 60 *24)