# Interest Fee Calculation Algorithm

* Aqua will apply interest for short and long positions held by market makers according to the utilization rate of the asset. It follows the jump rate model used by Compound. Every hour, Aqua fetch the borrow rate and supply rate on-chain, and fixed that rate for 1 hour. Short positions applies the borrow rate and long position applies the supply rate.
* To check the current fee rate, MM can call /aqua/token-settings API and decide if the fee rate is sensible for earning a profit.&#x20;
  * To make sure that Aqua does not lose any money, Aqua will charge short positions a fee rate higher than the long positions.
* The off-chain fee engine will post the fee accumulated by each market maker on-chain at intervals. The fee engine will evenly distribute the long fees earned by market makers to the short fee that market makers pay.
  * For example
    * at t0, MM1 has position of -1 ETH, +2000 USDT, +100 LINK, -1500 USDC
    * at t5,
      * short fee = -0.001 ETH, -3 USDC
      * long fee = + 1 USDT, + 0.01 LINK
      * when epoch update is triggered at this time
        * short fee USD = -2 USD (from ETH), -3 USD (from USDC)
        * long fee USD = + 1 USD (from USDT), + 0.2 USD (from LINK)
        * Fee engine will distribute the long fee to the short fee evenly
          * final short fee ETH = -2 + (2 / (2+3) \* 1.2) USD = -1.52 USD = -0.00076 ETH
          * final short fee USDC = -3 + (3/ (2+3) \* 1.2) USD = -2.28 USD = -2.28 USDC
      * this fee will be posted on chain to update Market Maker position


---

# 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.native.org/aqua/integration/market-makers-rfq-providers/interest-fee-calculation-algorithm.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.
