bybit-api 3.1.3 → 3.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.
- package/README.md +5 -3
- package/lib/constants/enum.d.ts +6 -0
- package/lib/constants/enum.js +6 -0
- package/lib/constants/enum.js.map +1 -1
- package/lib/contract-client.d.ts +118 -0
- package/lib/contract-client.js +233 -0
- package/lib/contract-client.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/types/request/contract.d.ts +115 -0
- package/lib/types/request/contract.js +3 -0
- package/lib/types/request/contract.js.map +1 -0
- package/lib/types/request/index.d.ts +1 -0
- package/lib/types/request/index.js +1 -0
- package/lib/types/request/index.js.map +1 -1
- package/lib/types/shared.d.ts +2 -1
- package/lib/types/websockets.d.ts +1 -1
- package/lib/usdc-perpetual-client.js +1 -0
- package/lib/usdc-perpetual-client.js.map +1 -1
- package/lib/util/websocket-util.d.ts +4 -0
- package/lib/util/websocket-util.js +46 -1
- package/lib/util/websocket-util.js.map +1 -1
- package/lib/websocket-client.d.ts +6 -1
- package/lib/websocket-client.js +77 -19
- package/lib/websocket-client.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
Node.js connector for the Bybit APIs and WebSockets:
|
|
12
12
|
- Complete integration with all bybit APIs.
|
|
13
13
|
- TypeScript support (with type declarations for most API requests & responses).
|
|
14
|
-
- Over 300
|
|
14
|
+
- Over 300 end-to-end tests making real API calls & WebSocket connections, validating any changes before they reach npm.
|
|
15
15
|
- Robust WebSocket integration with configurable connection heartbeats & automatic reconnect then resubscribe workflows.
|
|
16
16
|
- Browser support (via webpack bundle - see "Browser Usage" below).
|
|
17
17
|
|
|
@@ -25,10 +25,10 @@ Node.js connector for the Bybit APIs and WebSockets:
|
|
|
25
25
|
## Related projects
|
|
26
26
|
Check out my related projects:
|
|
27
27
|
- Try my connectors:
|
|
28
|
-
- [ftx-api](https://www.npmjs.com/package/ftx-api)
|
|
29
|
-
- [bybit-api](https://www.npmjs.com/package/bybit-api)
|
|
30
28
|
- [binance](https://www.npmjs.com/package/binance)
|
|
29
|
+
- [bybit-api](https://www.npmjs.com/package/bybit-api)
|
|
31
30
|
- [okx-api](https://www.npmjs.com/package/okx-api)
|
|
31
|
+
- [ftx-api](https://www.npmjs.com/package/ftx-api)
|
|
32
32
|
- Try my misc utilities:
|
|
33
33
|
- [orderbooks](https://www.npmjs.com/package/orderbooks)
|
|
34
34
|
- Check out my examples:
|
|
@@ -180,6 +180,8 @@ The WebsocketClient can be configured to a specific API group using the market p
|
|
|
180
180
|
| Copy Trading | `market: 'linear'` | The [copy trading](https://bybit-exchange.github.io/docs/copy_trading/#t-websocket) category. Use the linear market to listen to all copy trading topics. |
|
|
181
181
|
| USDC Perps | `market: 'usdcPerp` | The [USDC perps](https://bybit-exchange.github.io/docs/usdc/perpetual/#t-websocket) category. |
|
|
182
182
|
| USDC Options | `market: 'usdcOption'`| The [USDC options](https://bybit-exchange.github.io/docs/usdc/option/#t-websocket) category. |
|
|
183
|
+
| Contract v3 USDT | `market: 'contractUSDT'`| The [Contract V3](https://bybit-exchange.github.io/docs/derivativesV3/contract/#t-websocket) category (USDT perps) |
|
|
184
|
+
| Contract v3 Inverse | `market: 'contractInverse'`| The [Contract V3](https://bybit-exchange.github.io/docs/derivativesV3/contract/#t-websocket) category (inverse perps) |
|
|
183
185
|
|
|
184
186
|
```javascript
|
|
185
187
|
const { WebsocketClient } = require('bybit-api');
|
package/lib/constants/enum.d.ts
CHANGED
|
@@ -52,6 +52,12 @@ export declare const API_ERROR_CODE: {
|
|
|
52
52
|
readonly INSUFFICIENT_BALANCE_FOR_ORDER_COST_LINEAR: 130080;
|
|
53
53
|
readonly SAME_SLTP_MODE_LINEAR: 130150;
|
|
54
54
|
readonly RISK_ID_NOT_MODIFIED: 134026;
|
|
55
|
+
readonly CONTRACT_ORDER_NOT_EXISTS: 140001;
|
|
56
|
+
readonly CONTRACT_INSUFFICIENT_BALANCE: 140007;
|
|
57
|
+
readonly CONTRACT_POSITION_MODE_NOT_MODIFIED: 140025;
|
|
58
|
+
readonly CONTRACT_MARGIN_MODE_NOT_MODIFIED: 140026;
|
|
59
|
+
readonly CONTRACT_RISK_LIMIT_INFO_NOT_EXISTS: 140031;
|
|
60
|
+
readonly CONTRACT_SET_LEVERAGE_NOT_MODIFIED: 140043;
|
|
55
61
|
/** E.g. USDC Options trading, trying to access a symbol that is no longer active */
|
|
56
62
|
readonly CONTRACT_NAME_NOT_EXIST: 3100111;
|
|
57
63
|
readonly ORDER_NOT_EXIST: 3100136;
|
package/lib/constants/enum.js
CHANGED
|
@@ -55,6 +55,12 @@ exports.API_ERROR_CODE = {
|
|
|
55
55
|
INSUFFICIENT_BALANCE_FOR_ORDER_COST_LINEAR: 130080,
|
|
56
56
|
SAME_SLTP_MODE_LINEAR: 130150,
|
|
57
57
|
RISK_ID_NOT_MODIFIED: 134026,
|
|
58
|
+
CONTRACT_ORDER_NOT_EXISTS: 140001,
|
|
59
|
+
CONTRACT_INSUFFICIENT_BALANCE: 140007,
|
|
60
|
+
CONTRACT_POSITION_MODE_NOT_MODIFIED: 140025,
|
|
61
|
+
CONTRACT_MARGIN_MODE_NOT_MODIFIED: 140026,
|
|
62
|
+
CONTRACT_RISK_LIMIT_INFO_NOT_EXISTS: 140031,
|
|
63
|
+
CONTRACT_SET_LEVERAGE_NOT_MODIFIED: 140043,
|
|
58
64
|
/** E.g. USDC Options trading, trying to access a symbol that is no longer active */
|
|
59
65
|
CONTRACT_NAME_NOT_EXIST: 3100111,
|
|
60
66
|
ORDER_NOT_EXIST: 3100136,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enum.js","sourceRoot":"","sources":["../../src/constants/enum.ts"],"names":[],"mappings":";;;AAAa,QAAA,sBAAsB,GAAG;IACpC,UAAU,EAAE,cAAc;IAC1B,SAAS,EAAE,UAAU;CACb,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAClC,4HAA4H;IAC5H,IAAI,EAAE,MAAM;IACZ,sHAAsH;IACtH,OAAO,EAAE,SAAS;CACV,CAAC;AAEE,QAAA,cAAc,GAAG;IAC5B,yBAAyB,EAAE,CAAC,IAAI;IAChC,gCAAgC,EAAE,CAAC,IAAI;IACvC,OAAO,EAAE,CAAC;IACV,0FAA0F;IAC1F,uBAAuB,EAAE,KAAK;IAC9B,8BAA8B,EAAE,KAAK;IACrC,mBAAmB,EAAE,KAAK;IAC1B,6BAA6B,EAAE,KAAK;IACpC,4BAA4B,EAAE,OAAO;IACrC,kDAAkD;IAClD,mBAAmB,EAAE,KAAK;IAC1B,aAAa,EAAE,KAAK;IACpB,4BAA4B,EAAE,KAAK;IACnC,uBAAuB,EAAE,KAAK;IAC9B,+BAA+B,EAAE,KAAK;IACtC,oCAAoC,EAAE,KAAK;IAC3C,wBAAwB,EAAE,KAAK;IAC/B,2BAA2B,EAAE,KAAK;IAClC,mCAAmC,EAAE,KAAK;IAC1C,2BAA2B,EAAE,KAAK;IAClC,0BAA0B,EAAE,KAAK;IACjC,oCAAoC,EAAE,KAAK;IAC3C,iCAAiC;IACjC,mCAAmC,EAAE,KAAK;IAC1C,oCAAoC,EAAE,KAAK;IAC3C,+CAA+C;IAC/C,oBAAoB,EAAE,KAAK;IAC3B,2DAA2D;IAC3D,wBAAwB,EAAE,KAAK;IAC/B,0BAA0B,EAAE,KAAK;IACjC,qBAAqB,EAAE,KAAK;IAC5B,qBAAqB,EAAE,KAAK;IAC5B,qBAAqB,EAAE,KAAK;IAC5B,cAAc,EAAE,KAAK;IACrB,kCAAkC,EAAE,MAAM;IAC1C,wBAAwB,EAAE,MAAM;IAChC,2CAA2C,EAAE,MAAM;IACnD,4BAA4B,EAAE,MAAM;IACpC,qBAAqB,EAAE,MAAM;IAC7B,4BAA4B,EAAE,MAAM;IACpC,0CAA0C,EAAE,MAAM;IAClD,qBAAqB,EAAE,MAAM;IAC7B,oBAAoB,EAAE,MAAM;IAC5B,oFAAoF;IACpF,uBAAuB,EAAE,OAAO;IAChC,eAAe,EAAE,OAAO;IACxB,eAAe,EAAE,OAAO;IACxB,yFAAyF;IACzF,iBAAiB,EAAE,OAAO;IAC1B,wBAAwB,EAAE,OAAO;IACjC,+BAA+B,EAAE,OAAO;CAChC,CAAC;AAEX;;;GAGG;AACH,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,qEAAc,CAAA;IACd,+DAAW,CAAA;IACX,iEAAY,CAAA;AACd,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B"}
|
|
1
|
+
{"version":3,"file":"enum.js","sourceRoot":"","sources":["../../src/constants/enum.ts"],"names":[],"mappings":";;;AAAa,QAAA,sBAAsB,GAAG;IACpC,UAAU,EAAE,cAAc;IAC1B,SAAS,EAAE,UAAU;CACb,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAClC,4HAA4H;IAC5H,IAAI,EAAE,MAAM;IACZ,sHAAsH;IACtH,OAAO,EAAE,SAAS;CACV,CAAC;AAEE,QAAA,cAAc,GAAG;IAC5B,yBAAyB,EAAE,CAAC,IAAI;IAChC,gCAAgC,EAAE,CAAC,IAAI;IACvC,OAAO,EAAE,CAAC;IACV,0FAA0F;IAC1F,uBAAuB,EAAE,KAAK;IAC9B,8BAA8B,EAAE,KAAK;IACrC,mBAAmB,EAAE,KAAK;IAC1B,6BAA6B,EAAE,KAAK;IACpC,4BAA4B,EAAE,OAAO;IACrC,kDAAkD;IAClD,mBAAmB,EAAE,KAAK;IAC1B,aAAa,EAAE,KAAK;IACpB,4BAA4B,EAAE,KAAK;IACnC,uBAAuB,EAAE,KAAK;IAC9B,+BAA+B,EAAE,KAAK;IACtC,oCAAoC,EAAE,KAAK;IAC3C,wBAAwB,EAAE,KAAK;IAC/B,2BAA2B,EAAE,KAAK;IAClC,mCAAmC,EAAE,KAAK;IAC1C,2BAA2B,EAAE,KAAK;IAClC,0BAA0B,EAAE,KAAK;IACjC,oCAAoC,EAAE,KAAK;IAC3C,iCAAiC;IACjC,mCAAmC,EAAE,KAAK;IAC1C,oCAAoC,EAAE,KAAK;IAC3C,+CAA+C;IAC/C,oBAAoB,EAAE,KAAK;IAC3B,2DAA2D;IAC3D,wBAAwB,EAAE,KAAK;IAC/B,0BAA0B,EAAE,KAAK;IACjC,qBAAqB,EAAE,KAAK;IAC5B,qBAAqB,EAAE,KAAK;IAC5B,qBAAqB,EAAE,KAAK;IAC5B,cAAc,EAAE,KAAK;IACrB,kCAAkC,EAAE,MAAM;IAC1C,wBAAwB,EAAE,MAAM;IAChC,2CAA2C,EAAE,MAAM;IACnD,4BAA4B,EAAE,MAAM;IACpC,qBAAqB,EAAE,MAAM;IAC7B,4BAA4B,EAAE,MAAM;IACpC,0CAA0C,EAAE,MAAM;IAClD,qBAAqB,EAAE,MAAM;IAC7B,oBAAoB,EAAE,MAAM;IAC5B,yBAAyB,EAAE,MAAM;IACjC,6BAA6B,EAAE,MAAM;IACrC,mCAAmC,EAAE,MAAM;IAC3C,iCAAiC,EAAE,MAAM;IACzC,mCAAmC,EAAE,MAAM;IAC3C,kCAAkC,EAAE,MAAM;IAC1C,oFAAoF;IACpF,uBAAuB,EAAE,OAAO;IAChC,eAAe,EAAE,OAAO;IACxB,eAAe,EAAE,OAAO;IACxB,yFAAyF;IACzF,iBAAiB,EAAE,OAAO;IAC1B,wBAAwB,EAAE,OAAO;IACjC,+BAA+B,EAAE,OAAO;CAChC,CAAC;AAEX;;;GAGG;AACH,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,qEAAc,CAAA;IACd,+DAAW,CAAA;IACX,iEAAY,CAAA;AACd,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { APIResponseWithTime, APIResponseV3, UMCandlesRequest, UMCategory, UMFundingRateHistoryRequest, UMInstrumentInfoRequest, UMOpenInterestRequest, UMOptionDeliveryPriceRequest, UMPublicTradesRequest, ContractOrderRequest, ContractHistoricOrdersRequest, ContractCancelOrderRequest, ContractModifyOrderRequest, ContractActiveOrdersRequest, ContractPositionsRequest, ContractSetAutoAddMarginRequest, ContractSetMarginSwitchRequest, ContractSetPositionModeRequest, ContractSetTPSLRequest, ContractUserExecutionHistoryRequest, ContractClosedPNLRequest, ContractWalletFundRecordRequest } from './types';
|
|
2
|
+
import BaseRestClient from './util/BaseRestClient';
|
|
3
|
+
/**
|
|
4
|
+
* REST API client for Derivatives V3 Contract APIs
|
|
5
|
+
*/
|
|
6
|
+
export declare class ContractClient extends BaseRestClient {
|
|
7
|
+
getClientType(): "v3";
|
|
8
|
+
fetchServerTime(): Promise<number>;
|
|
9
|
+
/**
|
|
10
|
+
*
|
|
11
|
+
* Market Data Endpoints : these seem exactly the same as the unified margin market data endpoints
|
|
12
|
+
*
|
|
13
|
+
*/
|
|
14
|
+
/** Query order book info. Each side has a depth of 25 orders. */
|
|
15
|
+
getOrderBook(symbol: string, category: string, limit?: number): Promise<APIResponseV3<any>>;
|
|
16
|
+
/** Get candles/klines */
|
|
17
|
+
getCandles(params: UMCandlesRequest): Promise<APIResponseV3<any>>;
|
|
18
|
+
/** Get a symbol price/statistics ticker */
|
|
19
|
+
getSymbolTicker(category: UMCategory, symbol?: string): Promise<APIResponseV3<any>>;
|
|
20
|
+
/** Get trading rules per symbol/contract, incl price/amount/value/leverage filters */
|
|
21
|
+
getInstrumentInfo(params: UMInstrumentInfoRequest): Promise<APIResponseV3<any>>;
|
|
22
|
+
/** Query mark price kline (like getCandles() but for mark price). */
|
|
23
|
+
getMarkPriceCandles(params: UMCandlesRequest): Promise<APIResponseV3<any>>;
|
|
24
|
+
/** Query Index Price Kline */
|
|
25
|
+
getIndexPriceCandles(params: UMCandlesRequest): Promise<APIResponseV3<any>>;
|
|
26
|
+
/**
|
|
27
|
+
* The funding rate is generated every 8 hours at 00:00 UTC, 08:00 UTC and 16:00 UTC.
|
|
28
|
+
* For example, if a request is sent at 12:00 UTC, the funding rate generated earlier that day at 08:00 UTC will be sent.
|
|
29
|
+
*/
|
|
30
|
+
getFundingRateHistory(params: UMFundingRateHistoryRequest): Promise<APIResponseV3<any>>;
|
|
31
|
+
/** Get Risk Limit */
|
|
32
|
+
getRiskLimit(category: UMCategory, symbol: string): Promise<APIResponseV3<any>>;
|
|
33
|
+
/** Get option delivery price */
|
|
34
|
+
getOptionDeliveryPrice(params: UMOptionDeliveryPriceRequest): Promise<APIResponseV3<any>>;
|
|
35
|
+
/** Get public trading history */
|
|
36
|
+
getTrades(params: UMPublicTradesRequest): Promise<APIResponseV3<any>>;
|
|
37
|
+
/**
|
|
38
|
+
* Gets the total amount of unsettled contracts.
|
|
39
|
+
* In other words, the total number of contracts held in open positions.
|
|
40
|
+
*/
|
|
41
|
+
getOpenInterest(params: UMOpenInterestRequest): Promise<APIResponseV3<any>>;
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* Contract Account Endpoints
|
|
45
|
+
*
|
|
46
|
+
*/
|
|
47
|
+
/** -> Order API */
|
|
48
|
+
/** Place an order */
|
|
49
|
+
submitOrder(params: ContractOrderRequest): Promise<APIResponseV3<any>>;
|
|
50
|
+
/** Query order history. As order creation/cancellation is asynchronous, the data returned from the interface may be delayed. To access order information in real-time, call getActiveOrders() */
|
|
51
|
+
getHistoricOrders(params: ContractHistoricOrdersRequest): Promise<APIResponseV3<any>>;
|
|
52
|
+
/** Cancel order */
|
|
53
|
+
cancelOrder(params: ContractCancelOrderRequest): Promise<APIResponseV3<any>>;
|
|
54
|
+
/** Cancel all orders */
|
|
55
|
+
cancelAllOrders(symbol: string): Promise<APIResponseV3<any>>;
|
|
56
|
+
/** Replace order : Active order parameters (such as quantity, price) and stop order parameters cannot be modified in one request at the same time. Please request modification separately. */
|
|
57
|
+
modifyOrder(params: ContractModifyOrderRequest): Promise<APIResponseV3<any>>;
|
|
58
|
+
/** Query Open Order(s) (real-time) */
|
|
59
|
+
getActiveOrders(params: ContractActiveOrdersRequest): Promise<APIResponseV3<any>>;
|
|
60
|
+
/** -> Positions API */
|
|
61
|
+
/**
|
|
62
|
+
* Query my positions real-time. Accessing personal list of positions.
|
|
63
|
+
* Either symbol or settleCoin is required.
|
|
64
|
+
* Users can access their position holding information through this interface, such as the number of position holdings and wallet balance.
|
|
65
|
+
*/
|
|
66
|
+
getPositions(params?: ContractPositionsRequest): Promise<APIResponseV3<any>>;
|
|
67
|
+
/** Set auto add margin, or Auto-Margin Replenishment. */
|
|
68
|
+
setAutoAddMargin(params: ContractSetAutoAddMarginRequest): Promise<APIResponseV3<any>>;
|
|
69
|
+
/** Switch cross margin mode/isolated margin mode */
|
|
70
|
+
setMarginSwitch(params: ContractSetMarginSwitchRequest): Promise<APIResponseV3<any>>;
|
|
71
|
+
/** Supports switching between One-Way Mode and Hedge Mode at the coin level. */
|
|
72
|
+
setPositionMode(params: ContractSetPositionModeRequest): Promise<APIResponseV3<any>>;
|
|
73
|
+
/**
|
|
74
|
+
* Switch mode between Full or Partial
|
|
75
|
+
*/
|
|
76
|
+
setTPSLMode(symbol: string, tpSlMode: 'Full' | 'Partial'): Promise<APIResponseV3<any>>;
|
|
77
|
+
/** Leverage setting. */
|
|
78
|
+
setLeverage(symbol: string, buyLeverage: string, sellLeverage: string): Promise<APIResponseV3<any>>;
|
|
79
|
+
/**
|
|
80
|
+
* Set take profit, stop loss, and trailing stop for your open position.
|
|
81
|
+
* If using partial mode, TP/SL/TS orders will not close your entire position.
|
|
82
|
+
*/
|
|
83
|
+
setTPSL(params: ContractSetTPSLRequest): Promise<APIResponseV3<any>>;
|
|
84
|
+
/** Set risk limit */
|
|
85
|
+
setRiskLimit(symbol: string, riskId: number,
|
|
86
|
+
/** 0-one-way, 1-buy side, 2-sell side */
|
|
87
|
+
positionIdx: 0 | 1 | 2): Promise<APIResponseV3<any>>;
|
|
88
|
+
/**
|
|
89
|
+
* Get user's trading records.
|
|
90
|
+
* The results are ordered in descending order (the first item is the latest). Returns records up to 2 years old.
|
|
91
|
+
*/
|
|
92
|
+
getUserExecutionHistory(params: ContractUserExecutionHistoryRequest): Promise<APIResponseV3<any>>;
|
|
93
|
+
/**
|
|
94
|
+
* Get user's closed profit and loss records.
|
|
95
|
+
* The results are ordered in descending order (the first item is the latest).
|
|
96
|
+
*/
|
|
97
|
+
getClosedProfitAndLoss(params: ContractClosedPNLRequest): Promise<APIResponseV3<any>>;
|
|
98
|
+
/** Get the information of open interest limit. */
|
|
99
|
+
getOpenInterestLimitInfo(symbol: string): Promise<APIResponseV3<any>>;
|
|
100
|
+
/** -> Account API */
|
|
101
|
+
/** Query wallet balance */
|
|
102
|
+
getBalances(coin?: string): Promise<APIResponseV3<any>>;
|
|
103
|
+
/** Get user trading fee rate */
|
|
104
|
+
getTradingFeeRate(symbol?: string): Promise<APIResponseV3<any>>;
|
|
105
|
+
/**
|
|
106
|
+
* Get wallet fund records.
|
|
107
|
+
* This endpoint also shows exchanges from the Asset Exchange, where the types for the exchange are ExchangeOrderWithdraw and ExchangeOrderDeposit.
|
|
108
|
+
* This endpoint returns incomplete information for transfers involving the derivatives wallet.
|
|
109
|
+
* Use the account asset API for creating and querying internal transfers.
|
|
110
|
+
*/
|
|
111
|
+
getWalletFundRecords(params?: ContractWalletFundRecordRequest): Promise<APIResponseV3<any>>;
|
|
112
|
+
/**
|
|
113
|
+
*
|
|
114
|
+
* API Data Endpoints
|
|
115
|
+
*
|
|
116
|
+
*/
|
|
117
|
+
getServerTime(): Promise<APIResponseWithTime>;
|
|
118
|
+
}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.ContractClient = void 0;
|
|
16
|
+
const util_1 = require("./util");
|
|
17
|
+
const BaseRestClient_1 = __importDefault(require("./util/BaseRestClient"));
|
|
18
|
+
/**
|
|
19
|
+
* REST API client for Derivatives V3 Contract APIs
|
|
20
|
+
*/
|
|
21
|
+
class ContractClient extends BaseRestClient_1.default {
|
|
22
|
+
getClientType() {
|
|
23
|
+
// Follows the same authentication mechanism as other v3 APIs (e.g. USDC)
|
|
24
|
+
return util_1.REST_CLIENT_TYPE_ENUM.v3;
|
|
25
|
+
}
|
|
26
|
+
fetchServerTime() {
|
|
27
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
const res = yield this.getServerTime();
|
|
29
|
+
return Number(res.time_now);
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
*
|
|
34
|
+
* Market Data Endpoints : these seem exactly the same as the unified margin market data endpoints
|
|
35
|
+
*
|
|
36
|
+
*/
|
|
37
|
+
/** Query order book info. Each side has a depth of 25 orders. */
|
|
38
|
+
getOrderBook(symbol, category, limit) {
|
|
39
|
+
return this.get('/derivatives/v3/public/order-book/L2', {
|
|
40
|
+
category,
|
|
41
|
+
symbol,
|
|
42
|
+
limit,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/** Get candles/klines */
|
|
46
|
+
getCandles(params) {
|
|
47
|
+
return this.get('/derivatives/v3/public/kline', params);
|
|
48
|
+
}
|
|
49
|
+
/** Get a symbol price/statistics ticker */
|
|
50
|
+
getSymbolTicker(category, symbol) {
|
|
51
|
+
return this.get('/derivatives/v3/public/tickers', { category, symbol });
|
|
52
|
+
}
|
|
53
|
+
/** Get trading rules per symbol/contract, incl price/amount/value/leverage filters */
|
|
54
|
+
getInstrumentInfo(params) {
|
|
55
|
+
return this.get('/derivatives/v3/public/instruments-info', params);
|
|
56
|
+
}
|
|
57
|
+
/** Query mark price kline (like getCandles() but for mark price). */
|
|
58
|
+
getMarkPriceCandles(params) {
|
|
59
|
+
return this.get('/derivatives/v3/public/mark-price-kline', params);
|
|
60
|
+
}
|
|
61
|
+
/** Query Index Price Kline */
|
|
62
|
+
getIndexPriceCandles(params) {
|
|
63
|
+
return this.get('/derivatives/v3/public/index-price-kline', params);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The funding rate is generated every 8 hours at 00:00 UTC, 08:00 UTC and 16:00 UTC.
|
|
67
|
+
* For example, if a request is sent at 12:00 UTC, the funding rate generated earlier that day at 08:00 UTC will be sent.
|
|
68
|
+
*/
|
|
69
|
+
getFundingRateHistory(params) {
|
|
70
|
+
return this.get('/derivatives/v3/public/funding/history-funding-rate', params);
|
|
71
|
+
}
|
|
72
|
+
/** Get Risk Limit */
|
|
73
|
+
getRiskLimit(category, symbol) {
|
|
74
|
+
return this.get('/derivatives/v3/public/risk-limit/list', {
|
|
75
|
+
category,
|
|
76
|
+
symbol,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
/** Get option delivery price */
|
|
80
|
+
getOptionDeliveryPrice(params) {
|
|
81
|
+
return this.get('/derivatives/v3/public/delivery-price', params);
|
|
82
|
+
}
|
|
83
|
+
/** Get public trading history */
|
|
84
|
+
getTrades(params) {
|
|
85
|
+
return this.get('/derivatives/v3/public/recent-trade', params);
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Gets the total amount of unsettled contracts.
|
|
89
|
+
* In other words, the total number of contracts held in open positions.
|
|
90
|
+
*/
|
|
91
|
+
getOpenInterest(params) {
|
|
92
|
+
return this.get('/derivatives/v3/public/open-interest', params);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
*
|
|
96
|
+
* Contract Account Endpoints
|
|
97
|
+
*
|
|
98
|
+
*/
|
|
99
|
+
/** -> Order API */
|
|
100
|
+
/** Place an order */
|
|
101
|
+
submitOrder(params) {
|
|
102
|
+
return this.postPrivate('/contract/v3/private/order/create', params);
|
|
103
|
+
}
|
|
104
|
+
/** Query order history. As order creation/cancellation is asynchronous, the data returned from the interface may be delayed. To access order information in real-time, call getActiveOrders() */
|
|
105
|
+
getHistoricOrders(params) {
|
|
106
|
+
return this.getPrivate('/contract/v3/private/order/list', params);
|
|
107
|
+
}
|
|
108
|
+
/** Cancel order */
|
|
109
|
+
cancelOrder(params) {
|
|
110
|
+
return this.postPrivate('/contract/v3/private/order/cancel', params);
|
|
111
|
+
}
|
|
112
|
+
/** Cancel all orders */
|
|
113
|
+
cancelAllOrders(symbol) {
|
|
114
|
+
return this.postPrivate('/contract/v3/private/order/cancel-all', {
|
|
115
|
+
symbol,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
/** Replace order : Active order parameters (such as quantity, price) and stop order parameters cannot be modified in one request at the same time. Please request modification separately. */
|
|
119
|
+
modifyOrder(params) {
|
|
120
|
+
return this.postPrivate('/contract/v3/private/order/replace', params);
|
|
121
|
+
}
|
|
122
|
+
/** Query Open Order(s) (real-time) */
|
|
123
|
+
getActiveOrders(params) {
|
|
124
|
+
return this.getPrivate('/contract/v3/private/order/unfilled-orders', params);
|
|
125
|
+
}
|
|
126
|
+
/** -> Positions API */
|
|
127
|
+
/**
|
|
128
|
+
* Query my positions real-time. Accessing personal list of positions.
|
|
129
|
+
* Either symbol or settleCoin is required.
|
|
130
|
+
* Users can access their position holding information through this interface, such as the number of position holdings and wallet balance.
|
|
131
|
+
*/
|
|
132
|
+
getPositions(params) {
|
|
133
|
+
return this.getPrivate('/contract/v3/private/position/list', params);
|
|
134
|
+
}
|
|
135
|
+
/** Set auto add margin, or Auto-Margin Replenishment. */
|
|
136
|
+
setAutoAddMargin(params) {
|
|
137
|
+
return this.postPrivate('/contract/v3/private/position/set-auto-add-margin', params);
|
|
138
|
+
}
|
|
139
|
+
/** Switch cross margin mode/isolated margin mode */
|
|
140
|
+
setMarginSwitch(params) {
|
|
141
|
+
return this.postPrivate('/contract/v3/private/position/switch-isolated', params);
|
|
142
|
+
}
|
|
143
|
+
/** Supports switching between One-Way Mode and Hedge Mode at the coin level. */
|
|
144
|
+
setPositionMode(params) {
|
|
145
|
+
return this.postPrivate('/contract/v3/private/position/switch-mode', params);
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Switch mode between Full or Partial
|
|
149
|
+
*/
|
|
150
|
+
setTPSLMode(symbol, tpSlMode) {
|
|
151
|
+
return this.postPrivate('/contract/v3/private/position/switch-tpsl-mode', {
|
|
152
|
+
symbol,
|
|
153
|
+
tpSlMode,
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
/** Leverage setting. */
|
|
157
|
+
setLeverage(symbol, buyLeverage, sellLeverage) {
|
|
158
|
+
return this.postPrivate('/contract/v3/private/position/set-leverage', {
|
|
159
|
+
symbol,
|
|
160
|
+
buyLeverage,
|
|
161
|
+
sellLeverage,
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Set take profit, stop loss, and trailing stop for your open position.
|
|
166
|
+
* If using partial mode, TP/SL/TS orders will not close your entire position.
|
|
167
|
+
*/
|
|
168
|
+
setTPSL(params) {
|
|
169
|
+
return this.postPrivate('/contract/v3/private/position/trading-stop', params);
|
|
170
|
+
}
|
|
171
|
+
/** Set risk limit */
|
|
172
|
+
setRiskLimit(symbol, riskId,
|
|
173
|
+
/** 0-one-way, 1-buy side, 2-sell side */
|
|
174
|
+
positionIdx) {
|
|
175
|
+
return this.postPrivate('/contract/v3/private/position/set-risk-limit', {
|
|
176
|
+
symbol,
|
|
177
|
+
riskId,
|
|
178
|
+
positionIdx,
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Get user's trading records.
|
|
183
|
+
* The results are ordered in descending order (the first item is the latest). Returns records up to 2 years old.
|
|
184
|
+
*/
|
|
185
|
+
getUserExecutionHistory(params) {
|
|
186
|
+
return this.getPrivate('/contract/v3/private/execution/list', params);
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Get user's closed profit and loss records.
|
|
190
|
+
* The results are ordered in descending order (the first item is the latest).
|
|
191
|
+
*/
|
|
192
|
+
getClosedProfitAndLoss(params) {
|
|
193
|
+
return this.getPrivate('/contract/v3/private/position/closed-pnl', params);
|
|
194
|
+
}
|
|
195
|
+
/** Get the information of open interest limit. */
|
|
196
|
+
getOpenInterestLimitInfo(symbol) {
|
|
197
|
+
return this.getPrivate('/contract/v3/private/position/closed-pnl', {
|
|
198
|
+
symbol,
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
/** -> Account API */
|
|
202
|
+
/** Query wallet balance */
|
|
203
|
+
getBalances(coin) {
|
|
204
|
+
return this.getPrivate('/contract/v3/private/account/wallet/balance', {
|
|
205
|
+
coin,
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
/** Get user trading fee rate */
|
|
209
|
+
getTradingFeeRate(symbol) {
|
|
210
|
+
return this.getPrivate('/contract/v3/private/account/fee-rate', {
|
|
211
|
+
symbol,
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Get wallet fund records.
|
|
216
|
+
* This endpoint also shows exchanges from the Asset Exchange, where the types for the exchange are ExchangeOrderWithdraw and ExchangeOrderDeposit.
|
|
217
|
+
* This endpoint returns incomplete information for transfers involving the derivatives wallet.
|
|
218
|
+
* Use the account asset API for creating and querying internal transfers.
|
|
219
|
+
*/
|
|
220
|
+
getWalletFundRecords(params) {
|
|
221
|
+
return this.getPrivate('/contract/v3/private/account/wallet/fund-records', params);
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
*
|
|
225
|
+
* API Data Endpoints
|
|
226
|
+
*
|
|
227
|
+
*/
|
|
228
|
+
getServerTime() {
|
|
229
|
+
return this.get('/v2/public/time');
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
exports.ContractClient = ContractClient;
|
|
233
|
+
//# sourceMappingURL=contract-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-client.js","sourceRoot":"","sources":["../src/contract-client.ts"],"names":[],"mappings":"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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export * from './spot-client-v3';
|
|
|
8
8
|
export * from './usdc-option-client';
|
|
9
9
|
export * from './usdc-perpetual-client';
|
|
10
10
|
export * from './unified-margin-client';
|
|
11
|
+
export * from './contract-client';
|
|
11
12
|
export * from './websocket-client';
|
|
12
13
|
export * from './util/logger';
|
|
13
14
|
export * from './util';
|
package/lib/index.js
CHANGED
|
@@ -20,6 +20,7 @@ __exportStar(require("./spot-client-v3"), exports);
|
|
|
20
20
|
__exportStar(require("./usdc-option-client"), exports);
|
|
21
21
|
__exportStar(require("./usdc-perpetual-client"), exports);
|
|
22
22
|
__exportStar(require("./unified-margin-client"), exports);
|
|
23
|
+
__exportStar(require("./contract-client"), exports);
|
|
23
24
|
__exportStar(require("./websocket-client"), exports);
|
|
24
25
|
__exportStar(require("./util/logger"), exports);
|
|
25
26
|
__exportStar(require("./util"), exports);
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAuC;AACvC,wDAAsC;AACtC,mDAAiC;AACjC,2DAAyC;AACzC,kDAAgC;AAChC,gDAA8B;AAC9B,mDAAiC;AACjC,uDAAqC;AACrC,0DAAwC;AACxC,0DAAwC;AACxC,qDAAmC;AACnC,gDAA8B;AAC9B,yCAAuB;AACvB,0CAAwB;AACxB,mDAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAuC;AACvC,wDAAsC;AACtC,mDAAiC;AACjC,2DAAyC;AACzC,kDAAgC;AAChC,gDAA8B;AAC9B,mDAAiC;AACjC,uDAAqC;AACrC,0DAAwC;AACxC,0DAAwC;AACxC,oDAAkC;AAClC,qDAAmC;AACnC,gDAA8B;AAC9B,yCAAuB;AACvB,0CAAwB;AACxB,mDAAiC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { OrderSide } from '../shared';
|
|
2
|
+
import { UMOrderType } from './unified-margin';
|
|
3
|
+
import { USDCOrderFilter, USDCTimeInForce } from './usdc-shared';
|
|
4
|
+
export interface ContractOrderRequest {
|
|
5
|
+
symbol: string;
|
|
6
|
+
side: OrderSide;
|
|
7
|
+
positionIdx?: '0' | '1' | '2';
|
|
8
|
+
orderType: UMOrderType;
|
|
9
|
+
qty: string;
|
|
10
|
+
price?: string;
|
|
11
|
+
triggerDirection?: '1' | '2';
|
|
12
|
+
triggerPrice?: string;
|
|
13
|
+
triggerBy?: string;
|
|
14
|
+
tpTriggerBy?: string;
|
|
15
|
+
slTriggerBy?: string;
|
|
16
|
+
timeInForce: USDCTimeInForce;
|
|
17
|
+
orderLinkId?: string;
|
|
18
|
+
takeProfit?: number;
|
|
19
|
+
stopLoss?: number;
|
|
20
|
+
reduceOnly?: boolean;
|
|
21
|
+
closeOnTrigger?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface ContractHistoricOrdersRequest {
|
|
24
|
+
orderId?: string;
|
|
25
|
+
orderLinkId?: string;
|
|
26
|
+
symbol: string;
|
|
27
|
+
orderStatus?: string;
|
|
28
|
+
orderFilter?: USDCOrderFilter;
|
|
29
|
+
limit?: number;
|
|
30
|
+
cursor?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface ContractCancelOrderRequest {
|
|
33
|
+
symbol: string;
|
|
34
|
+
orderId?: string;
|
|
35
|
+
orderLinkId?: string;
|
|
36
|
+
}
|
|
37
|
+
export interface ContractModifyOrderRequest {
|
|
38
|
+
orderId?: string;
|
|
39
|
+
orderLinkId?: string;
|
|
40
|
+
symbol: string;
|
|
41
|
+
qty?: string;
|
|
42
|
+
price?: string;
|
|
43
|
+
takeProfit?: number;
|
|
44
|
+
stopLoss?: number;
|
|
45
|
+
tpTriggerBy?: string;
|
|
46
|
+
slTriggerBy?: string;
|
|
47
|
+
triggerBy?: string;
|
|
48
|
+
}
|
|
49
|
+
export interface ContractActiveOrdersRequest {
|
|
50
|
+
symbol?: string;
|
|
51
|
+
orderId?: string;
|
|
52
|
+
orderLinkId?: string;
|
|
53
|
+
settleCoin?: string;
|
|
54
|
+
orderFilter?: USDCOrderFilter;
|
|
55
|
+
limit?: number;
|
|
56
|
+
}
|
|
57
|
+
export interface ContractPositionsRequest {
|
|
58
|
+
symbol?: string;
|
|
59
|
+
settleCoin?: string;
|
|
60
|
+
dataFilter?: string;
|
|
61
|
+
}
|
|
62
|
+
export interface ContractSetAutoAddMarginRequest {
|
|
63
|
+
symbol: string;
|
|
64
|
+
side: 'Buy' | 'Sell';
|
|
65
|
+
autoAddMargin: 1 | 0;
|
|
66
|
+
positionIdx?: 0 | 1 | 2;
|
|
67
|
+
}
|
|
68
|
+
export interface ContractSetMarginSwitchRequest {
|
|
69
|
+
symbol: string;
|
|
70
|
+
tradeMode: 0 | 1;
|
|
71
|
+
buyLeverage: string;
|
|
72
|
+
sellLeverage: string;
|
|
73
|
+
}
|
|
74
|
+
export interface ContractSetPositionModeRequest {
|
|
75
|
+
symbol?: string;
|
|
76
|
+
coin?: string;
|
|
77
|
+
mode: 0 | 3;
|
|
78
|
+
}
|
|
79
|
+
export interface ContractSetTPSLRequest {
|
|
80
|
+
symbol: string;
|
|
81
|
+
takeProfit?: string;
|
|
82
|
+
stopLoss?: string;
|
|
83
|
+
activePrice?: string;
|
|
84
|
+
trailingStop?: string;
|
|
85
|
+
tpTriggerBy?: string;
|
|
86
|
+
slTriggerBy?: string;
|
|
87
|
+
slSize?: string;
|
|
88
|
+
tpSize?: string;
|
|
89
|
+
/** 0-one-way, 1-buy side, 2-sell side */
|
|
90
|
+
positionIdx?: 0 | 1 | 2;
|
|
91
|
+
}
|
|
92
|
+
export interface ContractUserExecutionHistoryRequest {
|
|
93
|
+
symbol: string;
|
|
94
|
+
orderId?: string;
|
|
95
|
+
startTime?: number;
|
|
96
|
+
endTime?: number;
|
|
97
|
+
execType?: 'Trade' | 'AdlTrade' | 'Funding' | 'BustTrade';
|
|
98
|
+
limit?: number;
|
|
99
|
+
cursor?: string;
|
|
100
|
+
}
|
|
101
|
+
export interface ContractClosedPNLRequest {
|
|
102
|
+
symbol: string;
|
|
103
|
+
startTime?: number;
|
|
104
|
+
endTime?: number;
|
|
105
|
+
limit?: number;
|
|
106
|
+
cursor?: string;
|
|
107
|
+
}
|
|
108
|
+
export interface ContractWalletFundRecordRequest {
|
|
109
|
+
startTime?: string;
|
|
110
|
+
endTime?: string;
|
|
111
|
+
coin?: string;
|
|
112
|
+
walletFundType?: string;
|
|
113
|
+
limit?: string;
|
|
114
|
+
cursor?: string;
|
|
115
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../../src/types/request/contract.ts"],"names":[],"mappings":""}
|
|
@@ -19,4 +19,5 @@ __exportStar(require("./usdc-perp"), exports);
|
|
|
19
19
|
__exportStar(require("./usdc-options"), exports);
|
|
20
20
|
__exportStar(require("./usdc-shared"), exports);
|
|
21
21
|
__exportStar(require("./unified-margin"), exports);
|
|
22
|
+
__exportStar(require("./contract"), exports);
|
|
22
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/request/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAgC;AAChC,iDAA+B;AAC/B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,8CAA4B;AAC5B,iDAA+B;AAC/B,gDAA8B;AAC9B,mDAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/request/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAgC;AAChC,iDAA+B;AAC/B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,8CAA4B;AAC5B,iDAA+B;AAC/B,gDAA8B;AAC9B,mDAAiC;AACjC,6CAA2B"}
|
package/lib/types/shared.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ContractClient } from '../contract-client';
|
|
1
2
|
import { InverseClient } from '../inverse-client';
|
|
2
3
|
import { LinearClient } from '../linear-client';
|
|
3
4
|
import { SpotClient } from '../spot-client';
|
|
@@ -5,7 +6,7 @@ import { SpotClientV3 } from '../spot-client-v3';
|
|
|
5
6
|
import { UnifiedMarginClient } from '../unified-margin-client';
|
|
6
7
|
import { USDCOptionClient } from '../usdc-option-client';
|
|
7
8
|
import { USDCPerpetualClient } from '../usdc-perpetual-client';
|
|
8
|
-
export declare type RESTClient = InverseClient | LinearClient | SpotClient | SpotClientV3 | USDCOptionClient | USDCPerpetualClient | UnifiedMarginClient;
|
|
9
|
+
export declare type RESTClient = InverseClient | LinearClient | SpotClient | SpotClientV3 | USDCOptionClient | USDCPerpetualClient | UnifiedMarginClient | ContractClient;
|
|
9
10
|
export declare type numberInString = string;
|
|
10
11
|
export declare type OrderSide = 'Buy' | 'Sell';
|
|
11
12
|
export declare type KlineInterval = '1m' | '3m' | '5m' | '15m' | '30m' | '1h' | '2h' | '4h' | '6h' | '12h' | '1d' | '1w' | '1M';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { RestClientOptions, WS_KEY_MAP } from '../util';
|
|
2
2
|
/** For spot markets, spotV3 is recommended */
|
|
3
|
-
export declare type APIMarket = 'inverse' | 'linear' | 'spot' | 'spotv3' | 'usdcOption' | 'usdcPerp' | 'unifiedPerp' | 'unifiedOption';
|
|
3
|
+
export declare type APIMarket = 'inverse' | 'linear' | 'spot' | 'spotv3' | 'usdcOption' | 'usdcPerp' | 'unifiedPerp' | 'unifiedOption' | 'contractUSDT' | 'contractInverse';
|
|
4
4
|
export declare type WsPublicInverseTopic = 'orderBookL2_25' | 'orderBookL2_200' | 'trade' | 'insurance' | 'instrument_info' | 'klineV2';
|
|
5
5
|
export declare type WsPublicUSDTPerpTopic = 'orderBookL2_25' | 'orderBookL2_200' | 'trade' | 'insurance' | 'instrument_info' | 'kline';
|
|
6
6
|
export declare type WsPublicSpotV1Topic = 'trade' | 'realtimes' | 'kline' | 'depth' | 'mergedDepth' | 'diffDepth';
|
|
@@ -20,6 +20,7 @@ const BaseRestClient_1 = __importDefault(require("./util/BaseRestClient"));
|
|
|
20
20
|
*/
|
|
21
21
|
class USDCPerpetualClient extends BaseRestClient_1.default {
|
|
22
22
|
getClientType() {
|
|
23
|
+
// Follows the same authentication mechanism as other v3 APIs (e.g. USDC)
|
|
23
24
|
return util_1.REST_CLIENT_TYPE_ENUM.v3;
|
|
24
25
|
}
|
|
25
26
|
fetchServerTime() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usdc-perpetual-client.js","sourceRoot":"","sources":["../src/usdc-perpetual-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"usdc-perpetual-client.js","sourceRoot":"","sources":["../src/usdc-perpetual-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,10 @@ export declare const WS_KEY_MAP: {
|
|
|
23
23
|
readonly unifiedOptionPublic: "unifiedOptionPublic";
|
|
24
24
|
readonly unifiedPerpUSDTPublic: "unifiedPerpUSDTPublic";
|
|
25
25
|
readonly unifiedPerpUSDCPublic: "unifiedPerpUSDCPublic";
|
|
26
|
+
readonly contractUSDTPublic: "contractUSDTPublic";
|
|
27
|
+
readonly contractUSDTPrivate: "contractUSDTPrivate";
|
|
28
|
+
readonly contractInversePublic: "contractInversePublic";
|
|
29
|
+
readonly contractInversePrivate: "contractInversePrivate";
|
|
26
30
|
};
|
|
27
31
|
export declare const WS_AUTH_ON_CONNECT_KEYS: WsKey[];
|
|
28
32
|
export declare const PUBLIC_WS_KEYS: string[];
|
|
@@ -110,6 +110,26 @@ exports.WS_BASE_URL_MAP = {
|
|
|
110
110
|
testnet: 'useUnifiedEndpoint',
|
|
111
111
|
},
|
|
112
112
|
},
|
|
113
|
+
contractUSDT: {
|
|
114
|
+
public: {
|
|
115
|
+
livenet: 'wss://stream.bybit.com/contract/usdt/public/v3',
|
|
116
|
+
testnet: 'wss://stream-testnet.bybit.com/contract/usdt/public/v3',
|
|
117
|
+
},
|
|
118
|
+
private: {
|
|
119
|
+
livenet: 'wss://stream.bybit.com/contract/private/v3',
|
|
120
|
+
testnet: 'wss://stream-testnet.bybit.com/contract/private/v3',
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
contractInverse: {
|
|
124
|
+
public: {
|
|
125
|
+
livenet: 'wss://stream.bybit.com/contract/inverse/public/v3',
|
|
126
|
+
testnet: 'wss://stream-testnet.bybit.com/contract/inverse/public/v3',
|
|
127
|
+
},
|
|
128
|
+
private: {
|
|
129
|
+
livenet: 'wss://stream.bybit.com/contract/private/v3',
|
|
130
|
+
testnet: 'wss://stream-testnet.bybit.com/contract/private/v3',
|
|
131
|
+
},
|
|
132
|
+
},
|
|
113
133
|
};
|
|
114
134
|
exports.WS_KEY_MAP = {
|
|
115
135
|
inverse: 'inverse',
|
|
@@ -127,12 +147,18 @@ exports.WS_KEY_MAP = {
|
|
|
127
147
|
unifiedOptionPublic: 'unifiedOptionPublic',
|
|
128
148
|
unifiedPerpUSDTPublic: 'unifiedPerpUSDTPublic',
|
|
129
149
|
unifiedPerpUSDCPublic: 'unifiedPerpUSDCPublic',
|
|
150
|
+
contractUSDTPublic: 'contractUSDTPublic',
|
|
151
|
+
contractUSDTPrivate: 'contractUSDTPrivate',
|
|
152
|
+
contractInversePublic: 'contractInversePublic',
|
|
153
|
+
contractInversePrivate: 'contractInversePrivate',
|
|
130
154
|
};
|
|
131
155
|
exports.WS_AUTH_ON_CONNECT_KEYS = [
|
|
132
156
|
exports.WS_KEY_MAP.spotV3Private,
|
|
133
157
|
exports.WS_KEY_MAP.usdcOptionPrivate,
|
|
134
158
|
exports.WS_KEY_MAP.usdcPerpPrivate,
|
|
135
159
|
exports.WS_KEY_MAP.unifiedPrivate,
|
|
160
|
+
exports.WS_KEY_MAP.contractUSDTPrivate,
|
|
161
|
+
exports.WS_KEY_MAP.contractInversePrivate,
|
|
136
162
|
];
|
|
137
163
|
exports.PUBLIC_WS_KEYS = [
|
|
138
164
|
exports.WS_KEY_MAP.linearPublic,
|
|
@@ -143,6 +169,8 @@ exports.PUBLIC_WS_KEYS = [
|
|
|
143
169
|
exports.WS_KEY_MAP.unifiedOptionPublic,
|
|
144
170
|
exports.WS_KEY_MAP.unifiedPerpUSDTPublic,
|
|
145
171
|
exports.WS_KEY_MAP.unifiedPerpUSDCPublic,
|
|
172
|
+
exports.WS_KEY_MAP.contractUSDTPublic,
|
|
173
|
+
exports.WS_KEY_MAP.contractInversePublic,
|
|
146
174
|
];
|
|
147
175
|
/** Used to automatically determine if a sub request should be to the public or private ws (when there's two) */
|
|
148
176
|
const PRIVATE_TOPICS = [
|
|
@@ -178,6 +206,11 @@ const PRIVATE_TOPICS = [
|
|
|
178
206
|
'user.order.unifiedAccount',
|
|
179
207
|
'user.wallet.unifiedAccount',
|
|
180
208
|
'user.greeks.unifiedAccount',
|
|
209
|
+
// contract v3
|
|
210
|
+
'user.position.contractAccount',
|
|
211
|
+
'user.execution.contractAccount',
|
|
212
|
+
'user.order.contractAccount',
|
|
213
|
+
'user.wallet.contractAccount',
|
|
181
214
|
];
|
|
182
215
|
function getWsKeyForTopic(market, topic, isPrivate) {
|
|
183
216
|
const isPrivateTopic = isPrivate === true || PRIVATE_TOPICS.includes(topic);
|
|
@@ -226,6 +259,16 @@ function getWsKeyForTopic(market, topic, isPrivate) {
|
|
|
226
259
|
}
|
|
227
260
|
throw new Error(`Failed to determine wskey for unified perps topic: "${topic}`);
|
|
228
261
|
}
|
|
262
|
+
case 'contractInverse': {
|
|
263
|
+
return isPrivateTopic
|
|
264
|
+
? exports.WS_KEY_MAP.contractInversePrivate
|
|
265
|
+
: exports.WS_KEY_MAP.contractInversePublic;
|
|
266
|
+
}
|
|
267
|
+
case 'contractUSDT': {
|
|
268
|
+
return isPrivateTopic
|
|
269
|
+
? exports.WS_KEY_MAP.contractUSDTPrivate
|
|
270
|
+
: exports.WS_KEY_MAP.contractUSDTPublic;
|
|
271
|
+
}
|
|
229
272
|
default: {
|
|
230
273
|
throw neverGuard(market, `getWsKeyForTopic(): Unhandled market`);
|
|
231
274
|
}
|
|
@@ -240,7 +283,9 @@ function getMaxTopicsPerSubscribeEvent(market) {
|
|
|
240
283
|
case 'usdcPerp':
|
|
241
284
|
case 'unifiedOption':
|
|
242
285
|
case 'unifiedPerp':
|
|
243
|
-
case 'spot':
|
|
286
|
+
case 'spot':
|
|
287
|
+
case 'contractInverse':
|
|
288
|
+
case 'contractUSDT': {
|
|
244
289
|
return null;
|
|
245
290
|
}
|
|
246
291
|
case 'spotv3': {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-util.js","sourceRoot":"","sources":["../../src/util/websocket-util.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"websocket-util.js","sourceRoot":"","sources":["../../src/util/websocket-util.ts"],"names":[],"mappings":";;;AAWa,QAAA,eAAe,GAGxB;IACF,OAAO,EAAE;QACP,MAAM,EAAE;YACN,OAAO,EAAE,iCAAiC;YAC1C,OAAO,EAAE,yCAAyC;SACnD;QACD,OAAO,EAAE;YACP,OAAO,EAAE,iCAAiC;YAC1C,OAAO,EAAE,yCAAyC;SACnD;KACF;IACD,MAAM,EAAE;QACN,MAAM,EAAE;YACN,OAAO,EAAE,wCAAwC;YACjD,QAAQ,EAAE,yCAAyC;YACnD,OAAO,EAAE,gDAAgD;SAC1D;QACD,OAAO,EAAE;YACP,OAAO,EAAE,yCAAyC;YAClD,QAAQ,EAAE,0CAA0C;YACpD,OAAO,EAAE,iDAAiD;SAC3D;KACF;IACD,IAAI,EAAE;QACJ,MAAM,EAAE;YACN,OAAO,EAAE,yCAAyC;YAClD,QAAQ,EAAE,yCAAyC;YACnD,OAAO,EAAE,iDAAiD;YAC1D,QAAQ,EAAE,iDAAiD;SAC5D;QACD,OAAO,EAAE;YACP,OAAO,EAAE,gCAAgC;YACzC,OAAO,EAAE,wCAAwC;SAClD;KACF;IACD,MAAM,EAAE;QACN,MAAM,EAAE;YACN,OAAO,EAAE,uCAAuC;YAChD,OAAO,EAAE,+CAA+C;SACzD;QACD,OAAO,EAAE;YACP,OAAO,EAAE,wCAAwC;YACjD,OAAO,EAAE,gDAAgD;SAC1D;KACF;IACD,UAAU,EAAE;QACV,MAAM,EAAE;YACN,OAAO,EAAE,oDAAoD;YAC7D,QAAQ,EAAE,qDAAqD;YAC/D,OAAO,EAAE,4DAA4D;SACtE;QACD,OAAO,EAAE;YACP,OAAO,EAAE,qDAAqD;YAC9D,QAAQ,EAAE,sDAAsD;YAChE,OAAO,EAAE,6DAA6D;SACvE;KACF;IACD,QAAQ,EAAE;QACR,MAAM,EAAE;YACN,OAAO,EAAE,wDAAwD;YACjE,QAAQ,EAAE,yDAAyD;YACnE,OAAO,EAAE,gEAAgE;SAC1E;QACD,OAAO,EAAE;YACP,OAAO,EAAE,qDAAqD;YAC9D,QAAQ,EAAE,sDAAsD;YAChE,OAAO,EAAE,6DAA6D;SACvE;KACF;IACD,aAAa,EAAE;QACb,MAAM,EAAE;YACN,OAAO,EAAE,8CAA8C;YACvD,OAAO,EAAE,sDAAsD;SAChE;QACD,OAAO,EAAE;YACP,OAAO,EAAE,2CAA2C;YACpD,OAAO,EAAE,mDAAmD;SAC7D;KACF;IACD,WAAW,EAAE;QACX,MAAM,EAAE;YACN,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,yBAAyB;SACnC;QACD,OAAO,EAAE;YACP,OAAO,EAAE,2CAA2C;YACpD,OAAO,EAAE,mDAAmD;SAC7D;KACF;IACD,eAAe,EAAE;QACf,MAAM,EAAE;YACN,OAAO,EAAE,gDAAgD;YACzD,OAAO,EAAE,wDAAwD;SAClE;QACD,OAAO,EAAE;YACP,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,oBAAoB;SAC9B;KACF;IACD,eAAe,EAAE;QACf,MAAM,EAAE;YACN,OAAO,EAAE,gDAAgD;YACzD,OAAO,EAAE,wDAAwD;SAClE;QACD,OAAO,EAAE;YACP,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,oBAAoB;SAC9B;KACF;IACD,YAAY,EAAE;QACZ,MAAM,EAAE;YACN,OAAO,EAAE,gDAAgD;YACzD,OAAO,EAAE,wDAAwD;SAClE;QACD,OAAO,EAAE;YACP,OAAO,EAAE,4CAA4C;YACrD,OAAO,EAAE,oDAAoD;SAC9D;KACF;IACD,eAAe,EAAE;QACf,MAAM,EAAE;YACN,OAAO,EAAE,mDAAmD;YAC5D,OAAO,EAAE,2DAA2D;SACrE;QACD,OAAO,EAAE;YACP,OAAO,EAAE,4CAA4C;YACrD,OAAO,EAAE,oDAAoD;SAC9D;KACF;CACF,CAAC;AAEW,QAAA,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,eAAe;IAC9B,YAAY,EAAE,cAAc;IAC5B,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;IAC9B,YAAY,EAAE,cAAc;IAC5B,iBAAiB,EAAE,mBAAmB;IACtC,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,cAAc,EAAE,gBAAgB;IAChC,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,qBAAqB,EAAE,uBAAuB;IAC9C,kBAAkB,EAAE,oBAAoB;IACxC,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,wBAAwB;CACxC,CAAC;AAEE,QAAA,uBAAuB,GAAY;IAC9C,kBAAU,CAAC,aAAa;IACxB,kBAAU,CAAC,iBAAiB;IAC5B,kBAAU,CAAC,eAAe;IAC1B,kBAAU,CAAC,cAAc;IACzB,kBAAU,CAAC,mBAAmB;IAC9B,kBAAU,CAAC,sBAAsB;CAClC,CAAC;AAEW,QAAA,cAAc,GAAG;IAC5B,kBAAU,CAAC,YAAY;IACvB,kBAAU,CAAC,UAAU;IACrB,kBAAU,CAAC,YAAY;IACvB,kBAAU,CAAC,gBAAgB;IAC3B,kBAAU,CAAC,cAAc;IACzB,kBAAU,CAAC,mBAAmB;IAC9B,kBAAU,CAAC,qBAAqB;IAChC,kBAAU,CAAC,qBAAqB;IAChC,kBAAU,CAAC,kBAAkB;IAC7B,kBAAU,CAAC,qBAAqB;CACrB,CAAC;AAEd,gHAAgH;AAChH,MAAM,cAAc,GAAG;IACrB,UAAU;IACV,WAAW;IACX,OAAO;IACP,YAAY;IACZ,QAAQ;IACR,qBAAqB;IACrB,iBAAiB;IACjB,YAAY;IACZ,oBAAoB;IACpB,mBAAmB;IACnB,gBAAgB;IAChB,oBAAoB;IACpB,iBAAiB;IACjB,eAAe;IACf,8BAA8B;IAC9B,2BAA2B;IAC3B,YAAY;IACZ,2BAA2B;IAC3B,cAAc;IACd,qBAAqB;IACrB,gBAAgB;IAChB,aAAa;IACb,4BAA4B;IAC5B,yBAAyB;IACzB,yBAAyB;IACzB,cAAc;IACd,iBAAiB;IACjB,8BAA8B;IAC9B,+BAA+B;IAC/B,2BAA2B;IAC3B,4BAA4B;IAC5B,4BAA4B;IAC5B,cAAc;IACd,+BAA+B;IAC/B,gCAAgC;IAChC,4BAA4B;IAC5B,6BAA6B;CAC9B,CAAC;AAEF,SAAgB,gBAAgB,CAC9B,MAAiB,EACjB,KAAa,EACb,SAAmB;IAEnB,MAAM,cAAc,GAAG,SAAS,KAAK,IAAI,IAAI,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5E,QAAQ,MAAM,EAAE;QACd,KAAK,SAAS,CAAC,CAAC;YACd,OAAO,kBAAU,CAAC,OAAO,CAAC;SAC3B;QACD,KAAK,QAAQ,CAAC,CAAC;YACb,OAAO,cAAc;gBACnB,CAAC,CAAC,kBAAU,CAAC,aAAa;gBAC1B,CAAC,CAAC,kBAAU,CAAC,YAAY,CAAC;SAC7B;QACD,KAAK,MAAM,CAAC,CAAC;YACX,OAAO,cAAc,CAAC,CAAC,CAAC,kBAAU,CAAC,WAAW,CAAC,CAAC,CAAC,kBAAU,CAAC,UAAU,CAAC;SACxE;QACD,KAAK,QAAQ,CAAC,CAAC;YACb,OAAO,cAAc;gBACnB,CAAC,CAAC,kBAAU,CAAC,aAAa;gBAC1B,CAAC,CAAC,kBAAU,CAAC,YAAY,CAAC;SAC7B;QACD,KAAK,YAAY,CAAC,CAAC;YACjB,OAAO,cAAc;gBACnB,CAAC,CAAC,kBAAU,CAAC,iBAAiB;gBAC9B,CAAC,CAAC,kBAAU,CAAC,gBAAgB,CAAC;SACjC;QACD,KAAK,UAAU,CAAC,CAAC;YACf,OAAO,cAAc;gBACnB,CAAC,CAAC,kBAAU,CAAC,eAAe;gBAC5B,CAAC,CAAC,kBAAU,CAAC,cAAc,CAAC;SAC/B;QACD,KAAK,eAAe,CAAC,CAAC;YACpB,OAAO,cAAc;gBACnB,CAAC,CAAC,kBAAU,CAAC,cAAc;gBAC3B,CAAC,CAAC,kBAAU,CAAC,mBAAmB,CAAC;SACpC;QACD,KAAK,aAAa,CAAC,CAAC;YAClB,IAAI,cAAc,EAAE;gBAClB,OAAO,kBAAU,CAAC,cAAc,CAAC;aAClC;YAED,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACvC,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;gBACrC,OAAO,kBAAU,CAAC,qBAAqB,CAAC;aACzC;YAED,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;gBACrC,OAAO,kBAAU,CAAC,qBAAqB,CAAC;aACzC;YAED,MAAM,IAAI,KAAK,CACb,uDAAuD,KAAK,EAAE,CAC/D,CAAC;SACH;QACD,KAAK,iBAAiB,CAAC,CAAC;YACtB,OAAO,cAAc;gBACnB,CAAC,CAAC,kBAAU,CAAC,sBAAsB;gBACnC,CAAC,CAAC,kBAAU,CAAC,qBAAqB,CAAC;SACtC;QACD,KAAK,cAAc,CAAC,CAAC;YACnB,OAAO,cAAc;gBACnB,CAAC,CAAC,kBAAU,CAAC,mBAAmB;gBAChC,CAAC,CAAC,kBAAU,CAAC,kBAAkB,CAAC;SACnC;QACD,OAAO,CAAC,CAAC;YACP,MAAM,UAAU,CAAC,MAAM,EAAE,sCAAsC,CAAC,CAAC;SAClE;KACF;AACH,CAAC;AAtED,4CAsEC;AAED,SAAgB,6BAA6B,CAC3C,MAAiB;IAEjB,QAAQ,MAAM,EAAE;QACd,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,YAAY,CAAC;QAClB,KAAK,UAAU,CAAC;QAChB,KAAK,eAAe,CAAC;QACrB,KAAK,aAAa,CAAC;QACnB,KAAK,MAAM,CAAC;QACZ,KAAK,iBAAiB,CAAC;QACvB,KAAK,cAAc,CAAC,CAAC;YACnB,OAAO,IAAI,CAAC;SACb;QACD,KAAK,QAAQ,CAAC,CAAC;YACb,OAAO,EAAE,CAAC;SACX;QACD,OAAO,CAAC,CAAC;YACP,MAAM,UAAU,CAAC,MAAM,EAAE,sCAAsC,CAAC,CAAC;SAClE;KACF;AACH,CAAC;AAtBD,sEAsBC;AAED,SAAgB,oBAAoB,CAClC,KAAa,EACb,QAA2B;IAE3B,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,QAAQ,KAAK,QAAQ,EAAE;QACzB,OAAO,cAAc;YACnB,CAAC,CAAC,kBAAU,CAAC,iBAAiB;YAC9B,CAAC,CAAC,kBAAU,CAAC,gBAAgB,CAAC;KACjC;IACD,OAAO,cAAc;QACnB,CAAC,CAAC,kBAAU,CAAC,iBAAiB;QAC9B,CAAC,CAAC,kBAAU,CAAC,gBAAgB,CAAC;IAChC,wBAAwB;IACxB,iCAAiC;IACjC,iCAAiC;AACnC,CAAC;AAhBD,oDAgBC;AAEY,QAAA,aAAa,GAAG;IAC3B,yBAAyB,EAAE,OAAO;IAClC,iBAAiB,EAAE,OAAO;IAC1B,oBAAoB,EAAE,OAAO;IAC7B,uBAAuB,EAAE,SAAS;CACnC,CAAC;AAEF,SAAgB,UAAU,CAAC,CAAQ,EAAE,GAAW;IAC9C,OAAO,IAAI,KAAK,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;AAC5D,CAAC;AAFD,gCAEC"}
|
|
@@ -81,9 +81,15 @@ export declare class WebsocketClient extends EventEmitter {
|
|
|
81
81
|
private getWsAuthSignature;
|
|
82
82
|
private reconnectWithDelay;
|
|
83
83
|
private ping;
|
|
84
|
+
/**
|
|
85
|
+
* Closes a connection, if it's even open. If open, this will trigger a reconnect asynchronously.
|
|
86
|
+
* If closed, trigger a reconnect immediately
|
|
87
|
+
*/
|
|
88
|
+
private executeReconnectableClose;
|
|
84
89
|
private clearTimers;
|
|
85
90
|
private clearPingTimer;
|
|
86
91
|
private clearPongTimer;
|
|
92
|
+
private clearReconnectTimer;
|
|
87
93
|
/**
|
|
88
94
|
* @private Use the `subscribe(topics)` method to subscribe to topics. Send WS message to subscribe to topics.
|
|
89
95
|
*/
|
|
@@ -96,7 +102,6 @@ export declare class WebsocketClient extends EventEmitter {
|
|
|
96
102
|
private connectToWsUrl;
|
|
97
103
|
private onWsOpen;
|
|
98
104
|
private onWsMessage;
|
|
99
|
-
private onWsError;
|
|
100
105
|
private onWsClose;
|
|
101
106
|
private getWs;
|
|
102
107
|
private setWsState;
|
package/lib/websocket-client.js
CHANGED
|
@@ -19,12 +19,13 @@ const inverse_client_1 = require("./inverse-client");
|
|
|
19
19
|
const linear_client_1 = require("./linear-client");
|
|
20
20
|
const spot_client_v3_1 = require("./spot-client-v3");
|
|
21
21
|
const spot_client_1 = require("./spot-client");
|
|
22
|
-
const node_support_1 = require("./util/node-support");
|
|
23
|
-
const WsStore_1 = __importDefault(require("./util/WsStore"));
|
|
24
|
-
const util_1 = require("./util");
|
|
25
22
|
const usdc_option_client_1 = require("./usdc-option-client");
|
|
26
23
|
const usdc_perpetual_client_1 = require("./usdc-perpetual-client");
|
|
27
24
|
const unified_margin_client_1 = require("./unified-margin-client");
|
|
25
|
+
const contract_client_1 = require("./contract-client");
|
|
26
|
+
const node_support_1 = require("./util/node-support");
|
|
27
|
+
const WsStore_1 = __importDefault(require("./util/WsStore"));
|
|
28
|
+
const util_1 = require("./util");
|
|
28
29
|
const loggerCategory = { category: 'bybit-ws' };
|
|
29
30
|
class WebsocketClient extends events_1.EventEmitter {
|
|
30
31
|
constructor(options, logger) {
|
|
@@ -34,6 +35,8 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
34
35
|
this.options = Object.assign({ testnet: false, pongTimeout: 1000, pingInterval: 10000, reconnectTimeout: 500, fetchTimeOffsetBeforeAuth: false }, options);
|
|
35
36
|
this.options.restOptions = Object.assign(Object.assign({}, this.options.restOptions), { testnet: this.options.testnet });
|
|
36
37
|
this.prepareRESTClient();
|
|
38
|
+
// add default error handling so this doesn't crash node (if the user didn't set a handler)
|
|
39
|
+
this.on('error', () => { });
|
|
37
40
|
}
|
|
38
41
|
/**
|
|
39
42
|
* Subscribe to topics & track/persist them. They will be automatically resubscribed to if the connection drops/reconnects.
|
|
@@ -110,6 +113,11 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
110
113
|
this.restClient = new unified_margin_client_1.UnifiedMarginClient(this.options.restOptions, this.options.requestOptions);
|
|
111
114
|
break;
|
|
112
115
|
}
|
|
116
|
+
case 'contractInverse':
|
|
117
|
+
case 'contractUSDT': {
|
|
118
|
+
this.restClient = new contract_client_1.ContractClient(this.options.restOptions, this.options.requestOptions);
|
|
119
|
+
break;
|
|
120
|
+
}
|
|
113
121
|
default: {
|
|
114
122
|
throw util_1.neverGuard(this.options.market, `prepareRESTClient(): Unhandled market`);
|
|
115
123
|
}
|
|
@@ -134,6 +142,7 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
134
142
|
}
|
|
135
143
|
closeAll(force) {
|
|
136
144
|
const keys = this.wsStore.getKeys();
|
|
145
|
+
this.logger.info(`Closing all ws connections: ${keys}`);
|
|
137
146
|
keys.forEach((key) => {
|
|
138
147
|
this.close(key, force);
|
|
139
148
|
});
|
|
@@ -154,7 +163,9 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
154
163
|
case 'usdcOption':
|
|
155
164
|
case 'usdcPerp':
|
|
156
165
|
case 'unifiedPerp':
|
|
157
|
-
case 'unifiedOption':
|
|
166
|
+
case 'unifiedOption':
|
|
167
|
+
case 'contractUSDT':
|
|
168
|
+
case 'contractInverse': {
|
|
158
169
|
return [...this.connectPublic(), this.connectPrivate()];
|
|
159
170
|
}
|
|
160
171
|
default: {
|
|
@@ -191,6 +202,10 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
191
202
|
this.connect(util_1.WS_KEY_MAP.unifiedPerpUSDCPublic),
|
|
192
203
|
];
|
|
193
204
|
}
|
|
205
|
+
case 'contractUSDT':
|
|
206
|
+
return [this.connect(util_1.WS_KEY_MAP.contractUSDTPublic)];
|
|
207
|
+
case 'contractInverse':
|
|
208
|
+
return [this.connect(util_1.WS_KEY_MAP.contractInversePublic)];
|
|
194
209
|
default: {
|
|
195
210
|
throw util_1.neverGuard(this.options.market, `connectPublic(): Unhandled market`);
|
|
196
211
|
}
|
|
@@ -220,6 +235,10 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
220
235
|
case 'unifiedOption': {
|
|
221
236
|
return this.connect(util_1.WS_KEY_MAP.unifiedPrivate);
|
|
222
237
|
}
|
|
238
|
+
case 'contractUSDT':
|
|
239
|
+
return this.connect(util_1.WS_KEY_MAP.contractUSDTPrivate);
|
|
240
|
+
case 'contractInverse':
|
|
241
|
+
return this.connect(util_1.WS_KEY_MAP.contractInversePrivate);
|
|
223
242
|
default: {
|
|
224
243
|
throw util_1.neverGuard(this.options.market, `connectPrivate(): Unhandled market`);
|
|
225
244
|
}
|
|
@@ -262,7 +281,14 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
262
281
|
this.logger.error(`${context} due to 401 authorization failure.`, Object.assign(Object.assign({}, loggerCategory), { wsKey }));
|
|
263
282
|
break;
|
|
264
283
|
default:
|
|
265
|
-
|
|
284
|
+
if (this.wsStore.getConnectionState(wsKey) !==
|
|
285
|
+
util_1.WsConnectionStateEnum.CLOSING) {
|
|
286
|
+
this.logger.error(`${context} due to unexpected response error: "${(error === null || error === void 0 ? void 0 : error.msg) || (error === null || error === void 0 ? void 0 : error.message) || error}"`, Object.assign(Object.assign({}, loggerCategory), { wsKey, error }));
|
|
287
|
+
this.executeReconnectableClose(wsKey, 'unhandled onWsError');
|
|
288
|
+
}
|
|
289
|
+
else {
|
|
290
|
+
this.logger.info(`${wsKey} socket forcefully closed. Will not reconnect.`);
|
|
291
|
+
}
|
|
266
292
|
break;
|
|
267
293
|
}
|
|
268
294
|
this.emit('error', error);
|
|
@@ -328,13 +354,18 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
328
354
|
});
|
|
329
355
|
}
|
|
330
356
|
reconnectWithDelay(wsKey, connectionDelayMs) {
|
|
357
|
+
var _a;
|
|
331
358
|
this.clearTimers(wsKey);
|
|
332
359
|
if (this.wsStore.getConnectionState(wsKey) !==
|
|
333
360
|
util_1.WsConnectionStateEnum.CONNECTING) {
|
|
334
361
|
this.setWsState(wsKey, util_1.WsConnectionStateEnum.RECONNECTING);
|
|
335
362
|
}
|
|
363
|
+
if ((_a = this.wsStore.get(wsKey)) === null || _a === void 0 ? void 0 : _a.activeReconnectTimer) {
|
|
364
|
+
this.clearReconnectTimer(wsKey);
|
|
365
|
+
}
|
|
336
366
|
this.wsStore.get(wsKey, true).activeReconnectTimer = setTimeout(() => {
|
|
337
367
|
this.logger.info('Reconnecting to websocket', Object.assign(Object.assign({}, loggerCategory), { wsKey }));
|
|
368
|
+
this.clearReconnectTimer(wsKey);
|
|
338
369
|
this.connect(wsKey);
|
|
339
370
|
}, connectionDelayMs);
|
|
340
371
|
}
|
|
@@ -345,21 +376,32 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
345
376
|
this.clearPongTimer(wsKey);
|
|
346
377
|
this.logger.silly('Sending ping', Object.assign(Object.assign({}, loggerCategory), { wsKey }));
|
|
347
378
|
this.tryWsSend(wsKey, JSON.stringify({ op: 'ping' }));
|
|
348
|
-
this.wsStore.get(wsKey, true).activePongTimer = setTimeout(() =>
|
|
349
|
-
var _a;
|
|
350
|
-
this.logger.info('Pong timeout - closing socket to reconnect', Object.assign(Object.assign({}, loggerCategory), { wsKey }));
|
|
351
|
-
(_a = this.getWs(wsKey)) === null || _a === void 0 ? void 0 : _a.terminate();
|
|
352
|
-
delete this.wsStore.get(wsKey, true).activePongTimer;
|
|
353
|
-
}, this.options.pongTimeout);
|
|
379
|
+
this.wsStore.get(wsKey, true).activePongTimer = setTimeout(() => this.executeReconnectableClose(wsKey, 'Pong timeout'), this.options.pongTimeout);
|
|
354
380
|
}
|
|
355
|
-
|
|
381
|
+
/**
|
|
382
|
+
* Closes a connection, if it's even open. If open, this will trigger a reconnect asynchronously.
|
|
383
|
+
* If closed, trigger a reconnect immediately
|
|
384
|
+
*/
|
|
385
|
+
executeReconnectableClose(wsKey, reason) {
|
|
386
|
+
var _a;
|
|
387
|
+
this.logger.info(`${reason} - closing socket to reconnect`, Object.assign(Object.assign({}, loggerCategory), { wsKey,
|
|
388
|
+
reason }));
|
|
389
|
+
const wasOpen = this.wsStore.isWsOpen(wsKey);
|
|
390
|
+
(_a = this.getWs(wsKey)) === null || _a === void 0 ? void 0 : _a.terminate();
|
|
391
|
+
delete this.wsStore.get(wsKey, true).activePongTimer;
|
|
356
392
|
this.clearPingTimer(wsKey);
|
|
357
393
|
this.clearPongTimer(wsKey);
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
394
|
+
if (!wasOpen) {
|
|
395
|
+
this.logger.info(`${reason} - socket already closed - trigger immediate reconnect`, Object.assign(Object.assign({}, loggerCategory), { wsKey,
|
|
396
|
+
reason }));
|
|
397
|
+
this.reconnectWithDelay(wsKey, this.options.reconnectTimeout);
|
|
361
398
|
}
|
|
362
399
|
}
|
|
400
|
+
clearTimers(wsKey) {
|
|
401
|
+
this.clearPingTimer(wsKey);
|
|
402
|
+
this.clearPongTimer(wsKey);
|
|
403
|
+
this.clearReconnectTimer(wsKey);
|
|
404
|
+
}
|
|
363
405
|
// Send a ping at intervals
|
|
364
406
|
clearPingTimer(wsKey) {
|
|
365
407
|
const wsState = this.wsStore.get(wsKey);
|
|
@@ -376,6 +418,13 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
376
418
|
wsState.activePongTimer = undefined;
|
|
377
419
|
}
|
|
378
420
|
}
|
|
421
|
+
clearReconnectTimer(wsKey) {
|
|
422
|
+
const wsState = this.wsStore.get(wsKey);
|
|
423
|
+
if (wsState === null || wsState === void 0 ? void 0 : wsState.activeReconnectTimer) {
|
|
424
|
+
clearTimeout(wsState.activeReconnectTimer);
|
|
425
|
+
wsState.activeReconnectTimer = undefined;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
379
428
|
/**
|
|
380
429
|
* @private Use the `subscribe(topics)` method to subscribe to topics. Send WS message to subscribe to topics.
|
|
381
430
|
*/
|
|
@@ -450,7 +499,7 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
450
499
|
const ws = new isomorphic_ws_1.default(url, undefined, agent ? { agent } : undefined);
|
|
451
500
|
ws.onopen = (event) => this.onWsOpen(event, wsKey);
|
|
452
501
|
ws.onmessage = (event) => this.onWsMessage(event, wsKey);
|
|
453
|
-
ws.onerror = (event) => this.onWsError
|
|
502
|
+
ws.onerror = (event) => this.parseWsError('Websocket onWsError', event, wsKey);
|
|
454
503
|
ws.onclose = (event) => this.onWsClose(event, wsKey);
|
|
455
504
|
return ws;
|
|
456
505
|
}
|
|
@@ -520,9 +569,6 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
520
569
|
wsKey }));
|
|
521
570
|
}
|
|
522
571
|
}
|
|
523
|
-
onWsError(error, wsKey) {
|
|
524
|
-
this.parseWsError('Websocket error', error, wsKey);
|
|
525
|
-
}
|
|
526
572
|
onWsClose(event, wsKey) {
|
|
527
573
|
this.logger.info('Websocket connection closed', Object.assign(Object.assign({}, loggerCategory), { wsKey }));
|
|
528
574
|
if (this.wsStore.getConnectionState(wsKey) !== util_1.WsConnectionStateEnum.CLOSING) {
|
|
@@ -592,6 +638,18 @@ class WebsocketClient extends events_1.EventEmitter {
|
|
|
592
638
|
case util_1.WS_KEY_MAP.unifiedPrivate: {
|
|
593
639
|
return util_1.WS_BASE_URL_MAP.unifiedPerp.private[networkKey];
|
|
594
640
|
}
|
|
641
|
+
case util_1.WS_KEY_MAP.contractInversePrivate: {
|
|
642
|
+
return util_1.WS_BASE_URL_MAP.contractInverse.private[networkKey];
|
|
643
|
+
}
|
|
644
|
+
case util_1.WS_KEY_MAP.contractInversePublic: {
|
|
645
|
+
return util_1.WS_BASE_URL_MAP.contractInverse.public[networkKey];
|
|
646
|
+
}
|
|
647
|
+
case util_1.WS_KEY_MAP.contractUSDTPrivate: {
|
|
648
|
+
return util_1.WS_BASE_URL_MAP.contractUSDT.private[networkKey];
|
|
649
|
+
}
|
|
650
|
+
case util_1.WS_KEY_MAP.contractUSDTPublic: {
|
|
651
|
+
return util_1.WS_BASE_URL_MAP.contractUSDT.public[networkKey];
|
|
652
|
+
}
|
|
595
653
|
default: {
|
|
596
654
|
this.logger.error('getWsUrl(): Unhandled wsKey: ', Object.assign(Object.assign({}, loggerCategory), { wsKey }));
|
|
597
655
|
throw util_1.neverGuard(wsKey, `getWsUrl(): Unhandled wsKey`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../src/websocket-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../src/websocket-client.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED