@gainsnetwork/sdk 1.4.0-rc1 → 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/globalTrades/index.js +10 -10
- package/lib/backend/tradingVariables/converter.js +57 -57
- package/lib/backend/tradingVariables/index.js +6 -7
- package/lib/constants.js +2 -2
- package/lib/contracts/addresses.js +4 -1
- package/lib/contracts/index.d.ts +1 -1
- package/lib/contracts/index.js +3 -3
- package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +1911 -0
- package/lib/contracts/types/generated/GFarmTradingStorageV5.js +2 -0
- package/lib/contracts/types/generated/GNSBorrowingFees.d.ts +1067 -0
- package/lib/contracts/types/generated/GNSBorrowingFees.js +2 -0
- package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.d.ts +979 -0
- package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.js +2 -0
- package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.d.ts +1058 -0
- package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.js +2 -0
- package/lib/contracts/types/generated/GNSMultiCollatDiamond.d.ts +386 -260
- package/lib/contracts/types/generated/GNSNftRewardsV6.d.ts +533 -0
- package/lib/contracts/types/generated/GNSNftRewardsV6.js +2 -0
- package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.d.ts +613 -0
- package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.js +2 -0
- package/lib/contracts/types/generated/GNSPairInfosV6_1.d.ts +911 -0
- package/lib/contracts/types/generated/GNSPairInfosV6_1.js +2 -0
- package/lib/contracts/types/generated/GNSPairsStorageV6.d.ts +660 -0
- package/lib/contracts/types/generated/GNSPairsStorageV6.js +2 -0
- package/lib/contracts/types/generated/GNSTrading.d.ts +758 -0
- package/lib/contracts/types/generated/GNSTrading.js +2 -0
- package/lib/contracts/types/generated/GNSTradingCallbacks.d.ts +875 -0
- package/lib/contracts/types/generated/GNSTradingCallbacks.js +2 -0
- package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.d.ts +806 -0
- package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.js +2 -0
- package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.d.ts +821 -0
- package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.js +2 -0
- package/lib/contracts/types/generated/GNSTradingStorage.d.ts +1387 -0
- package/lib/contracts/types/generated/GNSTradingStorage.js +2 -0
- package/lib/contracts/types/generated/GTokenV6_3_2.d.ts +1838 -0
- package/lib/contracts/types/generated/GTokenV6_3_2.js +2 -0
- package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +83 -0
- package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +2691 -0
- package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.d.ts +88 -0
- package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.js +1654 -0
- package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.d.ts +113 -0
- package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.js +1742 -0
- package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.d.ts +124 -0
- package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.js +1784 -0
- package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.d.ts +2 -10
- package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.js +1621 -219
- package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.d.ts +100 -0
- package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.js +1116 -0
- package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.d.ts +100 -0
- package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.js +1003 -0
- package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.d.ts +98 -0
- package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.js +1485 -0
- package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.d.ts +117 -0
- package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.js +1265 -0
- package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.d.ts +82 -0
- package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.js +1273 -0
- package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.d.ts +82 -0
- package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.js +1326 -0
- package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.d.ts +113 -0
- package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.js +1428 -0
- package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.d.ts +96 -0
- package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.js +2241 -0
- package/lib/contracts/types/generated/factories/GNSTrading__factory.d.ts +95 -0
- package/lib/contracts/types/generated/factories/GNSTrading__factory.js +1071 -0
- package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.d.ts +110 -0
- package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.js +2682 -0
- package/lib/contracts/utils/borrowingFees.js +9 -20
- package/lib/contracts/utils/openTrades.js +11 -20
- package/lib/contracts/utils/pairs.js +12 -21
- package/lib/markets/forex.js +1 -1
- package/lib/markets/leverage/builder.js +2 -2
- package/lib/markets/oi/fetcher.d.ts +58 -0
- package/lib/markets/oi/fetcher.js +181 -0
- package/lib/markets/oi/validation.d.ts +80 -0
- package/lib/markets/oi/validation.js +172 -0
- package/lib/markets/price/index.d.ts +1 -0
- package/lib/markets/price/index.js +1 -0
- package/lib/markets/price/signedPrices.d.ts +36 -0
- package/lib/markets/price/signedPrices.js +181 -0
- package/lib/markets/price/types.d.ts +27 -0
- package/lib/pricing/depthBands/converter.d.ts +65 -0
- package/lib/pricing/depthBands/converter.js +155 -0
- package/lib/pricing/depthBands/decoder.d.ts +32 -0
- package/lib/pricing/depthBands/decoder.js +109 -0
- package/lib/pricing/depthBands/encoder.d.ts +19 -0
- package/lib/pricing/depthBands/encoder.js +105 -0
- package/lib/pricing/depthBands/index.d.ts +8 -0
- package/lib/pricing/depthBands/index.js +26 -0
- package/lib/pricing/depthBands/types.d.ts +49 -0
- package/lib/pricing/depthBands/types.js +10 -0
- package/lib/pricing/depthBands/validator.d.ts +22 -0
- package/lib/pricing/depthBands/validator.js +113 -0
- package/lib/pricing/depthBands.d.ts +39 -0
- package/lib/pricing/depthBands.js +94 -0
- package/lib/pricing/index.d.ts +4 -0
- package/lib/pricing/index.js +20 -0
- package/lib/trade/effectiveLeverage/builder.d.ts +23 -0
- package/lib/trade/effectiveLeverage/builder.js +30 -0
- package/lib/trade/fees/borrowing/builder.js +2 -3
- package/lib/trade/fees/borrowing/converter.js +5 -1
- package/lib/trade/fees/borrowing/index.js +5 -5
- package/lib/trade/fees/borrowingV2/builder.js +3 -4
- package/lib/trade/fees/borrowingV2/converter.js +1 -1
- package/lib/trade/fees/borrowingV2/fetcher.js +26 -32
- package/lib/trade/fees/borrowingV2/index.js +3 -3
- package/lib/trade/fees/converter.js +22 -22
- package/lib/trade/fees/fundingFees/builder.js +6 -7
- package/lib/trade/fees/fundingFees/converter.js +1 -1
- package/lib/trade/fees/fundingFees/fetcher.js +16 -25
- package/lib/trade/fees/fundingFees/index.js +2 -3
- package/lib/trade/fees/holdingFees/index.d.ts +46 -0
- package/lib/trade/fees/holdingFees/index.js +105 -0
- package/lib/trade/fees/holdingFees/types.d.ts +23 -0
- package/lib/trade/fees/holdingFees/types.js +5 -0
- package/lib/trade/fees/tiers/index.js +1 -2
- package/lib/trade/fees/trading/holdingFees.d.ts +28 -0
- package/lib/trade/fees/trading/holdingFees.js +66 -0
- package/lib/trade/fees/trading/holdingFeesStructured.d.ts +28 -0
- package/lib/trade/fees/trading/holdingFeesStructured.js +66 -0
- package/lib/trade/fees/trading/index.js +5 -3
- package/lib/trade/liquidation/builder.js +1 -2
- package/lib/trade/liquidation/index.js +4 -6
- package/lib/trade/oiWindows.js +1 -2
- package/lib/trade/pnl/builder.js +1 -2
- package/lib/trade/pnl/converter.js +1 -1
- package/lib/trade/pnl/index.js +4 -7
- package/lib/trade/priceImpact/close/builder.js +1 -2
- package/lib/trade/priceImpact/close/index.js +4 -1
- package/lib/trade/priceImpact/cumulVol/builder.js +18 -10
- package/lib/trade/priceImpact/cumulVol/index.js +21 -16
- package/lib/trade/priceImpact/cumulVol/types.d.ts +11 -0
- package/lib/trade/priceImpact/cumulVol/types.js +2 -0
- package/lib/trade/priceImpact/open/builder.js +1 -2
- package/lib/trade/priceImpact/open/index.js +4 -1
- package/lib/trade/priceImpact/skew/builder.js +2 -3
- package/lib/trade/priceImpact/skew/converter.js +1 -1
- package/lib/trade/priceImpact/skew/fetcher.js +24 -33
- package/package.json +2 -2
- package/lib/trade/liquidation.d.ts +0 -12
- package/lib/trade/liquidation.js +0 -55
- package/lib/trade/pnl.d.ts +0 -10
- package/lib/trade/pnl.js +0 -33
|
@@ -25,11 +25,11 @@ const transformGlobalTrades = (rawTrades, pairs, currentAddress, collaterals) =>
|
|
|
25
25
|
_allLimitOrders.set(t.trade.user, new Map());
|
|
26
26
|
}
|
|
27
27
|
const traderMap_all = _allLimitOrders.get(t.trade.user);
|
|
28
|
-
if (
|
|
29
|
-
traderMap_all
|
|
28
|
+
if (traderMap_all?.get(t.trade.pairIndex) === undefined) {
|
|
29
|
+
traderMap_all?.set(t.trade.pairIndex, new Map());
|
|
30
30
|
}
|
|
31
|
-
const traderPairMap_all = traderMap_all
|
|
32
|
-
traderPairMap_all
|
|
31
|
+
const traderPairMap_all = traderMap_all?.get(t.trade.pairIndex);
|
|
32
|
+
traderPairMap_all?.set(t.trade.index, t);
|
|
33
33
|
if (t.trade.user.toUpperCase() !== currentAddress.toUpperCase()) {
|
|
34
34
|
continue;
|
|
35
35
|
}
|
|
@@ -37,7 +37,7 @@ const transformGlobalTrades = (rawTrades, pairs, currentAddress, collaterals) =>
|
|
|
37
37
|
_limitOrders.set(t.trade.pairIndex, new Map());
|
|
38
38
|
}
|
|
39
39
|
const traderPairMap = _limitOrders.get(t.trade.pairIndex);
|
|
40
|
-
traderPairMap
|
|
40
|
+
traderPairMap?.set(t.trade.index, t);
|
|
41
41
|
}
|
|
42
42
|
else {
|
|
43
43
|
const t = r[s];
|
|
@@ -45,11 +45,11 @@ const transformGlobalTrades = (rawTrades, pairs, currentAddress, collaterals) =>
|
|
|
45
45
|
_allTrades.set(t.trade.user, new Map());
|
|
46
46
|
}
|
|
47
47
|
const traderMap_all = _allTrades.get(t.trade.user);
|
|
48
|
-
if (
|
|
49
|
-
traderMap_all
|
|
48
|
+
if (traderMap_all?.get(t.trade.pairIndex) === undefined) {
|
|
49
|
+
traderMap_all?.set(t.trade.pairIndex, new Map());
|
|
50
50
|
}
|
|
51
|
-
const traderPairMap_all = traderMap_all
|
|
52
|
-
traderPairMap_all
|
|
51
|
+
const traderPairMap_all = traderMap_all?.get(t.trade.pairIndex);
|
|
52
|
+
traderPairMap_all?.set(t.trade.index, t);
|
|
53
53
|
if (t.trade.user.toUpperCase() !== currentAddress.toUpperCase()) {
|
|
54
54
|
continue;
|
|
55
55
|
}
|
|
@@ -57,7 +57,7 @@ const transformGlobalTrades = (rawTrades, pairs, currentAddress, collaterals) =>
|
|
|
57
57
|
_trades.set(t.trade.pairIndex, new Map());
|
|
58
58
|
}
|
|
59
59
|
const traderPairMap = _trades.get(t.trade.pairIndex);
|
|
60
|
-
traderPairMap
|
|
60
|
+
traderPairMap?.set(t.trade.index, t);
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
returnObject.trades = _trades;
|
|
@@ -4,38 +4,40 @@ exports.convertLiquidationParams = exports.convertPairName = exports.convertFeeP
|
|
|
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 convertFees = (fees) => fees
|
|
7
|
+
const convertFees = (fees) => fees?.map(fee => convertFee(fee));
|
|
8
8
|
exports.convertFees = convertFees;
|
|
9
|
-
const convertCollateral = (collateral) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
|
|
9
|
+
const convertCollateral = (collateral) => ({
|
|
10
|
+
pairBorrowingFees: collateral.borrowingFees?.v1 !== undefined
|
|
11
|
+
? (0, exports.convertPairBorrowingFees)(collateral.borrowingFees.v1)
|
|
12
|
+
: [],
|
|
13
|
+
groupBorrowingFees: collateral.borrowingFees?.v1 !== undefined
|
|
14
|
+
? (0, exports.convertGroupBorrowingFees)(collateral.borrowingFees.v1)
|
|
15
|
+
: [],
|
|
16
|
+
collateral: collateral.collateral,
|
|
17
|
+
collateralConfig: (0, exports.convertCollateralConfig)(collateral),
|
|
18
|
+
collateralIndex: collateral.collateralIndex,
|
|
19
|
+
gToken: collateral.gToken,
|
|
20
|
+
isActive: true,
|
|
21
|
+
prices: collateral.prices,
|
|
22
|
+
symbol: collateral.symbol,
|
|
23
|
+
pairBorrowingFeesV2: {
|
|
24
|
+
params: (0, __1.convertBorrowingFeeParamsArrayV2)(collateral.borrowingFees?.v2
|
|
25
|
+
?.pairParams),
|
|
26
|
+
data: (0, __1.convertPairBorrowingFeeDataArrayV2)(collateral.borrowingFees?.v2
|
|
27
|
+
?.pairData),
|
|
28
|
+
},
|
|
29
|
+
pairFundingFees: {
|
|
30
|
+
globalParams: (0, __1.convertPairGlobalParamsArray)(collateral.fundingFees
|
|
31
|
+
?.pairGlobalParams),
|
|
32
|
+
params: (0, __1.convertFundingFeeParamsArray)(collateral.fundingFees
|
|
33
|
+
?.pairParams),
|
|
34
|
+
data: (0, __1.convertPairFundingFeeDataArray)(collateral.fundingFees
|
|
35
|
+
?.pairData),
|
|
36
|
+
},
|
|
37
|
+
pairOis: (0, __1.convertPairOiArray)(collateral.pairOis, parseInt(collateral.collateralConfig.precision)),
|
|
38
|
+
pairSkewDepths: (0, exports.convertPairSkewDepths)(collateral.pairSkewDepths),
|
|
39
|
+
});
|
|
40
|
+
const convertCollaterals = (collaterals) => collaterals?.map(collateral => convertCollateral(collateral));
|
|
39
41
|
exports.convertCollaterals = convertCollaterals;
|
|
40
42
|
const convertFee = (fee) => ({
|
|
41
43
|
totalPositionSizeFeeP: parseFloat(fee.totalPositionSizeFeeP) / 1e12,
|
|
@@ -43,14 +45,14 @@ const convertFee = (fee) => ({
|
|
|
43
45
|
oraclePositionSizeFeeP: parseFloat(fee.oraclePositionSizeFeeP) / 1e12,
|
|
44
46
|
minPositionSizeUsd: parseFloat(fee.minPositionSizeUsd) / 1e3,
|
|
45
47
|
});
|
|
46
|
-
const convertOpenInterests = (interests) => interests
|
|
48
|
+
const convertOpenInterests = (interests) => interests?.map(interest => convertOpenInterest(interest));
|
|
47
49
|
exports.convertOpenInterests = convertOpenInterests;
|
|
48
50
|
const convertOpenInterest = (interest) => ({
|
|
49
51
|
long: parseFloat(interest.beforeV10.long) / 1e10,
|
|
50
52
|
short: parseFloat(interest.beforeV10.short) / 1e10,
|
|
51
53
|
max: parseFloat(interest.beforeV10.max) / 1e10,
|
|
52
54
|
});
|
|
53
|
-
const convertPairDepths = (pairDepths) => pairDepths
|
|
55
|
+
const convertPairDepths = (pairDepths) => pairDepths?.map(pairDepth => convertPairDepth(pairDepth));
|
|
54
56
|
exports.convertPairDepths = convertPairDepths;
|
|
55
57
|
const convertPairDepth = (pairDepth) => ({
|
|
56
58
|
onePercentDepthAboveUsd: parseInt(pairDepth.onePercentDepthAboveUsd),
|
|
@@ -62,7 +64,7 @@ const convertPairSkewDepths = (pairSkewDepths) => {
|
|
|
62
64
|
return (0, converter_1.convertPairSkewDepths)(pairSkewDepths);
|
|
63
65
|
};
|
|
64
66
|
exports.convertPairSkewDepths = convertPairSkewDepths;
|
|
65
|
-
const convertPairBorrowingFees = (pairParams) => pairParams
|
|
67
|
+
const convertPairBorrowingFees = (pairParams) => pairParams?.pairs.map(pairParam => convertPairBorrowingFee(pairParam));
|
|
66
68
|
exports.convertPairBorrowingFees = convertPairBorrowingFees;
|
|
67
69
|
const convertPairGroupBorrowingFee = (pairParam) => ({
|
|
68
70
|
groupIndex: parseInt(pairParam.groupIndex),
|
|
@@ -86,9 +88,9 @@ const convertPairBorrowingFee = (pairParams) => ({
|
|
|
86
88
|
short: parseFloat(pairParams.oi.beforeV10.short) / 1e10 || 0,
|
|
87
89
|
},
|
|
88
90
|
feeExponent: parseInt(pairParams.feeExponent) || 0,
|
|
89
|
-
feePerBlockCap: (0, exports.convertFeePerBlockCap)(pairParams
|
|
91
|
+
feePerBlockCap: (0, exports.convertFeePerBlockCap)(pairParams?.feePerBlockCap),
|
|
90
92
|
});
|
|
91
|
-
const convertGroupBorrowingFees = (pairParams) => pairParams
|
|
93
|
+
const convertGroupBorrowingFees = (pairParams) => pairParams?.groups.map(pairParam => convertGroupBorrowingFee(pairParam));
|
|
92
94
|
exports.convertGroupBorrowingFees = convertGroupBorrowingFees;
|
|
93
95
|
const convertGroupBorrowingFee = (pairParams) => ({
|
|
94
96
|
oi: {
|
|
@@ -102,14 +104,16 @@ const convertGroupBorrowingFee = (pairParams) => ({
|
|
|
102
104
|
accLastUpdatedBlock: parseInt(pairParams.accLastUpdatedBlock),
|
|
103
105
|
feeExponent: parseInt(pairParams.feeExponent) || 0,
|
|
104
106
|
});
|
|
105
|
-
const convertTradingGroups = (groups) => groups
|
|
107
|
+
const convertTradingGroups = (groups) => groups?.map(group => convertTradingGroup(group));
|
|
106
108
|
exports.convertTradingGroups = convertTradingGroups;
|
|
107
109
|
const convertTradingGroup = (group) => ({
|
|
108
110
|
maxLeverage: parseFloat(group.maxLeverage) / 1e3,
|
|
109
111
|
minLeverage: parseFloat(group.minLeverage) / 1e3,
|
|
110
112
|
name: group.name,
|
|
111
113
|
});
|
|
112
|
-
const convertTradingPairs = (pairs) => pairs
|
|
114
|
+
const convertTradingPairs = (pairs) => pairs
|
|
115
|
+
?.filter(pair => pair.from !== "")
|
|
116
|
+
.map((pair, index) => convertTradingPair(pair, index));
|
|
113
117
|
exports.convertTradingPairs = convertTradingPairs;
|
|
114
118
|
const convertTradingPair = (pair, index) => ({
|
|
115
119
|
name: (0, exports.convertPairName)(pair),
|
|
@@ -121,7 +125,7 @@ const convertTradingPair = (pair, index) => ({
|
|
|
121
125
|
groupIndex: parseInt(pair.groupIndex),
|
|
122
126
|
spreadP: parseFloat(pair.spreadP) / 1e10,
|
|
123
127
|
});
|
|
124
|
-
const convertTradesAndLimitOrders = (allItems, collaterals) => allItems
|
|
128
|
+
const convertTradesAndLimitOrders = (allItems, collaterals) => allItems?.map(item => {
|
|
125
129
|
return (0, exports.convertTradeContainer)(item, collaterals);
|
|
126
130
|
});
|
|
127
131
|
exports.convertTradesAndLimitOrders = convertTradesAndLimitOrders;
|
|
@@ -167,11 +171,10 @@ const convertPairFactor = (pairFactor) => ({
|
|
|
167
171
|
});
|
|
168
172
|
exports.convertPairFactor = convertPairFactor;
|
|
169
173
|
const convertTrade = (trade, collaterals) => {
|
|
170
|
-
var _a;
|
|
171
174
|
const { long, user } = trade;
|
|
172
175
|
const collateralIndex = parseInt(trade.collateralIndex);
|
|
173
176
|
const collateral = collaterals[collateralIndex - 1];
|
|
174
|
-
const decimals =
|
|
177
|
+
const decimals = collateral?.collateralConfig?.decimals || 18;
|
|
175
178
|
return {
|
|
176
179
|
user,
|
|
177
180
|
index: parseInt(trade.index),
|
|
@@ -181,7 +184,7 @@ const convertTrade = (trade, collaterals) => {
|
|
|
181
184
|
isOpen: trade.isOpen,
|
|
182
185
|
collateralIndex,
|
|
183
186
|
tradeType: parseInt(trade.tradeType),
|
|
184
|
-
collateralAmount: parseFloat(trade.collateralAmount) /
|
|
187
|
+
collateralAmount: parseFloat(trade.collateralAmount) / 10 ** decimals,
|
|
185
188
|
openPrice: parseFloat(trade.openPrice) / 1e10,
|
|
186
189
|
sl: parseFloat(trade.sl) / 1e10,
|
|
187
190
|
tp: parseFloat(trade.tp) / 1e10,
|
|
@@ -265,7 +268,7 @@ const convertPairOi = (collateral) => ({
|
|
|
265
268
|
});
|
|
266
269
|
exports.convertPairOi = convertPairOi;
|
|
267
270
|
const convertOiWindows = (oiWindows) => {
|
|
268
|
-
return oiWindows
|
|
271
|
+
return oiWindows?.map(pairWindows => {
|
|
269
272
|
const converted = {};
|
|
270
273
|
for (const [key, oiWindow] of Object.entries(pairWindows)) {
|
|
271
274
|
converted[key] = (0, exports.convertPairOi)(oiWindow);
|
|
@@ -288,17 +291,14 @@ const convertCollateralConfig = (collateral) => ({
|
|
|
288
291
|
decimals: collateral.collateralConfig.decimals,
|
|
289
292
|
});
|
|
290
293
|
exports.convertCollateralConfig = convertCollateralConfig;
|
|
291
|
-
const convertFeeTiers = (feeTiersBackend) => {
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
currentDay: (feeTiersBackend === null || feeTiersBackend === void 0 ? void 0 : feeTiersBackend.currentDay) || 0,
|
|
300
|
-
});
|
|
301
|
-
};
|
|
294
|
+
const convertFeeTiers = (feeTiersBackend) => ({
|
|
295
|
+
tiers: feeTiersBackend?.tiers.map(tier => ({
|
|
296
|
+
feeMultiplier: Number(tier.feeMultiplier) / 1e3,
|
|
297
|
+
pointsThreshold: parseFloat(tier.pointsThreshold),
|
|
298
|
+
})),
|
|
299
|
+
multipliers: feeTiersBackend?.multipliers?.map(mult => parseFloat(mult) / 1e3) || [],
|
|
300
|
+
currentDay: feeTiersBackend?.currentDay || 0,
|
|
301
|
+
});
|
|
302
302
|
exports.convertFeeTiers = convertFeeTiers;
|
|
303
303
|
const convertTraderFeeTiers = (traderFeeTiers) => ({
|
|
304
304
|
traderEnrollment: {
|
|
@@ -323,11 +323,11 @@ const convertGlobalTradeFeeParams = (fee) => ({
|
|
|
323
323
|
gTokenFeeP: parseFloat(fee.gTokenFeeP) / 1e5,
|
|
324
324
|
});
|
|
325
325
|
exports.convertGlobalTradeFeeParams = convertGlobalTradeFeeParams;
|
|
326
|
-
const convertMaxLeverages = (maxLeverages) => maxLeverages
|
|
326
|
+
const convertMaxLeverages = (maxLeverages) => maxLeverages?.map(maxLeverage => parseFloat(maxLeverage) / 1e3);
|
|
327
327
|
exports.convertMaxLeverages = convertMaxLeverages;
|
|
328
328
|
const convertFeePerBlockCap = (feeCap) => ({
|
|
329
|
-
minP:
|
|
330
|
-
maxP:
|
|
329
|
+
minP: feeCap?.minP ? parseFloat(feeCap.minP.toString()) / 1e3 / 100 : 0,
|
|
330
|
+
maxP: feeCap?.maxP ? parseFloat(feeCap.maxP.toString()) / 1e3 / 100 : 1,
|
|
331
331
|
});
|
|
332
332
|
exports.convertFeePerBlockCap = convertFeePerBlockCap;
|
|
333
333
|
const convertPairName = (pair) => {
|
|
@@ -18,7 +18,6 @@ exports.transformGlobalTradingVariables = void 0;
|
|
|
18
18
|
const converter_1 = require("./converter");
|
|
19
19
|
const trade_1 = require("../../trade");
|
|
20
20
|
const transformGlobalTradingVariables = (rawData) => {
|
|
21
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
22
21
|
const globalTradingVariables = {
|
|
23
22
|
collaterals: (0, converter_1.convertCollaterals)(rawData.collaterals),
|
|
24
23
|
pairs: (0, converter_1.convertTradingPairs)(rawData.pairs),
|
|
@@ -31,10 +30,10 @@ const transformGlobalTradingVariables = (rawData) => {
|
|
|
31
30
|
stocksClosed: !rawData.isStocksOpen,
|
|
32
31
|
indicesClosed: !rawData.isIndicesOpen,
|
|
33
32
|
commoditiesClosed: !rawData.isCommoditiesOpen,
|
|
34
|
-
pairDepths:
|
|
33
|
+
pairDepths: rawData.pairInfos?.pairDepths !== undefined
|
|
35
34
|
? (0, converter_1.convertPairDepths)(rawData.pairInfos.pairDepths)
|
|
36
35
|
: [],
|
|
37
|
-
pairMaxLeverages:
|
|
36
|
+
pairMaxLeverages: rawData.pairInfos?.maxLeverages !== undefined
|
|
38
37
|
? (0, converter_1.convertMaxLeverages)(rawData.pairInfos.maxLeverages)
|
|
39
38
|
: [],
|
|
40
39
|
maxNegativePnlOnOpenP: (rawData.maxNegativePnlOnOpenP && rawData.maxNegativePnlOnOpenP / 1e10) ||
|
|
@@ -47,11 +46,11 @@ const transformGlobalTradingVariables = (rawData) => {
|
|
|
47
46
|
: [],
|
|
48
47
|
feeTiers: (0, converter_1.convertFeeTiers)(rawData.feeTiers),
|
|
49
48
|
liquidationParams: {
|
|
50
|
-
groups:
|
|
51
|
-
pairs:
|
|
49
|
+
groups: rawData.liquidationParams?.groups?.map(liqParams => (0, trade_1.convertLiquidationParams)(liqParams)) || [],
|
|
50
|
+
pairs: rawData.liquidationParams?.pairs?.map(liqParams => (0, trade_1.convertLiquidationParams)(liqParams)) || [],
|
|
52
51
|
},
|
|
53
52
|
counterTradeSettings: (0, trade_1.convertCounterTradeSettingsArray)(rawData.counterTradeSettings),
|
|
54
|
-
pairFactors:
|
|
53
|
+
pairFactors: rawData.pairInfos?.pairFactors?.map(factor => (0, converter_1.convertPairFactor)(factor)) || [],
|
|
55
54
|
globalTradeFeeParams: rawData.globalTradeFeeParams
|
|
56
55
|
? (0, converter_1.convertGlobalTradeFeeParams)(rawData.globalTradeFeeParams)
|
|
57
56
|
: undefined,
|
|
@@ -60,7 +59,7 @@ const transformGlobalTradingVariables = (rawData) => {
|
|
|
60
59
|
const currentBlock = (rawData.currentBlock > -1 && rawData.currentBlock) || undefined;
|
|
61
60
|
const l1BlockNumber = (rawData.currentL1Block > -1 && rawData.currentL1Block) || undefined;
|
|
62
61
|
const pairIndexes = {};
|
|
63
|
-
for (let i = 0; i <
|
|
62
|
+
for (let i = 0; i < rawData.pairs?.length; i++) {
|
|
64
63
|
pairIndexes[rawData.pairs[i].from + "/" + rawData.pairs[i].to] = i;
|
|
65
64
|
}
|
|
66
65
|
if (globalTradingVariables.collaterals !== undefined) {
|
package/lib/constants.js
CHANGED
|
@@ -477,8 +477,8 @@ exports.delistedPairIxs = new Set([
|
|
|
477
477
|
99, 101, 106, 111, 113, 114, 116, 118, 120, 122, 123, 125, 127, 130, 147, 152,
|
|
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
|
-
294, 296, 305, 311, 330, 349, 352, 353, 354, 355, 357, 365, 366, 395, 396,
|
|
481
|
-
415, 416, 417,
|
|
480
|
+
294, 296, 305, 311, 330, 349, 352, 353, 354, 355, 357, 365, 366, 395, 396,
|
|
481
|
+
414, 415, 416, 417,
|
|
482
482
|
]);
|
|
483
483
|
exports.delistedGroupsIxs = new Set([]);
|
|
484
484
|
exports.DEFAULT_PROTECTION_CLOSE_FACTOR = 1;
|
|
@@ -14,7 +14,10 @@ const getContractAddressesForChain = (chainId, collateral = types_1.CollateralTy
|
|
|
14
14
|
if (!_addresses[chainId][collateral]) {
|
|
15
15
|
throw new Error(`Unknown collateral (${collateral}) for chain id (${chainId}). No known contracts have been deployed for this collateral.`);
|
|
16
16
|
}
|
|
17
|
-
return
|
|
17
|
+
return {
|
|
18
|
+
..._addresses[chainId]["global"],
|
|
19
|
+
..._addresses[chainId][collateral],
|
|
20
|
+
};
|
|
18
21
|
};
|
|
19
22
|
exports.getContractAddressesForChain = getContractAddressesForChain;
|
|
20
23
|
const getCollateralByAddressForChain = (chainId, address) => {
|
package/lib/contracts/index.d.ts
CHANGED
|
@@ -11,4 +11,4 @@ export declare const COLLATERAL_TO_CHAIN_COLLATERAL_INDEX: Record<ChainId, Parti
|
|
|
11
11
|
export declare const COLLATERAL_TO_COLLATERAL_INDEX: Record<CollateralTypes, number>;
|
|
12
12
|
export * from "./utils";
|
|
13
13
|
export * from "./addresses";
|
|
14
|
-
export { CollateralTypes } from "./types";
|
|
14
|
+
export { CollateralTypes, ChainId } from "./types";
|
package/lib/contracts/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.CollateralTypes = exports.COLLATERAL_TO_COLLATERAL_INDEX = exports.COLLATERAL_TO_CHAIN_COLLATERAL_INDEX = exports.getCollateralIndexAndContractsForChainByRequester = exports.getContractsForChainByRequester = exports.getContractsForChain = void 0;
|
|
17
|
+
exports.ChainId = exports.CollateralTypes = exports.COLLATERAL_TO_COLLATERAL_INDEX = exports.COLLATERAL_TO_CHAIN_COLLATERAL_INDEX = exports.getCollateralIndexAndContractsForChainByRequester = exports.getContractsForChainByRequester = exports.getContractsForChain = void 0;
|
|
18
18
|
const addresses_1 = require("./addresses");
|
|
19
19
|
const factories_1 = require("./types/generated/factories");
|
|
20
20
|
const types_1 = require("./types");
|
|
@@ -34,11 +34,10 @@ const getContractsForChainByRequester = (chainId, requester, signerOrProvider) =
|
|
|
34
34
|
};
|
|
35
35
|
exports.getContractsForChainByRequester = getContractsForChainByRequester;
|
|
36
36
|
const getCollateralIndexAndContractsForChainByRequester = (chainId, requester, signerOrProvider) => {
|
|
37
|
-
var _a;
|
|
38
37
|
const collateral = (0, addresses_1.getCollateralByAddressForChain)(chainId, requester);
|
|
39
38
|
return {
|
|
40
39
|
contracts: (0, exports.getContractsForChain)(chainId, signerOrProvider, collateral),
|
|
41
|
-
collateralIndex:
|
|
40
|
+
collateralIndex: exports.COLLATERAL_TO_CHAIN_COLLATERAL_INDEX[chainId]?.[collateral] ||
|
|
42
41
|
0,
|
|
43
42
|
};
|
|
44
43
|
};
|
|
@@ -83,3 +82,4 @@ __exportStar(require("./utils"), exports);
|
|
|
83
82
|
__exportStar(require("./addresses"), exports);
|
|
84
83
|
var types_2 = require("./types");
|
|
85
84
|
Object.defineProperty(exports, "CollateralTypes", { enumerable: true, get: function () { return types_2.CollateralTypes; } });
|
|
85
|
+
Object.defineProperty(exports, "ChainId", { enumerable: true, get: function () { return types_2.ChainId; } });
|