Funding Fee

The fundingFee contract provides logic for calculating and settling funding fees, as well as querying the funding rate and pending (pre-settlement) funding fees.

basePool

Funding rates are calculated using basePool. If for a given market the basePool is not set (ie. set to 0x000...), funding fees will not be applied in this market.

The basePool address can be queried using Config.

Contract

/// #notice Check the settlement event to see amount of funding paid/received. This information may also be available from The Graph.
event FundingFeeSettled(uint256 marketId, address trader, int256 fundingFee);

function getCurrentFundingRate(uint256 marketId) public view returns (int256)

/// @notice Amount of pending fees from the trader's perspective.
/// @return When settled, margin will decrease if fee is positive, increase if fee is negative.
function getPendingFee(
    uint256 marketId,
    address trader
) 

returns (
    int256 pendingFee
)

/// @notice Query latest funding rate. Historical funding rates should be queried from The Graph or similiar provider.
function getCurrentFundingRate(
    uint256 marketId
)

returns (
    int256 fundingRate
)

Last updated