mirror of
				https://github.com/Instadapp/aave-protocol-v2.git
				synced 2024-07-29 21:47:30 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			92 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import BigNumber from 'bignumber.js';
 | 
						|
import { oneRay } from '../../helpers/constants';
 | 
						|
import { IInterestRateStrategyParams } from '../../helpers/types';
 | 
						|
 | 
						|
// BUSD SUSD
 | 
						|
export const rateStrategyStableOne: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyStableOne",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.8).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: new BigNumber(0).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope1: new BigNumber(0.04).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope2: new BigNumber(1).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope1: '0',
 | 
						|
  stableRateSlope2: '0',
 | 
						|
};
 | 
						|
 | 
						|
// DAI TUSD
 | 
						|
export const rateStrategyStableTwo: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyStableTwo",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.8).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: new BigNumber(0).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope1: new BigNumber(0.04).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope2: new BigNumber(0.75).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope1: new BigNumber(0.02).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope2: new BigNumber(0.75).multipliedBy(oneRay).toFixed(),
 | 
						|
}
 | 
						|
 | 
						|
// USDC USDT
 | 
						|
export const rateStrategyStableThree: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyStableThree",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.9).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: new BigNumber(0).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope1: new BigNumber(0.04).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope2: new BigNumber(0.60).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope1: new BigNumber(0.02).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope2: new BigNumber(0.60).multipliedBy(oneRay).toFixed(),
 | 
						|
}
 | 
						|
 | 
						|
// WETH
 | 
						|
export const rateStrategyWETH: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyWETH",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.65).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: new BigNumber(0).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope1: new BigNumber(0.08).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope2: new BigNumber(1).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope1: new BigNumber(0.1).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope2: new BigNumber(1).multipliedBy(oneRay).toFixed(),
 | 
						|
}
 | 
						|
 | 
						|
// AAVE
 | 
						|
export const rateStrategyAAVE: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyAAVE",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: '0',
 | 
						|
  variableRateSlope1: '0',
 | 
						|
  variableRateSlope2: '0',
 | 
						|
  stableRateSlope1: '0',
 | 
						|
  stableRateSlope2: '0',
 | 
						|
}
 | 
						|
 | 
						|
// BAT ENJ LINK MANA MKR REN YFI ZRX
 | 
						|
export const rateStrategyVolatileOne: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyVolatileOne",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: new BigNumber(0).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope1: new BigNumber(0.07).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope2: new BigNumber(3).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope1: new BigNumber(0.1).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope2: new BigNumber(3).multipliedBy(oneRay).toFixed(),
 | 
						|
}
 | 
						|
 | 
						|
// KNC WBTC
 | 
						|
export const rateStrategyVolatileTwo: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyVolatileTwo",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.65).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: new BigNumber(0).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope1: new BigNumber(0.08).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope2: new BigNumber(3).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope1: new BigNumber(0.1).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope2: new BigNumber(3).multipliedBy(oneRay).toFixed(),
 | 
						|
}
 | 
						|
 | 
						|
// SNX
 | 
						|
export const rateStrategyVolatileThree: IInterestRateStrategyParams = {
 | 
						|
  name: "rateStrategyVolatileThree",
 | 
						|
  optimalUtilizationRate: new BigNumber(0.65).multipliedBy(oneRay).toFixed(),
 | 
						|
  baseVariableBorrowRate: new BigNumber(0).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope1: new BigNumber(0.08).multipliedBy(oneRay).toFixed(),
 | 
						|
  variableRateSlope2: new BigNumber(3).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope1: new BigNumber(0.1).multipliedBy(oneRay).toFixed(),
 | 
						|
  stableRateSlope2: new BigNumber(3).multipliedBy(oneRay).toFixed(),
 | 
						|
}
 |