From 073b30d8c9373a34afd4e0e286180b2a0918d6a0 Mon Sep 17 00:00:00 2001 From: Zer0dot Date: Wed, 20 Jan 2021 21:44:19 -0500 Subject: [PATCH] Added assets & fixed test --- helpers/types.ts | 19 +++++ markets/uniswap/commons.ts | 2 +- markets/uniswap/reservesConfigs.ts | 132 ++++++++++++++--------------- tasks/dev/4_oracles.ts | 1 - test/__setup.spec.ts | 21 ++++- 5 files changed, 105 insertions(+), 70 deletions(-) diff --git a/helpers/types.ts b/helpers/types.ts index 0a2b7194..79511ee3 100644 --- a/helpers/types.ts +++ b/helpers/types.ts @@ -301,6 +301,25 @@ export enum TokenContractId { YFI = 'YFI', UNI = 'UNI', ENJ = 'ENJ', + UniWETH = 'UniWETH', + UniWBTC = 'UniWBTC', + UniDAI = 'UniDAI', + UniUSDC = 'UniUSDC', + UniUSDT = 'UniUSDT', + UniDAIWETH = 'UniDAIWETH', + UniWBTCWETH = 'UniWBTCWETH', + UniAAVEWETH = 'UniAAVEWETH', + UniBATWETH = 'UniBATWETH', + UniUSDCDAI = 'UniUSDCDAI', + UniCRVWETH = 'UniCRVWETH', + UniLINKWETH = 'UniLINKWETH', + UniMKRWETH = 'UniMKRWETH', + UniRENWETH = 'UniRENWETH', + UniSNXWETH = 'UniSNXWETH', + UniUNIWETH = 'UniUNIWETH', + UniUSDCWETH = 'UniUSDCWETH', + UniWBTCUSDC = 'UniWBTCUSDC', + UniYFIWETH = 'UniYFIWETH', } export interface IReserveParams extends IReserveBorrowParams, IReserveCollateralParams { diff --git a/markets/uniswap/commons.ts b/markets/uniswap/commons.ts index 0aa7b4bc..b037f859 100644 --- a/markets/uniswap/commons.ts +++ b/markets/uniswap/commons.ts @@ -241,7 +241,7 @@ export const CommonsConfig: ICommonConfiguration = { UniWBTC: '0xdeb288F737066589598e9214E782fa5A8eD689e8', UniUSDC: '0x986b5E1e1755e3C2440e960477f25201B0a8bbD4', UniDAI:'0x773616E4d11A78F511299002da57A0a94577F1f4', - UniDAIWETH: ZERO_ADDRESS, + UniDAIWETH: '0xf4071801C4421Db7e63DaC15B9432e50C44a7F42', UniWBTCWETH: ZERO_ADDRESS, UniAAVEWETH: ZERO_ADDRESS, UniBATWETH: ZERO_ADDRESS, diff --git a/markets/uniswap/reservesConfigs.ts b/markets/uniswap/reservesConfigs.ts index aed62b2d..84ab8317 100644 --- a/markets/uniswap/reservesConfigs.ts +++ b/markets/uniswap/reservesConfigs.ts @@ -13,7 +13,7 @@ export const strategyWETH: IReserveParams = { liquidationThreshold: '8250', liquidationBonus: '10500', borrowingEnabled: true, - stableBorrowRateEnabled: true, + stableBorrowRateEnabled: false, reserveDecimals: '18', aTokenImpl: eContractid.AToken, reserveFactor: '1000' @@ -21,7 +21,7 @@ export const strategyWETH: IReserveParams = { export const strategyWBTC: IReserveParams = { optimalUtilizationRate: new BigNumber(0.65).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', + 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(), @@ -30,7 +30,7 @@ export const strategyWBTC: IReserveParams = { liquidationThreshold: '7500', liquidationBonus: '11000', borrowingEnabled: true, - stableBorrowRateEnabled: true, + stableBorrowRateEnabled: false, reserveDecimals: '8', aTokenImpl: eContractid.AToken, reserveFactor: '2000' @@ -47,51 +47,51 @@ export const strategyDAI: IReserveParams = { liquidationThreshold: '8000', liquidationBonus: '10500', borrowingEnabled: true, - stableBorrowRateEnabled: true, + stableBorrowRateEnabled: false, reserveDecimals: '18', aTokenImpl: eContractid.AToken, reserveFactor: '1000' }; export const strategyUSDC: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.9).multipliedBy(oneRay).toFixed(), + 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.60).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(0.75).multipliedBy(oneRay).toFixed(), stableRateSlope1: new BigNumber(0.02).multipliedBy(oneRay).toFixed(), stableRateSlope2: new BigNumber(0.60).multipliedBy(oneRay).toFixed(), baseLTVAsCollateral: '8000', liquidationThreshold: '8500', liquidationBonus: '10500', borrowingEnabled: true, - stableBorrowRateEnabled: true, + stableBorrowRateEnabled: false, reserveDecimals: '6', aTokenImpl: eContractid.AToken, reserveFactor: '1000' }; export const strategyUSDT: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.9).multipliedBy(oneRay).toFixed(), + 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.60).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(0.75).multipliedBy(oneRay).toFixed(), stableRateSlope1: new BigNumber(0.02).multipliedBy(oneRay).toFixed(), stableRateSlope2: new BigNumber(0.60).multipliedBy(oneRay).toFixed(), baseLTVAsCollateral: '8000', liquidationThreshold: '8500', liquidationBonus: '10500', borrowingEnabled: true, - stableBorrowRateEnabled: true, + stableBorrowRateEnabled: false, reserveDecimals: '6', aTokenImpl: eContractid.AToken, reserveFactor: '1000' }; export const strategyDAIWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -105,10 +105,10 @@ export const strategyDAIWETH: IReserveParams = { }; export const strategyWBTCWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -122,10 +122,10 @@ export const strategyWBTCWETH: IReserveParams = { }; export const strategyAAVEWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -139,10 +139,10 @@ export const strategyAAVEWETH: IReserveParams = { }; export const strategyBATWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -156,10 +156,10 @@ export const strategyBATWETH: IReserveParams = { }; export const strategyUSDCDAI: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -173,10 +173,10 @@ export const strategyUSDCDAI: IReserveParams = { }; export const strategyCRVWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '5000', @@ -190,10 +190,10 @@ export const strategyCRVWETH: IReserveParams = { }; export const strategyLINKWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -207,10 +207,10 @@ export const strategyLINKWETH: IReserveParams = { }; export const strategyMKRWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -224,10 +224,10 @@ export const strategyMKRWETH: IReserveParams = { }; export const strategyRENWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -241,10 +241,10 @@ export const strategyRENWETH: IReserveParams = { }; export const strategySNXWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '4000', @@ -258,10 +258,10 @@ export const strategySNXWETH: IReserveParams = { }; export const strategyUNIWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -275,10 +275,10 @@ export const strategyUNIWETH: IReserveParams = { }; export const strategyUSDCWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -292,10 +292,10 @@ export const strategyUSDCWETH: IReserveParams = { }; export const strategyWBTCUSDC: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '6000', @@ -309,10 +309,10 @@ export const strategyWBTCUSDC: IReserveParams = { }; export const strategyYFIWETH: IReserveParams = { - optimalUtilizationRate: new BigNumber(0.6).multipliedBy(oneRay).toFixed(), - baseVariableBorrowRate: '0', - variableRateSlope1: '0', - variableRateSlope2: '0', + optimalUtilizationRate: new BigNumber(0.45).multipliedBy(oneRay).toFixed(), + baseVariableBorrowRate: new BigNumber(0.03).multipliedBy(oneRay).toFixed(), + variableRateSlope1: new BigNumber(0.10).multipliedBy(oneRay).toFixed(), + variableRateSlope2: new BigNumber(3.00).multipliedBy(oneRay).toFixed(), stableRateSlope1: '0', stableRateSlope2: '0', baseLTVAsCollateral: '5000', diff --git a/tasks/dev/4_oracles.ts b/tasks/dev/4_oracles.ts index 97f14c8a..82380b01 100644 --- a/tasks/dev/4_oracles.ts +++ b/tasks/dev/4_oracles.ts @@ -4,7 +4,6 @@ import { deployAaveOracle, deployLendingRateOracle, } from '../../helpers/contracts-deployments'; - import { setInitialAssetPricesInOracle, deployAllMockAggregators, diff --git a/test/__setup.spec.ts b/test/__setup.spec.ts index 7d2bb638..a8aa9854 100644 --- a/test/__setup.spec.ts +++ b/test/__setup.spec.ts @@ -159,8 +159,25 @@ const buildTestEnv = async (deployer: Signer, secondaryWallet: Signer) => { REN: mockTokens.REN.address, UNI: mockTokens.UNI.address, ENJ: mockTokens.ENJ.address, - WETHDAI: mockTokens.WETHDAI.address, - WETHWBTC: mockTokens.WETHWBTC.address, + UniDAI: mockTokens.UniDAI.address, + UniUSDC: mockTokens.UniUSDC.address, + UniUSDT: mockTokens.UniUSDT.address, + UniWBTC: mockTokens.UniWBTC.address, + UniWETH: mockTokens.UniWETH.address, + UniDAIWETH: mockTokens.UniDAIWETH.address, + UniWBTCWETH: mockTokens.UniWBTCWETH.address, + UniAAVEWETH: mockTokens.UniAAVEWETH.address, + UniBATWETH: mockTokens.UniBATWETH.address, + UniUSDCDAI: mockTokens.UniUSDCDAI.address, + UniCRVWETH: mockTokens.UniCRVWETH.address, + UniLINKWETH: mockTokens.UniLINKWETH.address, + UniMKRWETH: mockTokens.UniMKRWETH.address, + UniRENWETH: mockTokens.UniRENWETH.address, + UniSNXWETH: mockTokens.UniSNXWETH.address, + UniUNIWETH: mockTokens.UniUNIWETH.address, + UniUSDCWETH: mockTokens.UniUSDCWETH.address, + UniWBTCUSDC: mockTokens.UniWBTCUSDC.address, + UniYFIWETH: mockTokens.UniYFIWETH.address, USD: USD_ADDRESS, }, fallbackOracle