Equations

Staking

deposit=withdrawaldeposit = withdrawal

Swaps between SCR and sSCR during staking and unstaking are always honored 1:1. The amount of SCR deposited into the staking contract will always result in the same amount of sSCR. And the amount of sSCR withdrawn from the staking contract will always result in the same amount of SCR.

rebase=1(SCRDeposits/sSCROutstanding)rebase = 1 - ( SCRDeposits / sSCR Outstanding )

The treasury deposits SCR into the distributor. The distributor then deposits SCR into the staking contract, creating an imbalance between SCR and sSCR. sSCR is rebased to correct this imbalance between SCR deposited and sSCR outstanding. The rebase brings sSCR outstanding back up to parity so that 1 sSCR equals 1 staked SCR.

Minting

Minting happens by allowing users to purchase a bond. This bond price is the Mint price.

bondPrice=1+Premiumbond Price = 1 + Premium

SCR has an intrinsic value of 1 MIM, which is roughly equivalent to $1. In order to make a profit from minting, **SecureDAO **charges a premium for each minting action.

Premium=debtRatioBCVPremium = debt Ratio * BCV

The premium is derived from the debt ratio of the system and a scaling variable called BCV. BCV allows us to control the rate at which bond prices increase.

The premium determines profit due to the protocol and in turn, stakers. This is because new SCR is minted from the profit and subsequently distributed among all stakers.

debtRatio=bondsOutstanding/SCRSupplydebt Ratio = bondsOutstanding/SCRSupply

The debt ratio is the total of all SCR promised to bonders divided by the total supply of SCR. This allows us to measure the debt of the system.

bondPayoutreserveBond=marketValueasset / bondPricebondPayout_{reserveBond} = marketValue_{asset}\ /\ bondPrice

Bond payout determines the number of SCR sold to a minter. For reserve mints, the market value of the assets supplied by the minter is used to determine the bond payout. For example, if a user supplies 1000 MIM and the mint price is 250 MIM, the user will be entitled 4 SCR.

bondPayoutlpBond=marketValuelpToken / bondPricebondPayout_{lpBond} = marketValue_{lpToken}\ /\ bondPrice

For liquidity mints, the market value of the LP tokens supplied by the minter is used to determine the bond payout. For example, if a user supplies 0.001 SCR-AVAX LP token which is valued at 1000 MIM at the time of bonding, and the bond price is 250 MIM, the user will be entitled 4 SCR.

SCR Supply

SCRsupplyGrowth=SCRstakers+SCREbonders+SCRDAOSCR_{supplyGrowth} = SCR_{stakers} + SCRE-_{bonders} + SCR_ {DAO}

SCR supply does not have a hard cap. Its supply increases when:

  • SCR is minted and distributed to the stakers.

  • SCR is minted for the bonder. This happens whenever someone purchases a bond.

  • SCR is minted for the DAO. This happens whenever someone purchases a bond. The DAO gets the same number of SCR as the bonder.

SCRstakers=SCRtotalSupplyrewardRateSCR_{stakers} = SCR_{totalSupply} * rewardRate

At the end of each epoch, the treasury mints SCR at a set reward rate. These SCR will be distributed to all the stakers in the protocol.

SCRbonders=bondPayoutSCR_{bonders} = bondPayout

Whenever someone purchases a bond, a set number of SCR is minted. These SCR will not be released to the minter all at once - they are vested to the bonder linearly over time. The bond payout uses a different formula for different types of bonds. Check the Minting section above to see how it is calculated.

SCRDAO=SCRbondersSCR_{DAO} = SCR_{bonders}

The DAO receives the same amount of SCR as the minter. This represents the DAO profit.

Backing per SCR

SCRbacking=treasuryBalancestablecoin+treasuryBalanceotherAssetsValueSCR_{backing} = treasuryBalance_{stablecoin} + treasuryBalance_{otherAssetsValue}

Every SCR in circulation is backed by the SecureDAO treasury. The assets in the treasury can be divided into two categories, stablecoins and various other assets.

Risk Free Valuation

The RFV of SCR grows when bonds are sold. RFV is calculated differently for different asset types.

RFVreserveBond=assetSuppliedRFV_{reserveBond} = assetSupplied

For reserve assets such as MIM, the RFV simply equals to the value of the underlying asset supplied by the minter.

RFVlpBond=2sqrt(constantProduct)(% ownership of the pool)RFV_{lpBond} = 2sqrt(constantProduct) * (\%\ ownership\ of\ the\ pool)

For LP assets such as SCR-MIM LP, the RFV is calculated differently because the protocol needs to mark down its value. Why? The LP token pair consists of SCR, and each SCR in circulation will be backed by these LP tokens - there is a cyclical dependency. To safely guarantee all circulating SCR are backed, the protocol marks down the value of these LP tokens.

RFVtotal=RFVreserveAssets+RFVlpAssetsRFV_{total} = RFV_{reserveAssets} + RFV_{lpAssets}

Last updated