🧭Definitions

This page contains a table of definitions used to rigorously and unambiguously define key parts of protocol behavior, and may be updated from time to time.

Variable
Description
Notes

BpB_p

Total outstanding principal.

Bp=i=0nBPx\displaystyle B_p=\sum^n_{i=0}BP_xwhere there are ​nn​ Vaults

BtB_t

Total outstanding debt.

Bt=i=0nBCx\displaystyle B_t=\sum^n_{i=0}BC_x​where there are nn​Vaults

CseniorC_{senior}

Cash balance of the senior tranche.

Balance of the senior tranche contract returned by the underlying ERC20 asset when balanceOf is called.

CjuniorC_{junior}

Cash balance of the junior tranche.

Balance of the senior tranche contract returned by the underlying ERC20 asset when balanceOf is called.

LseniorL_{senior}

Assets held by the senior tranche, including loans (principal).

Lsenior=Csenior+BpL_{senior} = C_{senior} + B_p

LjuniorL_{junior}

Assets held by the junior tranche.

Ljunior=CjuniorL_{junior} = C_{junior}

UoptimalU_{optimal}

Optimal utilisation rate.

Percentage expressed in ray.

UU

Utilisation rate (actual).

U={0 if Lsenior=0BtLsenior elseU = \begin{cases} 0\ & if\ L_{senior} = 0 \\ \frac{B_{t}}{L_{senior}}\ & else \end{cases}

RbR_{b}

Base borrow rate.

The base interest rate. Set by governance.

Rslope1R_{slope1}

Slope when U>UoptimalU > U_{optimal}

Set by governance.

RstR^t_{s}

Current slope rate. New borrows receive this rate.

Rst={Rb,if UUoptimalRb+UUoptimalRslope1,if U>UoptimalR^{t}_{s} = \begin{cases} R_{b}, & if\ U \leq U_{optimal} \\ R_{b} + \frac{U}{U_{optimal}}R_{slope1}, & if\ U \gt U_{optimal} \end{cases}

Rˉb\bar R_b

Average borrow APR

Rˉb=i=0nRinPiBp\bar R_b = \displaystyle\frac{\sum_{i=0}^nR^n_i P_i}{B_p}

LiRoptimalLiR_{optimal}

Optimal tranche liquidity ratio

Set by governance.

LiRtLiR_t

Current tranche liquidity ratio

LiRt=LseniorLjunior\displaystyle LiR_{t} = \frac{L_{senior}}{L_{junior}}

E(LiR)E(LiR)

Deviation of LiRtLiR_t from LiRoptimalLiR_{optimal}. Presently not in use.​

E(LiR)=LiRoptimalLiRtE(LiR) = LiR_{optimal} - LiR_t

YseniorY_{senior}

Optimal senior yield allocation

Percentage, expressed in basis points.

YjuniorY_{junior}

Optimal junior yield allocation

1Ysenior1 - Y_{senior}

YtY_t

Current actual income allocation, PID-like. Presently not in use.

Yt={YifLiRt=LiRsYoptimal11+E(LiR)LiRoptimalifE(LiR)>0Yoptimal1+E(LiR)LiRoptimalifE(LiR)<0\displaystyle Y^t = \begin{cases} Y & if LiR_t = LiR_{s} \\ Y_{optimal} \cdot \displaystyle\frac{\displaystyle1}{\displaystyle1+\frac{E(LiR)}{LiR_{optimal}}} & if E(LiR) \gt 0 \\ Y_{optimal} \cdot 1+\displaystyle\frac{E(LiR)}{LiR_{optimal}} & if E(LiR) \lt 0 \end{cases}

RlR_l

Current lender interest rate

Rl=RbUR_l = R_bU

RseniorR_{senior}

Senior tranche effective interest rate

Rsenior=RlYseniorR_{senior} = R_l \cdot Y_{senior}

RjuniorR_{junior}

Junior tranche effective interest rate

Rjunior=RlYjuniorLiRtR_{junior} = R_l\cdot Y_{junior}\cdot LiR_{t}

SseniorS_{senior}

Total supply of senior tranche shares

vToken totalSupply()

SjuniorS_{junior}

Total supply of junior tranche shares

vToken totalSupply()

Ex(t)Ex(t)

Exchange rate of shares to the underlying asset

Ex(x)=Lx/SxEx(x)=L_x/S_x where xx is one of junior or senior

FVoFV_o

Asset floor price at purchase block height

Provided by Oracle

FVtFV_t

Asset floor price at current block height

Provided by Oracle

GAVxGAV_x

Gross asset value of a Vault xx, by current floor price. Presently not in use.

GAVx=ΣiliensFVt+VTGAV_x = \Sigma_{i \in liens}FV_t + VTwhere liensliens is the set of unredeemed non-fungible assets​ in the Vault.

VTxVT_x

Underlying ERC20 balance for a Vault xx.

Return value of balanceOf()

DRαDR_{\alpha}

A drawdown by a Vault.

DRα=(P,R,Term,Epoch,NPer,Pmt)DR_{\alpha} = (P,R,Term,Epoch,NPer,Pmt)

PαP_\alpha

Principal component of a drawdown DRαDR_{\alpha}

-

RαR_\alpha

Interest rate applied to DRαDR_{\alpha}.​

Rα=RstR_\alpha = R^t_s

where RstR^t_s is the prevailing slope rate at time of origination tt

IαI_\alpha

Interest component of DRαDR_{\alpha}.

Iα=RαPαI_\alpha=R_\alpha P_\alpha

TermαTerm_\alpha

The loan term of DRαDR_{\alpha} in seconds.

Always a multiple of TmonthT_{month}.​

EpochαEpoch_\alpha

The payment interval of DRαDR_{\alpha} in seconds.

Always a multiple of TmonthT_{month}

EPY(α)EPY(\alpha)

Number of payment intervals per year for DRαDR_{\alpha}​.

EPY(α)=TyearEpochα\displaystyle EPY(\alpha)=\frac{T_{year}}{Epoch_\alpha}

NPer(α)NPer(\alpha)

Number of instalments needed to repay the principal and interest for DRαDR_{\alpha}.​

NPer(α)=TermαEpochαNPer(\alpha) = \displaystyle\frac{Term_\alpha}{Epoch_\alpha}

IPmti(α)IPmt_i(\alpha)

Interest component of an instalment at period ii​.

IPmti(α)=I(α)NPer(α)\displaystyle IPmt_i(\alpha)=\frac{I(\alpha)}{NPer(\alpha)}

PPmti(α)PPmt_i(\alpha)

Principal component of an instalment at period ii​.

PPmti(α)=PαNPer(α)\displaystyle PPmt_i(\alpha)=\frac{P_\alpha}{NPer(\alpha)}

Pmti(α)Pmt_i(\alpha)

Total instalment amount at period ii.

Pmti(α)=IPmti(α)+PPmti(α)Pmt_i(\alpha) = IPmt_i(\alpha)+PPmt_i(\alpha)

TiαT^\alpha_{i}

Timestamp of due date of the next instalment of DRαDR_{\alpha}​.

Tiα={T+Epochαif i=0Ti1α+EpochαelseT^\alpha_{i} = \begin{cases} T+Epoch_\alpha & if \ i = 0 \\ T^\alpha_{i-1}+Epoch_\alpha & else \end{cases}

TPD(α)TPD(\alpha)

Time past due for DRαDR_{\alpha} expressed in seconds.

TPD(α)={0if TTiαTTiαelseTPD(\alpha) = \begin{cases} 0 & if \ T \leq T^\alpha_{i} \\ T - T^\alpha_{i} & else \end{cases}

REαtRE^t_\alpha

Total repayments made toward DRαDR_{\alpha}​.

REat=i=1nPmt(α)\displaystyle RE^t_a = \sum_{i=1}^{n}Pmt(\alpha) where nn is the number of repayments that have been made.

BCxBC_x

Total debt of a Vault xx, including interest.

BCx=i=0nPmt(i)\displaystyle BC_x=\sum^{n}_{i=0} Pmt(i) for Vault xxwith nn​ active Drawdowns.

BPxBP_x

Total principal debt of a Vault xx

BPx=i=0nPi\displaystyle BP_x=\sum^{n}_{i=0} P_i for Vault xx​ with nn​ active Drawdowns.

BIxBI_x

Total interest owed by a Vault xx

BIx=BCxBPxBI_x = BC_x-BP_x

BmaxB_{max}

Current Vault credit limit.

Bmax=max(FVt(1+log2(1+Repvx)),FVt)B_{max} = max(FV_t \cdot (1 + \log_2(1+{Rep^x_v})), FV_t)

LFLF

Liquidation threshold.

Currently set to 11

LBLB

Liquidation bonus.

Currently set to 0.10.1

LTVLTV

Loan-to-value.

HF=LTVLFHF = LTV\cdot LF Currently disabled.

TT

Current block timestamp

-

TyearT_{year}

Seconds per year

3153600031536000

TmonthT_{month}

Seconds per month

25920002592000

Last updated

Was this helpful?