Funding Rates
Funding rates in DPerp ensure that perpetual contract prices stay close to spot prices by creating incentives for traders to balance long and short positions. Funding is exchanged between long and short position holders every 8 hours.
Funding Mechanism
Funding Rate Calculation
function getNextFundingRate(bytes32 assetId, uint256 poolAmount, uint256 reservedAmount)
external view returns (int256) {
FundingRate memory rate = fundingRates[assetId];
if (poolAmount == 0) return 0;
int256 fundingRate = int256((rate.fundingRateFactor * reservedAmount) / poolAmount);
uint256 maxRate = maxFundingRate[assetId];
if (maxRate > 0 && uint256(fundingRate > 0 ? fundingRate : -fundingRate) > maxRate) {
fundingRate = fundingRate > 0 ? int256(maxRate) : -int256(maxRate);
}
return fundingRate;
}Funding Rate Structure
Funding Intervals
8-Hour Funding Cycles
Funding Schedule
Time (UTC)
Funding Event
00:00
Funding Payment
08:00
Funding Payment
16:00
Funding Payment
Funding Rate Factors
Utilization-Based Rates
Funding rates depend on pool utilization:
Asset-Specific Factors
Asset Category
Funding Rate Factor
Max Funding Rate
Major Crypto
0.01%
0.75%
Minor Crypto
0.02%
1.00%
Commodities
0.015%
0.50%
Equities
0.025%
0.30%
Forex
0.005%
0.25%
Funding Payments
Payment Calculation
Payment Direction
Positive Funding Rate: Longs pay shorts
Negative Funding Rate: Shorts pay longs
Zero Funding Rate: No payments
Example Calculation
Funding Rate Monitoring
Real-time Funding Rates
Funding History
Funding Rate Impact
Position Cost Analysis
Funding Rate Arbitrage
Funding Rate Strategies
Funding Rate Farming
Delta-Neutral Strategies
Funding Rate Configuration
Admin Functions
Dynamic Adjustments
Integration Examples
Funding Rate Display
Position Funding Calculator
Last updated