@d8x/perpetuals-sdk 2.0.13-alpha → 2.1.0-alpha2
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/dist/cjs/abi/IPerpetualManager.json +124 -3
- package/dist/cjs/abi/OracleFactory.json +94 -25
- package/dist/cjs/abi/PerpetualManagerProxy.json +212 -2
- package/dist/cjs/brokerTool.d.ts +5 -1
- package/dist/cjs/brokerTool.js +14 -1
- package/dist/cjs/brokerTool.js.map +1 -1
- package/dist/cjs/config/priceFeedConfig.json +0 -18
- package/dist/cjs/contracts/IPerpetualManager.d.ts +74 -10
- package/dist/cjs/contracts/OracleFactory.d.ts +69 -20
- package/dist/cjs/contracts/PerpetualManagerProxy.d.ts +109 -4
- package/dist/cjs/contracts/factories/IPerpetualManager__factory.d.ts +95 -3
- package/dist/cjs/contracts/factories/IPerpetualManager__factory.js +124 -3
- package/dist/cjs/contracts/factories/IPerpetualManager__factory.js.map +1 -1
- package/dist/cjs/contracts/factories/OracleFactory__factory.d.ts +75 -20
- package/dist/cjs/contracts/factories/OracleFactory__factory.js +94 -25
- package/dist/cjs/contracts/factories/OracleFactory__factory.js.map +1 -1
- package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.d.ts +159 -2
- package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.js +212 -2
- package/dist/cjs/contracts/factories/PerpetualManagerProxy__factory.js.map +1 -1
- package/dist/cjs/d8XMath.d.ts +44 -1
- package/dist/cjs/d8XMath.js +236 -3
- package/dist/cjs/d8XMath.js.map +1 -1
- package/dist/cjs/liquidatorTool.d.ts +1 -0
- package/dist/cjs/liquidatorTool.js +24 -7
- package/dist/cjs/liquidatorTool.js.map +1 -1
- package/dist/cjs/marketData.d.ts +42 -20
- package/dist/cjs/marketData.js +261 -188
- package/dist/cjs/marketData.js.map +1 -1
- package/dist/cjs/nodeSDKTypes.d.ts +24 -2
- package/dist/cjs/nodeSDKTypes.js.map +1 -1
- package/dist/cjs/orderExecutorTool.d.ts +3 -3
- package/dist/cjs/orderExecutorTool.js +38 -13
- package/dist/cjs/orderExecutorTool.js.map +1 -1
- package/dist/cjs/perpetualDataHandler.d.ts +22 -12
- package/dist/cjs/perpetualDataHandler.js +59 -44
- package/dist/cjs/perpetualDataHandler.js.map +1 -1
- package/dist/cjs/perpetualEventHandler.d.ts +1 -1
- package/dist/cjs/perpetualEventHandler.js +6 -7
- package/dist/cjs/perpetualEventHandler.js.map +1 -1
- package/dist/cjs/polyMktsPxFeed.d.ts +6 -4
- package/dist/cjs/polyMktsPxFeed.js +24 -3
- package/dist/cjs/polyMktsPxFeed.js.map +1 -1
- package/dist/cjs/priceFeeds.d.ts +6 -7
- package/dist/cjs/priceFeeds.js +36 -14
- package/dist/cjs/priceFeeds.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/abi/IPerpetualManager.json +124 -3
- package/dist/esm/abi/OracleFactory.json +94 -25
- package/dist/esm/abi/PerpetualManagerProxy.json +212 -2
- package/dist/esm/brokerTool.d.ts +5 -1
- package/dist/esm/brokerTool.js +15 -2
- package/dist/esm/brokerTool.js.map +1 -1
- package/dist/esm/config/priceFeedConfig.json +0 -18
- package/dist/esm/contracts/IPerpetualManager.d.ts +74 -10
- package/dist/esm/contracts/OracleFactory.d.ts +69 -20
- package/dist/esm/contracts/PerpetualManagerProxy.d.ts +109 -4
- package/dist/esm/contracts/factories/IPerpetualManager__factory.d.ts +95 -3
- package/dist/esm/contracts/factories/IPerpetualManager__factory.js +124 -3
- package/dist/esm/contracts/factories/IPerpetualManager__factory.js.map +1 -1
- package/dist/esm/contracts/factories/OracleFactory__factory.d.ts +75 -20
- package/dist/esm/contracts/factories/OracleFactory__factory.js +94 -25
- package/dist/esm/contracts/factories/OracleFactory__factory.js.map +1 -1
- package/dist/{cjs/contracts/factories/MockToken__factory.d.ts → esm/contracts/factories/PerpStorage__factory.d.ts} +115 -128
- package/dist/esm/contracts/factories/{MockToken__factory.js → PerpStorage__factory.js} +128 -139
- package/dist/esm/contracts/factories/PerpStorage__factory.js.map +1 -0
- package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.d.ts +159 -2
- package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.js +212 -2
- package/dist/esm/contracts/factories/PerpetualManagerProxy__factory.js.map +1 -1
- package/dist/esm/d8XMath.d.ts +44 -1
- package/dist/esm/d8XMath.js +229 -2
- package/dist/esm/d8XMath.js.map +1 -1
- package/dist/esm/liquidatorTool.d.ts +1 -0
- package/dist/esm/liquidatorTool.js +25 -8
- package/dist/esm/liquidatorTool.js.map +1 -1
- package/dist/esm/marketData.d.ts +42 -20
- package/dist/esm/marketData.js +263 -190
- package/dist/esm/marketData.js.map +1 -1
- package/dist/esm/nodeSDKTypes.d.ts +24 -2
- package/dist/esm/nodeSDKTypes.js.map +1 -1
- package/dist/esm/orderExecutorTool.d.ts +3 -3
- package/dist/esm/orderExecutorTool.js +38 -13
- package/dist/esm/orderExecutorTool.js.map +1 -1
- package/dist/esm/perpetualDataHandler.d.ts +22 -12
- package/dist/esm/perpetualDataHandler.js +60 -45
- package/dist/esm/perpetualDataHandler.js.map +1 -1
- package/dist/esm/perpetualEventHandler.d.ts +1 -1
- package/dist/esm/perpetualEventHandler.js +6 -7
- package/dist/esm/perpetualEventHandler.js.map +1 -1
- package/dist/esm/polyMktsPxFeed.d.ts +6 -4
- package/dist/esm/polyMktsPxFeed.js +24 -3
- package/dist/esm/polyMktsPxFeed.js.map +1 -1
- package/dist/esm/priceFeeds.d.ts +6 -7
- package/dist/esm/priceFeeds.js +36 -14
- package/dist/esm/priceFeeds.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +1 -1
- package/src/abi/IPerpetualManager.json +124 -3
- package/src/abi/OracleFactory.json +523 -454
- package/src/abi/PerpetualManagerProxy.json +1596 -1386
- package/src/brokerTool.ts +16 -2
- package/src/config/priceFeedConfig.json +0 -18
- package/src/contracts/IPerpetualManager.ts +107 -7
- package/src/contracts/OracleFactory.ts +100 -26
- package/src/contracts/PerpetualManagerProxy.ts +192 -3
- package/src/contracts/factories/IPerpetualManager__factory.ts +124 -3
- package/src/contracts/factories/OracleFactory__factory.ts +94 -25
- package/src/contracts/factories/PerpetualManagerProxy__factory.ts +212 -2
- package/src/d8XMath.ts +304 -2
- package/src/liquidatorTool.ts +29 -14
- package/src/marketData.ts +415 -238
- package/src/nodeSDKTypes.ts +30 -2
- package/src/orderExecutorTool.ts +48 -20
- package/src/perpetualDataHandler.ts +87 -45
- package/src/perpetualEventHandler.ts +6 -7
- package/src/polyMktsPxFeed.ts +30 -5
- package/src/priceFeeds.ts +41 -17
- package/src/version.ts +1 -1
- package/dist/cjs/abi/BeaconProxy.json +0 -71
- package/dist/cjs/abi/Maintainer.json +0 -774
- package/dist/cjs/abi/MockToken.json +0 -347
- package/dist/cjs/abi/UUPSUpgradeable.json +0 -104
- package/dist/cjs/abi/WeETH.json +0 -310
- package/dist/cjs/abi-zkevm/LimitOrderBook.json +0 -910
- package/dist/cjs/abi-zkevm/LimitOrderBookFactory.json +0 -236
- package/dist/cjs/contracts/BeaconProxy.d.ts +0 -63
- package/dist/cjs/contracts/BeaconProxy.js +0 -3
- package/dist/cjs/contracts/BeaconProxy.js.map +0 -1
- package/dist/cjs/contracts/Maintainer.d.ts +0 -799
- package/dist/cjs/contracts/Maintainer.js +0 -3
- package/dist/cjs/contracts/Maintainer.js.map +0 -1
- package/dist/cjs/contracts/MockToken.d.ts +0 -263
- package/dist/cjs/contracts/MockToken.js +0 -3
- package/dist/cjs/contracts/MockToken.js.map +0 -1
- package/dist/cjs/contracts/UUPSUpgradeable.d.ts +0 -118
- package/dist/cjs/contracts/UUPSUpgradeable.js +0 -3
- package/dist/cjs/contracts/UUPSUpgradeable.js.map +0 -1
- package/dist/cjs/contracts/WeETH.d.ts +0 -503
- package/dist/cjs/contracts/WeETH.js +0 -3
- package/dist/cjs/contracts/WeETH.js.map +0 -1
- package/dist/cjs/contracts/factories/BeaconProxy__factory.d.ts +0 -61
- package/dist/cjs/contracts/factories/BeaconProxy__factory.js +0 -89
- package/dist/cjs/contracts/factories/BeaconProxy__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/Maintainer__factory.d.ts +0 -609
- package/dist/cjs/contracts/factories/Maintainer__factory.js +0 -792
- package/dist/cjs/contracts/factories/Maintainer__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/MockToken__factory.js +0 -365
- package/dist/cjs/contracts/factories/MockToken__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.d.ts +0 -87
- package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js +0 -122
- package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/WeETH__factory.d.ts +0 -545
- package/dist/cjs/contracts/factories/WeETH__factory.js +0 -721
- package/dist/cjs/contracts/factories/WeETH__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.d.ts +0 -4136
- package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js +0 -5324
- package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +0 -189
- package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js +0 -254
- package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.d.ts +0 -715
- package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js +0 -928
- package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/lean0/ShareToken__factory.d.ts +0 -344
- package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js +0 -456
- package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js.map +0 -1
- package/dist/cjs/contracts/factories/lean0/index.d.ts +0 -4
- package/dist/cjs/contracts/factories/lean0/index.js +0 -15
- package/dist/cjs/contracts/factories/lean0/index.js.map +0 -1
- package/dist/cjs/contracts/lean0/IPerpetualManager.d.ts +0 -2821
- package/dist/cjs/contracts/lean0/IPerpetualManager.js +0 -3
- package/dist/cjs/contracts/lean0/IPerpetualManager.js.map +0 -1
- package/dist/cjs/contracts/lean0/LimitOrderBook.d.ts +0 -533
- package/dist/cjs/contracts/lean0/LimitOrderBook.js +0 -3
- package/dist/cjs/contracts/lean0/LimitOrderBook.js.map +0 -1
- package/dist/cjs/contracts/lean0/LimitOrderBookFactory.d.ts +0 -210
- package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js +0 -3
- package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js.map +0 -1
- package/dist/cjs/contracts/lean0/ShareToken.d.ts +0 -320
- package/dist/cjs/contracts/lean0/ShareToken.js +0 -3
- package/dist/cjs/contracts/lean0/ShareToken.js.map +0 -1
- package/dist/cjs/contracts/lean0/index.d.ts +0 -4
- package/dist/cjs/contracts/lean0/index.js +0 -3
- package/dist/cjs/contracts/lean0/index.js.map +0 -1
- package/dist/esm/abi/BeaconProxy.json +0 -71
- package/dist/esm/abi/Maintainer.json +0 -774
- package/dist/esm/abi/MockToken.json +0 -347
- package/dist/esm/abi/UUPSUpgradeable.json +0 -104
- package/dist/esm/abi/WeETH.json +0 -310
- package/dist/esm/abi/lean0/IPerpetualManager.json +0 -5306
- package/dist/esm/abi/lean0/LimitOrderBook.json +0 -910
- package/dist/esm/abi/lean0/LimitOrderBookFactory.json +0 -236
- package/dist/esm/abi/lean0/ShareToken.json +0 -438
- package/dist/esm/abi-zkevm/LimitOrderBook.json +0 -910
- package/dist/esm/abi-zkevm/LimitOrderBookFactory.json +0 -236
- package/dist/esm/contracts/BeaconProxy.d.ts +0 -63
- package/dist/esm/contracts/BeaconProxy.js +0 -2
- package/dist/esm/contracts/BeaconProxy.js.map +0 -1
- package/dist/esm/contracts/Maintainer.d.ts +0 -799
- package/dist/esm/contracts/Maintainer.js +0 -2
- package/dist/esm/contracts/Maintainer.js.map +0 -1
- package/dist/esm/contracts/MockToken.d.ts +0 -263
- package/dist/esm/contracts/MockToken.js +0 -2
- package/dist/esm/contracts/MockToken.js.map +0 -1
- package/dist/esm/contracts/UUPSUpgradeable.d.ts +0 -118
- package/dist/esm/contracts/UUPSUpgradeable.js +0 -2
- package/dist/esm/contracts/UUPSUpgradeable.js.map +0 -1
- package/dist/esm/contracts/WeETH.d.ts +0 -503
- package/dist/esm/contracts/WeETH.js +0 -2
- package/dist/esm/contracts/WeETH.js.map +0 -1
- package/dist/esm/contracts/factories/BeaconProxy__factory.d.ts +0 -61
- package/dist/esm/contracts/factories/BeaconProxy__factory.js +0 -85
- package/dist/esm/contracts/factories/BeaconProxy__factory.js.map +0 -1
- package/dist/esm/contracts/factories/Maintainer__factory.d.ts +0 -609
- package/dist/esm/contracts/factories/Maintainer__factory.js +0 -788
- package/dist/esm/contracts/factories/Maintainer__factory.js.map +0 -1
- package/dist/esm/contracts/factories/MockToken__factory.d.ts +0 -273
- package/dist/esm/contracts/factories/MockToken__factory.js.map +0 -1
- package/dist/esm/contracts/factories/UUPSUpgradeable__factory.d.ts +0 -87
- package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js +0 -118
- package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js.map +0 -1
- package/dist/esm/contracts/factories/WeETH__factory.d.ts +0 -545
- package/dist/esm/contracts/factories/WeETH__factory.js +0 -717
- package/dist/esm/contracts/factories/WeETH__factory.js.map +0 -1
- package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.d.ts +0 -4136
- package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js +0 -5320
- package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js.map +0 -1
- package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +0 -189
- package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js +0 -250
- package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +0 -1
- package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.d.ts +0 -715
- package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js +0 -924
- package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js.map +0 -1
- package/dist/esm/contracts/factories/lean0/ShareToken__factory.d.ts +0 -344
- package/dist/esm/contracts/factories/lean0/ShareToken__factory.js +0 -452
- package/dist/esm/contracts/factories/lean0/ShareToken__factory.js.map +0 -1
- package/dist/esm/contracts/factories/lean0/index.d.ts +0 -4
- package/dist/esm/contracts/factories/lean0/index.js +0 -8
- package/dist/esm/contracts/factories/lean0/index.js.map +0 -1
- package/dist/esm/contracts/lean0/IPerpetualManager.d.ts +0 -2821
- package/dist/esm/contracts/lean0/IPerpetualManager.js +0 -2
- package/dist/esm/contracts/lean0/IPerpetualManager.js.map +0 -1
- package/dist/esm/contracts/lean0/LimitOrderBook.d.ts +0 -533
- package/dist/esm/contracts/lean0/LimitOrderBook.js +0 -2
- package/dist/esm/contracts/lean0/LimitOrderBook.js.map +0 -1
- package/dist/esm/contracts/lean0/LimitOrderBookFactory.d.ts +0 -210
- package/dist/esm/contracts/lean0/LimitOrderBookFactory.js +0 -2
- package/dist/esm/contracts/lean0/LimitOrderBookFactory.js.map +0 -1
- package/dist/esm/contracts/lean0/ShareToken.d.ts +0 -320
- package/dist/esm/contracts/lean0/ShareToken.js +0 -2
- package/dist/esm/contracts/lean0/ShareToken.js.map +0 -1
- package/dist/esm/contracts/lean0/index.d.ts +0 -4
- package/dist/esm/contracts/lean0/index.js +0 -2
- package/dist/esm/contracts/lean0/index.js.map +0 -1
package/dist/cjs/marketData.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { OrderStatus } from "./constants";
|
|
|
3
3
|
import { type LimitOrderBook, type Multicall3 } from "./contracts";
|
|
4
4
|
import { IPerpetualOrder, type PerpStorage } from "./contracts/IPerpetualManager";
|
|
5
5
|
import { type IClientOrder } from "./contracts/LimitOrderBook";
|
|
6
|
-
import { type ExchangeInfo, type MarginAccount, type NodeSDKConfig, type Order, type PerpetualState, type PerpetualStaticInfo, type PoolState, type PoolStaticInfo, type SmartContractOrder } from "./nodeSDKTypes";
|
|
6
|
+
import { type ExchangeInfo, type MarginAccount, type NodeSDKConfig, type Order, type PerpetualState, type PerpetualStaticInfo, type PoolState, type PoolStaticInfo, type SmartContractOrder, type IdxPriceInfo } from "./nodeSDKTypes";
|
|
7
7
|
import PerpetualDataHandler from "./perpetualDataHandler";
|
|
8
8
|
import PriceFeeds from "./priceFeeds";
|
|
9
9
|
/**
|
|
@@ -190,11 +190,13 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
190
190
|
* @ignore
|
|
191
191
|
*/
|
|
192
192
|
protected _positionRiskForTraderInPerpetuals(traderAddr: string, symbols: string[], provider: Provider, overrides?: Overrides): Promise<MarginAccount[]>;
|
|
193
|
+
private dataForPositionRiskOnTrade;
|
|
193
194
|
/**
|
|
194
195
|
* Estimates what the position risk will be if a given order is executed.
|
|
195
196
|
* @param traderAddr Address of trader
|
|
196
197
|
* @param order Order to be submitted
|
|
197
|
-
* @param
|
|
198
|
+
* @param signedPositionNotionalBaseCCY signed position notional of current position (before trade)
|
|
199
|
+
* @param tradingFeeTbps trading fee in tenth of basis points (exchange fee and broker fee)
|
|
198
200
|
* @param indexPriceInfo Index prices and market status (open/closed). Defaults to current market status if not given.
|
|
199
201
|
* @returns Position risk after trade, including order cost and maximal trade sizes for position
|
|
200
202
|
* @example
|
|
@@ -214,19 +216,27 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
214
216
|
* executionTimestamp: Date.now()/1000,
|
|
215
217
|
* };
|
|
216
218
|
* // Get position risk conditional on this order being executed
|
|
217
|
-
* const posRisk = await mktData.positionRiskOnTrade("0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B", order);
|
|
219
|
+
* const posRisk = await mktData.positionRiskOnTrade("0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B", order, 0, 60);
|
|
218
220
|
* console.log(posRisk);
|
|
219
221
|
* }
|
|
220
222
|
* main();
|
|
221
223
|
*/
|
|
222
|
-
positionRiskOnTrade(traderAddr: string, order: Order,
|
|
223
|
-
tradingFeeTbps?: number;
|
|
224
|
-
}): Promise<{
|
|
224
|
+
positionRiskOnTrade(traderAddr: string, order: Order, signedPositionNotionalBaseCCY: number, tradingFeeTbps: number, indexPriceInfo?: IdxPriceInfo, overrides?: Overrides): Promise<{
|
|
225
225
|
newPositionRisk: MarginAccount;
|
|
226
226
|
orderCost: number;
|
|
227
227
|
maxLongTrade: number;
|
|
228
228
|
maxShortTrade: number;
|
|
229
229
|
}>;
|
|
230
|
+
/**
|
|
231
|
+
* Fee is relative to base-currency amount (=trade amount)
|
|
232
|
+
* @param state current perpetual state (need longBC and shortBC)
|
|
233
|
+
* @param maxMaintMgnRate maintenance margin rate param for pred mkts
|
|
234
|
+
* @param Sm Mark price
|
|
235
|
+
* @param tradeAmtBC signed trade amount
|
|
236
|
+
* @param tradeMgnRate margin rate param from perpetual
|
|
237
|
+
* @returns relative exchange fee in decimals
|
|
238
|
+
*/
|
|
239
|
+
static exchangeFeePrdMkts(state: PerpetualState, maxMaintMgnRate: number, Sm: number, tradeAmtBC: number, tradeMgnRate: number): number;
|
|
230
240
|
/**
|
|
231
241
|
* Estimates what the position risk will be if given amount of collateral is added/removed from the account.
|
|
232
242
|
* @param {number} deltaCollateral Amount of collateral to add or remove (signed)
|
|
@@ -248,20 +258,22 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
248
258
|
* }
|
|
249
259
|
* main();
|
|
250
260
|
*/
|
|
251
|
-
positionRiskOnCollateralAction(deltaCollateral: number, account: MarginAccount, indexPriceInfo?:
|
|
261
|
+
positionRiskOnCollateralAction(deltaCollateral: number, account: MarginAccount, indexPriceInfo?: IdxPriceInfo, overrides?: Overrides): Promise<MarginAccount>;
|
|
252
262
|
/**
|
|
253
|
-
* Calculates liquidation prices for a
|
|
263
|
+
* Calculates liquidation prices for a position
|
|
264
|
+
* constructed in positionRiskOnTrade/positionRiskOnCollateralAction
|
|
254
265
|
* @param symbol Perpetual symbol
|
|
255
266
|
* @param lockedInQC Locked in value
|
|
256
267
|
* @param signedPositionBC Signed position size
|
|
257
|
-
* @param marginCashCC
|
|
268
|
+
* @param marginCashCC Available cash in margin account (includes unpaid funding)
|
|
258
269
|
* @param markPrice Mark price
|
|
259
|
-
* @param collToQuoteConversion Collateral index price
|
|
270
|
+
* @param collToQuoteConversion Collateral index price (S3)
|
|
271
|
+
* @param S2 index price
|
|
260
272
|
* @param symbolToPerpStaticInfo Symbol-to-perp static info mapping
|
|
261
273
|
* @returns [Base index price, Collateral index price, Maintenance margin rate]
|
|
262
274
|
* @ignore
|
|
263
275
|
*/
|
|
264
|
-
protected static _getLiquidationParams(symbol: string, lockedInQC: number, signedPositionBC: number, marginCashCC: number, markPrice: number, collToQuoteConversion: number, symbolToPerpStaticInfo: Map<string, PerpetualStaticInfo>): [number, number | undefined, number];
|
|
276
|
+
protected static _getLiquidationParams(symbol: string, lockedInQC: number, signedPositionBC: number, marginCashCC: number, markPrice: number, collToQuoteConversion: number, S2: number, symbolToPerpStaticInfo: Map<string, PerpetualStaticInfo>): [number, number | undefined, number];
|
|
265
277
|
/**
|
|
266
278
|
* Gets the wallet balance in the settlement currency corresponding to a given perpetual symbol.
|
|
267
279
|
* The settlement currency is usually the same as the collateral currency.
|
|
@@ -387,6 +399,17 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
387
399
|
buy: number;
|
|
388
400
|
sell: number;
|
|
389
401
|
}>;
|
|
402
|
+
private pmMaxOrderSizeForTrader;
|
|
403
|
+
/**
|
|
404
|
+
* Returns the maximal allowed short pos and long pos (signed) for a trader
|
|
405
|
+
* with given notional (in ABDK format) in the perpetual, ignoring the traders wallet balance
|
|
406
|
+
* @param perpId
|
|
407
|
+
* @param currentTraderPos ABDK64x64 notional position of trader
|
|
408
|
+
* @param overrides
|
|
409
|
+
* @returns [maxShortPos, maxLongPos] signed maximal position sizes
|
|
410
|
+
*/
|
|
411
|
+
getMaxShortLongPos(perpId: number, currentTraderPos: bigint, overrides?: Overrides): Promise<[number, number]>;
|
|
412
|
+
private rmMaxOrderSizeForTrader;
|
|
390
413
|
/**
|
|
391
414
|
* Perpetual-wide maximal signed position size in perpetual.
|
|
392
415
|
* @param side BUY_SIDE or SELL_SIDE
|
|
@@ -474,6 +497,7 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
474
497
|
/**
|
|
475
498
|
* Get the current mark price
|
|
476
499
|
* @param symbol symbol of the form ETH-USD-MATIC
|
|
500
|
+
* @param indexPrices optional. IdxPriceInfo
|
|
477
501
|
* @example
|
|
478
502
|
* import { MarketData, PerpetualDataHandler } from '@d8x/perpetuals-sdk';
|
|
479
503
|
* async function main() {
|
|
@@ -490,11 +514,12 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
490
514
|
*
|
|
491
515
|
* @returns {number} mark price
|
|
492
516
|
*/
|
|
493
|
-
getMarkPrice(symbol: string, indexPrices?:
|
|
517
|
+
getMarkPrice(symbol: string, indexPrices?: IdxPriceInfo): Promise<number>;
|
|
494
518
|
/**
|
|
495
519
|
* get the current price for a given quantity
|
|
496
520
|
* @param symbol symbol of the form ETH-USD-MATIC
|
|
497
521
|
* @param quantity quantity to be traded, negative if short
|
|
522
|
+
* @param priceInfo [s2, s3, conf, params]; for non-prediction markets conf/params can be 0
|
|
498
523
|
* @example
|
|
499
524
|
* import { MarketData, PerpetualDataHandler } from '@d8x/perpetuals-sdk';
|
|
500
525
|
* async function main() {
|
|
@@ -511,13 +536,13 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
511
536
|
*
|
|
512
537
|
* @returns {number} price
|
|
513
538
|
*/
|
|
514
|
-
getPerpetualPrice(symbol: string, quantity: number,
|
|
539
|
+
getPerpetualPrice(symbol: string, quantity: number, priceInfo?: IdxPriceInfo, overrides?: Overrides): Promise<number>;
|
|
515
540
|
/**
|
|
516
541
|
* Query recent perpetual state from blockchain
|
|
517
542
|
* @param {string} symbol symbol of the form ETH-USD-MATIC
|
|
518
543
|
* @returns {PerpetualState} PerpetualState copy
|
|
519
544
|
*/
|
|
520
|
-
getPerpetualState(symbol: string, indexPriceInfo?:
|
|
545
|
+
getPerpetualState(symbol: string, indexPriceInfo?: IdxPriceInfo, overrides?: Overrides): Promise<PerpetualState>;
|
|
521
546
|
/**
|
|
522
547
|
* Query recent pool state from blockchain, not including perpetual states
|
|
523
548
|
* @param {string} poolSymbol symbol of the form USDC
|
|
@@ -584,7 +609,7 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
584
609
|
* Result is in collateral currency
|
|
585
610
|
* @param {string} traderAddr address of the trader
|
|
586
611
|
* @param {string} symbol perpetual symbol of the form BTC-USD-MATIC
|
|
587
|
-
* @param indexPrices optional
|
|
612
|
+
* @param indexPrices optional indexPriceInfo
|
|
588
613
|
* @returns available margin in collateral currency
|
|
589
614
|
* @example
|
|
590
615
|
* import { MarketData, PerpetualDataHandler } from '@d8x/perpetuals-sdk';
|
|
@@ -600,7 +625,7 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
600
625
|
* }
|
|
601
626
|
* main();
|
|
602
627
|
*/
|
|
603
|
-
getAvailableMargin(traderAddr: string, symbol: string, indexPrices?:
|
|
628
|
+
getAvailableMargin(traderAddr: string, symbol: string, indexPrices?: IdxPriceInfo, overrides?: Overrides): Promise<number>;
|
|
604
629
|
/**
|
|
605
630
|
* Calculate a type of exchange loyality score based on trader volume
|
|
606
631
|
* @param {string} traderAddr address of the trader
|
|
@@ -733,8 +758,5 @@ export default class MarketData extends PerpetualDataHandler {
|
|
|
733
758
|
* @param symbol Perpetual symbol of the form BTC-USDc-USDC
|
|
734
759
|
* @returns Prices and market-closed information
|
|
735
760
|
*/
|
|
736
|
-
fetchPricesForPerpetual(symbol: string): Promise<
|
|
737
|
-
idxPrices: number[];
|
|
738
|
-
mktClosed: boolean[];
|
|
739
|
-
}>;
|
|
761
|
+
fetchPricesForPerpetual(symbol: string): Promise<IdxPriceInfo>;
|
|
740
762
|
}
|