Constructs a LiquidatorTool instance for a given configuration and private key.
Example
import { LiquidatorTool, PerpetualDataHandler } from'@d8x/perpetuals-sdk';asyncfunctionmain() {console.log(LiquidatorTool);// load configuration for Polygon zkEVM (tesnet)constconfig=PerpetualDataHandler.readSDKConfig("cardona");// LiquidatorTool (authentication required, PK is an environment variable with a private key)constpk:string= <string>process.env.PK; let lqudtrTool = new LiquidatorTool(config, pk); // Create a proxy instance to access the blockchain await lqudtrTool.createProxyInstance();}main();
Check if the collateral of a trader is above the maintenance margin ("maintenance margin safe"). If not, the position can be liquidated.
Kind: instance method of LiquidatorToolReturns: boolean -
True if the trader is maintenance margin safe in the perpetual. False means that the trader's position can be liquidated.
Example
import { LiquidatorTool, PerpetualDataHandler } from'@d8x/perpetuals-sdk';asyncfunctionmain() {console.log(LiquidatorTool);// Setup (authentication required, PK is an environment variable with a private key)constconfig=PerpetualDataHandler.readSDKConfig("cardona");constpk:string= <string>process.env.PK; let lqudtrTool = new LiquidatorTool(config, pk); await lqudtrTool.createProxyInstance(); // check if trader can be liquidated let safe = await lqudtrTool.isMaintenanceMarginSafe("ETH-USD-MATIC", "0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B"); console.log(safe);}main();
liquidatorTool.countActivePerpAccounts(symbol) ⇒ number
Total number of active accounts for this symbol, i.e. accounts with positions that are currently open.
Kind: instance method of LiquidatorToolReturns: number -
Number of active accounts.
Example
import { LiquidatorTool, PerpetualDataHandler } from'@d8x/perpetuals-sdk';asyncfunctionmain() {console.log(LiquidatorTool);// Setup (authentication required, PK is an environment variable with a private key)constconfig=PerpetualDataHandler.readSDKConfig("cardona");constpk:string= <string>process.env.PK; let lqudtrTool = new LiquidatorTool(config, pk); await lqudtrTool.createProxyInstance(); // get number of active accounts let accounts = await lqudtrTool.countActivePerpAccounts("ETH-USD-MATIC"); console.log(accounts);}main();
Kind: instance method of LiquidatorToolReturns: Array.<string> -
Array of addresses at locations 'from', 'from'+1 ,..., 'to'-1.
Example
import { LiquidatorTool, PerpetualDataHandler } from'@d8x/perpetuals-sdk';asyncfunctionmain() {console.log(LiquidatorTool);// Setup (authentication required, PK is an environment variable with a private key)constconfig=PerpetualDataHandler.readSDKConfig("cardona");constpk:string= <string>process.env.PK; let lqudtrTool = new LiquidatorTool(config, pk); await lqudtrTool.createProxyInstance(); // get all active accounts in chunks let accounts = await lqudtrTool.getActiveAccountsByChunks("ETH-USD-MATIC", 0, 4); console.log(accounts);}main();
Addresses for all the active accounts in this perpetual symbol.
Kind: instance method of LiquidatorToolReturns: Array.<string> -
Array of addresses.
Example
import { LiquidatorTool, PerpetualDataHandler } from'@d8x/perpetuals-sdk';asyncfunctionmain() {console.log(LiquidatorTool);// Setup (authentication required, PK is an environment variable with a private key)constconfig=PerpetualDataHandler.readSDKConfig("cardona");constpk:string= <string>process.env.PK; let lqudtrTool = new LiquidatorTool(config, pk); await lqudtrTool.createProxyInstance(); // get all active accounts let accounts = await lqudtrTool.getAllActiveAccounts("ETH-USD-MATIC"); console.log(accounts);}main();
Param
Type
Description
Param
Type
Description
Param
Type
Description
Param
Type
Description
Param
Type
Description
Param
Type
Description
config
NodeSDKConfig
Configuration object, see PerpetualDataHandler. readSDKConfig.
signer
string | Signer
Private key or ethers Signer of the account
symbol
string
Symbol of the form ETH-USD-MATIC.
traderAddr
string
Address of the trader to be liquidated.
[liquidatorAddr]
string
Address to be credited if the liquidation succeeds.
priceFeedData
PriceFeedSubmission
optional. VAA and timestamps for oracle. If not provided will query from REST API. Defaults to the wallet used to execute the liquidation.
symbol
string
Symbol of the form ETH-USD-MATIC.
traderAddr
string
Address of the trader whose position you want to assess.