UNPKG

bitmart-api

Version:

Complete & robust Node.js SDK for BitMart's REST APIs and WebSockets, with TypeScript declarations.

216 lines 7.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FuturesClientV2 = void 0; const BaseRestClient_js_1 = require("./lib/BaseRestClient.js"); /** * REST API client for Bitmart's V2 Futures APIs via the "api-cloud-v2.bitmart.com" domain */ class FuturesClientV2 extends BaseRestClient_js_1.BaseRestClient { constructor(restClientOptions = {}, requestOptions = {}) { super(restClientOptions, requestOptions); return this; } getClientType() { return BaseRestClient_js_1.REST_CLIENT_TYPE_ENUM.mainV2; } /** * * System Status Endpoints * **/ getSystemTime() { return this.get('system/time'); } getSystemStatus() { return this.get('system/service'); } /** * ***************** * USD-M Futures V2 * ***************** * */ /** * * Futures Market Data * */ /** * Get a list of all symbols, including most recent price, rules (min/max precision/volume/etc) and other metrics (funding rate, open interest, contract expiry, etc). */ getFuturesContractDetails(params) { return this.get('contract/public/details', params); } getFuturesContractDepth(params) { return this.get('contract/public/depth', params); } getFuturesMarketTrade(params) { return this.get('contract/public/market-trade', params); } getFuturesOpenInterest(params) { return this.get('contract/public/open-interest', params); } getFuturesFundingRate(params) { return this.get('contract/public/funding-rate', params); } getFuturesKlines(params) { return this.get('contract/public/kline', params); } getFuturesMarkPriceKlines(params) { return this.get('contract/public/markprice-kline', params); } getFuturesFundingRateHistory(params) { return this.get('contract/public/funding-rate-history', params); } /** * Get current leverage risk limit for a specified contract * @param params Optional parameters including symbol * @returns Promise with leverage bracket information */ getFuturesLeverageBracket(params) { return this.get('contract/public/leverage-bracket', params); } /** * * Futures Account Data * */ getFuturesAccountAssets() { return this.getPrivate('contract/private/assets-detail'); } /** * * Futures Trading * */ getFuturesTradeFeeRate(params) { return this.getPrivate('contract/private/trade-fee-rate', params); } getFuturesAccountOrder(params) { return this.getPrivate('contract/private/order', params); } getFuturesAccountOrderHistory(params) { return this.getPrivate('contract/private/order-history', params); } getFuturesAccountOpenOrders(params) { return this.getPrivate('contract/private/get-open-orders', params); } getFuturesAccountPlanOrders(params) { return this.getPrivate('contract/private/current-plan-order', params); } getFuturesAccountPositions(params) { return this.getPrivate('contract/private/position', params); } getFuturesAccountPositionsV2(params) { return this.getPrivate('contract/private/position-v2', params); } /** * Get current position risk details */ getPositionRiskDetails(params) { return this.getPrivate('contract/private/position-risk', params); } getFuturesAccountTrades(params) { return this.getPrivate('contract/private/trades', params); } getFuturesAccountTransactionHistory(params) { return this.getPrivate('contract/private/transaction-history', params); } getFuturesTransfers(params) { return this.getPrivate('account/v1/transfer-contract-list', params); } submitFuturesOrder(params) { return this.postPrivate('contract/private/submit-order', params); } updateFuturesLimitOrder(params) { return this.postPrivate('contract/private/modify-limit-order', params); } cancelFuturesOrder(params) { return this.postPrivate('contract/private/cancel-order', params); } cancelAllFuturesOrders(params) { return this.postPrivate('contract/private/cancel-orders', params); } cancelAllFuturesOrdersAfter(params) { return this.postPrivate('contract/private/cancel-all-after', params); } submitFuturesPlanOrder(params) { return this.postPrivate('contract/private/submit-plan-order', params); } cancelFuturesPlanOrder(params) { return this.postPrivate('contract/private/cancel-plan-order', params); } submitFuturesTransfer(params) { return this.postPrivate('account/v1/transfer-contract', params); } setFuturesLeverage(params) { return this.postPrivate('contract/private/submit-leverage', params); } submitFuturesTPSLOrder(params) { return this.postPrivate('contract/private/submit-tp-sl-order', params); } updateFuturesPlanOrder(params) { return this.postPrivate('contract/private/modify-plan-order', params); } updateFuturesPresetPlanOrder(params) { return this.postPrivate('contract/private/modify-preset-plan-order', params); } updateFuturesTPSLOrder(params) { return this.postPrivate('contract/private/modify-tp-sl-order', params); } submitFuturesTrailOrder(params) { return this.postPrivate('contract/private/submit-trail-order', params); } cancelFuturesTrailOrder(params) { return this.postPrivate('contract/private/cancel-trail-order', params); } /** * Set position mode (hedge_mode or one_way_mode) */ setPositionMode(params) { return this.postPrivate('contract/private/set-position-mode', params); } /** * Get current position mode */ getPositionMode() { return this.getPrivate('contract/private/get-position-mode'); } /** * * Futures Sub-Account Endpoints * */ submitFuturesSubToMainTransferFromMain(params) { return this.postPrivate('account/contract/sub-account/main/v1/sub-to-main', params); } submitFuturesMainToSubTransferFromMain(params) { return this.postPrivate('account/contract/sub-account/main/v1/main-to-sub', params); } submitFuturesSubToMainSubFromSub(params) { return this.postPrivate('account/contract/sub-account/sub/v1/sub-to-main', params); } getFuturesSubWallet(params) { return this.getPrivate('account/contract/sub-account/main/v1/wallet', params); } getFuturesSubTransfers(params) { return this.getPrivate('account/contract/sub-account/main/v1/transfer-list', params); } getFuturesSubTransferHistory(params) { return this.getPrivate('account/contract/sub-account/v1/transfer-history', params); } /** * * Futures Affiliate Endpoints * */ getFuturesAffiliateRebates(params) { return this.getPrivate('contract/private/affiliate/rebate-list', params); } getFuturesAffiliateTrades(params) { return this.getPrivate('contract/private/affiliate/trade-list', params); } } exports.FuturesClientV2 = FuturesClientV2; //# sourceMappingURL=FuturesClientV2.js.map