@gainsnetwork/sdk 1.4.2-rc2 → 1.4.2-rc4

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.
Files changed (94) hide show
  1. package/lib/constants.js +1 -0
  2. package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +1911 -0
  3. package/lib/contracts/types/generated/GFarmTradingStorageV5.js +2 -0
  4. package/lib/contracts/types/generated/GNSBorrowingFees.d.ts +1067 -0
  5. package/lib/contracts/types/generated/GNSBorrowingFees.js +2 -0
  6. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.d.ts +979 -0
  7. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.js +2 -0
  8. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.d.ts +1058 -0
  9. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.js +2 -0
  10. package/lib/contracts/types/generated/GNSNftRewardsV6.d.ts +533 -0
  11. package/lib/contracts/types/generated/GNSNftRewardsV6.js +2 -0
  12. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.d.ts +613 -0
  13. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.js +2 -0
  14. package/lib/contracts/types/generated/GNSPairInfosV6_1.d.ts +911 -0
  15. package/lib/contracts/types/generated/GNSPairInfosV6_1.js +2 -0
  16. package/lib/contracts/types/generated/GNSPairsStorageV6.d.ts +660 -0
  17. package/lib/contracts/types/generated/GNSPairsStorageV6.js +2 -0
  18. package/lib/contracts/types/generated/GNSTrading.d.ts +758 -0
  19. package/lib/contracts/types/generated/GNSTrading.js +2 -0
  20. package/lib/contracts/types/generated/GNSTradingCallbacks.d.ts +875 -0
  21. package/lib/contracts/types/generated/GNSTradingCallbacks.js +2 -0
  22. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.d.ts +806 -0
  23. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.js +2 -0
  24. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.d.ts +821 -0
  25. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.js +2 -0
  26. package/lib/contracts/types/generated/GNSTradingStorage.d.ts +1387 -0
  27. package/lib/contracts/types/generated/GNSTradingStorage.js +2 -0
  28. package/lib/contracts/types/generated/GTokenV6_3_2.d.ts +1838 -0
  29. package/lib/contracts/types/generated/GTokenV6_3_2.js +2 -0
  30. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +83 -0
  31. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +2691 -0
  32. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.d.ts +88 -0
  33. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.js +1654 -0
  34. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.d.ts +113 -0
  35. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.js +1742 -0
  36. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.d.ts +124 -0
  37. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.js +1784 -0
  38. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.d.ts +100 -0
  39. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.js +1116 -0
  40. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.d.ts +100 -0
  41. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.js +1003 -0
  42. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.d.ts +98 -0
  43. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.js +1485 -0
  44. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.d.ts +117 -0
  45. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.js +1265 -0
  46. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.d.ts +82 -0
  47. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.js +1273 -0
  48. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.d.ts +82 -0
  49. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.js +1326 -0
  50. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.d.ts +113 -0
  51. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.js +1428 -0
  52. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.d.ts +96 -0
  53. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.js +2241 -0
  54. package/lib/contracts/types/generated/factories/GNSTrading__factory.d.ts +95 -0
  55. package/lib/contracts/types/generated/factories/GNSTrading__factory.js +1071 -0
  56. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.d.ts +110 -0
  57. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.js +2682 -0
  58. package/lib/markets/oi/fetcher.d.ts +58 -0
  59. package/lib/markets/oi/fetcher.js +181 -0
  60. package/lib/markets/oi/validation.d.ts +80 -0
  61. package/lib/markets/oi/validation.js +172 -0
  62. package/lib/pricing/depthBands/converter.d.ts +65 -0
  63. package/lib/pricing/depthBands/converter.js +155 -0
  64. package/lib/pricing/depthBands/decoder.d.ts +32 -0
  65. package/lib/pricing/depthBands/decoder.js +109 -0
  66. package/lib/pricing/depthBands/encoder.d.ts +19 -0
  67. package/lib/pricing/depthBands/encoder.js +105 -0
  68. package/lib/pricing/depthBands/index.d.ts +8 -0
  69. package/lib/pricing/depthBands/index.js +26 -0
  70. package/lib/pricing/depthBands/types.d.ts +49 -0
  71. package/lib/pricing/depthBands/types.js +10 -0
  72. package/lib/pricing/depthBands/validator.d.ts +22 -0
  73. package/lib/pricing/depthBands/validator.js +113 -0
  74. package/lib/pricing/depthBands.d.ts +39 -0
  75. package/lib/pricing/depthBands.js +94 -0
  76. package/lib/pricing/index.d.ts +4 -0
  77. package/lib/pricing/index.js +20 -0
  78. package/lib/trade/effectiveLeverage/builder.d.ts +23 -0
  79. package/lib/trade/effectiveLeverage/builder.js +30 -0
  80. package/lib/trade/fees/holdingFees/index.d.ts +46 -0
  81. package/lib/trade/fees/holdingFees/index.js +105 -0
  82. package/lib/trade/fees/holdingFees/types.d.ts +23 -0
  83. package/lib/trade/fees/holdingFees/types.js +5 -0
  84. package/lib/trade/fees/trading/holdingFees.d.ts +28 -0
  85. package/lib/trade/fees/trading/holdingFees.js +66 -0
  86. package/lib/trade/fees/trading/holdingFeesStructured.d.ts +28 -0
  87. package/lib/trade/fees/trading/holdingFeesStructured.js +66 -0
  88. package/lib/trade/priceImpact/cumulVol/types.d.ts +11 -0
  89. package/lib/trade/priceImpact/cumulVol/types.js +2 -0
  90. package/package.json +1 -1
  91. package/lib/trade/liquidation.d.ts +0 -12
  92. package/lib/trade/liquidation.js +0 -55
  93. package/lib/trade/pnl.d.ts +0 -10
  94. package/lib/trade/pnl.js +0 -33
