@somnia-chain/markets-sdk


@somnia-chain/markets-sdk / index / normalizeFundingRate

Function: normalizeFundingRate()

normalizeFundingRate(rate, fundingWindowSec, targetSec): bigint

Defined in: packages/sdk/src/funding.ts:73

Re-express a per-window funding rate on a different denominator.

rate_target = rate * targetSec / fundingWindowSec, in 1e18 fixed point. Truncates toward zero, matching the contract's integer arithmetic; sign is preserved.

Details

  • rate: the rate as stored/emitted: per fundingWindowSec, 1e18-scaled, signed
  • fundingWindowSec: the rate's denominator, from the same row or state read
  • targetSec: the denominator to convert to

Example (Normalizing an interval rate)

ts
const perInterval = normalizeFundingRate(st.fundingRate, st.fundingWindowSec, st.fundingIntervalSec);

Parameters

rate

bigint

fundingWindowSec

number

targetSec

number

Returns

bigint