UNPKG

okx-api

Version:

Complete Node.js SDK for OKX's REST APIs and WebSockets, with TypeScript & end-to-end tests

495 lines (494 loc) 10.8 kB
import { AccountLevel, MarginMode, PositionSide, WithdrawState } from '../shared.js'; export interface AccountBalanceDetail { availBal: string; availEq: string; cashBal: string; ccy: string; crossLiab: string; disEq: string; eq: string; eqUsd: string; frozenBal: string; interest: string; isoEq: string; isoLiab: string; isoUpl: string; liab: string; maxLoan: string; mgnRatio: string; notionalLever: string; ordFrozen: string; twap: string; uTime: string; upl: string; uplLiab: string; stgyEq: string; spotBal: string; openAvgPx: string[]; accAvgPx: string[]; spotUpl: string; spotUplRatio: string; totalPnl: string; totalPnlRatio: string; } export interface AccountBalance { adjEq: string; details: AccountBalanceDetail[]; imr: string; isoEq: string; mgnRatio: string; mmr: string; notionalUsd: string; notionalUsdForBorrow: string; notionalUsdForFutures: string; notionalUsdForOption: string; notionalUsdForSwap: string; ordFroz: string; totalEq: string; uTime: string; spotCopyTradingEq: string; upl: string; frpType?: string; delta: string; deltaLever: string; deltaNeutralStatus: string; } export interface AccountPosition { adl: string; availPos: string; avgPx: string; cTime: string; ccy: string; deltaBS: string; deltaPA: string; gammaBS: string; gammaPA: string; imr: string; instId: string; instType: string; interest: string; usdPx: string; last: string; lever: string; liab: string; liabCcy: string; liqPx: string; markPx: string; margin: string; mgnMode: MarginMode; mgnRatio: string; mmr: string; notionalUsd: string; optVal: string; pTime: string; pos: string; hedgedPos: string; posCcy: string; posId: string; posSide: PositionSide; thetaBS: string; thetaPA: string; tradeId: string; uTime: string; upl: string; uplRatio: string; vegaBS: string; vegaPA: string; } export interface HistoricAccountPosition { cTime: string; ccy: string; closeAvgPx: string; closeTotalPos: string; instId: string; instType: string; lever: string; mgnMode: MarginMode; openAvgPx: string; openMaxPos: string; pnl: string; pnlRatio: string; posId: string; posSide: PositionSide; triggerPx: string; type: string; uTime: string; uly: string; } export interface AccountBalanceRiskData { ccy: string; disEq: string; eq: string; } export interface AccountPositionRiskData { baseBal: string; ccy: string; instId: string; instType: string; mgnMode: MarginMode; notionalCcy: string; notionalUsd: string; pos: string; posCcy: string; posId: string; posSide: PositionSide; quoteBal: string; } export interface AccountPositionRisk { adjEq: string; balData: AccountBalanceRiskData[]; posData: AccountPositionRiskData[]; ts: string; } export interface AccountBill { bal: string; balChg: string; billId: string; ccy: string; execType: string; fee: string; from: string; instId: string; instType: string; mgnMode: MarginMode; notes: string; ordId: string; pnl: string; posBal: string; posBalChg: string; subType: string; sz: string; to: string; ts: string; type: string; earnAmt?: string; earnApr?: string; } export interface AccountHistoryBill { fileHref: string; result: string; ts: string; } export interface AccountConfiguration { acctLv: string; autoLoan: boolean; ctIsoMode: string; greeksType: string; level: string; levelTmp: string; mgnIsoMode: string; posMode: string; spotOffsetType: string; stgyType: string; uid: string; label: string; roleType: string; traderInsts: any[]; spotRoleType: string; spotTraderInsts: any[]; opAuth: string; kycLv: string; ip: string; perm: string; mainUid: string; discountType: '0' | '1'; enableSpotBorrow: boolean; spotBorrowAutoRepay: boolean; feeType: string; settleCcy: string; settleCcyList: string[]; } export interface AccountPositionModeResult { posMode: string; } export interface AccountModeResult { acctLv: AccountLevel; } export interface AutoLoanResult { autoLoan: boolean; } export interface AccountLeverageResult { lever: string; mgnMode: MarginMode; instId: string; posSide: PositionSide; } export interface AccountMaxOrderAmount { ccy: string; instId: string; maxBuy: string; maxSell: string; } export interface AccountMaxTradableAmount { instId: string; availBuy: string; availSell: string; } export interface AccountChangeMarginResult { amt: string; ccy: string; instId: string; leverage: string; posSide: PositionSide; type: string; } export interface AccountLeverage { instId: string; mgnMode: MarginMode; posSide: PositionSide; lever: string; } export interface AccountMaxLoan { instId: string; mgnMode: MarginMode; mgnCcy: string; maxLoan: string; ccy: string; side: string; } export interface FeeGroup { taker: string; maker: string; groupId: string; } export interface AccountFeeRate { category: never; delivery: string; exercise: string; instType: string; level: string; maker: string; makerU: string; taker: string; takerU: string; ts: string; ruleType: string; feeGroup?: FeeGroup[]; } export interface AccountIsolatedMode { isoMode: 'autonomy' | 'automatic'; } export interface AdjustLeverageInfo { estAvailQuoteTrans: string; estAvailTrans: string; estLiqPx: string; estMgn: string; estQuoteMgn: string; estMaxAmt: string; estQuoteMaxAmt: string; existOrd: boolean; maxLever: string; minLever: string; } export interface InterestAccrued { type: '1' | '2'; ccy: string; instId: string; mgnMode: MarginMode; interest: string; interestRate: string; liab: string; ts: string; } export interface InterestRate { interestRate: string; ccy: string; } export interface Greeks { greeksType: string; } export interface MaxWithdrawal { ccy: string; maxWd: string; maxWdEx: string; spotOffsetMaxWd: string; spotOffsetMaxWdEx: string; } export interface AccountRiskState { atRisk: string; atRiskIdx: string; atRiskMgn: string; ts: string; } export interface WithdrawalHistory { ccy: string; chain: string; nonTradableAsset: boolean; amt: string; ts: string; from: string; areaCodeFrom: string; to: string; areaCodeTo: string; tag: string; pmtId: string; memo: string; addrExt: any; txId: string; fee: string; feeCcy: string; state: WithdrawState; wdId: string; clientId: string; } export interface AccountInstrument { baseCcy: string; ctMult: string; ctType: string; ctVal: string; ctValCcy: string; expTime: string; instFamily: string; instId: string; instType: string; lever: string; listTime: string; contTdSwTime: string; preMktSwTime: string; lotSz: string; maxIcebergSz: string; maxLmtAmt: string; maxLmtSz: string; maxMktAmt: string; maxMktSz: string; maxStopSz: string; maxTriggerSz: string; maxTwapSz: string; minSz: string; optType: string; openType: string; quoteCcy: string; tradeQuoteCcyList: string[]; settleCcy: string; state: string; stk: string; tickSz: string; ruleType: string; auctionEndTime: string; futureSettlement: boolean; instIdCode: number; posLmtAmt: string; posLmtPct: string; maxPlatOILmt: string; groupId?: string; } export interface QuickMarginBorrowRepayResult { instId: string; ccy: string; side: 'borrow' | 'repay'; amt: string; posSide: string; ts: string; } export interface QuickMarginBorrowRepayRecord { instId: string; ccy: string; side: 'borrow' | 'repay'; accBorrowed: string; amt: string; refId: string; ts: string; } export interface VIPInterest { ordId: string; ccy: string; interest: string; interestRate: string; liab: string; ts: string; } export interface VIPLoanOrder { ts: string; nextRefreshTime: string; ccy: string; ordId: string; state: '1' | '2' | '3' | '4' | '5'; origRate: string; curRate: string; dueAmt: string; borrowAmt: string; repayAmt: string; } export interface VIPLoanOrderDetail { amt: string; ccy: string; failReason: string; rate: string; ts: string; type: '1' | '2' | '3' | '4'; } export interface FixedLoanBorrowingLimitDetail { ccy: string; used: string; borrowed: string; availBorrow: string; minBorrow: string; term: string; } export interface FixedLoanBorrowingLimit { totalBorrowLmt: string; totalAvailBorrow: string; borrowed: string; used: string; availRepay: string; details: FixedLoanBorrowingLimitDetail[]; ts: string; } export interface FixedLoanBorrowQuote { ccy: string; term: string; estAvailBorrow: string; estRate: string; estInterest: string; penaltyInterest: string; ts: string; } export interface SetMMPConfigResult { instFamily: string; timeInterval: string; frozenInterval: string; qtyLimit: string; } export interface MMPConfig { frozenInterval: string; instFamily: string; mmpFrozen: boolean; mmpFrozenUntil: string; qtyLimit: string; timeInterval: string; } export interface BorrowRepayHistoryItem { ccy: string; type: 'auto_borrow' | 'auto_repay' | 'manual_borrow' | 'manual_repay'; amt: string; accBorrowed: string; ts: string; } export interface SetCollateralAssetsResult { type: 'all' | 'custom'; ccyList: string[]; collateralEnabled: boolean; } export interface GetCollateralAssetsResult { ccy: string; collateralEnabled: boolean; } export interface SetSettleCurrencyResult { settleCcy: string; } export interface SetFeeTypeResult { feeType: string; } export interface SetTradingConfigResult { type: string; stgyType: string; } export interface UnmatchedInfo { type: string; deltaLever?: string; ordList?: string[]; posList?: string[]; } export interface PrecheckSetDeltaNeutralResult { unmatchedInfoCheck: UnmatchedInfo[]; }