diff --git a/src/api/stats/fraxtal/getConvexCvxFxsApys.js b/src/api/stats/fraxtal/getConvexCvxFxsApys.js new file mode 100644 index 000000000..7b89e57d6 --- /dev/null +++ b/src/api/stats/fraxtal/getConvexCvxFxsApys.js @@ -0,0 +1,18 @@ +import BigNumber from 'bignumber.js'; +import getApyBreakdown from '../common/getApyBreakdown'; + +export const getConvexCvxFxsApys = async () => { + let apy = new BigNumber(0); + try { + const apyData = await fetch('https://frax.convexfinance.com/api/frax/staked-cvxfxs').then(res => + res.json() + ); + apyData?.rewards?.forEach(r => { + const apr = (r?.apr || 0) / 100; + apy = apy.plus(new BigNumber(apr)); + }); + } catch (e) { + console.error('Convex fraxtal cvxFXS apy failed', e.message); + } + return getApyBreakdown([{ name: 'convex-fraxtal-cvxfxs', address: '' }], {}, [apy], 0); +}; diff --git a/src/api/stats/fraxtal/index.js b/src/api/stats/fraxtal/index.js index bdf4cc56a..d21eee963 100644 --- a/src/api/stats/fraxtal/index.js +++ b/src/api/stats/fraxtal/index.js @@ -1,8 +1,9 @@ const { getCurveApys } = require('./getCurveApys'); const { getConvexApys } = require('./getConvexApys'); +const { getConvexCvxFxsApys } = require('./getConvexCvxFxsApys'); const getRaApys = require('./getRaApys'); -const getApys = [getCurveApys, getConvexApys, getRaApys]; +const getApys = [getCurveApys, getConvexApys, getConvexCvxFxsApys, getRaApys]; const getFraxtalApys = async () => { const start = Date.now();