UNPKG

@marinade.finance/kamino-sdk

Version:
19 lines 1.48 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getResetRangeFromPriceAndDiffBPS = exports.getPriceRangeFromPriceAndDiffBPS = void 0; const CreationParameters_1 = require("../utils/CreationParameters"); function getPriceRangeFromPriceAndDiffBPS(price, lowerDiffBPS, upperDiffBPS) { let lowerPrice = price.mul(CreationParameters_1.FullBPSDecimal.sub(lowerDiffBPS)).div(CreationParameters_1.FullBPSDecimal); let upperPrice = price.mul(CreationParameters_1.FullBPSDecimal.add(upperDiffBPS)).div(CreationParameters_1.FullBPSDecimal); return { lowerPrice, upperPrice }; } exports.getPriceRangeFromPriceAndDiffBPS = getPriceRangeFromPriceAndDiffBPS; function getResetRangeFromPriceAndDiffBPS(price, lowerDiffBPS, upperDiffBPS, resetLowerDiffBPS, resetUpperDiffBPS) { let resetLowerFactor = resetLowerDiffBPS.mul(lowerDiffBPS).div(CreationParameters_1.FullBPSDecimal); let resetUpperFactor = resetUpperDiffBPS.mul(upperDiffBPS).div(CreationParameters_1.FullBPSDecimal); let resetLowerPrice = price.mul(CreationParameters_1.FullBPSDecimal.sub(resetLowerFactor)).div(CreationParameters_1.FullBPSDecimal); let resetUpperPrice = price.mul(CreationParameters_1.FullBPSDecimal.add(resetUpperFactor)).div(CreationParameters_1.FullBPSDecimal); return { lowerPrice: resetLowerPrice, upperPrice: resetUpperPrice }; } exports.getResetRangeFromPriceAndDiffBPS = getResetRangeFromPriceAndDiffBPS; //# sourceMappingURL=math_utils.js.map