Search…
Interest accrual
How the protocol tracks the accrual of interest.
The borrow interest index
$I_{b_t}$
and deposit interest index
$I_{d_t}$
have been designed to simplify the calculation of interest-earning and interest-paying, even in multiple deposits or borrows, and avoid custom calculations for each user.
At the beginning
$t_0 = 0$
the indexes are both set at value 1.
The following formulas have been designed to calculate the growth of the interest indexes, which considers the interests accrued, throughout the period from protocol beginning to the latest protocol state change.
The protocol state change (psc) is the result of a change in the stability of the pool, which is due to protocol operations, i.e., deposit, redeem, borrow, repay borrow etc.

### Deposit interest index:

$I_{d_t}=I_{d_{t-1}} * (1+ α_{d_{t-1}} * ∆t)$
Where:
• $α_{d_t}$
represents the interest rate
$i_{d_t}$
converted from annual percentage rate (APR) to second percentage rate:
$a_{d_t}=\frac{i_{d_t}}{365*24*60*60}$
• $∆t$
represents the time interval between the latest psc (
$t-1$
) and the current time
$t$
, in seconds.

### Borrow interest index:

$I_{b_t}=I_{b_{t-1}} * (1+ ε * α_{b_{t-1}} * ∆t)$
Because of the limitation in the precision of on-chain calculation,
$I_{b_t}$
uses a multiplier ε which is set as a number equal or slightly higher than 1. This ensures that the interest is not eroded by the limitation of on-chain math.