A portion of all interest paid is directed to Lodestar's reserves.
Reserves act as a backstop to the protocol, acting as insurance liquidity for a respective market. The Reserve Factor is the portion of borrower interest paid that is set aside and this number is a parameter set by Lodestar. Reserves are stored within each respective lToken contract.
Reserves operate just like any other deposit into the protocol and can be withdrawn by other users or by the protocol with the reduceReserves function in the lToken contract. This is the mechanism by which protocol fees will be charged. Reserves can provide extra liquidity in the market in periods of high utilization and help protect the protocol keep bad debt from accruing.
When a borrower repays a loan and calls the accureInterest function, a portion of interest paid equal to the reserve factor is retained by the lToken contract and the remained of interest paid is accrued as interest to depositors.
Here is a quick example to understand how reserves work inside the protocol:
- A hypothetical account repays a USDC loan and calls the accureInterest function, they are charged $100 in interest. $93 in interest is accrued for depositors of that asset and 7$ of that interest is retained by the protocol in reserves.
The amount of reserves can be viewed in the lToken contract for the respective asset using the totalReserves function. This returns a uint representing the total reserves denominated in the underlying asset.