FiRM

Inverse Finance's Fixed Rate Market

The Fixed Rate Market or “FiRM,” is Inverse Finance’s new Fixed Rate Market lending protocol that implements a new DeFi primitive called DOLA Borrowing Rights. A novel money market architecture, Personal Collateral Escrows, ensures that different tokens from different users are not comingled.

Read the FiRM Whitepaper or watch our FiRM and DBR explainer video below for a quick introduction.

Using FiRM

Borrowing, Step-By-Step

  1. Deposit your collateral of choice in the FiRM app.Make sure that you have enough ETH to continue transacting as it is the gas token of the Ethereum blockchain.

  2. Decide how much DOLA you want to borrow. Note that if your collateral drops in value to the point where your deposit no longer meets the collateral factor, or you borrow the maximum amount of DOLA that you are allowed, you may get liquidated.

  3. Input the loan duration you wish to secure or DBR amount that you wish to purchase as a part of the borrowing transaction. The cost of the DBR will be added to your DOLA debt.

  4. Double-check that the app parameters express what you intend and execute the transaction. There may be multiple transactions to approve and execute depending on how complex the transaction is.

Repaying A Loan, Step-By-Step

  1. Click the button “Exit Mode”. The tabs let you decide if you want to repay, withdraw collateral or both at the same time.

  2. Enter the amount of DOLA that you want to repay.

  3. Enter the amount of the collateral tokens that you want to withdraw.

  4. Execute the transaction.

FiRM Lending Requirements

To borrow DOLA in FiRM, a user must first deposit collateral in one of the markets.

The user must also hold DBR tokens to service the debt. DBR's can be purchased on the open market or you can buy DBR tokens as part of the loan transaction.

Collateral

INV

INV is the governance token of Inverse Finance, used for decision-making in the platform's DeFi applications like lending and borrowing.

WETH

Wrapped Ethereum (WETH) is an ERC-20 compatible version of ether that allows ETH to be universally compatible across all dApps and smart contracts.

wstETH

wstETH is a wrapped version of a liquid staking derivative of ETH, stETH from Lido. wstETH carries intrinsic yield which is ideal for collateral tokens. Lido is a decentralized protocol allowing users to stake ETH and participate in the consensus mechanism of Ethereum. wstETH is a tax optimized asset as not subject to constant income from rebases.

WBTC

Wrapped Bitcoin (WBTC) is Bitcoin (BTC) that has been converted for use on the Ethereum ecosystem. It’s an ERC-20 (Ethereum) token that’s backed one-to-one by Bitcoin (BTC), which means that one WBTC will usually equal one bitcoin.

CVX

CVX is the native token of Convex Finance, granting governance rights and a share in trading fees and rewards for liquidity providers on Curve Finance.

cvxFXS

cvxFXS represents staked FXS tokens in Convex Finance, offering enhanced yield and governance rights within the Frax Finance ecosystem.

DAI

DAI is a decentralized stablecoin pegged to the US Dollar, created by locking collateral in MakerDAO’s smart contracts, providing a stable currency for crypto transactions. FiRM implements the DAI Savings Rate module, which offers a source of yield for DAI stakers.

CRV

The purpose of the Curve DAO token is to incentivise liquidity providers on the Curve Finance's decentralized exchange. CRV can be staked and locked for up to four years to maximize voting power and other protocols have build composable tokens based on locked CRV (veCRV).

cvxCRV

Convex cvxCRV is built on veCRV and offers intrinsic yield selectable as stablecoin or volatile yield which is an ideal traid for a collateral token. FiRM borrowers using cvxCRV maintain their voting power on the Convex platform while borrowing DOLA.

st-yCRV

st-yCRV is a tokenized version of staked yCRV (Yearn Curve) liquidity tokens, earning yield in the Yearn Finance ecosystem.

st-yETH

st-yETH is a staked version of the yETH token, derived from Yearn Finance’s innovative yETH protocol, which itself is a liquidity pool token consisting of various Ethereum Liquid Staking Derivatives (LSTs).

sFRAX

sFRAX is an ERC4626 staking vault that distributes a portion of the Frax protocol revenue denominated in FRAX. This revenue is generated from governance-approved AMOs/strategies and/or real-world asset (RWA) strategies from off-chain sources. The sFRAX vault APY is based on a utilization function that can be set by the frxGov governance module.

Accelerated Leverage Engine

The Accelerated Leverage Engine, or ALE, provides borrowers on FiRM with a way to instantly multiply their borrowing against a single collateral position up to 8 times their original loan. ALE is meant for experienced “power” users who understand the inherent risks of accelerated leverage.

