@d8x/perpetuals-sdk 0.1.12 → 0.2.0

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 (165) hide show
  1. package/dist/cjs/abi/testnet/IPerpetualManager.json +5215 -0
  2. package/dist/cjs/abi/testnet/LimitOrderBook.json +1075 -0
  3. package/dist/cjs/abi/zkevmTestnet/IPerpetualManager.json +5215 -0
  4. package/dist/cjs/abi/zkevmTestnet/LimitOrderBook.json +1075 -0
  5. package/dist/cjs/abi/zkevmTestnet/LimitOrderBookFactory.json +135 -0
  6. package/dist/cjs/accountTrade.js +441 -0
  7. package/dist/cjs/accountTrade.js.map +1 -0
  8. package/dist/{src → cjs}/brokerTool.js +31 -84
  9. package/dist/cjs/brokerTool.js.map +1 -0
  10. package/dist/cjs/config/defaultConfig.json +47 -0
  11. package/dist/cjs/config/mockSwap.json +4 -0
  12. package/dist/cjs/config/priceFeedConfig.json +104 -0
  13. package/dist/cjs/config/symbolList.json +13 -0
  14. package/dist/cjs/d8XMath.js.map +1 -0
  15. package/dist/cjs/index.js +29 -0
  16. package/dist/cjs/index.js.map +1 -0
  17. package/dist/cjs/liquidatorTool.js +287 -0
  18. package/dist/cjs/liquidatorTool.js.map +1 -0
  19. package/dist/{src → cjs}/liquidityProviderTool.js +12 -65
  20. package/dist/cjs/liquidityProviderTool.js.map +1 -0
  21. package/dist/{src → cjs}/marketData.js +52 -134
  22. package/dist/cjs/marketData.js.map +1 -0
  23. package/dist/{src → cjs}/nodeSDKTypes.d.ts +5 -5
  24. package/dist/cjs/nodeSDKTypes.js +64 -0
  25. package/dist/cjs/nodeSDKTypes.js.map +1 -0
  26. package/dist/{src → cjs}/orderReferrerTool.d.ts +12 -5
  27. package/dist/{src → cjs}/orderReferrerTool.js +114 -112
  28. package/dist/cjs/orderReferrerTool.js.map +1 -0
  29. package/dist/{src → cjs}/perpetualDataHandler.d.ts +1 -1
  30. package/dist/{src → cjs}/perpetualDataHandler.js +47 -109
  31. package/dist/cjs/perpetualDataHandler.js.map +1 -0
  32. package/dist/{src → cjs}/perpetualEventHandler.d.ts +3 -3
  33. package/dist/{src → cjs}/perpetualEventHandler.js +12 -74
  34. package/dist/cjs/perpetualEventHandler.js.map +1 -0
  35. package/dist/cjs/priceFeeds.js +466 -0
  36. package/dist/cjs/priceFeeds.js.map +1 -0
  37. package/dist/{src → cjs}/traderDigests.js +7 -43
  38. package/dist/cjs/traderDigests.js.map +1 -0
  39. package/dist/{src → cjs}/traderInterface.js +13 -66
  40. package/dist/cjs/traderInterface.js.map +1 -0
  41. package/dist/{src → cjs}/triangulator.js +2 -17
  42. package/dist/cjs/triangulator.js.map +1 -0
  43. package/dist/{src → cjs}/utils.js +3 -29
  44. package/dist/cjs/utils.js.map +1 -0
  45. package/dist/cjs/version.d.ts +1 -0
  46. package/dist/{src → cjs}/version.js +1 -1
  47. package/dist/cjs/version.js.map +1 -0
  48. package/dist/{src → cjs}/writeAccessHandler.js +12 -65
  49. package/dist/cjs/writeAccessHandler.js.map +1 -0
  50. package/dist/esm/abi/ERC20.json +288 -0
  51. package/dist/esm/abi/MockTokenSwap.json +186 -0
  52. package/dist/{abi/testnet → esm/abi/central-park}/IPerpetualManager.json +404 -214
  53. package/dist/{abi/testnet → esm/abi/central-park}/LimitOrderBook.json +197 -15
  54. package/dist/esm/abi/central-park/LimitOrderBookFactory.json +135 -0
  55. package/dist/esm/abi/testnet/IPerpetualManager.json +5215 -0
  56. package/dist/esm/abi/testnet/LimitOrderBook.json +1075 -0
  57. package/dist/esm/abi/testnet/LimitOrderBookFactory.json +135 -0
  58. package/dist/esm/abi/zkevmTestnet/IPerpetualManager.json +5215 -0
  59. package/dist/esm/abi/zkevmTestnet/LimitOrderBook.json +1075 -0
  60. package/dist/esm/abi/zkevmTestnet/LimitOrderBookFactory.json +135 -0
  61. package/dist/esm/accountTrade.d.ts +221 -0
  62. package/dist/{src → esm}/accountTrade.js +22 -93
  63. package/dist/esm/accountTrade.js.map +1 -0
  64. package/dist/esm/brokerTool.d.ts +318 -0
  65. package/dist/esm/brokerTool.js +572 -0
  66. package/dist/esm/brokerTool.js.map +1 -0
  67. package/dist/esm/config/defaultConfig.json +47 -0
  68. package/dist/esm/config/mockSwap.json +4 -0
  69. package/dist/esm/config/priceFeedConfig.json +104 -0
  70. package/dist/esm/config/symbolList.json +13 -0
  71. package/dist/esm/d8XMath.d.ts +122 -0
  72. package/dist/esm/d8XMath.js +247 -0
  73. package/dist/esm/d8XMath.js.map +1 -0
  74. package/{src/index.ts → dist/esm/index.d.ts} +1 -15
  75. package/dist/esm/index.js +16 -0
  76. package/dist/esm/index.js.map +1 -0
  77. package/dist/esm/liquidatorTool.d.ts +158 -0
  78. package/dist/{src → esm}/liquidatorTool.js +10 -65
  79. package/dist/esm/liquidatorTool.js.map +1 -0
  80. package/dist/esm/liquidityProviderTool.d.ts +126 -0
  81. package/dist/esm/liquidityProviderTool.js +218 -0
  82. package/dist/esm/liquidityProviderTool.js.map +1 -0
  83. package/dist/esm/marketData.d.ts +309 -0
  84. package/dist/esm/marketData.js +1007 -0
  85. package/dist/esm/marketData.js.map +1 -0
  86. package/dist/esm/nodeSDKTypes.d.ts +266 -0
  87. package/dist/esm/nodeSDKTypes.js +60 -0
  88. package/dist/esm/nodeSDKTypes.js.map +1 -0
  89. package/dist/esm/orderReferrerTool.d.ts +196 -0
  90. package/dist/esm/orderReferrerTool.js +491 -0
  91. package/dist/esm/orderReferrerTool.js.map +1 -0
  92. package/dist/esm/perpetualDataHandler.d.ts +220 -0
  93. package/dist/esm/perpetualDataHandler.js +1060 -0
  94. package/dist/esm/perpetualDataHandler.js.map +1 -0
  95. package/dist/esm/perpetualEventHandler.d.ts +179 -0
  96. package/dist/esm/perpetualEventHandler.js +435 -0
  97. package/dist/esm/perpetualEventHandler.js.map +1 -0
  98. package/dist/esm/priceFeeds.d.ts +115 -0
  99. package/dist/{src → esm}/priceFeeds.js +16 -83
  100. package/dist/esm/priceFeeds.js.map +1 -0
  101. package/dist/esm/traderDigests.d.ts +21 -0
  102. package/dist/esm/traderDigests.js +80 -0
  103. package/dist/esm/traderDigests.js.map +1 -0
  104. package/dist/esm/traderInterface.d.ts +79 -0
  105. package/dist/esm/traderInterface.js +196 -0
  106. package/dist/esm/traderInterface.js.map +1 -0
  107. package/dist/esm/triangulator.d.ts +27 -0
  108. package/dist/esm/triangulator.js +110 -0
  109. package/dist/esm/triangulator.js.map +1 -0
  110. package/dist/esm/utils.d.ts +59 -0
  111. package/dist/esm/utils.js +138 -0
  112. package/dist/esm/utils.js.map +1 -0
  113. package/dist/esm/version.d.ts +1 -0
  114. package/dist/esm/version.js +2 -0
  115. package/dist/esm/version.js.map +1 -0
  116. package/dist/esm/writeAccessHandler.d.ts +50 -0
  117. package/dist/esm/writeAccessHandler.js +157 -0
  118. package/dist/esm/writeAccessHandler.js.map +1 -0
  119. package/package.json +16 -26
  120. package/dist/bundle.js +0 -36793
  121. package/dist/config/defaultConfig.json +0 -47
  122. package/dist/config/mockSwap.json +0 -4
  123. package/dist/config/priceFeedConfig.json +0 -104
  124. package/dist/config/symbolList.json +0 -13
  125. package/dist/src/index.js +0 -45
  126. package/dist/src/nodeSDKTypes.js +0 -115
  127. package/dist/src/version.d.ts +0 -1
  128. package/module.d.ts +0 -1
  129. package/src/accountTrade.ts +0 -392
  130. package/src/brokerTool.ts +0 -507
  131. package/src/d8XMath.ts +0 -319
  132. package/src/liquidatorTool.ts +0 -258
  133. package/src/liquidityProviderTool.ts +0 -186
  134. package/src/marketData.ts +0 -946
  135. package/src/nodeSDKTypes.ts +0 -293
  136. package/src/orderReferrerTool.ts +0 -389
  137. package/src/perpetualDataHandler.ts +0 -1061
  138. package/src/perpetualEventHandler.ts +0 -455
  139. package/src/priceFeeds.ts +0 -381
  140. package/src/traderDigests.ts +0 -91
  141. package/src/traderInterface.ts +0 -159
  142. package/src/triangulator.ts +0 -105
  143. package/src/utils.ts +0 -134
  144. package/src/version.ts +0 -1
  145. package/src/writeAccessHandler.ts +0 -127
  146. /package/dist/{abi → cjs/abi}/ERC20.json +0 -0
  147. /package/dist/{abi → cjs/abi}/MockTokenSwap.json +0 -0
  148. /package/dist/{abi → cjs/abi}/central-park/IPerpetualManager.json +0 -0
  149. /package/dist/{abi → cjs/abi}/central-park/LimitOrderBook.json +0 -0
  150. /package/dist/{abi → cjs/abi}/central-park/LimitOrderBookFactory.json +0 -0
  151. /package/dist/{abi → cjs/abi}/testnet/LimitOrderBookFactory.json +0 -0
  152. /package/dist/{src → cjs}/accountTrade.d.ts +0 -0
  153. /package/dist/{src → cjs}/brokerTool.d.ts +0 -0
  154. /package/dist/{src → cjs}/d8XMath.d.ts +0 -0
  155. /package/dist/{src → cjs}/d8XMath.js +0 -0
  156. /package/dist/{src → cjs}/index.d.ts +0 -0
  157. /package/dist/{src → cjs}/liquidatorTool.d.ts +0 -0
  158. /package/dist/{src → cjs}/liquidityProviderTool.d.ts +0 -0
  159. /package/dist/{src → cjs}/marketData.d.ts +0 -0
  160. /package/dist/{src → cjs}/priceFeeds.d.ts +0 -0
  161. /package/dist/{src → cjs}/traderDigests.d.ts +0 -0
  162. /package/dist/{src → cjs}/traderInterface.d.ts +0 -0
  163. /package/dist/{src → cjs}/triangulator.d.ts +0 -0
  164. /package/dist/{src → cjs}/utils.d.ts +0 -0
  165. /package/dist/{src → cjs}/writeAccessHandler.d.ts +0 -0
