⛏ 流动性挖矿
DODO平台上的当前流动性挖矿合约包括两个版本的实现。以下将描述相应的合约接口,以及在每个网络下执行的挖矿项目。
DODOMineV1 #
挖矿合约的第一个版本可以灵活地添加和移除质押代币,并通过设置每个质押代币的权重来划分总的DODO代币奖励。此版本主要用于DODO V1标准池,该池为单个代币提供流动性,并分发DODO代币奖励。
写函数#
合约的主要写函数包括以下内容:用于质押的deposit
,用于提取令牌的 withdraw
和 withdrawAll
,以及用于提取奖励的 claim
和 claimAll
。
deposit#
质押功能 deposit
需要传入要质押的代币地址以及用户要质押的代币数量。在调用之前,请确保用户的质押代币已经被授权给挖矿合约,并且挖矿合约通过 transferFrom
方法从用户的账户中将质押代币内部转移至挖矿合约。当调用 deposit
时,合约还会自动提取并转移用户当前获得的奖励到用户的账户。
function deposit(address _lpToken, uint256 _amount) public;
withdraw 和 withdrawAll#
对于提取代币,合约提供了两种方法 withdraw
和 withdrawAll
。 对于 withdraw
函数,您需要传入代币地址并指定要提取的代币数量。 对于 withdrawAll
函数,您只需要传入要提取的代币地址,合约将提取当前用户质押的所有代币到其账户中。 此外,通过调用这两个函数之一,合约将自动提取并将当前奖励转移至用户的账户。
function withdraw(address _lpToken, uint256 _amount) public;
function withdrawAll(address _lpToken) public;
claim 和 claimAll#
对于奖励提取,合约提供了函数 claim
和 claimAll
。前者需要传入提取奖励代币的质押代币地址。后者会提取当前用户参与的所有挖矿项目的挖矿奖励。
请注意,claimAll
函数会消耗更多的燃气,请谨慎使用。
function claim(address _lpToken) public;
Solifunction claimAll() public;
读函数#
挖矿合约的第一个版本还涉及一些读函数,包括以下内容。
getUserLpBalance#
函数 getUserLpBalance
获取用户质押的代币数量,需要传入质押代币地址和用户地址。
function getUserLpBalance(
address _lpToken,
address _user
) public view returns (uint256);
getPendingReward 和 getAllPendingReward#
这些函数返回当前用户所拥有的未领取奖励代币的数量。对于 getPendingReward
,您需要传入质押代币地址和用户地址,以获取指定质押资产对应的用户奖励数量。 要运行 getAllPendingReward
,您只需要传入用户的地址,函数将返回当前用户参与的所有挖矿项目的奖励代币总数。
function getPendingReward(address _lpToken, address _user) external view returns (uint256);
function getAllPendingReward(address _user) external view returns (uint256);
注意:在当前 V1 版本的挖矿活动中,奖励的调整更加灵活和可修改
当前使用 DODOMineV1 的挖矿项目#
- 以太坊 (挖矿合约地址:0xaed7384f03844af886b830862ff0a7afce0a632c)
- 每个区块当前释放 4.2 DODO 奖励。
质押代币 | 流动性池 | 权重 |
---|---|---|
WETH DLP | WETH - USDC | 200 |
USDC DLP | WETH - USDC | 200 |
WBTC DLP | WBTC - USDC | 200 |
USDC DLP | WBTC - USDC | 200 |
USDC DLP | WBTC - USDC | 440 |
USDT DLP | WBTC - USDC | 440 |
- BSC (挖矿合约地址:0x01f9BfAC04E6184e90bD7eaFD51999CE430Cc750)
- 每个区块当前释放 0.54 DODO 奖励。
质押代币 | 流动性池 | 权重 |
---|---|---|
BUSD DLP | BUSD - USDT | 0.22 |
USDT DLP | BUSD - USDT | 0.22 |
USDC DLP | USDC - BUSD | 0.05 |
BUSD DLP | USDC - BUSD | 0.05 |
- Arbitrum One (挖矿合约地址:0xE3C10989dDc5Df5B1b9c0E6229c2E4e0862fDe3e)
- 每个区块当前释放 1.5 DODO 奖励。
质押代币 | 流动性池 | 权重 |
---|---|---|
WETH DLP | WETH - USDC | 200 |
USDC DLP | WETH - USDC | 200 |
WBTC DLP | WBTC - USDC | 200 |
USDC DLP | WBTC - USDC | 200 |
USDT DLP | USDT - USDC | 200 |
USDC DLP | USDT - USDC | 200 |
- Aurora (挖矿合约地址:0xDBFaF391C37339c903503495395Ad7D6B096E192)
- 每个区块当前释放 0.1 DODO 奖励。
质押代币 | 流动性池 | 权重 |
---|---|---|
USDT DLP | USDT - USDC | 200 |
USDC DLP | USDT - USDC | 200 |
- Polygon (挖矿合约地址:0xB14dA65459DB957BCEec86a79086036dEa6fc3AD)
- 每个区块当前释放 0.44 DODO 奖励.