What sets ALE apart from legacy borrow multipliers is the ability to borrow at fixed rates over long periods of time. Other borrow multipliers that rely on variable interest rates force borrowers to be more cautious in their use of a borrow multiplier, as highly leveraged positions are more sensitive to both volatility in the underlying collateral but also in additional debt added as a result of interest rate volatility. In addition, institutions, hedge funds, and others seeking certainty around their financing costs can at best only forecast those costs with variable rates, while fixed rates on FiRM provide certainty, in addition to the optionality of speculating on the price of DBR or locking interest rates in anticipation of future rate increases.

Liquidations

A liquidation is a process when a borrower's collateral does not adequately cover their loan/debt value. This might happen when the value of their collateral decreases (market movements, withdrawals from Anchor etc) or because the value of their debt increases (market movements, debt interest accrual etc).

If the value of a borrower's debt exceeds the value of their maximum permitted credit limit, up to 100% of their debt can be repaid by a liquidator. In return, the liquidator can seize the lenders collateral with a 10% bonus.

Example:

  • Bob deposits 1 WETH, which is worth $4000 at the time of deposit.

  • The maximum collateralization ratio on FiRM for a DOLA loan using WETH as collateral is 80%, meaning that the maximum Bob can borrow is 0.8 ETH worth of DOLA ($3,200).

  • Bob borrows 0.65 WETH worth of DOLA ($2,600), which puts his collateral ratio (Debt / Credit Limit factor) at 81.25%, generally viewed as a ratio at high risk for liquidation.

  • Then, for example, the USD price of WETH drops dramatically by 25% in one block to $3,000. This decreases the maximum amount of DOLA that Bob can borrow (his credit limit) from $3,200 to $2,400.

  • The amount of Bob’s loan ($2,600) is now at $200 more (108%) than his credit limit ($2,400) and the loan is now considered insolvent. Bob can no longer withdraw his collateral from FiRM or borrow more until he has either repaid part of his debt or deposited more collateral to increase his credit limit.

  • In a liquidation scenario, however, and before Bob can take direct action, an external liquidator notices that Bob’s loan is insolvent. The liquidator repays Bob’s entire (100%) outstanding debt of $2600 to FiRM. At the same time, the liquidator seizes $2600 worth of Bob’s WETH plus an additional 10% of his WETH as a liquidation “bonus”, or $320 in WETH.

  • Bob now has no outstanding DOLA debt on FIRM and after liquidation costs, has $280 in WETH remaining on FiRM.

Voting

Users depositing select governance tokens that carry voting rights as collateral in FiRM are able to vote and delegate their votes.

Each user's collateral is deposited into a personal escrow contract, which is deployed as gas efficiently as possible. Snapshot delegation is built into to the personal escrow account and whenever an escrow is initialized, it will automatically delegate to the owner. This means the voting power of your collateral gets delegated to your main wallet. It's also possible to move the delegation to a different address if you wish.

FiRM Safety Features

Personal Collateral Escrows

FiRM and Inverse Finance does not custody any funds from FiRM users. All user funds are held in Personal Collateral Escrow contracts controlled by the user and are isolated both by individual user and by token type. This means that FiRM takes a step beyond shared pools of user collateral, commonly found in protocols like Compound Finance or Aave. The PCE’s are highly flexible which allows for individual collateral factors and borrowing limits per token and per position.

While no lending protocol is completely immune to hacks, PCE’s were designed to enable multiple new layers of security. First, by isolating deposits in such a granular fashion compared to cross-collateral pools, PCE’s no longer offer intruders a single pool of assets to target but rather many, smaller targets. Second, with a PCE a depositor’s collateral cannot be loaned. As the only borrowable asset in Inverse Finance’s implementation of PCE’s is DOLA and since borrowable DOLA is capped per collateral asset, the potential impact of a price oracle manipulation incident is reduced to an undue liquidation.

Pessimistic Price Oracles

This new approach to price oracles for borrows and liquidations in FiRM uses the lower of two recorded prices: either a) the current collateral price on Chainlink, or b) the 48-hour low price as observed by the PPO on Chainlink, divided by the collateral factor. For example, if the current Chainlink price for wETH is $1,500, the 48-hour low was $1,000 and the collateral factor is 80%, the PPO returns $1,250. ($1,000 / .80 = $1,250)

Attackers who rely on flash loans and other short-term techniques will be frustrated by the implementation of PPO’s.

  • First, using the 48-hour low price minimizes the risk of FiRM allowing borrows against a rapidly and artificially inflated collateral asset price.

  • Second, dividing the 48-hour low price by the collateral factor creates a bias for more conservatism with volatile collateral and more freedom for less volatile collateral like stablecoins.

  • Finally, the PPO provides greater protection for FiRM along with its other security features such as preventing users from borrowing against more than the lowest recorded value of their collateral over the prior two days. Daily borrow limits curtail the amount of funds at risk and user collateral is not pooled but held separately in an entirely non-custodial way.

