dForce | Developers
  • Introduction
  • Lending Protocols
    • Yield Markets
      • Architecture
      • Modules
      • Contracts
      • Security
      • Interface
    • Lending & Synthetic Assets
      • iTokens
      • Controller
      • iMSDTokens
      • MSDController
      • Price Oracle
      • Reward Distribution
      • Security
      • Deployed Contracts
      • Glossary
    • Vaults
  • Liquidity Protocols
    • dForce Trade
    • Liquidity Mining
  • DF Staking
    • Free Staking
    • Lock-up Staking
Powered by GitBook
On this page

Was this helpful?

  1. Lending Protocols
  2. Lending & Synthetic Assets

Reward Distribution

Every dForce Lending user accrues DF for each block they are supplying to or borrowing (including minting Synths) from the protocol. globalDistributionSpeed and globalDistributionSupplySpeed represent the total amount of token distributed per block on the borrow and supply sides respectively. Each asset that participated in the reward schedule will be allocated with a distribution speed, distributionSpeed and distributionSupplySpeed represent reward amount distribute on supply and borrow sides respectively.

Variables to address distribution speed of each asset.

/// @notice the global Reward distribution speed for borrow
    uint256 public globalDistributionSpeed;
    
/// @notice the global Reward distribution speed for supply
    uint256 public globalDistributionSupplySpeed;

/// @notice the Reward distribution speed of each iToken
    mapping(address => uint256) public distributionSpeed;
    
/// @notice the Reward distribution speed supply side of each iToken
    mapping(address => uint256) public distributionSupplySpeed;

Deployed Contracts

  • General Pool

Name

Address

Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

  • Stock Pool (not distributed yet)

Name

Address

Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

  • General Pool

Name

Address

Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

  • Stock Pool (not distributed yet)

Name

Address

Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

Name

Address

Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

Name
Address
Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

Name

Address

Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

Name

Address

Descriptions

Reward Distributor

Interface for distribution

LendingData

Interface for data

How to calculate the claimable amount of reward in LendingDataV2.sol?

Returns the amount of reward one account has earned in participating in all the assets of supplying or borrowing(mint MSD token considers as borrow).

function getAccountRewardAmount(address _account) external returns (uint256)

Claim reward for any account and any asset in RewardDistributorV3.sol.

/**
* @notice Claim reward accrued in iTokens by the holders
* @param _holders The account to claim for
* @param _iTokens The _iTokens to claim from
 */
    function claimReward(address[] memory _holders, address[] memory _iTokens)
        public;

Claim reward for any account of all participated assets supplied to or borrowed (including mint Synths) from the protocol RewardDistributorV3.sol.

/**
* @notice Claim reward accrued in iTokens by the holders
* @param _holders The account to claim for
* @param _suppliediTokens The _suppliediTokens to claim from
* @param _borrowediTokens The _borrowediTokens to claim from
 */
    function claimRewards(address[] memory _holders, address[] memory _suppliediTokens, address[] memory _borrowediTokens)
        external 

Claim reward for any account of all participated assets RewardDistributorV3.sol.

**
* @notice Claim reward accrued in all iTokens by the holders
* @param _holders The account to claim for
*/
    function claimAllReward(address[] memory _holders) external
PreviousPrice OracleNextSecurity

Last updated 1 year ago

Was this helpful?

0x8fAeF85e436a8dd85D8E636Ea22E3b90f1819564
0x37600A5a555F61ec2012D94b32f9B8c8eb2EfC5e
0xcf4ad4da361671dc84be51a6c1131eaf84926e00
0x52ed0A880EdA217052E1fae4333Ba1F4abfe2ac3
0x6fC21a5a767212E8d366B3325bAc2511bDeF0Ef4
0x2B9B3F4D83eAD0EA412D354E3CCd8C9eA558ACD7
0xa28F287630184d3b5EeE31a5FE8dB0A63c4A6e2f
0xfABc3D9dAFb8a51b9C70db4ed530E4f17014dcA5
0xF45e2ae152384D50d4e9b08b8A1f65F0d96786C3
0x9dDBB20521cCEE5715aF0a8ac5046Fa6B4A39941
0x870ac6a76A30742800609F205c741E86Db9b71a2
0x0C0AdB03423c8232a0b7785433919EaF62A59173
0x47C19A2ab52DA26551A22e2b2aEED5d19eF4022F
0xEb339b4EA1051C8064A124C959b531C89b834182
0x3482f35B866E24D85AC29FfdbcD4A89EC65288c0
0x121F88625831702d02dcF93092E5247eca7b94f4