@@ -1,91 +1,11 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
- function verb(n) { return function (v) { return step([n, v]); }; }
30
- function step(op) {
31
- if (f) throw new TypeError("Generator is already executing.");
32
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
33
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
34
- if (y = 0, t) op = [op[0] & 2, t.value];
35
- switch (op[0]) {
36
- case 0: case 1: t = op; break;
37
- case 4: _.label++; return { value: op[1], done: false };
38
- case 5: _.label++; y = op[1]; op = [0]; continue;
39
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
- default:
41
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
- if (t[2]) _.ops.pop();
46
- _.trys.pop(); continue;
47
- }
48
- op = body.call(thisArg, _);
49
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
- }
52
- };
53
- var __read = (this && this.__read) || function (o, n) {
54
- var m = typeof Symbol === "function" && o[Symbol.iterator];
55
- if (!m) return o;
56
- var i = m.call(o), r, ar = [], e;
57
- try {
58
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
59
- }
60
- catch (error) { e = { error: error }; }
61
- finally {
62
- try {
63
- if (r && !r.done && (m = i["return"])) m.call(i);
64
- }
65
- finally { if (e) throw e.error; }
66
- }
67
- return ar;
68
- };
69
- var __values = (this && this.__values) || function(o) {
70
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
71
- if (m) return m.call(o);
72
- if (o && typeof o.length === "number") return {
73
- next: function () {
74
- if (o && i >= o.length) o = void 0;
75
- return { value: o && o[i++], done: !o };
76
- }
77
- };
78
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
79
- };
80
- var __importDefault = (this && this.__importDefault) || function (mod) {
81
- return (mod && mod.__esModule) ? mod : { "default": mod };
82
- };
83
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
84
4
  var ethers_1 = require("ethers");
