Skip to content

Commit e16e1f4

Browse files
authored
fix: use correct min width spacing for APR calculation (#2398)
1 parent 5b30a4d commit e16e1f4

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

src/adaptors/hermes-v2/index.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -541,14 +541,18 @@ const positionEfficiency = (feeTier, minWidth) => {
541541
* @dev extracted from https://github.com/Maia-DAO/sdks/blob/main/sdks/hermes-v2-sdk/src/utils/tvl.ts
542542
*/
543543
const convertBasedOnEfficiency = (amount, feeTier, minWidth) => {
544-
const wideTicks = 6 * minWidth;
544+
const wideTicks = 6 * feeTierToTickSpacing(feeTier);
545+
const isMinWidthAlreadyWide = minWidth >= wideTicks;
545546

546547
const efficiencyAt0 = positionEfficiency(feeTier, 0);
547-
const efficiencyAtWide = positionEfficiency(feeTier, wideTicks);
548+
const efficiencyAtWide = positionEfficiency(
549+
feeTier,
550+
isMinWidthAlreadyWide ? minWidth : wideTicks
551+
);
548552

549553
return (amount * efficiencyAt0) / efficiencyAtWide;
550554
};
551-
555+
552556
/**
553557
* Get minimumWidth from gauge contract
554558
*/

0 commit comments

Comments
 (0)