Interest Rate Model

The Open protocol uses a dynamic interest rate model that ensures that the interest offered to the liquidity providers is always lower than the interest gained from the borrowers. The variability between the interest rates of the borrowers and the liquidity providers ensures that the protocol is always profitable and can pay the liquidity providers on time.
Hashstack has made the following considerations while designing the Interest rate algorithm of the Open protocol -
  • Providing stable returns
  • Promoting even-play among lenders and borrowers.
  • The interest rate truly reflects the supply and demand of the underlying asset.

DIAL - Dynamic Interest Algorithm

The Open protocol employs the asset utilization ratio to determine the interest rates for the borrowers and lenders. The greater the asset utilization ratio, the greater the interest rates, and vice versa.
Categorization of Hashstack’s utilization ratio
The interest rates for the borrowers and lenders are bound by a range of 2%-20% and 0%-15%, respectively, for the testnet. However, the ranges are not fixed for eternity and can be changed by community governance as the market evolves.
Here, x is an offset factor that is expected to be in a range of 0.5%-1.5%.


Open’s DIAL is designed so that the APRs can never be predicted in advance. This is done by introducing randomness in the protocol with the help of a VRF (Verifiable Random Function). The unpredictability of interest rates is very important to the protocol as it prevents influence from large players. Following is the process by which the interest rates are calculated for liquidity providers:
  • Asset Utilization percentage is calculated and is categorized into a range.
  • A random number is generated from the range and is used as a random utilization ratio for further calculations.
  • This number is multiplied by the maximum supply, i.e., 15%, to get the interest rate for a deposit with a 3-month MCP (Minimum commitment period).
  • For calculating the interest rate of a deposit with 1-month MCPs, the interest rate of a 3-month MCP is divided by the correlation coefficient, which is a flat figure of 1.2 for the testnet.
  • Similarly, for other deposits with smaller MCPs, divide the interest rate of the subsequent MCP by 1.2.
This data is then fed into (1) to calculate the interest rates for borrowers.
Check out our blog to know how all this works at the backend.