@gainsnetwork/sdk 1.3.0-rc7 → 1.4.2-rc1
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/backend/tradingVariables/backend.types.d.ts +4 -11
- package/lib/backend/tradingVariables/converter.d.ts +3 -7
- package/lib/backend/tradingVariables/converter.js +7 -15
- package/lib/backend/tradingVariables/index.js +2 -5
- package/lib/backend/tradingVariables/types.d.ts +2 -4
- package/lib/constants.js +1 -1
- package/lib/contracts/addresses.d.ts +1 -1
- package/lib/contracts/addresses.js +5 -6
- package/lib/contracts/addresses.json +0 -29
- package/lib/contracts/types/generated/GNSMultiCollatDiamond.d.ts +40 -223
- package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.js +36 -312
- package/lib/contracts/utils/pairs.d.ts +2 -13
- package/lib/contracts/utils/pairs.js +11 -70
- package/lib/index.d.ts +0 -1
- package/lib/index.js +0 -1
- package/lib/trade/priceImpact/cumulVol/builder.js +2 -4
- package/lib/trade/priceImpact/cumulVol/converter.d.ts +0 -63
- package/lib/trade/priceImpact/cumulVol/converter.js +1 -97
- package/lib/trade/priceImpact/cumulVol/index.d.ts +6 -7
- package/lib/trade/priceImpact/cumulVol/index.js +32 -135
- package/lib/trade/priceImpact/open/index.js +0 -3
- package/package.json +1 -1
|
@@ -96,15 +96,9 @@ export interface GroupOpenInterestBackend {
|
|
|
96
96
|
short: string;
|
|
97
97
|
max: string;
|
|
98
98
|
}
|
|
99
|
-
export interface
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
belowSlot1: string;
|
|
103
|
-
belowSlot2: string;
|
|
104
|
-
}
|
|
105
|
-
export interface DepthBandsMappingBackend {
|
|
106
|
-
slot1: string;
|
|
107
|
-
slot2: string;
|
|
99
|
+
export interface PairDepthBackend {
|
|
100
|
+
onePercentDepthAboveUsd: string;
|
|
101
|
+
onePercentDepthBelowUsd: string;
|
|
108
102
|
}
|
|
109
103
|
export interface PairBorrowingFeesBackendPairGroup {
|
|
110
104
|
groupIndex: string;
|
|
@@ -165,7 +159,6 @@ export interface GlobalTradingVariablesBackend {
|
|
|
165
159
|
groups: TradingGroupBackend[];
|
|
166
160
|
fees: FeeBackend[];
|
|
167
161
|
pairInfos: PairInfosBackend;
|
|
168
|
-
depthBandsMapping: DepthBandsMappingBackend;
|
|
169
162
|
collaterals: CollateralBackend[];
|
|
170
163
|
sssTokenBalance: string;
|
|
171
164
|
sssLegacyTokenBalance: string;
|
|
@@ -246,7 +239,7 @@ export interface CollateralBackend {
|
|
|
246
239
|
}
|
|
247
240
|
export interface PairInfosBackend {
|
|
248
241
|
maxLeverages: string[];
|
|
249
|
-
|
|
242
|
+
pairDepths: PairDepthBackend[];
|
|
250
243
|
pairFactors: PairFactorBackend[];
|
|
251
244
|
}
|
|
252
245
|
export type TraderInfoBackend = {
|
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
import { ContestLeaderboardBackendEntry, ContestLeaderboardEntry } from "@gainsnetwork/contests";
|
|
2
|
-
import { BorrowingFee, CollateralConfig, Fee, FeeTiers, GlobalTradeFeeParams, OiWindows, OiWindowsSettings, OpenInterest, Pair, PairOi, Trade, TradeContainer, TradeInfo, TradeInitialAccFees, TraderFeeTiers, TradingGroup, PairFactor, convertLiquidationParams } from "../../";
|
|
3
|
-
import {
|
|
4
|
-
import { BorrowingFeePerBlockCapBackend, CollateralBackend, FeeBackend, FeeTiersBackend, GlobalTradeFeeParamsBackend, OiWindowsBackend, OiWindowsSettingsBackend, OpenInterestBackend, PairBackend, PairDepthBandsBackend, DepthBandsMappingBackend, PairFactorBackend, PairOiBackend, PairParamsBorrowingFeesBackend, TradeBackend, TradeContainerBackend, TradeInfoBackend, TradeInitialAccFeesBackend, TraderFeeTiersBackend, TradingGroupBackend } from "./backend.types";
|
|
2
|
+
import { BorrowingFee, CollateralConfig, Fee, FeeTiers, GlobalTradeFeeParams, OiWindows, OiWindowsSettings, OpenInterest, Pair, PairDepth, PairOi, Trade, TradeContainer, TradeInfo, TradeInitialAccFees, TraderFeeTiers, TradingGroup, PairFactor, convertLiquidationParams } from "../../";
|
|
3
|
+
import { BorrowingFeePerBlockCapBackend, CollateralBackend, FeeBackend, FeeTiersBackend, GlobalTradeFeeParamsBackend, OiWindowsBackend, OiWindowsSettingsBackend, OpenInterestBackend, PairBackend, PairDepthBackend, PairFactorBackend, PairOiBackend, PairParamsBorrowingFeesBackend, TradeBackend, TradeContainerBackend, TradeInfoBackend, TradeInitialAccFeesBackend, TraderFeeTiersBackend, TradingGroupBackend } from "./backend.types";
|
|
5
4
|
import { TradingVariablesCollateral } from "./types";
|
|
6
5
|
export declare const convertFees: (fees: FeeBackend[]) => Fee[];
|
|
7
6
|
export declare const convertCollaterals: (collaterals: CollateralBackend[]) => TradingVariablesCollateral[];
|
|
8
7
|
export declare const convertOpenInterests: (interests: OpenInterestBackend[]) => OpenInterest[];
|
|
9
|
-
export declare const
|
|
10
|
-
export declare const convertDepthBandsMapping: (mapping: DepthBandsMappingBackend) => {
|
|
11
|
-
bands: number[];
|
|
12
|
-
};
|
|
8
|
+
export declare const convertPairDepths: (pairDepths: PairDepthBackend[]) => PairDepth[];
|
|
13
9
|
export declare const convertPairSkewDepths: (pairSkewDepths: string[] | undefined) => {
|
|
14
10
|
[pairIndex: number]: number;
|
|
15
11
|
};
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.convertLiquidationParams = exports.convertPairName = exports.convertFeePerBlockCap = exports.convertMaxLeverages = exports.convertGlobalTradeFeeParams = exports.convertTraderFeeTiers = exports.convertFeeTiers = exports.convertCollateralConfig = exports.convertOiWindowsSettings = exports.convertOiWindows = exports.convertPairOi = exports.convertContestLeaderboardEntry = exports.generateStockPairToActiveStockSplit = exports.convertTradeInitialAccFees = exports.convertTradeInfo = exports.convertTrade = exports.convertPairFactor = exports.convertTradeContainer = exports.convertTradesAndLimitOrders = exports.convertTradingPairs = exports.convertTradingGroups = exports.convertGroupBorrowingFees = exports.convertPairBorrowingFees = exports.convertPairSkewDepths = exports.
|
|
3
|
+
exports.convertLiquidationParams = exports.convertPairName = exports.convertFeePerBlockCap = exports.convertMaxLeverages = exports.convertGlobalTradeFeeParams = exports.convertTraderFeeTiers = exports.convertFeeTiers = exports.convertCollateralConfig = exports.convertOiWindowsSettings = exports.convertOiWindows = exports.convertPairOi = exports.convertContestLeaderboardEntry = exports.generateStockPairToActiveStockSplit = exports.convertTradeInitialAccFees = exports.convertTradeInfo = exports.convertTrade = exports.convertPairFactor = exports.convertTradeContainer = exports.convertTradesAndLimitOrders = exports.convertTradingPairs = exports.convertTradingGroups = exports.convertGroupBorrowingFees = exports.convertPairBorrowingFees = exports.convertPairSkewDepths = exports.convertPairDepths = exports.convertOpenInterests = exports.convertCollaterals = exports.convertFees = void 0;
|
|
4
4
|
const __1 = require("../../");
|
|
5
5
|
Object.defineProperty(exports, "convertLiquidationParams", { enumerable: true, get: function () { return __1.convertLiquidationParams; } });
|
|
6
6
|
const converter_1 = require("../../trade/priceImpact/skew/converter");
|
|
7
|
-
const converter_2 = require("../../trade/priceImpact/cumulVol/converter");
|
|
8
|
-
const depthBands_1 = require("../../pricing/depthBands");
|
|
9
7
|
const convertFees = (fees) => fees?.map(fee => convertFee(fee));
|
|
10
8
|
exports.convertFees = convertFees;
|
|
11
9
|
const convertCollateral = (collateral) => ({
|
|
@@ -54,18 +52,12 @@ const convertOpenInterest = (interest) => ({
|
|
|
54
52
|
short: parseFloat(interest.beforeV10.short) / 1e10,
|
|
55
53
|
max: parseFloat(interest.beforeV10.max) / 1e10,
|
|
56
54
|
});
|
|
57
|
-
const
|
|
58
|
-
exports.
|
|
59
|
-
const
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
// Convert from basis points to 0-1 range
|
|
64
|
-
return {
|
|
65
|
-
bands: bandsBps.map(bps => bps / 10000),
|
|
66
|
-
};
|
|
67
|
-
};
|
|
68
|
-
exports.convertDepthBandsMapping = convertDepthBandsMapping;
|
|
55
|
+
const convertPairDepths = (pairDepths) => pairDepths?.map(pairDepth => convertPairDepth(pairDepth));
|
|
56
|
+
exports.convertPairDepths = convertPairDepths;
|
|
57
|
+
const convertPairDepth = (pairDepth) => ({
|
|
58
|
+
onePercentDepthAboveUsd: parseInt(pairDepth.onePercentDepthAboveUsd),
|
|
59
|
+
onePercentDepthBelowUsd: parseInt(pairDepth.onePercentDepthBelowUsd),
|
|
60
|
+
});
|
|
69
61
|
const convertPairSkewDepths = (pairSkewDepths) => {
|
|
70
62
|
if (!pairSkewDepths)
|
|
71
63
|
return {};
|
|
@@ -30,12 +30,9 @@ const transformGlobalTradingVariables = (rawData) => {
|
|
|
30
30
|
stocksClosed: !rawData.isStocksOpen,
|
|
31
31
|
indicesClosed: !rawData.isIndicesOpen,
|
|
32
32
|
commoditiesClosed: !rawData.isCommoditiesOpen,
|
|
33
|
-
|
|
34
|
-
? (0, converter_1.
|
|
33
|
+
pairDepths: rawData.pairInfos?.pairDepths !== undefined
|
|
34
|
+
? (0, converter_1.convertPairDepths)(rawData.pairInfos.pairDepths)
|
|
35
35
|
: [],
|
|
36
|
-
depthBandsMapping: rawData.depthBandsMapping !== undefined
|
|
37
|
-
? (0, converter_1.convertDepthBandsMapping)(rawData.depthBandsMapping)
|
|
38
|
-
: { bands: [] },
|
|
39
36
|
pairMaxLeverages: rawData.pairInfos?.maxLeverages !== undefined
|
|
40
37
|
? (0, converter_1.convertMaxLeverages)(rawData.pairInfos.maxLeverages)
|
|
41
38
|
: [],
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { CollateralConfig } from "src/markets/collateral";
|
|
2
|
-
import { BorrowingFee, BorrowingFeeV2, CounterTradeSettings, Fee, FeeTiers, FundingFees, GlobalTradeFeeParams, LeaderboardTrader, LiquidationParams, OiWindows, OiWindowsSettings, Pair, PairFactor, PairIndexes, TradingGroup } from "../../trade";
|
|
3
|
-
import { PairDepthBands, DepthBandsMapping } from "../../trade/priceImpact/cumulVol/types";
|
|
2
|
+
import { BorrowingFee, BorrowingFeeV2, CounterTradeSettings, Fee, FeeTiers, FundingFees, GlobalTradeFeeParams, LeaderboardTrader, LiquidationParams, OiWindows, OiWindowsSettings, Pair, PairDepth, PairFactor, PairIndexes, TradingGroup } from "../../trade";
|
|
4
3
|
import { UnifiedPairOi } from "src/markets";
|
|
5
4
|
export type TransformedGlobalTradingVariables = {
|
|
6
5
|
globalTradingVariables: GlobalTradingVariablesType;
|
|
@@ -64,8 +63,7 @@ export type GlobalTradingVariablesType = {
|
|
|
64
63
|
commodities?: string[];
|
|
65
64
|
commoditiesClosed?: boolean;
|
|
66
65
|
blockConfirmations?: number;
|
|
67
|
-
|
|
68
|
-
depthBandsMapping?: DepthBandsMapping;
|
|
66
|
+
pairDepths?: PairDepth[];
|
|
69
67
|
pairMaxLeverages?: number[];
|
|
70
68
|
maxNegativePnlOnOpenP?: number;
|
|
71
69
|
oiWindowsSettings?: OiWindowsSettings;
|
package/lib/constants.js
CHANGED
|
@@ -478,7 +478,7 @@ exports.delistedPairIxs = new Set([
|
|
|
478
478
|
160, 163, 170, 179, 182, 183, 188, 189, 190, 208, 209, 225, 229, 230, 231,
|
|
479
479
|
238, 239, 241, 250, 253, 254, 258, 270, 275, 276, 278, 279, 282, 285, 290,
|
|
480
480
|
294, 296, 305, 311, 330, 349, 352, 353, 354, 355, 357, 365, 366, 395, 396,
|
|
481
|
-
415, 416, 417,
|
|
481
|
+
414, 415, 416, 417,
|
|
482
482
|
]);
|
|
483
483
|
exports.delistedGroupsIxs = new Set([]);
|
|
484
484
|
exports.DEFAULT_PROTECTION_CLOSE_FACTOR = 1;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { CollateralTypes, ContractAddresses } from "./types";
|
|
2
|
-
export declare const getContractAddressesForChain: (chainId: number, collateral?: CollateralTypes
|
|
2
|
+
export declare const getContractAddressesForChain: (chainId: number, collateral?: CollateralTypes) => ContractAddresses;
|
|
3
3
|
export declare const getCollateralByAddressForChain: (chainId: number, address: string) => CollateralTypes;
|
|
@@ -6,18 +6,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.getCollateralByAddressForChain = exports.getContractAddressesForChain = void 0;
|
|
7
7
|
const types_1 = require("./types");
|
|
8
8
|
const addresses_json_1 = __importDefault(require("./addresses.json"));
|
|
9
|
-
const getContractAddressesForChain = (chainId, collateral = types_1.CollateralTypes.DAI
|
|
9
|
+
const getContractAddressesForChain = (chainId, collateral = types_1.CollateralTypes.DAI) => {
|
|
10
10
|
const _addresses = addresses_json_1.default;
|
|
11
|
-
|
|
12
|
-
if (!_addresses[chainIdMapping]) {
|
|
11
|
+
if (!_addresses[chainId]) {
|
|
13
12
|
throw new Error(`Unknown chain id (${chainId}). No known contracts have been deployed on this chain.`);
|
|
14
13
|
}
|
|
15
|
-
if (!_addresses[
|
|
14
|
+
if (!_addresses[chainId][collateral]) {
|
|
16
15
|
throw new Error(`Unknown collateral (${collateral}) for chain id (${chainId}). No known contracts have been deployed for this collateral.`);
|
|
17
16
|
}
|
|
18
17
|
return {
|
|
19
|
-
..._addresses[
|
|
20
|
-
..._addresses[
|
|
18
|
+
..._addresses[chainId]["global"],
|
|
19
|
+
..._addresses[chainId][collateral],
|
|
21
20
|
};
|
|
22
21
|
};
|
|
23
22
|
exports.getContractAddressesForChain = getContractAddressesForChain;
|
|
@@ -143,34 +143,5 @@
|
|
|
143
143
|
"gTokenOpenPnlFeed": "0x0000000000000000000000000000000000000000",
|
|
144
144
|
"gToken": "0x0000000000000000000000000000000000000000"
|
|
145
145
|
}
|
|
146
|
-
},
|
|
147
|
-
"421614-release": {
|
|
148
|
-
"global": {
|
|
149
|
-
"gnsMultiCollatDiamond": "0xB4F1B18b5679B42F2956dCBff3D7823A61F347C9"
|
|
150
|
-
},
|
|
151
|
-
"DAI": {
|
|
152
|
-
"gTokenOpenPnlFeed": "0xFcF76e2620eB6C32786e32620187A0FbF2844d68",
|
|
153
|
-
"gToken": "0x47CA7Fa22086CD63DBa92Dce23a75aEA9227a9DC"
|
|
154
|
-
},
|
|
155
|
-
"ETH": {
|
|
156
|
-
"gTokenOpenPnlFeed": "0x0000000000000000000000000000000000000000",
|
|
157
|
-
"gToken": "0x0000000000000000000000000000000000000000"
|
|
158
|
-
},
|
|
159
|
-
"USDC": {
|
|
160
|
-
"gTokenOpenPnlFeed": "0x0000000000000000000000000000000000000000",
|
|
161
|
-
"gToken": "0x0000000000000000000000000000000000000000"
|
|
162
|
-
},
|
|
163
|
-
"APE": {
|
|
164
|
-
"gTokenOpenPnlFeed": "0x0000000000000000000000000000000000000000",
|
|
165
|
-
"gToken": "0x0000000000000000000000000000000000000000"
|
|
166
|
-
},
|
|
167
|
-
"GNS": {
|
|
168
|
-
"gTokenOpenPnlFeed": "0x0000000000000000000000000000000000000000",
|
|
169
|
-
"gToken": "0x0000000000000000000000000000000000000000"
|
|
170
|
-
},
|
|
171
|
-
"BTCUSD": {
|
|
172
|
-
"gTokenOpenPnlFeed": "0x0000000000000000000000000000000000000000",
|
|
173
|
-
"gToken": "0x0000000000000000000000000000000000000000"
|
|
174
|
-
}
|
|
175
146
|
}
|
|
176
147
|
}
|