Published
Edited
Jun 28, 2020
1 star
Insert cell
Insert cell
Insert cell
Insert cell
kovan = protocol('kovan')
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
kovanCompSpeedsBefore = cTokenMap(async c => (await kovan.Comptroller.methods.compSpeeds(c._address).call(kovanBlockBefore)) / 1e18, kovan)
Insert cell
kovanCompSpeedsAfter = cTokenMap(async c => (await kovan.Comptroller.methods.compSpeeds(c._address).call(kovanBlockAfter)) / 1e18, kovan)
Insert cell
kovanMarketTotalBorrowsesBefore = cTokenMap(async c => BigInt(await c.methods.totalBorrows().call(kovanBlockBefore)), kovan)
Insert cell
kovanMarketTotalBorrowsesAfter = cTokenMap(async c => BigInt(await c.methods.totalBorrows().call(kovanBlockAfter)), kovan)
Insert cell
Insert cell
ropsten = protocol('ropsten')
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
ropstenCompSpeedsBefore = cTokenMap(async c => (await ropsten.Comptroller.methods.compSpeeds(c._address).call(ropstenBlockBefore)) / 1e18, ropsten)
Insert cell
ropstenCompSpeedsAfter = cTokenMap(async c => (await ropsten.Comptroller.methods.compSpeeds(c._address).call(ropstenBlockAfter)) / 1e18, ropsten)
Insert cell
ropstenCompRateAfter = BigInt(await ropsten.Comptroller.methods.compRate().call(ropsten.blockNumberAfter))
Insert cell
ropstenMarketTotalBorrowsesAfter = cTokenMap(async c => BigInt(await c.methods.totalBorrows().call(ropstenBlockAfter)), ropsten)
Insert cell
ropstenPricesAfter = cTokenMap(async c => BigInt(await ropsten.PriceOracle.methods.getUnderlyingPrice(c._address).call(ropstenBlockAfter)), ropsten)
Insert cell
ropstenUtilities = cTokenMap(async (c, i) => ropstenMarketTotalBorrowsesAfter[i.symbol] * ropstenPricesAfter[i.symbol], ropsten)
Insert cell
ropstenTotalUtility = sum(ropstenUtilities)
Insert cell
ropstenCompSpeedsPredicted = cTokenMap(async (c, i) => Number(ropstenCompRateAfter * ropstenUtilities[i.symbol] / ropstenTotalUtility) / 1e18, ropsten)
Insert cell
ropstenCompSpeedsDeviation = cTokenMap(async (c, i) => ropstenCompSpeedsPredicted[i.symbol] - ropstenCompSpeedsAfter[i.symbol], ropsten)
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more