Equation

Staking

HOOK=CLOCKHOOK = CLOCK

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

rebase=1(HOOKdeposits/CLOCKoutstanding)rebase = 1 - ( HOOKdeposits / CLOCK outstanding )

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

Minting

MintingPrice=MarketPrice(1DicountRate)Minting Price=Market Price * (1 - DicountRate)

Intrinsic value of HOOK token starts from 1 KUSDT. Minting price is determined after discount from the market price.

mintPayout=marketValueasset / mintPricemintPayout = marketValue_{asset}\ /\ mintPrice

Mint payout determines the number of HOOK sold to a minter. Regardless of asset type, the market value of the assets supplied by the minter is used to determine the mint payout. For example, if a user supplies 1000 KUSDT and the Mint price is 250 KUSDT, the user will be entitled 4 HOOK.

HOOK Supply

HOOKsupplyGrowth=HOOKstakers+HOOKminters+HOOKprotocolHOOK_{supplyGrowth} = HOOK_{stakers} + HOOK_{minters} + HOOK_{protocol}

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

  • HOOK is minted and distributed to the stakers.

  • HOOK is minted for the bonder. This happens whenever someone mints.

  • HOOK is minted for the protocol. This happens whenever someone mints. The protocol gets the same number of HOOK as the minter.

HOOKstakers=HOOKtotalSupplyrewardRateHOOK_{stakers} = HOOK_{totalSupply} * rewardRate

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

HOOKminters=mintPayoutHOOK_{minters} = mintPayout

Whenever someone purchases a bond, a set number of HOOK is minted. These HOOK 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.

HOOKprotocol=HOOKmintersHOOK_{protocol} = HOOK_{minters}

The protocol receives the same amount of HOOK as the minter. This represents the protocol profit.

Backing per HOOK

HOOKbacking=treasuryBalancestableLP+treasuryBalanceotherLPHOOK_{backing} = treasuryBalance_{stableLP} + treasuryBalance_{otherLP}

Every HOOK in circulation is backed by the Neverland treasury. The assets in the treasury can be divided into three categories: LP including HOOK (HOOK LP), stableLP and non-stableLP.

treasuryBalancestable=RFVstableLP+RFVhookLPtreasuryBalance_{stable} = RFV_{stableLP} + RFV_{hook LP}

The stable balance in the treasury grows when users mint. RFV is calculated differently for different bond types.

RFVstableLP=assetSuppliedRFV_{stableLP} = assetSupplied

For stableLP such as KUSDT-KDAI and KUSDT-KUSDC, the RFV simply equals to the amount of the underlying asset supplied by the minter.

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

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

HOOKLPconstantProduct=HOOKqtyOTHERTOKENqtyHOOK LP constantProduct = HOOKqty * OTHERTOKENqty

constantProduct of HOOK LP is product of HOOK quantity and other token. In case of 10 HOOK - 1000 KUSDT LP at HOOK price $100, the constantProduct is 10,000 and 2 squareroot is 100. It means it can back total 100 HOOK for $1 where there's bankrun and people dump HOOK. It will be 100 HOOK - 100 KUSDT at HOOK price at $1.

CVotherLP=VALUEotherLP1/2CV_{otherLP} = VALUE_{otherLP} * 1/2

For other LPs except HOOK LP, we set the backing value for 50% of the asset value. LP token has high resistence to market volatility especially when one of the asset is stable token such as KUSDT or KDAI. In case of KETH - KUSDT, the 50% of the LP value can be kept until KETH price drops to 25% from its original value. (ex: $5,000 → $1,250)

Neverland sets Corrected Value of other LPs to 50% of its current value, and mints HOOK based on it. (User gets 100% of HOOK tokens based on the minting price but the tokens to be released for staking reward is 50% of the asset value) Thus, it has 50% of buffer to back the intrinsic value and let the protocol acquire budget from 3% of the treasury for marketing and development for building richer Neverland eco-system.

Last updated