@@ -1,55 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLiqPnlThresholdP = exports.getLiquidationPrice = void 0;
4
- const fees_1 = require("./fees");
5
- const spread_1 = require("./spread");
6
- const types_1 = require("../contracts/types");
7
- const getLiquidationPrice = (trade, fee, initialAccFees, context) => {
8
- var _a, _b;
9
- const closingFee = (0, fees_1.getClosingFee)(trade.collateralAmount, trade.leverage, trade.pairIndex, fee, context.collateralPriceUsd);
10
- const borrowingFee = (0, fees_1.getBorrowingFee)(trade.collateralAmount * trade.leverage, trade.pairIndex, trade.long, initialAccFees, context);
11
- const liqThresholdP = (0, exports.getLiqPnlThresholdP)(context.liquidationParams, trade.leverage);
12
- let liqPriceDistance = (trade.openPrice *
13
- (trade.collateralAmount * liqThresholdP - (borrowingFee + closingFee))) /
14
- trade.collateralAmount /
15
- trade.leverage;
16
- if ((context === null || context === void 0 ? void 0 : context.contractsVersion) !== undefined &&
17
- context.contractsVersion >= types_1.ContractsVersion.V9_2 &&
18
- ((((_a = context === null || context === void 0 ? void 0 : context.liquidationParams) === null || _a === void 0 ? void 0 : _a.maxLiqSpreadP) !== undefined &&
19
- context.liquidationParams.maxLiqSpreadP > 0) ||
20
- (((_b = context === null || context === void 0 ? void 0 : context.userPriceImpact) === null || _b === void 0 ? void 0 : _b.fixedSpreadP) !== undefined &&
21
- context.userPriceImpact.fixedSpreadP > 0))) {
22
- const closingSpreadP = (0, spread_1.getSpreadP)(context.pairSpreadP, true, context.liquidationParams, context.userPriceImpact);
23
- liqPriceDistance -= trade.openPrice * closingSpreadP;
24
- }
25
- return trade.long
26
- ? Math.max(trade.openPrice - liqPriceDistance, 0)
27
- : Math.max(trade.openPrice + liqPriceDistance, 0);
28
- };
29
- exports.getLiquidationPrice = getLiquidationPrice;
30
- const getLiqPnlThresholdP = (liquidationParams, leverage) => {
31
- if (liquidationParams === undefined ||
32
- leverage === undefined ||
33
- liquidationParams.maxLiqSpreadP === 0 ||
34
- liquidationParams.startLiqThresholdP === 0 ||
35
- liquidationParams.endLiqThresholdP === 0 ||
36
- liquidationParams.startLeverage === 0 ||
37
- liquidationParams.endLeverage === 0) {
38
- return 0.9;
39
- }
40
- if (leverage < liquidationParams.startLeverage) {
41
- return liquidationParams.startLiqThresholdP;
42
- }
43
- if (leverage > liquidationParams.endLeverage) {
44
- return liquidationParams.endLiqThresholdP;
45
- }
46
- if (liquidationParams.startLiqThresholdP === liquidationParams.endLiqThresholdP) {
47
- return liquidationParams.endLiqThresholdP;
48
- }
49
- return (liquidationParams.startLiqThresholdP -
50
- ((leverage - liquidationParams.startLeverage) *
51
- (liquidationParams.startLiqThresholdP -
52
- liquidationParams.endLiqThresholdP)) /
53
- (liquidationParams.endLeverage - liquidationParams.startLeverage));
54
- };
55
- exports.getLiqPnlThresholdP = getLiqPnlThresholdP;
@@ -1,10 +0,0 @@
1
- import { GetBorrowingFeeContext } from "./fees";
2
- import { Fee, LiquidationParams, Trade, TradeInfo, TradeInitialAccFees } from "./types";
3
- import { ContractsVersion } from "../contracts/types";
4
- export type GetPnlContext = GetBorrowingFeeContext & {
5
- fee: Fee | undefined;
6
- collateralPriceUsd: number | undefined;
7
- contractsVersion: ContractsVersion | undefined;
8
- feeMultiplier: number | undefined;
9
- };
10
- export declare const getPnl: (price: number | undefined, trade: Trade, tradeInfo: TradeInfo, initialAccFees: TradeInitialAccFees, liquidationParams: LiquidationParams, useFees: boolean, context: GetPnlContext) => number[] | undefined;
package/lib/trade/pnl.js DELETED
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPnl = void 0;
4
- const fees_1 = require("./fees");
5
- const liquidation_1 = require("./liquidation");
6
- const getPnl = (price, trade, tradeInfo, initialAccFees, liquidationParams, useFees, context) => {
7
- if (!price) {
8
- return;
9
- }
10
- const posCollat = trade.collateralAmount;
11
- const { openPrice, leverage } = trade;
12
- const { fee } = context;
13
- let pnlCollat = trade.long
14
- ? ((price - openPrice) / openPrice) * leverage * posCollat
15
- : ((openPrice - price) / openPrice) * leverage * posCollat;
16
- if (useFees) {
17
- pnlCollat -= (0, fees_1.getBorrowingFee)(posCollat * trade.leverage, trade.pairIndex, trade.long, initialAccFees, context);
18
- }
19
- let pnlPercentage = (pnlCollat / posCollat) * 100;
20
- // Can be liquidated
21
- if (pnlPercentage <=
22
- (0, liquidation_1.getLiqPnlThresholdP)(liquidationParams, leverage) * -100) {
23
- pnlPercentage = -100;
24
- }
25
- else {
26
- pnlCollat -= (0, fees_1.getClosingFee)(posCollat, trade.leverage, trade.pairIndex, fee, context.collateralPriceUsd, context.feeMultiplier);
27
- pnlPercentage = (pnlCollat / posCollat) * 100;
28
- }
29
- pnlPercentage = pnlPercentage < -100 ? -100 : pnlPercentage;
30
- pnlCollat = (posCollat * pnlPercentage) / 100;
31
- return [pnlCollat, pnlPercentage];
32
- };
33
- exports.getPnl = getPnl;