Protocol Safety

  • The PPO reduces the probability of short-term and flash-loan type oracle price manipulation attacks.

  • Many oracle price manipulations occur due to low liquidity in a market. For tokens with low liquidity, we believe PPO’s offer a useful tool for lenders and borrowers.

Healthier Borrowing

  • For those engaged in high-frequency arbitrage or impulse trading, especially with volatile assets, PPO’s may not be ideal. However for long-term borrowers, the target market for FiRM, PPO’s provide added safety for both borrowers and Inverse Finance.

Flexible

  • The PPO’s observation window can be adjusted over time in either direction, as can collateral factors.

Daily Borrow Limits

A daily borrow limit sets a ceiling on the total amount of DOLA available for loans on any given day in each market. A daily borrow limit helps Inverse reduce its risk exposure on a per-market basis and in the future will allow for the support of more high-risk collateral assets and even PCE’s with customized borrow limits. This limit is adjusted regularly by the RWG as the system matures.

Contract Address Whitelist

A contract address whitelist is a list of approved contract addresses that are allowed to interact with a particular smart contract. This is often used as a security measure to prevent unauthorized contracts from accessing or modifying the data or functionality of the whitelisted contract.

As a precaution against flash loan attacks, FiRM only allows whitelisted contract interactions. This allows regular user wallets to interact while it at the same time limits any automated attacks, forcing any attacker to be extremely well-capitalized. Flashloan attacks require contract interactions and are therefore impossible. This prevents single-transaction attacks like the one Euler suffered, but also makes it more of a hassle for other protocols to integrate with FiRM, as they will need to contact us for a whitelisting. We consider this a worthy trade-off.

Cover

Users can purchase "cover", which is a decentralized "insurance alternative" to protect against smart contract and other risks when using FiRM. OpenCover offers cover for assets deposited in FiRM, as well as sDOLA. Cover is underwritten by Nexus Mutual and claims are subject to DAO governance vote before payout. The Nexus Mutual docs are a good place to explore how cover works.

FAQ’s

What is FiRM?

FiRM is a new Fixed-Rate Market for borrowing DOLA using DBR tokens and it is focused on simplicity and safety. All markets are isolated and collateral cannot be borrowed by others.

How safe is FiRM?

FiRM does not have shared collateral pools like traditional DeFi markets. FiRM uses Personal Collateral Escrows which ensures that deposits are not only isolated per collateral but also per user. FiRM also has flash loan protection and a limited amount of borrowable DOLA per market. FiRM has been audited by Code4arena. Still, all users are advised to do their own research as using DeFi products is risky and can result in a loss of funds.

What is DBR?

DBR, or DOLA Borrowing Right, is a borrowing right token. Holding it in your wallet gives you the right to borrow one DOLA stablecoin in FiRM for one year. Or, for example, the right to borrow 12 DOLA in FiRM for one month.

What is DOLA?

DOLA is a stablecoin pegged to the US Dollar. This means it is designed to be valued as close to $1 as possible with minimal volatility. DOLA is debt-backed rather than algorithmic, meaning that DOLA is backed by retractable debt.

How much can I borrow with one DBR?

One DBR gives the right to borrow 1 DOLA for 1 year (or 2 DOLA for 6 months, etc). This is assuming you have deposited enough collateral.

Is DBR an ERC20 token?

Yes but not a standard ERC-20 token: your DBR wallet balance will decrease over time when you have an open loan position.

How can I get DBR tokens?

You can get DBR by acquiring it simultaneously with your DOLA loan, swapping for it on a DEX, via the DBR XY=K Auction, by staking INV and receiving DBR streaming rewards,

Do I need to stake DBR?

No, DBRs should stay in your wallet to pay the fee when you have a loan. Your DBR wallet balance will decrease only if you have a DOLA loan in FiRM.

Why does my DBR balance decrease?

DBRs are "spent" over time when you have a loan, the rate depends on your amount of debt. If you don't have a loan the balance does not decrease.

What happens if I run out of DBRs?

If you have a DBR deficit and an active loan then someone can top-up your DBR balance, purchasing DBR at a higher price than the current DBR market price. The cost of this forced top-up is added to your debt which can lead to liquidations if left unchecked, so it is recommended that you top up your DBR wallet balance yourself before it runs out.

Is front running mitigated by FiRM?

As a lending market, front running does not put user funds at risk. The worst case scenario in a front running scenario, is that a user’s transaction fails due to there not being enough liquidity in the lending market.

Can flashloan attacks be applied to FiRM, and if so, how are flashloan attack risks mitigated?

A flashloan attack can be applied to the protocol if a price oracle turns out to be faulty. Therefore we only allow whitelisted contracts to interact with the protocol. To mitigate oracle risk, we only use assets with chainlink oracles.

Last updated