@gainsnetwork/sdk 1.5.0-rc1 → 1.5.0-rc3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/contracts/types/generated/GNSMultiCollatDiamond.d.ts +38 -46
- package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.js +15 -40
- package/lib/contracts/utils/pairs.d.ts +1 -1
- package/lib/contracts/utils/pairs.js +2 -4
- package/lib/trade/priceImpact/cumulVol/index.js +0 -27
- package/package.json +1 -1
|
@@ -1386,10 +1386,10 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1386
1386
|
"getOiWindow(uint48,uint256,uint256)": FunctionFragment;
|
|
1387
1387
|
"getOiWindows(uint48,uint256,uint256[])": FunctionFragment;
|
|
1388
1388
|
"getOiWindowsSettings()": FunctionFragment;
|
|
1389
|
-
"getPairDepthBands(uint256[])": FunctionFragment;
|
|
1390
1389
|
"getPairDepthBands(uint256)": FunctionFragment;
|
|
1390
|
+
"getPairDepthBandsArray(uint256[])": FunctionFragment;
|
|
1391
1391
|
"getPairDepthBandsDecoded(uint256)": FunctionFragment;
|
|
1392
|
-
"
|
|
1392
|
+
"getPairDepthBandsDecodedArray(uint256[])": FunctionFragment;
|
|
1393
1393
|
"getPairFactors(uint256[])": FunctionFragment;
|
|
1394
1394
|
"getPairOiAfterV10Collateral(uint8,uint16)": FunctionFragment;
|
|
1395
1395
|
"getPairOiAfterV10Token(uint8,uint16)": FunctionFragment;
|
|
@@ -1569,7 +1569,6 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1569
1569
|
"getCollateralUsdPriceFeed(uint8)": FunctionFragment;
|
|
1570
1570
|
"getGnsPriceCollateralAddress(address)": FunctionFragment;
|
|
1571
1571
|
"getGnsPriceCollateralIndex(uint8)": FunctionFragment;
|
|
1572
|
-
"getGnsPriceUsd(uint8,uint256)": FunctionFragment;
|
|
1573
1572
|
"getGnsPriceUsd(uint8)": FunctionFragment;
|
|
1574
1573
|
"getLimitJobCount()": FunctionFragment;
|
|
1575
1574
|
"getLimitJobId()": FunctionFragment;
|
|
@@ -1661,7 +1660,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1661
1660
|
"storeUiRealizedTradingFeesCollateral(address,uint32,uint256)": FunctionFragment;
|
|
1662
1661
|
"storeVirtualAvailableCollateralInDiamond(address,uint32,uint256)": FunctionFragment;
|
|
1663
1662
|
};
|
|
1664
|
-
getFunction(nameOrSignatureOrTopic: "diamondCut" | "facetAddress" | "facetAddresses" | "facetFunctionSelectors" | "facets" | "getAddresses" | "hasRole" | "hasRoles" | "initialize" | "initializeGovEmergencyTimelock" | "setRoles" | "addFees" | "addGroups" | "addPairs" | "fees" | "feesCount" | "getAllPairsRestrictedMaxLeverage" | "getEffectiveTotalPositionSizeFeeP" | "getGlobalTradeFeeParams" | "getGroupLiquidationParams" | "getPairCounterTradeFeeRateMultiplier" | "getPairCounterTradeFeeRateMultipliers" | "getPairCounterTradeMaxLeverage" | "getPairCounterTradeMaxLeverages" | "getPairLiquidationParams" | "groups" | "groupsCount" | "initializeGroupLiquidationParams" | "initializeNewFees" | "initializeReferralFeeChange" | "isPairIndexListed" | "isPairListed" | "pairCustomMaxLeverage" | "pairJob" | "pairMaxLeverage" | "pairMinFeeUsd" | "pairMinLeverage" | "pairMinPositionSizeUsd" | "pairOraclePositionSizeFeeP" | "pairSpreadP" | "pairSpreadPArray" | "pairTotalLiqCollateralFeeP" | "pairTotalPositionSizeFeeP" | "pairs" | "pairsCount" | "setGlobalTradeFeeParams" | "setGroupLiquidationParams" | "setPairCounterTradeFeeRateMultipliers" | "setPairCounterTradeMaxLeverages" | "setPairCustomMaxLeverages" | "updateFees" | "updateGroups" | "updatePairs" | "claimAllyRewards" | "claimReferrerRewards" | "distributeReferralReward" | "getAllyDetails" | "getReferralSettingsOverrides" | "getReferralsAllyFeeP" | "getReferralsStartReferrerFeeP" | "getReferralsTargetVolumeUsd" | "getReferrerDetails" | "getReferrerFeeProgressP" | "getReferrersReferred" | "getTraderActiveReferrer" | "getTraderLastReferrer" | "getTradersReferred" | "initializeReferrals" | "overrideAllyFeeP" | "overrideReferralFeeP" | "registerPotentialReferrer" | "unwhitelistAllies" | "unwhitelistReferrers" | "updateAllyFeeP" | "updateReferralsTargetVolumeUsd" | "updateStartReferrerFeeP" | "whitelistAllies" | "whitelistReferrers" | "addTradersUnclaimedPoints" | "calculateFeeAmount" | "getFeeTier" | "getFeeTiersCount" | "getFeeTiersTraderDailyInfo" | "getFeeTiersTraderInfo" | "getGroupVolumeMultiplier" | "getTraderFeeTiersEnrollment" | "getTraderUnclaimedPoints" | "initializeFeeTiers" | "setFeeTiers" | "setGroupVolumeMultipliers" | "setTradersFeeTiersEnrollment" | "updateTraderPoints" | "addPriceImpactOpenInterest" | "getDepthBandsMapping" | "getDepthBandsMappingDecoded" | "getNegPnlCumulVolMultiplier" | "getOiWindow" | "getOiWindows" | "getOiWindowsSettings" | "getPairDepthBands
|
|
1663
|
+
getFunction(nameOrSignatureOrTopic: "diamondCut" | "facetAddress" | "facetAddresses" | "facetFunctionSelectors" | "facets" | "getAddresses" | "hasRole" | "hasRoles" | "initialize" | "initializeGovEmergencyTimelock" | "setRoles" | "addFees" | "addGroups" | "addPairs" | "fees" | "feesCount" | "getAllPairsRestrictedMaxLeverage" | "getEffectiveTotalPositionSizeFeeP" | "getGlobalTradeFeeParams" | "getGroupLiquidationParams" | "getPairCounterTradeFeeRateMultiplier" | "getPairCounterTradeFeeRateMultipliers" | "getPairCounterTradeMaxLeverage" | "getPairCounterTradeMaxLeverages" | "getPairLiquidationParams" | "groups" | "groupsCount" | "initializeGroupLiquidationParams" | "initializeNewFees" | "initializeReferralFeeChange" | "isPairIndexListed" | "isPairListed" | "pairCustomMaxLeverage" | "pairJob" | "pairMaxLeverage" | "pairMinFeeUsd" | "pairMinLeverage" | "pairMinPositionSizeUsd" | "pairOraclePositionSizeFeeP" | "pairSpreadP" | "pairSpreadPArray" | "pairTotalLiqCollateralFeeP" | "pairTotalPositionSizeFeeP" | "pairs" | "pairsCount" | "setGlobalTradeFeeParams" | "setGroupLiquidationParams" | "setPairCounterTradeFeeRateMultipliers" | "setPairCounterTradeMaxLeverages" | "setPairCustomMaxLeverages" | "updateFees" | "updateGroups" | "updatePairs" | "claimAllyRewards" | "claimReferrerRewards" | "distributeReferralReward" | "getAllyDetails" | "getReferralSettingsOverrides" | "getReferralsAllyFeeP" | "getReferralsStartReferrerFeeP" | "getReferralsTargetVolumeUsd" | "getReferrerDetails" | "getReferrerFeeProgressP" | "getReferrersReferred" | "getTraderActiveReferrer" | "getTraderLastReferrer" | "getTradersReferred" | "initializeReferrals" | "overrideAllyFeeP" | "overrideReferralFeeP" | "registerPotentialReferrer" | "unwhitelistAllies" | "unwhitelistReferrers" | "updateAllyFeeP" | "updateReferralsTargetVolumeUsd" | "updateStartReferrerFeeP" | "whitelistAllies" | "whitelistReferrers" | "addTradersUnclaimedPoints" | "calculateFeeAmount" | "getFeeTier" | "getFeeTiersCount" | "getFeeTiersTraderDailyInfo" | "getFeeTiersTraderInfo" | "getGroupVolumeMultiplier" | "getTraderFeeTiersEnrollment" | "getTraderUnclaimedPoints" | "initializeFeeTiers" | "setFeeTiers" | "setGroupVolumeMultipliers" | "setTradersFeeTiersEnrollment" | "updateTraderPoints" | "addPriceImpactOpenInterest" | "getDepthBandsMapping" | "getDepthBandsMappingDecoded" | "getNegPnlCumulVolMultiplier" | "getOiWindow" | "getOiWindows" | "getOiWindowsSettings" | "getPairDepthBands" | "getPairDepthBandsArray" | "getPairDepthBandsDecoded" | "getPairDepthBandsDecodedArray" | "getPairFactors" | "getPairOiAfterV10Collateral" | "getPairOiAfterV10Token" | "getPairOisAfterV10Collateral" | "getPairOisAfterV10Token" | "getPairSkewDepth" | "getPairSkewDepths" | "getPriceImpactOi" | "getProtectionCloseFactorWhitelist" | "getTradeCumulVolPriceImpactP" | "getTradeSkewPriceImpactP" | "getUserPriceImpact" | "initializeDepthBandsMapping" | "initializeNegPnlCumulVolMultiplier" | "initializePairFactors" | "initializePriceImpact" | "setCumulativeFactors" | "setDepthBandsMapping" | "setExemptAfterProtectionCloseFactor" | "setExemptOnOpen" | "setNegPnlCumulVolMultiplier" | "setPairDepthBands" | "setPairSkewDepths" | "setPriceImpactWindowsCount" | "setPriceImpactWindowsDuration" | "setProtectionCloseFactorBlocks" | "setProtectionCloseFactorWhitelist" | "setProtectionCloseFactors" | "setUserPriceImpact" | "updatePairOiAfterV10" | "addCollateral" | "closePendingOrder" | "closeTrade" | "getAllPendingOrders" | "getAllPendingOrdersForTraders" | "getAllTradeInfos" | "getAllTradeInfosForTraders" | "getAllTrades" | "getAllTradesForTraders" | "getAllTradesLiquidationParams" | "getAllTradesLiquidationParamsForTraders" | "getCollateral" | "getCollateralIndex" | "getCollaterals" | "getCollateralsCount" | "getCounters" | "getCountersForTraders" | "getCurrentContractsVersion" | "getGToken" | "getGnsCollateralIndex" | "getLookbackFromBlock" | "getPendingOrder" | "getPendingOrders" | "getTrade" | "getTradeContractsVersion" | "getTradeInfo" | "getTradeInfos" | "getTradeLiquidationParams" | "getTradePendingOrderBlock" | "getTraderStored" | "getTraders" | "getTradersCount" | "getTrades" | "getTradesLiquidationParams" | "getTradingActivated" | "initializeTradingStorage" | "isCollateralActive" | "isCollateralGns" | "isCollateralListed" | "storePendingOrder" | "storeTrade" | "toggleCollateralActiveState" | "updateGToken" | "updateOpenOrderDetails" | "updateTradeMaxClosingSlippageP" | "updateTradePosition" | "updateTradeSl" | "updateTradeTp" | "updateTradingActivated" | "validateOpenTradeOrder" | "claimPendingTriggerRewards" | "distributeTriggerReward" | "getTriggerPendingRewardsGns" | "getTriggerTimeoutBlocks" | "hasActiveOrder" | "initializeTriggerRewards" | "updateTriggerTimeoutBlocks" | "cancelOpenOrder" | "cancelOrderAfterTimeout" | "closeTradeMarket" | "decreasePositionSize" | "delegatedTradingAction" | "getByPassTriggerLink" | "getMarketOrdersTimeoutBlocks" | "getTradingDelegate" | "getWrappedNativeToken" | "increasePositionSize" | "increasePositionSizeNative" | "initializeTrading" | "initiateManualNegativePnlRealization" | "isWrappedNativeToken" | "openTrade" | "openTradeNative" | "removeTradingDelegate" | "setTradingDelegate" | "triggerOrder" | "triggerOrderWithSignatures" | "updateByPassTriggerLink" | "updateLeverage" | "updateLeverageNative" | "updateMarketOrdersTimeoutBlocks" | "updateMaxClosingSlippageP" | "updateOpenOrder" | "updateSl" | "updateTp" | "withdrawPositivePnl" | "claimPendingGovFees" | "closeTradeMarketCallback" | "decreasePositionSizeMarketCallback" | "executeTriggerCloseOrderCallback" | "executeTriggerCloseOrderCallbackDirect" | "executeTriggerOpenOrderCallback" | "executeTriggerOpenOrderCallbackDirect" | "getPendingGovFeesCollateral" | "getVaultClosingFeeP" | "increasePositionSizeMarketCallback" | "initializeCallbacks" | "initializeTreasuryAddress" | "manualHoldingFeesRealizationCallback" | "manualNegativePnlRealizationCallback" | "openTradeMarketCallback" | "pnlWithdrawalCallback" | "updateLeverageCallback" | "updateTreasuryAddress" | "updateVaultClosingFeeP" | "validateTriggerCloseOrderCallback" | "validateTriggerOpenOrderCallback" | "borrowingParamUpdateCallback" | "getAllBorrowingPairs" | "getBorrowingFeePerBlockCap" | "getBorrowingGroup" | "getBorrowingGroupOi" | "getBorrowingGroupPendingAccFees" | "getBorrowingGroups" | "getBorrowingInitialAccFees" | "getBorrowingPair" | "getBorrowingPairFeePerBlockCap" | "getBorrowingPairFeePerBlockCaps" | "getBorrowingPairGroupIndex" | "getBorrowingPairGroups" | "getBorrowingPairOiBeforeV10" | "getBorrowingPairPendingAccFees" | "getPairMaxOi" | "getPairMaxOiCollateral" | "getPairOiBeforeV10Collateral" | "getPairOisBeforeV10Collateral" | "getTradeBorrowingFee" | "getTradeLiquidationPrice" | "handleTradeBorrowingCallback" | "initializeBorrowingFeePerBlockCap" | "setBorrowingFeePerBlockCap" | "setBorrowingGroupParams" | "setBorrowingGroupParamsArray" | "setBorrowingPairFeePerBlockCapArray" | "setBorrowingPairParams" | "setBorrowingPairParamsArray" | "updatePairOiBeforeV10" | "withinMaxBorrowingGroupOi" | "addOracle" | "claimBackLink" | "cleanUpSignedPairPrices" | "fulfill" | "getChainlinkToken" | "getCollateralFromUsdNormalizedValue" | "getCollateralGnsLiquidityPool" | "getCollateralPriceUsd" | "getCollateralUsdPriceFeed" | "getGnsPriceCollateralAddress" | "getGnsPriceCollateralIndex" | "getGnsPriceUsd" | "getLimitJobCount" | "getLimitJobId" | "getLimitJobIndex" | "getLinkFee" | "getLinkUsdPriceFeed" | "getMarketJobId" | "getMaxLookbackDeviationP" | "getMaxMarketDeviationP" | "getMinAnswers" | "getOracle" | "getOracles" | "getPairSignedMedianTemporary" | "getPairSignedOrderAnswersTemporary" | "getPendingRequest" | "getPrice" | "getPriceAggregatorOrder" | "getPriceAggregatorOrderAnswers" | "getRequestCount" | "getSignedPairIndicesTemporary" | "getTwapInterval" | "getUsdNormalizedValue" | "initializeLimitJobCount" | "initializeMaxDeviationsP" | "initializePriceAggregator" | "removeOracle" | "replaceOracle" | "setLimitJobCount" | "setLimitJobId" | "setMarketJobId" | "setMaxLookbackDeviationP" | "setMaxMarketDeviationP" | "updateCollateralGnsLiquidityPool" | "updateCollateralUsdPriceFeed" | "updateLinkUsdPriceFeed" | "updateMinAnswers" | "updateTwapInterval" | "validateSignedPairPrices" | "addOtcCollateralBalance" | "getOtcBalance" | "getOtcConfig" | "getOtcRate" | "initializeOtc" | "sellGnsForCollateral" | "updateOtcConfig" | "multicall" | "getNativeTransferEnabled" | "getNativeTransferGasLimit" | "getReentrancyLock" | "initializeChainConfig" | "updateNativeTransferEnabled" | "updateNativeTransferGasLimit" | "downscaleTradeFeesData" | "getMaxSkewCollateral" | "getPairBorrowingFeeData" | "getPairBorrowingFeeParams" | "getPairFundingFeeData" | "getPairFundingFeeParams" | "getPairGlobalParamsArray" | "getPairPendingAccBorrowingFees" | "getPairPendingAccFundingFees" | "getPendingParamUpdates" | "getTradeBorrowingFeesCollateral" | "getTradeFeesData" | "getTradeFeesDataArray" | "getTradeFundingFeesCollateral" | "getTradeManuallyRealizedNegativePnlCollateral" | "getTradePendingHoldingFeesCollateral" | "getTradeRealizedPnlCollateral" | "getTradeRealizedTradingFeesCollateral" | "getTradeUiRealizedPnlDataArray" | "paramUpdateCallbackWithSignedPrices" | "realizeHoldingFeesOnOpenTrade" | "realizePnlOnOpenTrade" | "realizeTradingFeesOnOpenTrade" | "setAbsoluteRatePerSecondCap" | "setAbsoluteVelocityPerYearCap" | "setAprMultiplierEnabled" | "setBorrowingRatePerSecondP" | "setFundingFeesEnabled" | "setMaxSkewCollateral" | "setSkewCoefficientPerYear" | "setThetaThresholdUsd" | "storeAlreadyTransferredNegativePnl" | "storeManuallyRealizedNegativePnlCollateral" | "storeTradeInitialAccFees" | "storeUiPnlWithdrawnCollateral" | "storeUiRealizedPnlPartialCloseCollateral" | "storeUiRealizedTradingFeesCollateral" | "storeVirtualAvailableCollateralInDiamond"): FunctionFragment;
|
|
1665
1664
|
encodeFunctionData(functionFragment: "diamondCut", values: [
|
|
1666
1665
|
IDiamondStorage.FacetCutStruct[],
|
|
1667
1666
|
PromiseOrValue<string>,
|
|
@@ -1812,10 +1811,10 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
1812
1811
|
PromiseOrValue<BigNumberish>[]
|
|
1813
1812
|
]): string;
|
|
1814
1813
|
encodeFunctionData(functionFragment: "getOiWindowsSettings", values?: undefined): string;
|
|
1815
|
-
encodeFunctionData(functionFragment: "getPairDepthBands
|
|
1816
|
-
encodeFunctionData(functionFragment: "
|
|
1817
|
-
encodeFunctionData(functionFragment: "getPairDepthBandsDecoded
|
|
1818
|
-
encodeFunctionData(functionFragment: "
|
|
1814
|
+
encodeFunctionData(functionFragment: "getPairDepthBands", values: [PromiseOrValue<BigNumberish>]): string;
|
|
1815
|
+
encodeFunctionData(functionFragment: "getPairDepthBandsArray", values: [PromiseOrValue<BigNumberish>[]]): string;
|
|
1816
|
+
encodeFunctionData(functionFragment: "getPairDepthBandsDecoded", values: [PromiseOrValue<BigNumberish>]): string;
|
|
1817
|
+
encodeFunctionData(functionFragment: "getPairDepthBandsDecodedArray", values: [PromiseOrValue<BigNumberish>[]]): string;
|
|
1819
1818
|
encodeFunctionData(functionFragment: "getPairFactors", values: [PromiseOrValue<BigNumberish>[]]): string;
|
|
1820
1819
|
encodeFunctionData(functionFragment: "getPairOiAfterV10Collateral", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
|
|
1821
1820
|
encodeFunctionData(functionFragment: "getPairOiAfterV10Token", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
|
|
@@ -2205,8 +2204,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
2205
2204
|
encodeFunctionData(functionFragment: "getCollateralUsdPriceFeed", values: [PromiseOrValue<BigNumberish>]): string;
|
|
2206
2205
|
encodeFunctionData(functionFragment: "getGnsPriceCollateralAddress", values: [PromiseOrValue<string>]): string;
|
|
2207
2206
|
encodeFunctionData(functionFragment: "getGnsPriceCollateralIndex", values: [PromiseOrValue<BigNumberish>]): string;
|
|
2208
|
-
encodeFunctionData(functionFragment: "getGnsPriceUsd
|
|
2209
|
-
encodeFunctionData(functionFragment: "getGnsPriceUsd(uint8)", values: [PromiseOrValue<BigNumberish>]): string;
|
|
2207
|
+
encodeFunctionData(functionFragment: "getGnsPriceUsd", values: [PromiseOrValue<BigNumberish>]): string;
|
|
2210
2208
|
encodeFunctionData(functionFragment: "getLimitJobCount", values?: undefined): string;
|
|
2211
2209
|
encodeFunctionData(functionFragment: "getLimitJobId", values?: undefined): string;
|
|
2212
2210
|
encodeFunctionData(functionFragment: "getLimitJobIndex", values?: undefined): string;
|
|
@@ -2526,10 +2524,10 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
2526
2524
|
decodeFunctionResult(functionFragment: "getOiWindow", data: BytesLike): Result;
|
|
2527
2525
|
decodeFunctionResult(functionFragment: "getOiWindows", data: BytesLike): Result;
|
|
2528
2526
|
decodeFunctionResult(functionFragment: "getOiWindowsSettings", data: BytesLike): Result;
|
|
2529
|
-
decodeFunctionResult(functionFragment: "getPairDepthBands
|
|
2530
|
-
decodeFunctionResult(functionFragment: "
|
|
2531
|
-
decodeFunctionResult(functionFragment: "getPairDepthBandsDecoded
|
|
2532
|
-
decodeFunctionResult(functionFragment: "
|
|
2527
|
+
decodeFunctionResult(functionFragment: "getPairDepthBands", data: BytesLike): Result;
|
|
2528
|
+
decodeFunctionResult(functionFragment: "getPairDepthBandsArray", data: BytesLike): Result;
|
|
2529
|
+
decodeFunctionResult(functionFragment: "getPairDepthBandsDecoded", data: BytesLike): Result;
|
|
2530
|
+
decodeFunctionResult(functionFragment: "getPairDepthBandsDecodedArray", data: BytesLike): Result;
|
|
2533
2531
|
decodeFunctionResult(functionFragment: "getPairFactors", data: BytesLike): Result;
|
|
2534
2532
|
decodeFunctionResult(functionFragment: "getPairOiAfterV10Collateral", data: BytesLike): Result;
|
|
2535
2533
|
decodeFunctionResult(functionFragment: "getPairOiAfterV10Token", data: BytesLike): Result;
|
|
@@ -2709,8 +2707,7 @@ export interface GNSMultiCollatDiamondInterface extends utils.Interface {
|
|
|
2709
2707
|
decodeFunctionResult(functionFragment: "getCollateralUsdPriceFeed", data: BytesLike): Result;
|
|
2710
2708
|
decodeFunctionResult(functionFragment: "getGnsPriceCollateralAddress", data: BytesLike): Result;
|
|
2711
2709
|
decodeFunctionResult(functionFragment: "getGnsPriceCollateralIndex", data: BytesLike): Result;
|
|
2712
|
-
decodeFunctionResult(functionFragment: "getGnsPriceUsd
|
|
2713
|
-
decodeFunctionResult(functionFragment: "getGnsPriceUsd(uint8)", data: BytesLike): Result;
|
|
2710
|
+
decodeFunctionResult(functionFragment: "getGnsPriceUsd", data: BytesLike): Result;
|
|
2714
2711
|
decodeFunctionResult(functionFragment: "getLimitJobCount", data: BytesLike): Result;
|
|
2715
2712
|
decodeFunctionResult(functionFragment: "getLimitJobId", data: BytesLike): Result;
|
|
2716
2713
|
decodeFunctionResult(functionFragment: "getLimitJobIndex", data: BytesLike): Result;
|
|
@@ -5339,9 +5336,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5339
5336
|
getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IPriceImpact.PairOiStructOutput]>;
|
|
5340
5337
|
getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IPriceImpact.PairOiStructOutput[]]>;
|
|
5341
5338
|
getOiWindowsSettings(overrides?: CallOverrides): Promise<[IPriceImpact.OiWindowsSettingsStructOutput]>;
|
|
5342
|
-
|
|
5343
|
-
|
|
5344
|
-
|
|
5339
|
+
getPairDepthBands(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IPriceImpact.PairDepthBandsStructOutput]>;
|
|
5340
|
+
getPairDepthBandsArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[IPriceImpact.PairDepthBandsStructOutput[]]>;
|
|
5341
|
+
getPairDepthBandsDecoded(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
|
|
5345
5342
|
BigNumber,
|
|
5346
5343
|
BigNumber,
|
|
5347
5344
|
number[],
|
|
@@ -5352,7 +5349,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5352
5349
|
bandsAbove: number[];
|
|
5353
5350
|
bandsBelow: number[];
|
|
5354
5351
|
}>;
|
|
5355
|
-
|
|
5352
|
+
getPairDepthBandsDecodedArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[
|
|
5356
5353
|
BigNumber[],
|
|
5357
5354
|
BigNumber[],
|
|
5358
5355
|
number[][],
|
|
@@ -5779,8 +5776,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
5779
5776
|
getCollateralUsdPriceFeed(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
|
|
5780
5777
|
getGnsPriceCollateralAddress(_collateral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
|
|
5781
5778
|
getGnsPriceCollateralIndex(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
|
|
5782
|
-
|
|
5783
|
-
"getGnsPriceUsd(uint8)"(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
|
|
5779
|
+
getGnsPriceUsd(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
|
|
5784
5780
|
getLimitJobCount(overrides?: CallOverrides): Promise<[number]>;
|
|
5785
5781
|
getLimitJobId(overrides?: CallOverrides): Promise<[string]>;
|
|
5786
5782
|
getLimitJobIndex(overrides?: CallOverrides): Promise<[BigNumber]>;
|
|
@@ -6163,9 +6159,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
6163
6159
|
getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IPriceImpact.PairOiStructOutput>;
|
|
6164
6160
|
getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<IPriceImpact.PairOiStructOutput[]>;
|
|
6165
6161
|
getOiWindowsSettings(overrides?: CallOverrides): Promise<IPriceImpact.OiWindowsSettingsStructOutput>;
|
|
6166
|
-
|
|
6167
|
-
|
|
6168
|
-
|
|
6162
|
+
getPairDepthBands(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IPriceImpact.PairDepthBandsStructOutput>;
|
|
6163
|
+
getPairDepthBandsArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<IPriceImpact.PairDepthBandsStructOutput[]>;
|
|
6164
|
+
getPairDepthBandsDecoded(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
|
|
6169
6165
|
BigNumber,
|
|
6170
6166
|
BigNumber,
|
|
6171
6167
|
number[],
|
|
@@ -6176,7 +6172,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
6176
6172
|
bandsAbove: number[];
|
|
6177
6173
|
bandsBelow: number[];
|
|
6178
6174
|
}>;
|
|
6179
|
-
|
|
6175
|
+
getPairDepthBandsDecodedArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[
|
|
6180
6176
|
BigNumber[],
|
|
6181
6177
|
BigNumber[],
|
|
6182
6178
|
number[][],
|
|
@@ -6593,8 +6589,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
6593
6589
|
getCollateralUsdPriceFeed(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
|
|
6594
6590
|
getGnsPriceCollateralAddress(_collateral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
6595
6591
|
getGnsPriceCollateralIndex(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
6596
|
-
|
|
6597
|
-
"getGnsPriceUsd(uint8)"(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
6592
|
+
getGnsPriceUsd(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
6598
6593
|
getLimitJobCount(overrides?: CallOverrides): Promise<number>;
|
|
6599
6594
|
getLimitJobId(overrides?: CallOverrides): Promise<string>;
|
|
6600
6595
|
getLimitJobIndex(overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -6893,9 +6888,9 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
6893
6888
|
getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IPriceImpact.PairOiStructOutput>;
|
|
6894
6889
|
getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<IPriceImpact.PairOiStructOutput[]>;
|
|
6895
6890
|
getOiWindowsSettings(overrides?: CallOverrides): Promise<IPriceImpact.OiWindowsSettingsStructOutput>;
|
|
6896
|
-
|
|
6897
|
-
|
|
6898
|
-
|
|
6891
|
+
getPairDepthBands(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IPriceImpact.PairDepthBandsStructOutput>;
|
|
6892
|
+
getPairDepthBandsArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<IPriceImpact.PairDepthBandsStructOutput[]>;
|
|
6893
|
+
getPairDepthBandsDecoded(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
|
|
6899
6894
|
BigNumber,
|
|
6900
6895
|
BigNumber,
|
|
6901
6896
|
number[],
|
|
@@ -6906,7 +6901,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
6906
6901
|
bandsAbove: number[];
|
|
6907
6902
|
bandsBelow: number[];
|
|
6908
6903
|
}>;
|
|
6909
|
-
|
|
6904
|
+
getPairDepthBandsDecodedArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<[
|
|
6910
6905
|
BigNumber[],
|
|
6911
6906
|
BigNumber[],
|
|
6912
6907
|
number[][],
|
|
@@ -7141,8 +7136,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
7141
7136
|
getCollateralUsdPriceFeed(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
|
|
7142
7137
|
getGnsPriceCollateralAddress(_collateral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7143
7138
|
getGnsPriceCollateralIndex(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7144
|
-
|
|
7145
|
-
"getGnsPriceUsd(uint8)"(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7139
|
+
getGnsPriceUsd(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7146
7140
|
getLimitJobCount(overrides?: CallOverrides): Promise<number>;
|
|
7147
7141
|
getLimitJobId(overrides?: CallOverrides): Promise<string>;
|
|
7148
7142
|
getLimitJobIndex(overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -7763,10 +7757,10 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
7763
7757
|
getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7764
7758
|
getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
|
|
7765
7759
|
getOiWindowsSettings(overrides?: CallOverrides): Promise<BigNumber>;
|
|
7766
|
-
|
|
7767
|
-
|
|
7768
|
-
|
|
7769
|
-
|
|
7760
|
+
getPairDepthBands(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7761
|
+
getPairDepthBandsArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
|
|
7762
|
+
getPairDepthBandsDecoded(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7763
|
+
getPairDepthBandsDecodedArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
|
|
7770
7764
|
getPairFactors(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<BigNumber>;
|
|
7771
7765
|
getPairOiAfterV10Collateral(_collateralIndex: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
7772
7766
|
getPairOiAfterV10Token(_collateralIndex: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -8128,8 +8122,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
8128
8122
|
getCollateralUsdPriceFeed(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
8129
8123
|
getGnsPriceCollateralAddress(_collateral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
8130
8124
|
getGnsPriceCollateralIndex(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
8131
|
-
|
|
8132
|
-
"getGnsPriceUsd(uint8)"(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
8125
|
+
getGnsPriceUsd(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
|
|
8133
8126
|
getLimitJobCount(overrides?: CallOverrides): Promise<BigNumber>;
|
|
8134
8127
|
getLimitJobId(overrides?: CallOverrides): Promise<BigNumber>;
|
|
8135
8128
|
getLimitJobIndex(overrides?: CallOverrides): Promise<BigNumber>;
|
|
@@ -8488,10 +8481,10 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
8488
8481
|
getOiWindow(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8489
8482
|
getOiWindows(_windowsDuration: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, _windowIds: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8490
8483
|
getOiWindowsSettings(overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8491
|
-
|
|
8492
|
-
|
|
8493
|
-
|
|
8494
|
-
|
|
8484
|
+
getPairDepthBands(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8485
|
+
getPairDepthBandsArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8486
|
+
getPairDepthBandsDecoded(_pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8487
|
+
getPairDepthBandsDecodedArray(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8495
8488
|
getPairFactors(_indices: PromiseOrValue<BigNumberish>[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8496
8489
|
getPairOiAfterV10Collateral(_collateralIndex: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8497
8490
|
getPairOiAfterV10Token(_collateralIndex: PromiseOrValue<BigNumberish>, _pairIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
@@ -8853,8 +8846,7 @@ export interface GNSMultiCollatDiamond extends BaseContract {
|
|
|
8853
8846
|
getCollateralUsdPriceFeed(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8854
8847
|
getGnsPriceCollateralAddress(_collateral: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8855
8848
|
getGnsPriceCollateralIndex(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8856
|
-
|
|
8857
|
-
"getGnsPriceUsd(uint8)"(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8849
|
+
getGnsPriceUsd(_collateralIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8858
8850
|
getLimitJobCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8859
8851
|
getLimitJobId(overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
8860
8852
|
getLimitJobIndex(overrides?: CallOverrides): Promise<PopulatedTransaction>;
|
|
@@ -4468,9 +4468,9 @@ const _abi = [
|
|
|
4468
4468
|
{
|
|
4469
4469
|
inputs: [
|
|
4470
4470
|
{
|
|
4471
|
-
internalType: "uint256
|
|
4472
|
-
name: "
|
|
4473
|
-
type: "uint256
|
|
4471
|
+
internalType: "uint256",
|
|
4472
|
+
name: "_pairIndex",
|
|
4473
|
+
type: "uint256",
|
|
4474
4474
|
},
|
|
4475
4475
|
],
|
|
4476
4476
|
name: "getPairDepthBands",
|
|
@@ -4498,24 +4498,24 @@ const _abi = [
|
|
|
4498
4498
|
type: "uint256",
|
|
4499
4499
|
},
|
|
4500
4500
|
],
|
|
4501
|
-
internalType: "struct IPriceImpact.PairDepthBands
|
|
4501
|
+
internalType: "struct IPriceImpact.PairDepthBands",
|
|
4502
4502
|
name: "",
|
|
4503
|
-
type: "tuple
|
|
4503
|
+
type: "tuple",
|
|
4504
4504
|
},
|
|
4505
4505
|
],
|
|
4506
4506
|
stateMutability: "view",
|
|
4507
4507
|
type: "function",
|
|
4508
|
-
signature: "
|
|
4508
|
+
signature: "0xc693e1be",
|
|
4509
4509
|
},
|
|
4510
4510
|
{
|
|
4511
4511
|
inputs: [
|
|
4512
4512
|
{
|
|
4513
|
-
internalType: "uint256",
|
|
4514
|
-
name: "
|
|
4515
|
-
type: "uint256",
|
|
4513
|
+
internalType: "uint256[]",
|
|
4514
|
+
name: "_indices",
|
|
4515
|
+
type: "uint256[]",
|
|
4516
4516
|
},
|
|
4517
4517
|
],
|
|
4518
|
-
name: "
|
|
4518
|
+
name: "getPairDepthBandsArray",
|
|
4519
4519
|
outputs: [
|
|
4520
4520
|
{
|
|
4521
4521
|
components: [
|
|
@@ -4540,14 +4540,14 @@ const _abi = [
|
|
|
4540
4540
|
type: "uint256",
|
|
4541
4541
|
},
|
|
4542
4542
|
],
|
|
4543
|
-
internalType: "struct IPriceImpact.PairDepthBands",
|
|
4543
|
+
internalType: "struct IPriceImpact.PairDepthBands[]",
|
|
4544
4544
|
name: "",
|
|
4545
|
-
type: "tuple",
|
|
4545
|
+
type: "tuple[]",
|
|
4546
4546
|
},
|
|
4547
4547
|
],
|
|
4548
4548
|
stateMutability: "view",
|
|
4549
4549
|
type: "function",
|
|
4550
|
-
signature: "
|
|
4550
|
+
signature: "0x35bf34e8",
|
|
4551
4551
|
},
|
|
4552
4552
|
{
|
|
4553
4553
|
inputs: [
|
|
@@ -4592,7 +4592,7 @@ const _abi = [
|
|
|
4592
4592
|
type: "uint256[]",
|
|
4593
4593
|
},
|
|
4594
4594
|
],
|
|
4595
|
-
name: "
|
|
4595
|
+
name: "getPairDepthBandsDecodedArray",
|
|
4596
4596
|
outputs: [
|
|
4597
4597
|
{
|
|
4598
4598
|
internalType: "uint256[]",
|
|
@@ -4617,7 +4617,7 @@ const _abi = [
|
|
|
4617
4617
|
],
|
|
4618
4618
|
stateMutability: "view",
|
|
4619
4619
|
type: "function",
|
|
4620
|
-
signature: "
|
|
4620
|
+
signature: "0x299f621d",
|
|
4621
4621
|
},
|
|
4622
4622
|
{
|
|
4623
4623
|
inputs: [
|
|
@@ -16876,31 +16876,6 @@ const _abi = [
|
|
|
16876
16876
|
type: "function",
|
|
16877
16877
|
signature: "0xa91fa361",
|
|
16878
16878
|
},
|
|
16879
|
-
{
|
|
16880
|
-
inputs: [
|
|
16881
|
-
{
|
|
16882
|
-
internalType: "uint8",
|
|
16883
|
-
name: "_collateralIndex",
|
|
16884
|
-
type: "uint8",
|
|
16885
|
-
},
|
|
16886
|
-
{
|
|
16887
|
-
internalType: "uint256",
|
|
16888
|
-
name: "_gnsPriceCollateral",
|
|
16889
|
-
type: "uint256",
|
|
16890
|
-
},
|
|
16891
|
-
],
|
|
16892
|
-
name: "getGnsPriceUsd",
|
|
16893
|
-
outputs: [
|
|
16894
|
-
{
|
|
16895
|
-
internalType: "uint256",
|
|
16896
|
-
name: "",
|
|
16897
|
-
type: "uint256",
|
|
16898
|
-
},
|
|
16899
|
-
],
|
|
16900
|
-
stateMutability: "view",
|
|
16901
|
-
type: "function",
|
|
16902
|
-
signature: "0x6e27030b",
|
|
16903
|
-
},
|
|
16904
16879
|
{
|
|
16905
16880
|
inputs: [
|
|
16906
16881
|
{
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Fee, OpenInterest, Pair, PairIndex } from "../../trade/types";
|
|
2
2
|
import { Contracts } from "../../contracts/types";
|
|
3
3
|
export declare const fetchPairs: (contracts: Contracts, pairIxs: PairIndex[]) => Promise<Pair[]>;
|
|
4
4
|
export declare const fetchPairDepthBands: (contracts: Contracts, pairIxs: number[]) => Promise<any[]>;
|
|
@@ -38,9 +38,7 @@ const fetchPairDepthBands = async (contracts, pairIxs) => {
|
|
|
38
38
|
const { gnsMultiCollatDiamond: multiCollatContract } = contracts;
|
|
39
39
|
try {
|
|
40
40
|
// Returns array of PairDepthBands structs (encoded slots)
|
|
41
|
-
|
|
42
|
-
const depthBands = await multiCollatContract["getPairDepthBands(uint256[])"](pairIxs);
|
|
43
|
-
return depthBands;
|
|
41
|
+
return await multiCollatContract.getPairDepthBandsArray(pairIxs);
|
|
44
42
|
}
|
|
45
43
|
catch (error) {
|
|
46
44
|
console.error(`Unexpected error while fetching pair depth bands!`);
|
|
@@ -61,7 +59,7 @@ const fetchPairDepthBandsDecoded = async (contracts, pairIxs) => {
|
|
|
61
59
|
try {
|
|
62
60
|
// Returns decoded values
|
|
63
61
|
// Using quoted signature for overloaded function
|
|
64
|
-
const [totalDepthAboveUsd, totalDepthBelowUsd, bandsAbove, bandsBelow] = await multiCollatContract
|
|
62
|
+
const [totalDepthAboveUsd, totalDepthBelowUsd, bandsAbove, bandsBelow] = await multiCollatContract.getPairDepthBandsDecodedArray(pairIxs);
|
|
65
63
|
return {
|
|
66
64
|
totalDepthAboveUsd: totalDepthAboveUsd.map((v) => parseFloat(v.toString())),
|
|
67
65
|
totalDepthBelowUsd: totalDepthBelowUsd.map((v) => parseFloat(v.toString())),
|
|
@@ -80,8 +80,6 @@ exports.getLegacyFactor = getLegacyFactor;
|
|
|
80
80
|
* @returns Price impact percentage
|
|
81
81
|
*/
|
|
82
82
|
const _calculateDepthBandsPriceImpact = (tradeSizeUsd, depthBandParams) => {
|
|
83
|
-
console.log("tradeSizeUsd", tradeSizeUsd);
|
|
84
|
-
console.log("depthBandParams", depthBandParams);
|
|
85
83
|
const totalDepthUsd = depthBandParams.depthBands.totalDepthUsd;
|
|
86
84
|
if (totalDepthUsd === 0 || tradeSizeUsd === 0)
|
|
87
85
|
return 0;
|
|
@@ -93,51 +91,38 @@ const _calculateDepthBandsPriceImpact = (tradeSizeUsd, depthBandParams) => {
|
|
|
93
91
|
const bandLiquidityPercentageBps = depthBandParams.depthBands.bands[i]; // Already in 0-1 format
|
|
94
92
|
const topOfBandOffsetPpm = depthBandParams.depthBandsMapping.bands[i]; // Already in 0-1 format
|
|
95
93
|
const bandDepthUsd = bandLiquidityPercentageBps * totalDepthUsd;
|
|
96
|
-
console.log("bandDepthUsd", bandDepthUsd);
|
|
97
94
|
// Skip if band has same depth as previous (would cause division by zero)
|
|
98
95
|
if (bandDepthUsd <= prevBandDepthUsd) {
|
|
99
|
-
console.log("Skipping band");
|
|
100
96
|
prevBandDepthUsd = bandDepthUsd;
|
|
101
97
|
topOfPrevBandOffsetPpm = topOfBandOffsetPpm;
|
|
102
98
|
continue;
|
|
103
99
|
}
|
|
104
100
|
// Since bandDepthUsd represents liquidity from mid price to top of band, we need to subtract previous band depth
|
|
105
101
|
const bandAvailableDepthUsd = bandDepthUsd - prevBandDepthUsd;
|
|
106
|
-
console.log("bandAvailableDepthUsd", bandAvailableDepthUsd);
|
|
107
102
|
let depthConsumedUsd;
|
|
108
103
|
// At 100% band always consume all remaining size, even if more than band available depth
|
|
109
104
|
if (bandLiquidityPercentageBps === 1 ||
|
|
110
105
|
remainingSizeUsd <= bandAvailableDepthUsd) {
|
|
111
106
|
depthConsumedUsd = remainingSizeUsd;
|
|
112
107
|
remainingSizeUsd = 0;
|
|
113
|
-
console.log("Consumed all remaining size");
|
|
114
108
|
}
|
|
115
109
|
else {
|
|
116
110
|
// Normal case: consume entire band and continue to next
|
|
117
111
|
depthConsumedUsd = bandAvailableDepthUsd;
|
|
118
112
|
remainingSizeUsd -= bandAvailableDepthUsd;
|
|
119
|
-
console.log("Consumed entire band");
|
|
120
113
|
}
|
|
121
114
|
// Calculate impact contribution from this band using trapezoidal rule
|
|
122
115
|
// Low = previous band's price offset, High = current band's price offset
|
|
123
116
|
const lowOffsetP = topOfPrevBandOffsetPpm;
|
|
124
117
|
const offsetRangeP = topOfBandOffsetPpm - topOfPrevBandOffsetPpm;
|
|
125
|
-
console.log("lowOffsetP", lowOffsetP);
|
|
126
|
-
console.log("offsetRangeP", offsetRangeP);
|
|
127
|
-
console.log("depthConsumedUsd", depthConsumedUsd);
|
|
128
|
-
console.log("bandAvailableDepthUsd", bandAvailableDepthUsd);
|
|
129
118
|
// Calculate average impact using trapezoidal rule: low + (range * fraction / 2)
|
|
130
119
|
const avgImpactP = lowOffsetP +
|
|
131
120
|
(offsetRangeP * depthConsumedUsd) / bandAvailableDepthUsd / 2;
|
|
132
|
-
console.log("avgImpactP", avgImpactP);
|
|
133
121
|
totalWeightedPriceImpactP += avgImpactP * depthConsumedUsd;
|
|
134
|
-
console.log("totalWeightedPriceImpactP", totalWeightedPriceImpactP);
|
|
135
122
|
// Update previous values for next iteration
|
|
136
123
|
topOfPrevBandOffsetPpm = topOfBandOffsetPpm;
|
|
137
124
|
prevBandDepthUsd = bandDepthUsd;
|
|
138
125
|
}
|
|
139
|
-
console.log("totalWeightedPriceImpactP", totalWeightedPriceImpactP);
|
|
140
|
-
console.log("tradeSizeUsd", tradeSizeUsd);
|
|
141
126
|
return totalWeightedPriceImpactP / tradeSizeUsd;
|
|
142
127
|
};
|
|
143
128
|
/**
|
|
@@ -164,12 +149,8 @@ const _getDepthBandsPriceImpactP = (cumulativeVolumeUsd, tradeSizeUsd, depthBand
|
|
|
164
149
|
const totalSizeLookupUsdUint = isNegative
|
|
165
150
|
? -totalSizeLookupUsd
|
|
166
151
|
: totalSizeLookupUsd;
|
|
167
|
-
console.log("effectiveCumulativeVolumeUsdUint", effectiveCumulativeVolumeUsdUint);
|
|
168
|
-
console.log("totalSizeLookupUsdUint", totalSizeLookupUsdUint);
|
|
169
152
|
const cumulativeVolPriceImpactP = _calculateDepthBandsPriceImpact(effectiveCumulativeVolumeUsdUint, depthBandParams);
|
|
170
153
|
const totalSizePriceImpactP = _calculateDepthBandsPriceImpact(totalSizeLookupUsdUint, depthBandParams);
|
|
171
|
-
console.log("cumulativeVolPriceImpactP", cumulativeVolPriceImpactP);
|
|
172
|
-
console.log("totalSizePriceImpactP", totalSizePriceImpactP);
|
|
173
154
|
const unscaledPriceImpactP = cumulativeVolPriceImpactP +
|
|
174
155
|
(totalSizePriceImpactP - cumulativeVolPriceImpactP) / 2;
|
|
175
156
|
const scaledPriceImpactP = unscaledPriceImpactP * priceImpactFactor;
|
|
@@ -208,15 +189,11 @@ long, tradeOpenInterestUsd, isPnlPositive, open, lastPosIncreaseBlock, context)
|
|
|
208
189
|
(!open &&
|
|
209
190
|
context?.exemptAfterProtectionCloseFactor === true &&
|
|
210
191
|
(0, exports.isProtectionCloseFactorActive)(updatedContext) !== true)) {
|
|
211
|
-
console.log("No price impact, protection close factor");
|
|
212
192
|
return 0;
|
|
213
193
|
}
|
|
214
194
|
const tradePositiveSkew = (long && open) || (!long && !open);
|
|
215
195
|
const tradeSkewMultiplier = tradePositiveSkew ? 1 : -1;
|
|
216
|
-
console.log("bands", context.pairDepthBands);
|
|
217
|
-
console.log("mapping", context.depthBandsMapping);
|
|
218
196
|
if (!context.pairDepthBands || !context.depthBandsMapping) {
|
|
219
|
-
console.log("No price impact, bands");
|
|
220
197
|
return 0;
|
|
221
198
|
}
|
|
222
199
|
// Select depth bands based on trade direction
|
|
@@ -225,7 +202,6 @@ long, tradeOpenInterestUsd, isPnlPositive, open, lastPosIncreaseBlock, context)
|
|
|
225
202
|
: context.pairDepthBands.below;
|
|
226
203
|
// Return 0 if no depth bands configured (matching contract lines 588-590)
|
|
227
204
|
if (!depthBands || depthBands.totalDepthUsd === 0) {
|
|
228
|
-
console.log("No price impact, depth bands");
|
|
229
205
|
return 0;
|
|
230
206
|
}
|
|
231
207
|
// Get active OI for cumulative volume calculation
|
|
@@ -234,11 +210,8 @@ long, tradeOpenInterestUsd, isPnlPositive, open, lastPosIncreaseBlock, context)
|
|
|
234
210
|
activeOi =
|
|
235
211
|
(0, oiWindows_1.getActiveOi)((0, oiWindows_1.getCurrentOiWindowId)(context.oiWindowsSettings), context.oiWindowsSettings.windowsCount, context.oiWindows, open ? long : !long) || 0;
|
|
236
212
|
}
|
|
237
|
-
console.log("activeOi", activeOi);
|
|
238
213
|
const signedActiveOi = activeOi * tradeSkewMultiplier;
|
|
239
214
|
const signedTradeOi = tradeOpenInterestUsd * tradeSkewMultiplier;
|
|
240
|
-
console.log("signedActiveOi", signedActiveOi);
|
|
241
|
-
console.log("signedTradeOi", signedTradeOi);
|
|
242
215
|
// Calculate price impact using depth bands
|
|
243
216
|
const priceImpactP = _getDepthBandsPriceImpactP(signedActiveOi, signedTradeOi, {
|
|
244
217
|
depthBands: depthBands,
|