Skip to content

Commit 5918681

Browse files
committed
fix daily compound for usual reward
1 parent 474e6db commit 5918681

File tree

1 file changed

+12
-26
lines changed

1 file changed

+12
-26
lines changed

src/adaptors/usual/index.js

Lines changed: 12 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ const CONFIG = {
2626
USUALX_LOCKUP_SYMBOL: 'lUSUALx (12 months)',
2727
USD0_SYMBOL: 'USD0',
2828
USUAL_SYMBOL: 'USUAL',
29+
USUALX_SYMBOL: 'USUALx',
2930
USD0PP_SYMBOL: 'USD0++',
3031
ETH0_SYMBOL: 'ETH0',
3132
URLS: {
@@ -107,21 +108,6 @@ async function getETH0ChainData(chainConfig) {
107108
}
108109

109110
async function getUsualXAPY(chain, usualXPrice) {
110-
const { output } = await sdk.api.abi.call({
111-
target: CONFIG.USUALX_TOKEN,
112-
chain: chain.toLowerCase(),
113-
abi: abi.find((abi) => abi.name === 'totalAssets'),
114-
});
115-
const totalAssets = output / CONFIG.SCALAR;
116-
const rate =
117-
(
118-
await sdk.api.abi.call({
119-
target: CONFIG.USUALX_TOKEN,
120-
chain: chain.toLowerCase(),
121-
abi: abi.find((abi) => abi.name === 'getYieldRate'),
122-
})
123-
).output / CONFIG.SCALAR;
124-
125111
const blacklistedBalances = await sdk.api.abi
126112
.multiCall({
127113
abi: 'erc20:balanceOf',
@@ -148,13 +134,13 @@ async function getUsualXAPY(chain, usualXPrice) {
148134
const usualXTVL =
149135
rawUsualXTVL - (blacklistedBalances?.reduce((a, b) => a + b, 0) ?? 0);
150136

151-
const usualXApr = (rate * CONFIG.DAYS_PER_YEAR) / totalAssets;
137+
const usualXApr = await getRewardData(
138+
CONFIG.USUALX_SYMBOL,
139+
CONFIG.USUAL_SYMBOL
140+
);
152141

153-
// Applying weekly compounding only to USUALx apyReward
154-
const usualxApyReward = utils.aprToApy(
155-
usualXApr * 100,
156-
CONFIG.WEEKS_PER_YEAR
157-
); // Weekly compounding for apyReward
142+
// Applying daily compounding only to USUALx apyReward
143+
const usualxApyReward = utils.aprToApy(usualXApr.apr, CONFIG.DAYS_PER_YEAR); // Daily compounding for apyReward
158144

159145
const usualxMarketCap = usualXTVL * usualXPrice;
160146
const usualXLockupMarketCap = usualXLockupBalance * usualXPrice;
@@ -227,7 +213,7 @@ async function getUsUSDSAPY(chain) {
227213
);
228214
const usUSDSRewardApy = utils.aprToApy(
229215
usualRewards.apr,
230-
CONFIG.WEEKS_PER_YEAR
216+
CONFIG.DAYS_PER_YEAR
231217
);
232218
return {
233219
baseUsUSDSApy,
@@ -315,7 +301,7 @@ const apy = async () => {
315301
project: 'usual',
316302
symbol: 'USUALx',
317303
tvlUsd: usualXUnlockedMarketCap,
318-
apyBase: usualxApyReward, // Weekly compounding for USUALx APY
304+
apyBase: usualxApyReward, // Daily compounding for USUALx APY
319305
apyReward: 0, // No additional reward for USUALx
320306
rewardTokens: [CONFIG.ETHEREUM.USD0],
321307
poolMeta: 'Staked USUAL',
@@ -328,11 +314,11 @@ const apy = async () => {
328314
project: 'usual',
329315
symbol: 'USUALx',
330316
tvlUsd: usualXLockupMarketCap,
331-
apyBase: usualxApyReward, // Weekly compounding for USUALx APY
332-
apyReward: usualxApyRevenueSwitch, // Revenue switch APY for Lockup USUALx
317+
apyBase: usualxApyReward, // Daily compounding for USUALx APY
318+
apyReward: usualxApyRevenueSwitch, // Revenue switch APY for Lockup USUALx Weekly compounding
333319
rewardTokens: [CONFIG.ETHEREUM.USD0],
334320
underlyingTokens: [CONFIG.USUAL_TOKEN],
335-
poolMeta: 'USUALx Lockup',
321+
poolMeta: 'Lockup',
336322
url: 'https://app.usual.money/swap?from=USUALx&to=lUSUALx',
337323
},
338324
{

0 commit comments

Comments
 (0)