Pricing
Previously, an offchain pricing module was used for cover products. This model has been sunset and pricing has now moved onchain, with a dynamic pricing model that determines the price of cover products.
When a cover product is added to a staking pool, the price starts at the initial price and decreases over time toward the target price set by each staking pool. The initial price for each cover product is determined by the Advisory Board and the target price is set by members running staking pools, who are referred to as staking pool managers.
With this approach, the price - per pool per risk - starts high and decreases to the minimum a staking pool is willing to accept, like a Dutch auction. This allows for price discovery; should risk be mispriced, demand at a given price will signal the willingness of members to buy cover at that price floor.
The dynamic pricing mechanism is reviewed in detail below.
Spot price
The spot price decreases linearly from bumpedPrice
to targetPrice
, depending on the Speed(PRICE_CHANGE_PER_DAY)
and the time passed since the last cover buy
.
Spot price formula
spotPrice = MAX(bumpedPrice - priceDrop, targetPrice)
Where:
-
bump = 0.2% addition to the spot price per 1% of pool capacity used
-
Bumped price = spotPrice + capacity% of the pool to be used / 1% x 0.2
-
priceDrop = timeSinceLastCoverBuy * speed
-
speed = PRICE_CHANGE_PER_DAY / 1 dayInSeconds
targetPrice
is set by the staking pool manager and can be updated at any time
Bumped price
The Bumped Price gets updated after each cover buy and is used to calculate the spot price of the NEXT cover.
Example
-
spotPrice = 2.5%
-
capacity % of the pool to be used = 15%
-
bumpedPrice = 2.5 + 15% / 1% x 0.2 = 5.5 price per annum
Note: when a cover product is first added to a staking pool, the BumpedPrice
is equal to the InitialPrice
set by the Advisory Board.
Price drop
This is determined by taking the timeSinceLastCoverBuy
and multiplying by the Speed
, which moves at 2.0% per day. The price drop is subtracted from spot price.
Example
-
speed = 2.0% per day
-
timeSinceLastCoverBuy = 3 days
-
priceDrop = 3 * 2.0% = 6.0%
Calculating spot price
You can see an example of the variables being used to calculate the price of an individual cover product within a staking pool:
Example
-
speed = 2.0% per day
-
timeSinceLastCoverBuy = 3 days
-
priceDrop = 3 * 2.0% = 6.0%
-
bumpedPrice = 6.5%
-
targetPrice = 4%
-
spotPrice = MAX(6.5% - 6.0%, 3%) = 3.0%
Benefits
Dynamic pricing adjusts based on changes in demand and utilization. This allows for reactive pricing without the need for immediate action by staking pool managers.
The dynamic pricing model allows a staking pool to diversify risk across cover products no matter if demand is high or low. In each instance, the price will increase or decrease to reflect the market rate.