# Protocol math (Ethereum)

## Utilisation

This current state of supply and demand for liquidity is measured with the **utilisation rate**, in other words, how much of the supplied liquidity is being borrowed (utilised) by borrowers. The higher the utilisation rate, the higher the interest rate in a lending market.

{% hint style="info" %}
*Ut* = utilisation rate at time *t*\
*Uoptimal* = optimal utilisation rate\
\
\&#xNAN;*Rv* = variable borrow rate\
\&#xNAN;*Rv0* = base variable borrow rate (interest when utilisation = 0%)\
\&#xNAN;*Rslope1* = constant which determines the progression of the interest rate **until** Uoptimal\
\&#xNAN;*Rslope2* = constant which determines the progression of the interest rate **after** Uoptimal
{% endhint %}

The protocol has built in incentives in the interest rate model. To be capitally efficient, it sets an *optimal utilisation rate.* Below this rate, the protocol will incentivise utilisation, above this rate and it will disincentivise utilisation.

Two different slopes are used to measure interest rates, one for when utilisation is below optimal, and one for when it is above the optimal rate.

When not enough borrowers are borrowing available liquidity, the interest rate will be calculated as such:

$$
R\_v =R\_{v0} + (U\_t \div U\_{optimal}) \times R\_{slope1}
$$

When too many borrowers are borrowing available liquidity, the interest rate will be calculated as such:

$$
R\_v = R\_{v0} + R\_{slope1}+(U\_t - U\_{optimal})\div(1-U\_{optimal})\times R\_{slope2}
$$

## Protocol parameters

Honey Finance lending markets use the following parameters as default:

{% hint style="info" %}
**Optimal utilisation**: `80%`\
**Borrow APR at Uoptimal**: `40%`\
**Base borrow APR**: `10%`\
\
**Rslope1 constant**: `0.3`\
**Rslope2 constant**: `1`
{% endhint %}

You can try these parameters out for yourself and test models [here](https://share.streamlit.io/simeongk/interest-rates/main.py).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.honey.finance/lending-protocol/interest-rates/protocol-tokenomics.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
