@solncebro/exchange-engine 0.1.1 → 0.1.2
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/CHANGELOG.md +17 -0
- package/README.md +7 -7
- package/dist/auth/binanceAuth.js +3 -6
- package/dist/auth/binanceAuth.js.map +1 -1
- package/dist/auth/bybitAuth.d.ts +0 -1
- package/dist/auth/bybitAuth.d.ts.map +1 -1
- package/dist/auth/bybitAuth.js +2 -9
- package/dist/auth/bybitAuth.js.map +1 -1
- package/dist/constants/binance.d.ts +5 -1
- package/dist/constants/binance.d.ts.map +1 -1
- package/dist/constants/binance.js +7 -4
- package/dist/constants/binance.js.map +1 -1
- package/dist/constants/bybit.d.ts +3 -5
- package/dist/constants/bybit.d.ts.map +1 -1
- package/dist/constants/bybit.js +6 -9
- package/dist/constants/bybit.js.map +1 -1
- package/dist/exchanges/BaseExchangeClient.d.ts +36 -0
- package/dist/exchanges/BaseExchangeClient.d.ts.map +1 -0
- package/dist/exchanges/BaseExchangeClient.js +91 -0
- package/dist/exchanges/BaseExchangeClient.js.map +1 -0
- package/dist/exchanges/BinanceBaseClient.d.ts +21 -0
- package/dist/exchanges/BinanceBaseClient.d.ts.map +1 -0
- package/dist/exchanges/BinanceBaseClient.js +65 -0
- package/dist/exchanges/BinanceBaseClient.js.map +1 -0
- package/dist/exchanges/BinanceFutures.d.ts +7 -21
- package/dist/exchanges/BinanceFutures.d.ts.map +1 -1
- package/dist/exchanges/BinanceFutures.js +17 -94
- package/dist/exchanges/BinanceFutures.js.map +1 -1
- package/dist/exchanges/BinanceSpot.d.ts +7 -21
- package/dist/exchanges/BinanceSpot.d.ts.map +1 -1
- package/dist/exchanges/BinanceSpot.js +14 -95
- package/dist/exchanges/BinanceSpot.js.map +1 -1
- package/dist/exchanges/BybitLinear.d.ts +15 -18
- package/dist/exchanges/BybitLinear.d.ts.map +1 -1
- package/dist/exchanges/BybitLinear.js +58 -67
- package/dist/exchanges/BybitLinear.js.map +1 -1
- package/dist/exchanges/BybitSpot.d.ts +13 -17
- package/dist/exchanges/BybitSpot.d.ts.map +1 -1
- package/dist/exchanges/BybitSpot.js +36 -62
- package/dist/exchanges/BybitSpot.js.map +1 -1
- package/dist/http/BaseHttpClient.d.ts +10 -1
- package/dist/http/BaseHttpClient.d.ts.map +1 -1
- package/dist/http/BaseHttpClient.js +27 -5
- package/dist/http/BaseHttpClient.js.map +1 -1
- package/dist/http/BinanceBaseHttpClient.d.ts +49 -0
- package/dist/http/BinanceBaseHttpClient.d.ts.map +1 -0
- package/dist/http/BinanceBaseHttpClient.js +86 -0
- package/dist/http/BinanceBaseHttpClient.js.map +1 -0
- package/dist/http/BinanceFuturesHttpClient.d.ts +11 -40
- package/dist/http/BinanceFuturesHttpClient.d.ts.map +1 -1
- package/dist/http/BinanceFuturesHttpClient.js +36 -180
- package/dist/http/BinanceFuturesHttpClient.js.map +1 -1
- package/dist/http/BinanceSpotHttpClient.d.ts +5 -24
- package/dist/http/BinanceSpotHttpClient.d.ts.map +1 -1
- package/dist/http/BinanceSpotHttpClient.js +15 -90
- package/dist/http/BinanceSpotHttpClient.js.map +1 -1
- package/dist/http/BybitHttpClient.d.ts +81 -134
- package/dist/http/BybitHttpClient.d.ts.map +1 -1
- package/dist/http/BybitHttpClient.js +61 -94
- package/dist/http/BybitHttpClient.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/normalizers/binanceNormalizer.d.ts +2 -1
- package/dist/normalizers/binanceNormalizer.d.ts.map +1 -1
- package/dist/normalizers/binanceNormalizer.js +8 -5
- package/dist/normalizers/binanceNormalizer.js.map +1 -1
- package/dist/normalizers/bybitNormalizer.d.ts +7 -1
- package/dist/normalizers/bybitNormalizer.d.ts.map +1 -1
- package/dist/normalizers/bybitNormalizer.js +21 -5
- package/dist/normalizers/bybitNormalizer.js.map +1 -1
- package/dist/types/common.d.ts +4 -2
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/exchange.d.ts +6 -2
- package/dist/types/exchange.d.ts.map +1 -1
- package/dist/types/stream.d.ts +10 -0
- package/dist/types/stream.d.ts.map +1 -0
- package/dist/types/stream.js +3 -0
- package/dist/types/stream.js.map +1 -0
- package/dist/utils/crypto.d.ts +2 -0
- package/dist/utils/crypto.d.ts.map +1 -0
- package/dist/utils/crypto.js +11 -0
- package/dist/utils/crypto.js.map +1 -0
- package/dist/utils/httpParams.d.ts +3 -0
- package/dist/utils/httpParams.d.ts.map +1 -0
- package/dist/utils/httpParams.js +15 -0
- package/dist/utils/httpParams.js.map +1 -0
- package/dist/utils/klineLoader.d.ts +10 -0
- package/dist/utils/klineLoader.d.ts.map +1 -0
- package/dist/utils/klineLoader.js +19 -0
- package/dist/utils/klineLoader.js.map +1 -0
- package/dist/ws/BinanceFuturesPublicStream.d.ts +6 -5
- package/dist/ws/BinanceFuturesPublicStream.d.ts.map +1 -1
- package/dist/ws/BinanceFuturesPublicStream.js +27 -56
- package/dist/ws/BinanceFuturesPublicStream.js.map +1 -1
- package/dist/ws/BinanceSpotPublicStream.d.ts +7 -5
- package/dist/ws/BinanceSpotPublicStream.d.ts.map +1 -1
- package/dist/ws/BinanceSpotPublicStream.js +17 -22
- package/dist/ws/BinanceSpotPublicStream.js.map +1 -1
- package/dist/ws/BinanceUserDataStream.d.ts +1 -1
- package/dist/ws/BinanceUserDataStream.d.ts.map +1 -1
- package/dist/ws/BinanceUserDataStream.js +7 -7
- package/dist/ws/BinanceUserDataStream.js.map +1 -1
- package/dist/ws/BybitPrivateStream.d.ts +1 -1
- package/dist/ws/BybitPrivateStream.d.ts.map +1 -1
- package/dist/ws/BybitPrivateStream.js +11 -28
- package/dist/ws/BybitPrivateStream.js.map +1 -1
- package/dist/ws/BybitPublicStream.d.ts +5 -4
- package/dist/ws/BybitPublicStream.d.ts.map +1 -1
- package/dist/ws/BybitPublicStream.js +14 -19
- package/dist/ws/BybitPublicStream.js.map +1 -1
- package/dist/ws/BybitTradeStream.d.ts +4 -2
- package/dist/ws/BybitTradeStream.d.ts.map +1 -1
- package/dist/ws/BybitTradeStream.js +24 -40
- package/dist/ws/BybitTradeStream.js.map +1 -1
- package/dist/ws/binanceWsUtils.d.ts +4 -0
- package/dist/ws/binanceWsUtils.d.ts.map +1 -0
- package/dist/ws/binanceWsUtils.js +13 -0
- package/dist/ws/binanceWsUtils.js.map +1 -0
- package/dist/ws/bybitWsUtils.d.ts +29 -0
- package/dist/ws/bybitWsUtils.d.ts.map +1 -0
- package/dist/ws/bybitWsUtils.js +29 -0
- package/dist/ws/bybitWsUtils.js.map +1 -0
- package/package.json +17 -3
|
@@ -1,143 +1,90 @@
|
|
|
1
|
-
import { ExchangeLogger } from '../types/common';
|
|
1
|
+
import type { ExchangeLogger } from '../types/common';
|
|
2
|
+
import type { FetchKlinesArgs } from '../types/exchange';
|
|
3
|
+
import type { BybitRawInstrumentInfo, BybitRawTicker, BybitRawPosition, BybitRawOrderResponse, BybitRawWalletBalance } from '../normalizers/bybitNormalizer';
|
|
2
4
|
import { BaseHttpClient } from './BaseHttpClient';
|
|
5
|
+
interface BybitHttpClientArgs {
|
|
6
|
+
baseUrl: string;
|
|
7
|
+
apiKey: string;
|
|
8
|
+
secret: string;
|
|
9
|
+
logger: ExchangeLogger;
|
|
10
|
+
}
|
|
11
|
+
interface SymbolFilterArgs {
|
|
12
|
+
symbol?: string;
|
|
13
|
+
}
|
|
14
|
+
interface SymbolLimitFilterArgs {
|
|
15
|
+
symbol?: string;
|
|
16
|
+
limit?: number;
|
|
17
|
+
}
|
|
18
|
+
interface PeriodFilterArgs {
|
|
19
|
+
period?: string;
|
|
20
|
+
limit?: number;
|
|
21
|
+
}
|
|
22
|
+
interface CategoryFilterArgs {
|
|
23
|
+
category?: string;
|
|
24
|
+
limit?: number;
|
|
25
|
+
}
|
|
26
|
+
interface FetchBybitKlineArgs {
|
|
27
|
+
category: string;
|
|
28
|
+
symbol: string;
|
|
29
|
+
interval: string;
|
|
30
|
+
options?: FetchKlinesArgs;
|
|
31
|
+
}
|
|
32
|
+
interface SetBybitLeverageArgs {
|
|
33
|
+
category: string;
|
|
34
|
+
symbol: string;
|
|
35
|
+
buyLeverage: number;
|
|
36
|
+
sellLeverage: number;
|
|
37
|
+
}
|
|
38
|
+
interface SwitchBybitIsolatedArgs {
|
|
39
|
+
category: string;
|
|
40
|
+
symbol: string;
|
|
41
|
+
tradeMode: number;
|
|
42
|
+
buyLeverage: number;
|
|
43
|
+
sellLeverage: number;
|
|
44
|
+
}
|
|
45
|
+
interface BybitListResponse<T> {
|
|
46
|
+
result: {
|
|
47
|
+
list: T[];
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
interface BybitResponse<T> {
|
|
51
|
+
result: T;
|
|
52
|
+
}
|
|
3
53
|
export declare class BybitHttpClient extends BaseHttpClient {
|
|
4
54
|
private readonly secret;
|
|
5
|
-
constructor(
|
|
55
|
+
constructor(args: BybitHttpClientArgs);
|
|
6
56
|
private buildAuthHeaders;
|
|
7
57
|
private toQueryString;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
limit?: number;
|
|
32
|
-
}): Promise<{
|
|
33
|
-
result: {
|
|
34
|
-
list: string[][];
|
|
35
|
-
};
|
|
36
|
-
}>;
|
|
37
|
-
fetchFundingHistory(category: string, symbol: string, options?: {
|
|
38
|
-
startTime?: number;
|
|
39
|
-
endTime?: number;
|
|
40
|
-
limit?: number;
|
|
41
|
-
}): Promise<{
|
|
42
|
-
result: {
|
|
43
|
-
list: Array<Record<string, unknown>>;
|
|
44
|
-
};
|
|
45
|
-
}>;
|
|
46
|
-
fetchOpenInterest(category: string, symbol: string, options?: {
|
|
47
|
-
period?: string;
|
|
48
|
-
limit?: number;
|
|
49
|
-
}): Promise<{
|
|
50
|
-
result: {
|
|
51
|
-
list: Array<Record<string, unknown>>;
|
|
52
|
-
};
|
|
53
|
-
}>;
|
|
54
|
-
fetchRecentTrades(category: string, symbol: string, limit?: number): Promise<{
|
|
55
|
-
result: {
|
|
56
|
-
list: Array<Record<string, unknown>>;
|
|
57
|
-
};
|
|
58
|
-
}>;
|
|
59
|
-
createOrder(params: Record<string, unknown>): Promise<{
|
|
60
|
-
result: {
|
|
61
|
-
orderId: string;
|
|
62
|
-
};
|
|
63
|
-
}>;
|
|
64
|
-
amendOrder(params: Record<string, unknown>): Promise<{
|
|
65
|
-
result: Record<string, unknown>;
|
|
66
|
-
}>;
|
|
67
|
-
cancelOrder(params: Record<string, unknown>): Promise<{
|
|
68
|
-
result: Record<string, unknown>;
|
|
69
|
-
}>;
|
|
70
|
-
cancelAllOrders(category: string, symbol?: string): Promise<{
|
|
71
|
-
result: {
|
|
72
|
-
list: Array<Record<string, unknown>>;
|
|
73
|
-
};
|
|
74
|
-
}>;
|
|
75
|
-
getOpenOrders(category: string, options?: {
|
|
76
|
-
symbol?: string;
|
|
77
|
-
limit?: number;
|
|
78
|
-
}): Promise<{
|
|
79
|
-
result: {
|
|
80
|
-
list: Array<Record<string, unknown>>;
|
|
81
|
-
};
|
|
82
|
-
}>;
|
|
83
|
-
getOrderHistory(category: string, options?: {
|
|
84
|
-
symbol?: string;
|
|
85
|
-
limit?: number;
|
|
86
|
-
}): Promise<{
|
|
87
|
-
result: {
|
|
88
|
-
list: Array<Record<string, unknown>>;
|
|
89
|
-
};
|
|
90
|
-
}>;
|
|
91
|
-
createBatchOrders(category: string, requestList: Array<Record<string, unknown>>): Promise<{
|
|
92
|
-
result: {
|
|
93
|
-
list: Array<Record<string, unknown>>;
|
|
94
|
-
};
|
|
95
|
-
}>;
|
|
96
|
-
cancelBatchOrders(category: string, requestList: Array<Record<string, unknown>>): Promise<{
|
|
97
|
-
result: {
|
|
98
|
-
list: Array<Record<string, unknown>>;
|
|
99
|
-
};
|
|
100
|
-
}>;
|
|
101
|
-
getPositionList(category: string, options?: {
|
|
102
|
-
symbol?: string;
|
|
103
|
-
limit?: number;
|
|
104
|
-
}): Promise<{
|
|
105
|
-
result: {
|
|
106
|
-
list: Array<Record<string, unknown>>;
|
|
107
|
-
};
|
|
108
|
-
}>;
|
|
109
|
-
setLeverage(category: string, symbol: string, buyLeverage: number, sellLeverage: number): Promise<Record<string, unknown>>;
|
|
110
|
-
switchIsolated(category: string, symbol: string, tradeMode: number, buyLeverage: number, sellLeverage: number): Promise<Record<string, unknown>>;
|
|
58
|
+
private authenticatedGet;
|
|
59
|
+
private authenticatedPost;
|
|
60
|
+
fetchInstrumentsInfo(category: string, options?: SymbolFilterArgs): Promise<BybitListResponse<BybitRawInstrumentInfo>>;
|
|
61
|
+
fetchTickers(category: string, options?: SymbolFilterArgs): Promise<BybitListResponse<BybitRawTicker>>;
|
|
62
|
+
fetchOrderBook(category: string, symbol: string, limit?: number): Promise<BybitResponse<{
|
|
63
|
+
a: string[][];
|
|
64
|
+
b: string[][];
|
|
65
|
+
}>>;
|
|
66
|
+
fetchKline(args: FetchBybitKlineArgs): Promise<BybitListResponse<string[]>>;
|
|
67
|
+
fetchFundingHistory(category: string, symbol: string, options?: FetchKlinesArgs): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
68
|
+
fetchOpenInterest(category: string, symbol: string, options?: PeriodFilterArgs): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
69
|
+
fetchRecentTrades(category: string, symbol: string, limit?: number): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
70
|
+
createOrder(params: Record<string, unknown>): Promise<BybitResponse<BybitRawOrderResponse>>;
|
|
71
|
+
amendOrder(params: Record<string, unknown>): Promise<BybitResponse<Record<string, unknown>>>;
|
|
72
|
+
cancelOrder(params: Record<string, unknown>): Promise<BybitResponse<Record<string, unknown>>>;
|
|
73
|
+
cancelAllOrders(category: string, symbol?: string): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
74
|
+
getOpenOrders(category: string, options?: SymbolLimitFilterArgs): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
75
|
+
getOrderHistory(category: string, options?: SymbolLimitFilterArgs): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
76
|
+
createBatchOrders(category: string, requestList: Array<Record<string, unknown>>): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
77
|
+
cancelBatchOrders(category: string, requestList: Array<Record<string, unknown>>): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
78
|
+
getPositionList(category: string, options?: SymbolLimitFilterArgs): Promise<BybitListResponse<BybitRawPosition>>;
|
|
79
|
+
setLeverage(args: SetBybitLeverageArgs): Promise<Record<string, unknown>>;
|
|
80
|
+
switchIsolated(args: SwitchBybitIsolatedArgs): Promise<Record<string, unknown>>;
|
|
111
81
|
setTradingStop(params: Record<string, unknown>): Promise<Record<string, unknown>>;
|
|
112
|
-
getClosedPnl(category: string, options?:
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
result: {
|
|
117
|
-
list: Array<Record<string, unknown>>;
|
|
118
|
-
};
|
|
119
|
-
}>;
|
|
120
|
-
fetchWalletBalance(accountType: string): Promise<{
|
|
121
|
-
result: {
|
|
122
|
-
list: Array<Record<string, unknown>>;
|
|
123
|
-
};
|
|
124
|
-
}>;
|
|
125
|
-
fetchAccountInfo(): Promise<{
|
|
126
|
-
result: Record<string, unknown>;
|
|
127
|
-
}>;
|
|
128
|
-
fetchFeeRate(category: string, options?: {
|
|
129
|
-
symbol?: string;
|
|
130
|
-
}): Promise<{
|
|
131
|
-
result: Record<string, unknown>;
|
|
132
|
-
}>;
|
|
82
|
+
getClosedPnl(category: string, options?: SymbolLimitFilterArgs): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
83
|
+
fetchWalletBalance(accountType: string): Promise<BybitResponse<BybitRawWalletBalance>>;
|
|
84
|
+
fetchAccountInfo(): Promise<BybitResponse<Record<string, unknown>>>;
|
|
85
|
+
fetchFeeRate(category: string, options?: SymbolFilterArgs): Promise<BybitResponse<Record<string, unknown>>>;
|
|
133
86
|
setMarginMode(mode: string): Promise<Record<string, unknown>>;
|
|
134
|
-
fetchTransactionLog(options?:
|
|
135
|
-
category?: string;
|
|
136
|
-
limit?: number;
|
|
137
|
-
}): Promise<{
|
|
138
|
-
result: {
|
|
139
|
-
list: Array<Record<string, unknown>>;
|
|
140
|
-
};
|
|
141
|
-
}>;
|
|
87
|
+
fetchTransactionLog(options?: CategoryFilterArgs): Promise<BybitListResponse<Record<string, unknown>>>;
|
|
142
88
|
}
|
|
89
|
+
export {};
|
|
143
90
|
//# sourceMappingURL=BybitHttpClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BybitHttpClient.d.ts","sourceRoot":"","sources":["../../src/http/BybitHttpClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"BybitHttpClient.d.ts","sourceRoot":"","sources":["../../src/http/BybitHttpClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,13 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BybitHttpClient = void 0;
|
|
4
4
|
const bybitAuth_1 = require("../auth/bybitAuth");
|
|
5
|
+
const httpParams_1 = require("../utils/httpParams");
|
|
5
6
|
const bybit_1 = require("../constants/bybit");
|
|
6
7
|
const BaseHttpClient_1 = require("./BaseHttpClient");
|
|
7
8
|
class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
8
9
|
secret;
|
|
9
|
-
constructor(
|
|
10
|
-
super(
|
|
11
|
-
this.secret = secret;
|
|
10
|
+
constructor(args) {
|
|
11
|
+
super({ baseUrl: args.baseUrl, apiKey: args.apiKey, logger: args.logger, timeout: bybit_1.BYBIT_REQUEST_TIMEOUT });
|
|
12
|
+
this.secret = args.secret;
|
|
12
13
|
}
|
|
13
14
|
buildAuthHeaders(payload) {
|
|
14
15
|
return (0, bybitAuth_1.buildBybitAuthHeaders)({
|
|
@@ -20,62 +21,50 @@ class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
|
20
21
|
}
|
|
21
22
|
toQueryString(params) {
|
|
22
23
|
const urlParams = new URLSearchParams();
|
|
23
|
-
for (const [
|
|
24
|
-
urlParams.append(
|
|
24
|
+
for (const [key, value] of Object.entries(params)) {
|
|
25
|
+
urlParams.append(key, String(value));
|
|
25
26
|
}
|
|
26
27
|
return urlParams.toString();
|
|
27
28
|
}
|
|
29
|
+
authenticatedGet(path, params) {
|
|
30
|
+
const headers = this.buildAuthHeaders(this.toQueryString(params));
|
|
31
|
+
return this.get(path, params, headers);
|
|
32
|
+
}
|
|
33
|
+
authenticatedPost(path, body) {
|
|
34
|
+
const headers = this.buildAuthHeaders(JSON.stringify(body));
|
|
35
|
+
return this.post(path, body, headers);
|
|
36
|
+
}
|
|
28
37
|
async fetchInstrumentsInfo(category, options) {
|
|
29
38
|
const params = { category };
|
|
30
39
|
if (options?.symbol !== undefined) {
|
|
31
40
|
params.symbol = options.symbol;
|
|
32
41
|
}
|
|
33
|
-
|
|
34
|
-
return this.get('/v5/market/instruments-info', params, headers);
|
|
42
|
+
return this.authenticatedGet('/v5/market/instruments-info', params);
|
|
35
43
|
}
|
|
36
44
|
async fetchTickers(category, options) {
|
|
37
45
|
const params = { category };
|
|
38
46
|
if (options?.symbol !== undefined) {
|
|
39
47
|
params.symbol = options.symbol;
|
|
40
48
|
}
|
|
41
|
-
|
|
42
|
-
return this.get('/v5/market/tickers', params, headers);
|
|
49
|
+
return this.authenticatedGet('/v5/market/tickers', params);
|
|
43
50
|
}
|
|
44
51
|
async fetchOrderBook(category, symbol, limit) {
|
|
45
52
|
const params = { category, symbol };
|
|
46
53
|
if (limit !== undefined) {
|
|
47
54
|
params.limit = limit;
|
|
48
55
|
}
|
|
49
|
-
|
|
50
|
-
return this.get('/v5/market/orderbook', params, headers);
|
|
56
|
+
return this.authenticatedGet('/v5/market/orderbook', params);
|
|
51
57
|
}
|
|
52
|
-
async fetchKline(
|
|
58
|
+
async fetchKline(args) {
|
|
59
|
+
const { category, symbol, interval, options } = args;
|
|
53
60
|
const params = { category, symbol, interval };
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
if (options?.endTime !== undefined) {
|
|
58
|
-
params.endTime = options.endTime;
|
|
59
|
-
}
|
|
60
|
-
if (options?.limit !== undefined) {
|
|
61
|
-
params.limit = options.limit;
|
|
62
|
-
}
|
|
63
|
-
const headers = this.buildAuthHeaders(this.toQueryString(params));
|
|
64
|
-
return this.get('/v5/market/kline', params, headers);
|
|
61
|
+
(0, httpParams_1.applyTimeRangeOptions)(params, options);
|
|
62
|
+
return this.authenticatedGet('/v5/market/kline', params);
|
|
65
63
|
}
|
|
66
64
|
async fetchFundingHistory(category, symbol, options) {
|
|
67
65
|
const params = { category, symbol };
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
71
|
-
if (options?.endTime !== undefined) {
|
|
72
|
-
params.endTime = options.endTime;
|
|
73
|
-
}
|
|
74
|
-
if (options?.limit !== undefined) {
|
|
75
|
-
params.limit = options.limit;
|
|
76
|
-
}
|
|
77
|
-
const headers = this.buildAuthHeaders(this.toQueryString(params));
|
|
78
|
-
return this.get('/v5/market/funding/history', params, headers);
|
|
66
|
+
(0, httpParams_1.applyTimeRangeOptions)(params, options);
|
|
67
|
+
return this.authenticatedGet('/v5/market/funding/history', params);
|
|
79
68
|
}
|
|
80
69
|
async fetchOpenInterest(category, symbol, options) {
|
|
81
70
|
const params = { category, symbol };
|
|
@@ -85,39 +74,34 @@ class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
|
85
74
|
if (options?.limit !== undefined) {
|
|
86
75
|
params.limit = options.limit;
|
|
87
76
|
}
|
|
88
|
-
|
|
89
|
-
return this.get('/v5/market/open-interest', params, headers);
|
|
77
|
+
return this.authenticatedGet('/v5/market/open-interest', params);
|
|
90
78
|
}
|
|
91
79
|
async fetchRecentTrades(category, symbol, limit) {
|
|
92
80
|
const params = { category, symbol };
|
|
93
81
|
if (limit !== undefined) {
|
|
94
82
|
params.limit = limit;
|
|
95
83
|
}
|
|
96
|
-
|
|
97
|
-
return this.get('/v5/market/recent-trade', params, headers);
|
|
84
|
+
return this.authenticatedGet('/v5/market/recent-trade', params);
|
|
98
85
|
}
|
|
99
86
|
async createOrder(params) {
|
|
100
|
-
const
|
|
101
|
-
|
|
102
|
-
|
|
87
|
+
const response = await this.authenticatedPost('/v5/order/create', params);
|
|
88
|
+
if (response.retCode !== 0) {
|
|
89
|
+
throw new Error(`Bybit API error ${response.retCode}: ${response.retMsg}`);
|
|
90
|
+
}
|
|
91
|
+
return response;
|
|
103
92
|
}
|
|
104
93
|
async amendOrder(params) {
|
|
105
|
-
|
|
106
|
-
const headers = this.buildAuthHeaders(JSON.stringify(body));
|
|
107
|
-
return this.post('/v5/order/amend', body, headers);
|
|
94
|
+
return this.authenticatedPost('/v5/order/amend', params);
|
|
108
95
|
}
|
|
109
96
|
async cancelOrder(params) {
|
|
110
|
-
|
|
111
|
-
const headers = this.buildAuthHeaders(JSON.stringify(body));
|
|
112
|
-
return this.post('/v5/order/cancel', body, headers);
|
|
97
|
+
return this.authenticatedPost('/v5/order/cancel', params);
|
|
113
98
|
}
|
|
114
99
|
async cancelAllOrders(category, symbol) {
|
|
115
100
|
const body = { category };
|
|
116
101
|
if (symbol !== undefined) {
|
|
117
102
|
body.symbol = symbol;
|
|
118
103
|
}
|
|
119
|
-
|
|
120
|
-
return this.post('/v5/order/cancel-all', body, headers);
|
|
104
|
+
return this.authenticatedPost('/v5/order/cancel-all', body);
|
|
121
105
|
}
|
|
122
106
|
async getOpenOrders(category, options) {
|
|
123
107
|
const params = { category };
|
|
@@ -127,8 +111,7 @@ class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
|
127
111
|
if (options?.limit !== undefined) {
|
|
128
112
|
params.limit = options.limit;
|
|
129
113
|
}
|
|
130
|
-
|
|
131
|
-
return this.get('/v5/order/realtime', params, headers);
|
|
114
|
+
return this.authenticatedGet('/v5/order/realtime', params);
|
|
132
115
|
}
|
|
133
116
|
async getOrderHistory(category, options) {
|
|
134
117
|
const params = { category };
|
|
@@ -138,18 +121,13 @@ class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
|
138
121
|
if (options?.limit !== undefined) {
|
|
139
122
|
params.limit = options.limit;
|
|
140
123
|
}
|
|
141
|
-
|
|
142
|
-
return this.get('/v5/order/history', params, headers);
|
|
124
|
+
return this.authenticatedGet('/v5/order/history', params);
|
|
143
125
|
}
|
|
144
126
|
async createBatchOrders(category, requestList) {
|
|
145
|
-
|
|
146
|
-
const headers = this.buildAuthHeaders(JSON.stringify(body));
|
|
147
|
-
return this.post('/v5/order/create-batch', body, headers);
|
|
127
|
+
return this.authenticatedPost('/v5/order/create-batch', { category, request: requestList });
|
|
148
128
|
}
|
|
149
129
|
async cancelBatchOrders(category, requestList) {
|
|
150
|
-
|
|
151
|
-
const headers = this.buildAuthHeaders(JSON.stringify(body));
|
|
152
|
-
return this.post('/v5/order/cancel-batch', body, headers);
|
|
130
|
+
return this.authenticatedPost('/v5/order/cancel-batch', { category, request: requestList });
|
|
153
131
|
}
|
|
154
132
|
async getPositionList(category, options) {
|
|
155
133
|
const params = { category };
|
|
@@ -159,29 +137,27 @@ class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
|
159
137
|
if (options?.limit !== undefined) {
|
|
160
138
|
params.limit = options.limit;
|
|
161
139
|
}
|
|
162
|
-
|
|
163
|
-
return this.get('/v5/position/list', params, headers);
|
|
140
|
+
return this.authenticatedGet('/v5/position/list', params);
|
|
164
141
|
}
|
|
165
|
-
async setLeverage(
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
142
|
+
async setLeverage(args) {
|
|
143
|
+
return this.authenticatedPost('/v5/position/set-leverage', {
|
|
144
|
+
category: args.category,
|
|
145
|
+
symbol: args.symbol,
|
|
146
|
+
buyLeverage: String(args.buyLeverage),
|
|
147
|
+
sellLeverage: String(args.sellLeverage),
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
async switchIsolated(args) {
|
|
151
|
+
return this.authenticatedPost('/v5/position/switch-isolated', {
|
|
152
|
+
category: args.category,
|
|
153
|
+
symbol: args.symbol,
|
|
154
|
+
tradeMode: args.tradeMode,
|
|
155
|
+
buyLeverage: String(args.buyLeverage),
|
|
156
|
+
sellLeverage: String(args.sellLeverage),
|
|
157
|
+
});
|
|
180
158
|
}
|
|
181
159
|
async setTradingStop(params) {
|
|
182
|
-
|
|
183
|
-
const headers = this.buildAuthHeaders(JSON.stringify(body));
|
|
184
|
-
return this.post('/v5/position/trading-stop', body, headers);
|
|
160
|
+
return this.authenticatedPost('/v5/position/trading-stop', params);
|
|
185
161
|
}
|
|
186
162
|
async getClosedPnl(category, options) {
|
|
187
163
|
const params = { category };
|
|
@@ -191,31 +167,23 @@ class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
|
191
167
|
if (options?.limit !== undefined) {
|
|
192
168
|
params.limit = options.limit;
|
|
193
169
|
}
|
|
194
|
-
|
|
195
|
-
return this.get('/v5/position/closed-pnl', params, headers);
|
|
170
|
+
return this.authenticatedGet('/v5/position/closed-pnl', params);
|
|
196
171
|
}
|
|
197
172
|
async fetchWalletBalance(accountType) {
|
|
198
|
-
|
|
199
|
-
const headers = this.buildAuthHeaders(this.toQueryString(params));
|
|
200
|
-
return this.get('/v5/account/wallet-balance', params, headers);
|
|
173
|
+
return this.authenticatedGet('/v5/account/wallet-balance', { accountType });
|
|
201
174
|
}
|
|
202
175
|
async fetchAccountInfo() {
|
|
203
|
-
|
|
204
|
-
const headers = this.buildAuthHeaders(this.toQueryString(params));
|
|
205
|
-
return this.get('/v5/account/info', params, headers);
|
|
176
|
+
return this.authenticatedGet('/v5/account/info', {});
|
|
206
177
|
}
|
|
207
178
|
async fetchFeeRate(category, options) {
|
|
208
179
|
const params = { category };
|
|
209
180
|
if (options?.symbol !== undefined) {
|
|
210
181
|
params.symbol = options.symbol;
|
|
211
182
|
}
|
|
212
|
-
|
|
213
|
-
return this.get('/v5/account/fee-rate', params, headers);
|
|
183
|
+
return this.authenticatedGet('/v5/account/fee-rate', params);
|
|
214
184
|
}
|
|
215
185
|
async setMarginMode(mode) {
|
|
216
|
-
|
|
217
|
-
const headers = this.buildAuthHeaders(JSON.stringify(body));
|
|
218
|
-
return this.post('/v5/account/set-margin-mode', body, headers);
|
|
186
|
+
return this.authenticatedPost('/v5/account/set-margin-mode', { setMarginMode: mode });
|
|
219
187
|
}
|
|
220
188
|
async fetchTransactionLog(options) {
|
|
221
189
|
const params = {};
|
|
@@ -225,8 +193,7 @@ class BybitHttpClient extends BaseHttpClient_1.BaseHttpClient {
|
|
|
225
193
|
if (options?.limit !== undefined) {
|
|
226
194
|
params.limit = options.limit;
|
|
227
195
|
}
|
|
228
|
-
|
|
229
|
-
return this.get('/v5/account/transaction-log', params, headers);
|
|
196
|
+
return this.authenticatedGet('/v5/account/transaction-log', params);
|
|
230
197
|
}
|
|
231
198
|
}
|
|
232
199
|
exports.BybitHttpClient = BybitHttpClient;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BybitHttpClient.js","sourceRoot":"","sources":["../../src/http/BybitHttpClient.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"BybitHttpClient.js","sourceRoot":"","sources":["../../src/http/BybitHttpClient.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { Exchange } from './exchanges/Exchange';
|
|
2
|
-
export
|
|
2
|
+
export { BINANCE_KLINE_LIMIT_SPOT, BINANCE_KLINE_LIMIT_FUTURES } from './constants/binance';
|
|
3
|
+
export { KLINE_CHUNK_SIZE } from './utils/klineLoader';
|
|
4
|
+
export type { ExchangeClient, ExchangeArgs, CreateOrderWsArgs, FetchKlinesArgs, SubscribeKlinesArgs, KlineHandler, } from './types/exchange';
|
|
3
5
|
export type { ExchangeName, OrderSide, OrderType, MarginMode, PositionSide, MarketType, TimeInForce, KlineInterval, ExchangeConfig, ExchangeLogger, Ticker, TickerBySymbol, Kline, Market, MarketBySymbol, MarketFilter, Position, Order, Balance, BalanceByAsset, } from './types/common';
|
|
4
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,YAAY,EACV,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,YAAY,GACb,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,UAAU,EACV,YAAY,EACZ,UAAU,EACV,WAAW,EACX,aAAa,EACb,cAAc,EACd,cAAc,EACd,MAAM,EACN,cAAc,EACd,KAAK,EACL,MAAM,EACN,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,KAAK,EACL,OAAO,EACP,cAAc,GACf,MAAM,gBAAgB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Exchange = void 0;
|
|
3
|
+
exports.KLINE_CHUNK_SIZE = exports.BINANCE_KLINE_LIMIT_FUTURES = exports.BINANCE_KLINE_LIMIT_SPOT = exports.Exchange = void 0;
|
|
4
4
|
var Exchange_1 = require("./exchanges/Exchange");
|
|
5
5
|
Object.defineProperty(exports, "Exchange", { enumerable: true, get: function () { return Exchange_1.Exchange; } });
|
|
6
|
+
var binance_1 = require("./constants/binance");
|
|
7
|
+
Object.defineProperty(exports, "BINANCE_KLINE_LIMIT_SPOT", { enumerable: true, get: function () { return binance_1.BINANCE_KLINE_LIMIT_SPOT; } });
|
|
8
|
+
Object.defineProperty(exports, "BINANCE_KLINE_LIMIT_FUTURES", { enumerable: true, get: function () { return binance_1.BINANCE_KLINE_LIMIT_FUTURES; } });
|
|
9
|
+
var klineLoader_1 = require("./utils/klineLoader");
|
|
10
|
+
Object.defineProperty(exports, "KLINE_CHUNK_SIZE", { enumerable: true, get: function () { return klineLoader_1.KLINE_CHUNK_SIZE; } });
|
|
6
11
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iDAAgD;AAAvC,oGAAA,QAAQ,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iDAAgD;AAAvC,oGAAA,QAAQ,OAAA;AACjB,+CAA4F;AAAnF,mHAAA,wBAAwB,OAAA;AAAE,sHAAA,2BAA2B,OAAA;AAC9D,mDAAuD;AAA9C,+GAAA,gBAAgB,OAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TickerBySymbol, Kline, MarketBySymbol, Position, Order, BalanceByAsset } from '../types/common';
|
|
1
|
+
import type { TickerBySymbol, Kline, MarketBySymbol, Position, Order, BalanceByAsset } from '../types/common';
|
|
2
2
|
interface BinanceRawFilter {
|
|
3
3
|
filterType: string;
|
|
4
4
|
tickSize?: string;
|
|
@@ -49,6 +49,7 @@ export interface BinanceRawPositionRisk {
|
|
|
49
49
|
liquidationPrice: string;
|
|
50
50
|
notional: string;
|
|
51
51
|
isolatedMargin: string;
|
|
52
|
+
[key: string]: unknown;
|
|
52
53
|
}
|
|
53
54
|
export interface BinanceRawOrderResponse {
|
|
54
55
|
orderId: number;
|