cunoro
Search…
Equations

Staking

deposit=withdrawaldeposit = withdrawal
Swaps between NORO and sNORO during staking and unstaking are always honored 1:1. The amount of NORO deposited into the staking contract will always result in the same amount of sNORO. And the amount of sNORO withdrawn from the staking contract will always result in the same amount of NORO.
harvest=1(NORODeposits/sNOROOutstanding)harvest = 1 - ( NORO_{Deposits} / sNORO_{Outstanding} )
The treasury deposits NORO into the distributor. The distributor then deposits NORO into the staking contract, creating an imbalance between NORO and sNORO. sNORO is harvested to correct this imbalance between NORO deposited and sNORO outstanding. The harvest brings sNORO outstanding back up to parity so that 1 sNORO equals 1 staked NORO.

Minting

mintPrice=1+Premiummint Price = 1 + Premium
NORO has an intrinsic value of 1 FRAX, which is roughly equivalent to $1. In order to make a profit from minting, cunoro charges a premium for each mint.
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 mint prices increase.
The premium determines profit due to the protocol and in turn, stakers. This is because new NORO is minted from the profit and subsequently distributed among all stakers.
debtRatio=mintsOutstanding/NOROSupplydebt Ratio = mintsOutstanding/NORO_{Supply}
The debt ratio is the total of all NORO promised to minters divided by the total supply of NORO. This allows us to measure the debt of the system.
mintPayoutreserveMint=marketValueasset / mintPricemintPayout_{reserveMint} = marketValue_{asset}\ /\ mintPrice
Mint payout determines the number of NORO sold to a minter. For reserve mints, the market value of the assets supplied by the minter is used to determine the mint payout. For example, if a user supplies 1000 FRAX and the mint price is 250 FRAX, the user will be entitled 4 NORO.
mintPayoutlpMint=marketValuelpToken / mintPricemintPayout_{lpMint} = marketValue_{lpToken}\ /\ mintPrice
For liquidity mints, the market value of the LP tokens supplied by the minter is used to determine the mint payout. For example, if a user supplies 0.001 NORO-FRAX LP token which is valued at 1000 FRAX at the time of minting, and the mint price is 250 FRAX, the user will be entitled 4 NORO.

NORO Supply

NOROsupplyGrowth=NOROstakers+NOROminters+NORODAO+NOROpNOROExerciseNORO_{supplyGrowth} = NORO_{stakers} + NORO_{minters} + NORO_{DAO} + NORO_{pNOROExercise}
NORO supply does not have a hard cap. Its supply increases when:
  • NORO is minted and distributed to the stakers.
  • NORO is minted for the minter. This happens whenever someone purchases a mint.
  • NORO is minted for the DAO. This happens whenever someone purchases a mint. The DAO gets the same number of NORO as the minter.
  • NORO is minted for the team, investors, advisors, or the DAO. This happens whenever
    the aforementioned party exercises their pNORO.
NOROstakers=NOROtotalSupplyrewardRateNORO_{stakers} = NORO_{totalSupply} * rewardRate
At the end of each epoch, the treasury mints NORO at a set reward rate. These NORO will be distributed to all the stakers in the protocol. You can track the latest reward rate on the cunoro Policy dashboard.
NOROminters=mintPayoutNORO_{minters} = mintPayout
Whenever someone purchases a mint, a set number of NORO is minted. These NORO will not be released to the minter all at once - they are vested to the minter linearly over time. The mint payout uses a different formula for different types of mints. Check the minting section above to see how it is calculated.
NORODAO=NOROmintersNORO_{DAO} = NORO_{minters}
The DAO receives the same amount of NORO as the minter. This represents the DAO profit.
NOROpNOROExercise=pNORO+FRAXNORO_{pNOROExercise} = pNORO + FRAX
The individual would supply 1 pNORO along with 1 FRAX to mint 1 NORO. The pNORO is subsequently burned.

Backing per NORO

NORObacking=treasuryBalancestablecoin+treasuryBalanceotherAssetsNORO_{backing} = treasuryBalance_{stablecoin} + treasuryBalance_{otherAssets}
Every NORO in circulation is backed by the Otter's treasury. The assets in the treasury can be divided into two categories: stablecoin and non-stablecoin.
treasuryBalancestablecoin=RFVreserveMint+RFVlpMinttreasuryBalance_{stablecoin} = RFV_{reserveMint} + RFV_{lpMint}
The stablecoin balance in the treasury grows when mints are sold. RFV is calculated differently for different mint types.
RFVreserveMint=assetSuppliedRFV_{reserveMint} = assetSupplied
For reserve mints such as FRAX mint, the RFV simply equals to the amount of the underlying asset supplied by the minter.
RFVlpMint=2sqrt(constantProduct)(% ownership of the pool)RFV_{lpMint} = 2sqrt(constantProduct) * (\%\ ownership\ of\ the\ pool)
For LP mints such as NORO-FRAX mint, the RFV is calculated differently because the protocol needs to mark down its value. Why? The LP token pair consists of NORO, and each NORO in circulation will be backed by these LP tokens - there is a cyclical dependency. To safely guarantee all circulating NORO are backed, the protocol marks down the value of these LP tokens, hence the name risk-free value (RFV).
Copy link
Outline
Staking
Minting
NORO Supply
Backing per NORO