85
5
  var d8XMath_1 = require("./d8XMath");
86
6
  require("./nodeSDKTypes");
87
7
  var nodeSDKTypes_1 = require("./nodeSDKTypes");
88
- var perpetualDataHandler_1 = __importDefault(require("./perpetualDataHandler"));
8
+ var perpetualDataHandler_1 = tslib_1.__importDefault(require("./perpetualDataHandler"));
89
9
  var utils_1 = require("./utils");
90
10
  /**
91
11
  * Functions to access market data (e.g., information on open orders, information on products that can be traded).
@@ -94,7 +14,7 @@ var utils_1 = require("./utils");
94
14
  * @extends PerpetualDataHandler
95
15
  */
96
16
  var MarketData = /** @class */ (function (_super) {
97
- __extends(MarketData, _super);
17
+ tslib_1.__extends(MarketData, _super);
98
18
  /**
99
19
  * Constructor
100
20
  * @param {NodeSDKConfig} config Configuration object, see
@@ -123,8 +43,8 @@ var MarketData = /** @class */ (function (_super) {
123
43
  * @param provider optional provider
124
44
  */
125
45
  MarketData.prototype.createProxyInstance = function (provider) {
126
- return __awaiter(this, void 0, void 0, function () {
127
- return __generator(this, function (_a) {
46
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
47
+ return tslib_1.__generator(this, function (_a) {
128
48
  switch (_a.label) {
129
49
  case 0:
130
50
  if (provider == undefined) {
@@ -202,8 +122,8 @@ var MarketData = /** @class */ (function (_super) {
202
122
  * @returns {ExchangeInfo} Array of static data for all the pools and perpetuals in the system.
203
123
  */
204
124
  MarketData.prototype.exchangeInfo = function () {
205
- return __awaiter(this, void 0, void 0, function () {
206
- return __generator(this, function (_a) {
125
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
126
+ return tslib_1.__generator(this, function (_a) {
207
127
  switch (_a.label) {
208
128
  case 0:
209
129
  if (this.proxyContract == null) {
@@ -237,9 +157,9 @@ var MarketData = /** @class */ (function (_super) {
237
157
  * @returns {Array<Array<Order>, Array<string>>} Array of open orders and corresponding order-ids.
238
158
  */
239
159
  MarketData.prototype.openOrders = function (traderAddr, symbol) {
240
- return __awaiter(this, void 0, void 0, function () {
160
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
241
161
  var orderBookContract, _a, orders, digests;
242
- return __generator(this, function (_b) {
162
+ return tslib_1.__generator(this, function (_b) {
243
163
  switch (_b.label) {
244
164
  case 0:
245
165
  orderBookContract = this.getOrderBookContract(symbol);
@@ -248,7 +168,7 @@ var MarketData = /** @class */ (function (_super) {
248
168
  MarketData.orderIdsOfTrader(traderAddr, orderBookContract),
249
169
  ])];
250
170
  case 1:
251
- _a = __read.apply(void 0, [_b.sent(), 2]), orders = _a[0], digests = _a[1];
171
+ _a = tslib_1.__read.apply(void 0, [_b.sent(), 2]), orders = _a[0], digests = _a[1];
252
172
  return [2 /*return*/, { orders: orders, orderIds: digests }];
253
173
  }
254
174
  });
@@ -276,9 +196,9 @@ var MarketData = /** @class */ (function (_super) {
276
196
  * @returns {MarginAccount} Position risk of trader.
277
197
  */
278
198
  MarketData.prototype.positionRisk = function (traderAddr, symbol) {
279
- return __awaiter(this, void 0, void 0, function () {
199
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
280
200
  var obj, mgnAcct;
281
- return __generator(this, function (_a) {
201
+ return tslib_1.__generator(this, function (_a) {
282
202
  switch (_a.label) {
283
203
  case 0:
284
204
  if (this.proxyContract == null) {
@@ -305,9 +225,9 @@ var MarketData = /** @class */ (function (_super) {
305
225
  */
306
226
  MarketData.prototype.positionRiskOnTrade = function (traderAddr, order, account, indexPriceInfo) {
307
227
  var _a, _b, _c, _d, _e;
308
- return __awaiter(this, void 0, void 0, function () {
228
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
309
229
  var obj, lotSizeBC, perpetualState, _f, S2, S3, Sm, currentMarginCashCC, currentPositionBC, currentLockedInQC, tradeAmountBC, newPositionBC, newSide, tradePrice, _g, poolId, exchangeFeeTbps, exchangeFeeCC, brokerFeeCC, referralFeeCC, isClose, isOpen, isFlip, keepPositionLvgOnClose, traderDepositCC, targetLvg, initialMarginRate, _h, b0, pos0, deltaCashCC, deltaLockedQC, pnl, newLockedInValueQC, newMarginCashCC, newEntryPrice, newMarginBalanceCC, newLeverage, _j, S2Liq, S3Liq, tau, newPositionRisk;
310
- return __generator(this, function (_k) {
230
+ return tslib_1.__generator(this, function (_k) {
311
231
  switch (_k.label) {
312
232
  case 0:
313
233
  if (this.proxyContract == null) {
@@ -334,7 +254,7 @@ var MarketData = /** @class */ (function (_super) {
334
254
  return [4 /*yield*/, this.getPerpetualState(order.symbol, indexPriceInfo)];
335
255
  case 5:
336
256
  perpetualState = _k.sent();
337
- _f = __read([perpetualState.indexPrice, perpetualState.collToQuoteIndexPrice, perpetualState.markPrice], 3), S2 = _f[0], S3 = _f[1], Sm = _f[2];
257
+ _f = tslib_1.__read([perpetualState.indexPrice, perpetualState.collToQuoteIndexPrice, perpetualState.markPrice], 3), S2 = _f[0], S3 = _f[1], Sm = _f[2];
338
258
  currentMarginCashCC = account.collateralCC;
339
259
  currentPositionBC = (account.side == nodeSDKTypes_1.BUY_SIDE ? 1 : -1) * account.positionNotionalBaseCCY;
340
260
  currentLockedInQC = account.entryPrice * currentPositionBC;
@@ -373,7 +293,7 @@ var MarketData = /** @class */ (function (_super) {
373
293
  else {
374
294
  initialMarginRate = this.symbolToPerpStaticInfo.get(account.symbol).initialMarginRate;
375
295
  targetLvg = isFlip || isOpen ? (_e = order.leverage) !== null && _e !== void 0 ? _e : 1 / initialMarginRate : 0;
376
- _h = __read(isOpen ? [0, 0] : [account.collateralCC, currentPositionBC], 2), b0 = _h[0], pos0 = _h[1];
296
+ _h = tslib_1.__read(isOpen ? [0, 0] : [account.collateralCC, currentPositionBC], 2), b0 = _h[0], pos0 = _h[1];
377
297
  traderDepositCC = (0, d8XMath_1.getDepositAmountForLvgTrade)(b0, pos0, tradeAmountBC, targetLvg, tradePrice, S3, Sm);
378
298
  // fees are paid from wallet in this case
379
299
  traderDepositCC += exchangeFeeCC + brokerFeeCC + referralFeeCC;
@@ -396,7 +316,7 @@ var MarketData = /** @class */ (function (_super) {
396
316
  : newMarginBalanceCC <= 0
397
317
  ? Infinity
398
318
  : (Math.abs(newPositionBC) * Sm) / S3 / newMarginBalanceCC;
399
- _j = __read(MarketData._getLiquidationParams(account.symbol, newLockedInValueQC, newPositionBC, newMarginCashCC, Sm, S3, this.symbolToPerpStaticInfo), 3), S2Liq = _j[0], S3Liq = _j[1], tau = _j[2];
319
+ _j = tslib_1.__read(MarketData._getLiquidationParams(account.symbol, newLockedInValueQC, newPositionBC, newMarginCashCC, Sm, S3, this.symbolToPerpStaticInfo), 3), S2Liq = _j[0], S3Liq = _j[1], tau = _j[2];
400
320
  newPositionRisk = {
401
321
  symbol: account.symbol,
402
322
  positionNotionalBaseCCY: Math.abs(newPositionBC),
@@ -424,9 +344,9 @@ var MarketData = /** @class */ (function (_super) {
424
344
  * @returns {MarginAccount} Position risk after
425
345
  */
426
346
  MarketData.prototype.positionRiskOnCollateralAction = function (deltaCollateral, account, indexPriceInfo) {
427
- return __awaiter(this, void 0, void 0, function () {
347
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
428
348
  var obj, perpetualState, _a, S2, S3, Sm, positionBC, lockedInQC, newMarginCashCC, newMarginBalanceCC, newLeverage, _b, S2Liq, S3Liq, tau, newPositionRisk;
429
- return __generator(this, function (_c) {
349
+ return tslib_1.__generator(this, function (_c) {
430
350
  switch (_c.label) {
431
351
  case 0:
432
352
  if (this.proxyContract == null) {
@@ -444,7 +364,7 @@ var MarketData = /** @class */ (function (_super) {
444
364
  case 2: return [4 /*yield*/, this.getPerpetualState(account.symbol, indexPriceInfo)];
445
365
  case 3:
446
366
  perpetualState = _c.sent();
447
- _a = __read([perpetualState.indexPrice, perpetualState.collToQuoteIndexPrice, perpetualState.markPrice], 3), S2 = _a[0], S3 = _a[1], Sm = _a[2];
367
+ _a = tslib_1.__read([perpetualState.indexPrice, perpetualState.collToQuoteIndexPrice, perpetualState.markPrice], 3), S2 = _a[0], S3 = _a[1], Sm = _a[2];
448
368
  // no position: just increase collateral and kill liquidation vars
449
369
  if (account.positionNotionalBaseCCY == 0) {
450
370
  return [2 /*return*/, {
@@ -483,7 +403,7 @@ var MarketData = /** @class */ (function (_super) {
483
403
  }];
484
404
  }
485
405
  newLeverage = (Math.abs(positionBC) * Sm) / S3 / newMarginBalanceCC;
486
- _b = __read(MarketData._getLiquidationParams(account.symbol, lockedInQC, positionBC, newMarginCashCC, Sm, S3, this.symbolToPerpStaticInfo), 3), S2Liq = _b[0], S3Liq = _b[1], tau = _b[2];
406
+ _b = tslib_1.__read(MarketData._getLiquidationParams(account.symbol, lockedInQC, positionBC, newMarginCashCC, Sm, S3, this.symbolToPerpStaticInfo), 3), S2Liq = _b[0], S3Liq = _b[1], tau = _b[2];
487
407
  newPositionRisk = {
488
408
  symbol: account.symbol,
489
409
  positionNotionalBaseCCY: account.positionNotionalBaseCCY,
@@ -530,9 +450,9 @@ var MarketData = /** @class */ (function (_super) {
530
450
  * @returns Balance
531
451
  */
532
452
  MarketData.prototype.getWalletBalance = function (address, symbol) {
533
- return __awaiter(this, void 0, void 0, function () {
453
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
534
454
  var poolIdx, marginTokenAddr, token, walletBalanceDec18;
535
- return __generator(this, function (_a) {
455
+ return tslib_1.__generator(this, function (_a) {
536
456
  switch (_a.label) {
537
457
  case 0:
538
458
  poolIdx = this.getPoolIndexFromSymbol(symbol);
@@ -555,9 +475,9 @@ var MarketData = /** @class */ (function (_super) {
555
475
  * @returns Maximal trade size, not signed
556
476
  */
557
477
  MarketData.prototype.maxOrderSizeForTrader = function (side, positionRisk) {
558
- return __awaiter(this, void 0, void 0, function () {
478
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
559
479
  var curPosition, perpId, perpMaxPositionABK;
560
- return __generator(this, function (_a) {
480
+ return tslib_1.__generator(this, function (_a) {
561
481
  switch (_a.label) {
562
482
  case 0:
563
483
  curPosition = side == nodeSDKTypes_1.BUY_SIDE ? positionRisk.positionNotionalBaseCCY : -positionRisk.positionNotionalBaseCCY;
@@ -577,9 +497,9 @@ var MarketData = /** @class */ (function (_super) {
577
497
  * @returns signed maximal position size in base currency
578
498
  */
579
499
  MarketData.prototype.maxSignedPosition = function (side, symbol) {
580
- return __awaiter(this, void 0, void 0, function () {
500
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
581
501
  var perpId, isBuy, maxSignedPos;
582
- return __generator(this, function (_a) {
502
+ return tslib_1.__generator(this, function (_a) {
583
503
  switch (_a.label) {
584
504
  case 0:
585
505
  perpId = this.getPerpIdFromSymbol(symbol);
@@ -613,9 +533,9 @@ var MarketData = /** @class */ (function (_super) {
613
533
  * @returns {number} Price of index in given currency.
614
534
  */
615
535
  MarketData.prototype.getOraclePrice = function (base, quote) {
616
- return __awaiter(this, void 0, void 0, function () {
536
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
617
537
  var px;
618
- return __generator(this, function (_a) {
538
+ return tslib_1.__generator(this, function (_a) {
619
539
  switch (_a.label) {
620
540
  case 0:
621
541
  if (this.proxyContract == null) {
@@ -630,9 +550,9 @@ var MarketData = /** @class */ (function (_super) {
630
550
  });
631
551
  };
632
552
  MarketData.prototype.getOrderStatus = function (symbol, orderId) {
633
- return __awaiter(this, void 0, void 0, function () {
553
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
634
554
  var orderBookContract, status;
635
- return __generator(this, function (_a) {
555
+ return tslib_1.__generator(this, function (_a) {
636
556
  switch (_a.label) {
637
557
  case 0:
638
558
  if (this.proxyContract == null) {
@@ -668,9 +588,9 @@ var MarketData = /** @class */ (function (_super) {
668
588
  * @returns mark price
669
589
  */
670
590
  MarketData.prototype.getMarkPrice = function (symbol, indexPrices) {
671
- return __awaiter(this, void 0, void 0, function () {
591
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
672
592
  var obj;
673
- return __generator(this, function (_a) {
593
+ return tslib_1.__generator(this, function (_a) {
674
594
  switch (_a.label) {
675
595
  case 0:
676
596
  if (this.proxyContract == null) {
@@ -709,9 +629,9 @@ var MarketData = /** @class */ (function (_super) {
709
629
  * @returns price (number)
710
630
  */
711
631
  MarketData.prototype.getPerpetualPrice = function (symbol, quantity, indexPrices) {
712
- return __awaiter(this, void 0, void 0, function () {
632
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
713
633
  var obj;
714
- return __generator(this, function (_a) {
634
+ return tslib_1.__generator(this, function (_a) {
715
635
  switch (_a.label) {
716
636
  case 0:
717
637
  if (this.proxyContract == null) {
@@ -736,9 +656,9 @@ var MarketData = /** @class */ (function (_super) {
736
656
  * @returns PerpetualState reference
737
657
  */
738
658
  MarketData.prototype.getPerpetualState = function (symbol, indexPriceInfo) {
739
- return __awaiter(this, void 0, void 0, function () {
659
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
740
660
  var obj, state;
741
- return __generator(this, function (_a) {
661
+ return tslib_1.__generator(this, function (_a) {
742
662
  switch (_a.label) {
743
663
  case 0:
744
664
  if (this.proxyContract == null) {
@@ -804,8 +724,8 @@ var MarketData = /** @class */ (function (_super) {
804
724
  * @returns {number} price
805
725
  */
806
726
  MarketData.prototype.getPerpetualMidPrice = function (symbol) {
807
- return __awaiter(this, void 0, void 0, function () {
808
- return __generator(this, function (_a) {
727
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
728
+ return tslib_1.__generator(this, function (_a) {
809
729
  switch (_a.label) {
810
730
  case 0:
811
731
  if (this.proxyContract == null) {
@@ -825,9 +745,9 @@ var MarketData = /** @class */ (function (_super) {
825
745
  * @ignore
826
746
  */
827
747
  MarketData.prototype.openOrdersOnOrderBook = function (traderAddr, orderBookContract) {
828
- return __awaiter(this, void 0, void 0, function () {
748
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
829
749
  var orders, userFriendlyOrders, k;
830
- return __generator(this, function (_a) {
750
+ return tslib_1.__generator(this, function (_a) {
831
751
  switch (_a.label) {
832
752
  case 0: return [4 /*yield*/, orderBookContract.getOrders(traderAddr, 0, 15)];
833
753
  case 1:
@@ -851,9 +771,9 @@ var MarketData = /** @class */ (function (_super) {
851
771
  * @ignore
852
772
  */
853
773
  MarketData.orderIdsOfTrader = function (traderAddr, orderBookContract) {
854
- return __awaiter(this, void 0, void 0, function () {
774
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
855
775
  var digestsRaw, k, digests;
856
- return __generator(this, function (_a) {
776
+ return tslib_1.__generator(this, function (_a) {
857
777
  switch (_a.label) {
858
778
  case 0: return [4 /*yield*/, orderBookContract.limitDigestsOfTrader(traderAddr, 0, 15)];
859
779
  case 1:
@@ -878,9 +798,9 @@ var MarketData = /** @class */ (function (_super) {
878
798
  * @returns available margin in collateral currency
879
799
  */
880
800
  MarketData.prototype.getAvailableMargin = function (traderAddr, symbol, indexPrices) {
881
- return __awaiter(this, void 0, void 0, function () {
801
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
882
802
  var obj, perpID, traderState, idx_availableMargin, mgn;
883
- return __generator(this, function (_a) {
803
+ return tslib_1.__generator(this, function (_a) {
884
804
  switch (_a.label) {
885
805
  case 0:
886
806
  if (this.proxyContract == null) {
@@ -911,9 +831,9 @@ var MarketData = /** @class */ (function (_super) {
911
831
  * @returns a loyality score (4 worst, 1 best)
912
832
  */
913
833
  MarketData.prototype.getTraderLoyalityScore = function (traderAddr, brokerAddr) {
914
- return __awaiter(this, void 0, void 0, function () {
834
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
915
835
  var brokerProm, traderProm, k, brkrVol_1, trdrVol_1, totalBrokerVolume, totalTraderVolume, brkrVol, trdrVol, k, volumeCap, score, rank4;
916
- return __generator(this, function (_a) {
836
+ return tslib_1.__generator(this, function (_a) {
917
837
  switch (_a.label) {
918
838
  case 0:
919
839
  if (this.proxyContract == null) {
@@ -953,10 +873,10 @@ var MarketData = /** @class */ (function (_super) {
953
873
  });
954
874
  };
955
875
  MarketData._exchangeInfo = function (_proxyContract, _poolStaticInfos, _symbolToPerpStaticInfo, _symbolList, _priceFeedGetter) {
956
- return __awaiter(this, void 0, void 0, function () {
957
- var nestedPerpetualIDs, factory, info, numPools, allSym, _a, _b, perpSymbol, sInfo, allSymArr, idxPriceMap, j, perpetualIDs, pool, PoolState, poolSymbol, k, perp, symS2, symS3, perpSymbol, res, _c, indexS2, isS2MktClosed, indexS3, isS3MktClosed, fMidPrice, markPremiumRate, currentFundingRateBps, state, isMktClosed, PerpetualState;
876
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
877
+ var nestedPerpetualIDs, factory, info, numPools, allSym, _a, _b, perpSymbol, sInfo, allSymArr, idxPriceMap, j, perpetualIDs, pool, PoolState, k, perp, symS2, symS3, res, _c, indexS2, isS2MktClosed, indexS3, isS3MktClosed, fMidPrice, markPremiumRate, currentFundingRateBps, state, isMktClosed, PerpetualState;
958
878
  var e_1, _d;
959
- return __generator(this, function (_e) {
879
+ return tslib_1.__generator(this, function (_e) {
960
880
  switch (_e.label) {
961
881
  case 0: return [4 /*yield*/, perpetualDataHandler_1.default.getNestedPerpetualIds(_proxyContract)];
962
882
  case 1:
@@ -968,7 +888,7 @@ var MarketData = /** @class */ (function (_super) {
968
888
  numPools = nestedPerpetualIDs.length;
969
889
  allSym = new Set();
970
890
  try {
971
- for (_a = __values(_symbolToPerpStaticInfo.keys()), _b = _a.next(); !_b.done; _b = _a.next()) {
891
+ for (_a = tslib_1.__values(_symbolToPerpStaticInfo.keys()), _b = _a.next(); !_b.done; _b = _a.next()) {
972
892
  perpSymbol = _b.value;
973
893
  sInfo = _symbolToPerpStaticInfo.get(perpSymbol);
974
894
  allSym.add(sInfo.S2Symbol);
@@ -1008,7 +928,6 @@ var MarketData = /** @class */ (function (_super) {
1008
928
  brokerCollateralLotSize: (0, d8XMath_1.ABK64x64ToFloat)(pool.fBrokerCollateralLotSize),
1009
929
  perpetuals: [],
1010
930
  };
1011
- poolSymbol = PoolState.poolSymbol;
1012
931
  k = 0;
1013
932
  _e.label = 6;
1014
933
  case 6:
@@ -1022,12 +941,11 @@ var MarketData = /** @class */ (function (_super) {
1022
941
  symS3 = (0, utils_1.contractSymbolToSymbol)(perp.S3BaseCCY, _symbolList) +
1023
942
  "-" +
1024
943
  (0, utils_1.contractSymbolToSymbol)(perp.S3QuoteCCY, _symbolList);
1025
- perpSymbol = symS2 + "-" + poolSymbol;
1026
944
  res = idxPriceMap.get(symS2);
1027
945
  if (res == undefined) {
1028
946
  throw new Error("Price for index ".concat(symS2, " could not be fetched - config issue"));
1029
947
  }
1030
- _c = __read([res[0], res[1]], 2), indexS2 = _c[0], isS2MktClosed = _c[1];
948
+ _c = tslib_1.__read([res[0], res[1]], 2), indexS2 = _c[0], isS2MktClosed = _c[1];
1031
949
  indexS3 = 1;
1032
950
  isS3MktClosed = false;
1033
951
  if (perp.eCollateralCurrency == nodeSDKTypes_1.COLLATERAL_CURRENCY_BASE) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketData.js","sourceRoot":"","sources":["../../src/marketData.ts"],"names":[],"mappings":"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"}
@@ -153,7 +153,7 @@ export interface Order {
153
153
  leverage?: number | undefined;
154
154
  deadline?: number | undefined;
155
155
  timestamp: number;
156
- submittedBlock?: number;
156
+ submittedTimestamp?: number;
157
157
  parentChildOrderIds?: [string, string];
158
158
  }
159
159
  export interface TradeEvent {
@@ -178,7 +178,7 @@ export interface TradeEvent {
178
178
  int128 fLeverage; // 0 if deposit and trade separate
179
179
  uint64 iDeadline;
180
180
  uint64 createdTimestamp;
181
- uint64 submittedBlock;
181
+ uint64 submittedTimestamp;
182
182
  }
183
183
  */
184
184
  export interface SmartContractOrder {
@@ -195,7 +195,7 @@ export interface SmartContractOrder {
195
195
  fLeverage: BigNumberish;
196
196
  iDeadline: BigNumberish;
197
197
  createdTimestamp: BigNumberish;
198
- submittedBlock: BigNumberish;
198
+ submittedTimestamp: BigNumberish;
199
199
  }
200
200
  /**
201
201
  * struct ClientOrder {
@@ -212,7 +212,7 @@ export interface SmartContractOrder {
212
212
  int128 fLeverage; // 0 if deposit and trade separate
213
213
  uint64 iDeadline;
214
214
  uint64 createdTimestamp;
215
- //uint64 submittedBlock <- will be set by LimitOrderBook
215
+ //uint64 submittedTimestamp <- will be set by LimitOrderBook
216
216
  bytes32 parentChildDigest1;
217
217
  bytes32 parentChildDigest2;
218
218
  }
@@ -262,5 +262,5 @@ export interface PriceFeedFormat {
262
262
  }
263
263
  export declare const DEFAULT_CONFIG_MAINNET_NAME = "mainnet";
264
264
  export declare const DEFAULT_CONFIG_TESTNET_NAME = "central-park";
265
- export declare function loadABIs(config: NodeSDKConfig): Promise<void>;
265
+ export declare function loadABIs(config: NodeSDKConfig): void;
266
266
  export declare const DEFAULT_CONFIG: NodeSDKConfig[];
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var e_1, _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.DEFAULT_CONFIG = exports.loadABIs = exports.DEFAULT_CONFIG_TESTNET_NAME = exports.DEFAULT_CONFIG_MAINNET_NAME = exports.CollaterlCCY = exports.CLOSED_SIDE = exports.SELL_SIDE = exports.BUY_SIDE = exports.ORDER_TYPE_STOP_LIMIT = exports.ORDER_TYPE_STOP_MARKET = exports.ORDER_TYPE_MARKET = exports.ORDER_TYPE_LIMIT = exports.MASK_KEEP_POS_LEVERAGE = exports.MASK_STOP_ORDER = exports.MASK_MARKET_ORDER = exports.MASK_LIMIT_ORDER = exports.MASK_CLOSE_ONLY = exports.ORDER_MAX_DURATION_SEC = exports.DECIMALS = exports.MAX_UINT_256 = exports.MAX_64x64 = exports.ONE_64x64 = exports.ZERO_ORDER_ID = exports.ZERO_ADDRESS = exports.PERP_STATE_STR = exports.COLLATERAL_CURRENCY_QUANTO = exports.COLLATERAL_CURRENCY_BASE = exports.COLLATERAL_CURRENCY_QUOTE = exports.SYMBOL_LIST = exports.MOCK_TOKEN_SWAP_ABI = exports.ERC20_ABI = void 0;
5
+ var tslib_1 = require("tslib");
6
+ var ethers_1 = require("ethers");
7
+ exports.ERC20_ABI = require("./abi/ERC20.json");
8
+ exports.MOCK_TOKEN_SWAP_ABI = require("./abi/MockTokenSwap.json");
9
+ exports.SYMBOL_LIST = new Map(Object.entries(require("./config/symbolList.json")));
10
+ exports.COLLATERAL_CURRENCY_QUOTE = 0;
11
+ exports.COLLATERAL_CURRENCY_BASE = 1;
12
+ exports.COLLATERAL_CURRENCY_QUANTO = 2;
13
+ exports.PERP_STATE_STR = ["INVALID", "INITIALIZING", "NORMAL", "EMERGENCY", "CLEARED"];
14
+ exports.ZERO_ADDRESS = ethers_1.constants.AddressZero;
15
+ exports.ZERO_ORDER_ID = ethers_1.constants.HashZero;
16
+ exports.ONE_64x64 = ethers_1.BigNumber.from("0x010000000000000000");
17
+ exports.MAX_64x64 = ethers_1.BigNumber.from("0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
18
+ exports.MAX_UINT_256 = ethers_1.BigNumber.from(2).pow(256).sub(ethers_1.BigNumber.from(1));
19
+ exports.DECIMALS = ethers_1.BigNumber.from(10).pow(ethers_1.BigNumber.from(18));
20
+ exports.ORDER_MAX_DURATION_SEC = 60 * 60 * 24 * 30 * 4;
21
+ exports.MASK_CLOSE_ONLY = ethers_1.BigNumber.from("0x80000000");
22
+ exports.MASK_LIMIT_ORDER = ethers_1.BigNumber.from("0x04000000");
23
+ exports.MASK_MARKET_ORDER = ethers_1.BigNumber.from("0x40000000");
24
+ exports.MASK_STOP_ORDER = ethers_1.BigNumber.from("0x20000000");
25
+ exports.MASK_KEEP_POS_LEVERAGE = ethers_1.BigNumber.from("0x08000000");
26
+ exports.ORDER_TYPE_LIMIT = "LIMIT";
27
+ exports.ORDER_TYPE_MARKET = "MARKET";
28
+ exports.ORDER_TYPE_STOP_MARKET = "STOP_MARKET";
29
+ exports.ORDER_TYPE_STOP_LIMIT = "STOP_LIMIT";
30
+ exports.BUY_SIDE = "BUY";
31
+ exports.SELL_SIDE = "SELL";
32
+ exports.CLOSED_SIDE = "CLOSED";
33
+ var CollaterlCCY;
34
+ (function (CollaterlCCY) {
35
+ CollaterlCCY[CollaterlCCY["QUOTE"] = 0] = "QUOTE";
36
+ CollaterlCCY[CollaterlCCY["BASE"] = 1] = "BASE";
37
+ CollaterlCCY[CollaterlCCY["QUANTO"] = 2] = "QUANTO";
38
+ })(CollaterlCCY = exports.CollaterlCCY || (exports.CollaterlCCY = {}));
39
+ exports.DEFAULT_CONFIG_MAINNET_NAME = "mainnet";
40
+ exports.DEFAULT_CONFIG_TESTNET_NAME = "central-park";
41
+ function loadABIs(config) {
42
+ if (config.proxyABILocation.length > 0) {
43
+ config.proxyABI = require("./abi/".concat(config.proxyABILocation));
44
+ config.lobFactoryABI = require("./abi/".concat(config.limitOrderBookFactoryABILocation));
45
+ config.lobABI = require("./abi/".concat(config.limitOrderBookABILocation));
46
+ }
47
+ }
48
+ exports.loadABIs = loadABIs;
49
+ var constConfig = require("./config/defaultConfig.json");
50
+ try {
51
+ for (var constConfig_1 = tslib_1.__values(constConfig), constConfig_1_1 = constConfig_1.next(); !constConfig_1_1.done; constConfig_1_1 = constConfig_1.next()) {
52
+ var config = constConfig_1_1.value;
53
+ loadABIs(config);
54
+ }
55
+ }
56
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
57
+ finally {
58
+ try {
59
+ if (constConfig_1_1 && !constConfig_1_1.done && (_a = constConfig_1.return)) _a.call(constConfig_1);
60
+ }
61
+ finally { if (e_1) throw e_1.error; }
62
+ }
63
+ exports.DEFAULT_CONFIG = constConfig;
64
+ //# sourceMappingURL=nodeSDKTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeSDKTypes.js","sourceRoot":"","sources":["../../src/nodeSDKTypes.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ethers } from "ethers";
2
- import { NodeSDKConfig, Order, PerpetualStaticInfo, PriceFeedSubmission } from "./nodeSDKTypes";
2
+ import { NodeSDKConfig, Order, PerpetualStaticInfo, PriceFeedSubmission, SmartContractOrder } from "./nodeSDKTypes";
3
3
  import WriteAccessHandler from "./writeAccessHandler";
4
4
  /**
5
5
  * Functions to execute existing conditional orders from the limit order book. This class
@@ -8,7 +8,7 @@ import WriteAccessHandler from "./writeAccessHandler";
8
8
  * @extends WriteAccessHandler
9
9
  */
10
10
  export default class OrderReferrerTool extends WriteAccessHandler {
11
- static BLOCK_DELAY: number;
11
+ static TRADE_DELAY: number;
12
12
  /**
13
13
  * Constructor.
14
14
  * @param {NodeSDKConfig} config Configuration object, see PerpetualDataHandler.readSDKConfig.
@@ -64,6 +64,7 @@ export default class OrderReferrerTool extends WriteAccessHandler {
64
64
  * @returns Transaction object.
65
65
  */
66
66
  executeOrder(symbol: string, orderId: string, referrerAddr?: string, nonce?: number, submission?: PriceFeedSubmission): Promise<ethers.ContractTransaction>;
67
+ executeOrders(symbol: string, orderIds: string[], referrerAddr?: string, nonce?: number, submission?: PriceFeedSubmission): Promise<ethers.ContractTransaction>;
67
68
  /**
68
69
  * All the orders in the order book for a given symbol that are currently open.
69
70
  * @param {string} symbol Symbol of the form ETH-USD-MATIC.
@@ -175,7 +176,7 @@ export default class OrderReferrerTool extends WriteAccessHandler {
175
176
  * main();
176
177
  * @returns true if order can be executed for the current state of the perpetuals
177
178
  */
178
- isTradeable(order: Order, indexPrices?: [number, number]): Promise<boolean>;
179
+ isTradeable(order: Order, blockTimestamp?: number, indexPrices?: [number, number]): Promise<boolean>;
179
180
  /**
180
181
  * Check for a batch of orders on the same perpetual whether they can be traded
181
182
  * @param orders orders belonging to 1 perpetual
@@ -183,7 +184,13 @@ export default class OrderReferrerTool extends WriteAccessHandler {
183
184
  * if not defined.
184
185
  * @returns array of tradeable boolean
185
186
  */
186
- isTradeableBatch(orders: Order[], indexPrices?: [number, number, boolean, boolean]): Promise<boolean[]>;
187
- static _isTradeable(order: Order, tradePrice: number, markPrice: number, block: number, symbolToPerpInfoMap: Map<string, PerpetualStaticInfo>): boolean;
187
+ isTradeableBatch(orders: Order[], blockTimestamp?: number, indexPrices?: [number, number, boolean, boolean]): Promise<boolean[]>;
188
+ protected _isTradeable(order: Order, tradePrice: number, markPrice: number, blockTimestamp: number, symbolToPerpInfoMap: Map<string, PerpetualStaticInfo>): boolean;
189
+ /**
190
+ * Wrapper of static method to use after mappings have been loaded into memory.
191
+ * @param scOrder Perpetual order as received in the proxy events.
192
+ * @returns A user-friendly order struct.
193
+ */
194
+ smartContractOrderToOrder(scOrder: SmartContractOrder): Order;
188
195
  getTransactionCount(blockTag?: ethers.providers.BlockTag): Promise<number>;
189
196
  }