For the complete documentation index, see llms.txt. This page is also available as Markdown.

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

Was this helpful?