Detailed mechanics

Overview

At the outset a pool is created by a single address with a specific NFT collection and LTV (loan to value - w.r.t to the floor price of the said collection).

Liquidity = Assets

The pool’s total-liquidity LtotalL_{total} is split in two: the available-liquidity (cash, ready to use) and the loaned-liquidity (liquidity currently being loaned to debtors).

Tokens = Liabilities

The total amount of pool-tokens TtotalT_{total} are split amongst the LPs (liquidity providers).

The tokens give to their owner property over the pool’s liquidity as well as voting abilities in matters of pool-management, both in prorata to the total token amount.

Tokens

Tokens are emitted/burned during deposit/withdraw of liquidity.

Liquidity deposit

When a new LP wants to enter the pool, or if a former one wants to increase its contribution, he brings in a certain amount of liquidity LLPL_{LP}and is rewarded with an amount of pool-tokens TLP T_{LP} computed in pro-rata to the pool’s total-liquidity and total pool-tokens :

TLP=LLPLtotalTtotalT_{LP} = \frac{L_{LP}}{L_{total}}T_{total}

Please take note that the newly minted tokens are distributed with respect to the total-liquidity (= loaned-liquidity + available-liquidity), making a newcomer fully take part in the current loans, thereby exposing him to the associated risk and potential rewards.

A certain minimum amount of liquidity is required in order to enter the pool.

Liquidity withdrawal

When a LP desires to partially or totally leave the pool, he forfeits a share of his LP tokens T~LP\tilde T_{LP}(which are burned in the process) and withdraws the corresponding amount of available-liquidity :

Lwithdraw=T~LPTtotalLtotalL_{withdraw} = \frac{\tilde T_{LP}}{T_{total}} L_{total}

This operation can only be performed at the end of the vesting period, which will be detailed in the next part.

Interest rates

Rate referendum

Each LP sets the rate at which he wishes the loans were issued. The pool’s rate (the real rate at which the loans are issued) is then computed as the weighted mean of all LPs’ preferences on the basis of each one’s token share:

rate=LPsTiTtotalrateirate = \sum_{LPs}\frac{T_i}{T_{total}}rate_i

This system is akin to a community vote, whereby the pool’s rate reflects the preferences of all LPs proportionally to their contribution.

Rate update

  • Direct

Each LP can update its rate preference once per day. To avoid re-computing the previous sum (and consequently the unnecessary gas fees) during such an update, the following equivalent formula is used:

rate:=rate + TLPTtotalΔrateLPrate:=rate\space+\space \frac{T_{LP}}{T_{total}}\Delta rate_{LP}
  • Indirect

When the amount of tokens possessed by a LP is changed (either upon withdraw/deposit of liquidity) his voting power is diminished/increased accordingly as the pool rate is updated as follows:

rate:=rate + rateLPTtotalΔTLPrate:=rate\space+\space \frac{rate_{LP}}{T_{total}}\Delta T_{LP}
  • New LP arrival

Upon entry of a new member to the pool with a token amount TLPT_{LP}, both the rate and the total number of tokens need to be updated simultaneously; leading to the following formula:

rate:=TtotalTtotal+TLPrate + TLPTtotal+TLPrateLPrate := \frac{T_{total}}{T_{total} + T_{LP}}rate\space+\space \frac{T_{LP}}{T_{total} + T_{LP}} rate_{LP}

Vesting

Upon entry to the pool, in order to encourage lower rates and discourage manipulations, a vesting mechanism is established: the LP can retrieve its liquidity from the pool only after a certain period directly proportional to the rate he has set-up.

tvesting=max(1,krate)t_{vesting} = max (1, k*rate)

Where tvestingt_{vesting}is expressed in days, the raterate in %, and kkis a constant (homogeneous to a duration). Both kk and raterate must be strictly positive.

And when an LP sets a new rate preference, a new vesting time is recomputed, however it cannot be lesser than the remaining vesting duration he is currently in:

tvesting:=max(tvesting,kratenew)t_{vesting} := max(t_{vesting}, \lceil k*rate_{new} \rceil)

Loans

The pool emits loans using its available-liquidity.

  • ✅If a loan is successful both the capital and interest flows are collected by the pool. Thereby transforming the lended-liquidity back to the available-liquidity, with a net-gain coming from the interest-rate.

  • 🚫And if it isn’t, the collateral (NFT) is put into a Dutch auction sale, then the retrieved cash amount is transferred back to the pool.

It is easy to see that the amount of total liquidity over the total amount of tokens represents the overall pool’s performance, and can be used to gauge its P&L.

Last updated