ccxt 4.0.96 → 4.0.98

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/js/src/bitmart.js CHANGED
@@ -88,7 +88,7 @@ export default class bitmart extends Exchange {
88
88
  'fetchWithdrawals': true,
89
89
  'reduceMargin': false,
90
90
  'repayMargin': true,
91
- 'setLeverage': false,
91
+ 'setLeverage': true,
92
92
  'setMarginMode': false,
93
93
  'transfer': true,
94
94
  'withdraw': true,
@@ -151,6 +151,9 @@ export default class bitmart extends Exchange {
151
151
  'account/sub-account/v1/transfer-history': 7.5,
152
152
  'account/sub-account/main/v1/wallet': 5,
153
153
  'account/sub-account/main/v1/subaccount-list': 7.5,
154
+ 'account/contract/sub-account/main/v1/wallet': 5,
155
+ 'account/contract/sub-account/main/v1/transfer-list': 7.5,
156
+ 'account/contract/sub-account/v1/transfer-history': 7.5,
154
157
  // account
155
158
  'account/v1/wallet': 5,
156
159
  'account/v1/currencies': 30,
@@ -176,9 +179,11 @@ export default class bitmart extends Exchange {
176
179
  'spot/v1/user_fee': 6,
177
180
  // contract
178
181
  'contract/private/assets-detail': 5,
179
- 'contract/private/order': 2,
182
+ 'contract/private/order': 1.2,
180
183
  'contract/private/order-history': 10,
181
184
  'contract/private/position': 10,
185
+ 'contract/private/get-open-orders': 1.2,
186
+ 'contract/private/trades': 10,
182
187
  },
183
188
  'post': {
184
189
  // sub-account endpoints
@@ -187,6 +192,9 @@ export default class bitmart extends Exchange {
187
192
  'account/sub-account/main/v1/main-to-sub': 30,
188
193
  'account/sub-account/sub/v1/sub-to-sub': 30,
189
194
  'account/sub-account/main/v1/sub-to-sub': 30,
195
+ 'account/contract/sub-account/main/v1/sub-to-main': 7.5,
196
+ 'account/contract/sub-account/main/v1/main-to-sub': 7.5,
197
+ 'account/contract/sub-account/sub/v1/sub-to-main': 7.5,
190
198
  // account
191
199
  'account/v1/withdraw/apply': 7.5,
192
200
  // transaction and trading
@@ -210,7 +218,14 @@ export default class bitmart extends Exchange {
210
218
  'spot/v1/margin/isolated/repay': 6,
211
219
  'spot/v1/margin/isolated/transfer': 6,
212
220
  // contract
213
- 'contract/private/trades': 10,
221
+ 'account/v1/transfer-contract-list': 60,
222
+ 'account/v1/transfer-contract': 60,
223
+ 'contract/private/submit-order': 2.5,
224
+ 'contract/private/cancel-order': 1.5,
225
+ 'contract/private/cancel-orders': 30,
226
+ 'contract/private/submit-plan-order': 2.5,
227
+ 'contract/private/cancel-plan-order': 1.5,
228
+ 'contract/private/submit-leverage': 2.5,
214
229
  },
215
230
  },
216
231
  },
@@ -2055,6 +2070,9 @@ export default class bitmart extends Exchange {
2055
2070
  }
2056
2071
  const [marginMode, query] = this.handleMarginModeAndParams('createOrder', params);
2057
2072
  if (marginMode !== undefined) {
2073
+ if (marginMode !== 'isolated') {
2074
+ throw new NotSupported(this.id + ' only isolated margin is supported');
2075
+ }
2058
2076
  method = 'privatePostSpotV1MarginSubmitOrder';
2059
2077
  }
2060
2078
  const response = await this[method](this.extend(request, query));
@@ -3207,22 +3225,33 @@ export default class bitmart extends Exchange {
3207
3225
  'info': interest,
3208
3226
  };
3209
3227
  }
3210
- handleMarginModeAndParams(methodName, params = {}, defaultValue = undefined) {
3228
+ async setLeverage(leverage, symbol = undefined, params = {}) {
3211
3229
  /**
3212
- * @ignore
3213
3230
  * @method
3214
- * @description marginMode specified by params["marginMode"], this.options["marginMode"], this.options["defaultMarginMode"], params["margin"] = true or this.options["defaultType"] = 'margin'
3215
- * @param {object} [params] extra parameters specific to the exchange api endpoint
3216
- * @returns {array} the marginMode in lowercase
3231
+ * @name bitmart#setLeverage
3232
+ * @description set the level of leverage for a market
3233
+ * @see https://developer-pro.bitmart.com/en/futures/#submit-leverage-signed
3234
+ * @param {float} leverage the rate of leverage
3235
+ * @param {string} symbol unified market symbol
3236
+ * @param {object} [params] extra parameters specific to the bitmart api endpoint
3237
+ * @param {string} [params.marginMode] 'isolated' or 'cross'
3238
+ * @returns {object} response from the exchange
3217
3239
  */
3240
+ this.checkRequiredSymbol('setLeverage', symbol);
3218
3241
  let marginMode = undefined;
3219
- [marginMode, params] = super.handleMarginModeAndParams(methodName, params, defaultValue);
3220
- if (marginMode !== undefined) {
3221
- if (marginMode !== 'isolated') {
3222
- throw new NotSupported(this.id + ' only isolated margin is supported');
3223
- }
3242
+ [marginMode, params] = this.handleMarginModeAndParams('setLeverage', params);
3243
+ this.checkRequiredArgument('setLeverage', marginMode, 'marginMode', ['isolated', 'cross']);
3244
+ await this.loadMarkets();
3245
+ const market = this.market(symbol);
3246
+ if (!market['swap']) {
3247
+ throw new BadSymbol(this.id + ' setLeverage() supports swap contracts only');
3224
3248
  }
3225
- return [marginMode, params];
3249
+ const request = {
3250
+ 'symbol': market['id'],
3251
+ 'leverage': leverage.toString(),
3252
+ 'open_type': marginMode,
3253
+ };
3254
+ return await this.privatePostContractPrivateSubmitLeverage(this.extend(request, params));
3226
3255
  }
3227
3256
  nonce() {
3228
3257
  return this.milliseconds();
package/js/src/bitmex.js CHANGED
@@ -1725,7 +1725,7 @@ export default class bitmex extends Exchange {
1725
1725
  request['reverse'] = true;
1726
1726
  }
1727
1727
  if (limit !== undefined) {
1728
- request['count'] = limit;
1728
+ request['count'] = Math.min(limit, 1000); // api maximum 1000
1729
1729
  }
1730
1730
  const response = await this.publicGetTrade(this.extend(request, params));
1731
1731
  //
package/js/src/bitvavo.js CHANGED
@@ -634,7 +634,7 @@ export default class bitvavo extends Exchange {
634
634
  // 'tradeIdTo': '57b1159b-6bf5-4cde-9e2c-6bd6a5678baf',
635
635
  };
636
636
  if (limit !== undefined) {
637
- request['limit'] = limit;
637
+ request['limit'] = Math.min(limit, 1000);
638
638
  }
639
639
  if (since !== undefined) {
640
640
  request['start'] = since;
package/js/src/bybit.d.ts CHANGED
@@ -9,7 +9,6 @@ export default class bybit extends Exchange {
9
9
  nonce(): number;
10
10
  addPaginationCursorToResult(response: any): any;
11
11
  isUnifiedEnabled(params?: {}): Promise<any[]>;
12
- upgradeUnifiedAccount(params?: {}): Promise<any>;
13
12
  upgradeUnifiedTradeAccount(params?: {}): Promise<any>;
14
13
  convertExpireDate(date: any): string;
15
14
  convertExpireDateToMarketIdDate(date: any): any;
@@ -60,6 +59,7 @@ export default class bybit extends Exchange {
60
59
  };
61
60
  market(symbol: any): any;
62
61
  safeMarket(marketId?: any, market?: any, delimiter?: any, marketType?: any): any;
62
+ getBybitType(method: any, market: any, params: any): any[];
63
63
  fetchTime(params?: {}): Promise<number>;
64
64
  fetchCurrencies(params?: {}): Promise<{}>;
65
65
  fetchMarkets(params?: {}): Promise<any>;
@@ -102,49 +102,22 @@ export default class bybit extends Exchange {
102
102
  parseOrderStatus(status: any): string;
103
103
  parseTimeInForce(timeInForce: any): string;
104
104
  parseOrder(order: any, market?: any): import("./base/types.js").Order;
105
- parseContractOrder(order: any, market?: any): import("./base/types.js").Order;
106
- parseSpotOrder(order: any, market?: any): import("./base/types.js").Order;
107
105
  fetchOrder(id: string, symbol?: string, params?: {}): Promise<any>;
108
106
  createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
109
- createUnifiedAccountOrder(symbol: string, type: any, side: any, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
110
- createSpotOrder(symbol: string, type: any, side: any, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
111
- createUnifiedMarginOrder(symbol: string, type: any, side: any, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
112
- createContractV3Order(symbol: string, type: any, side: any, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
113
- createUsdcOrder(symbol: string, type: any, side: any, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
114
- editUnifiedAccountOrder(id: string, symbol: any, type: any, side: any, amount?: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
115
- editUnifiedMarginOrder(id: string, symbol: any, type: any, side: any, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
116
- editContractV3Order(id: string, symbol: any, type: any, side: any, amount?: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
107
+ createUsdcOrder(symbol: any, type: any, side: any, amount: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
108
+ editUsdcOrder(id: any, symbol: any, type: any, side: any, amount?: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
117
109
  editOrder(id: string, symbol: any, type: any, side: any, amount?: any, price?: any, params?: {}): Promise<import("./base/types.js").Order>;
118
- cancelUnifiedAccountOrder(id: string, symbol?: string, params?: {}): Promise<import("./base/types.js").Order>;
119
- cancelSpotOrder(id: string, symbol?: string, params?: {}): Promise<import("./base/types.js").Order>;
120
- cancelUnifiedMarginOrder(id: string, symbol?: string, params?: {}): Promise<import("./base/types.js").Order>;
121
- cancelUSDCOrder(id: string, symbol?: string, params?: {}): Promise<import("./base/types.js").Order>;
122
- cancelDerivativesOrder(id: string, symbol?: string, params?: {}): Promise<import("./base/types.js").Order>;
110
+ cancelUsdcOrder(id: any, symbol?: string, params?: {}): Promise<import("./base/types.js").Order>;
123
111
  cancelOrder(id: string, symbol?: string, params?: {}): Promise<import("./base/types.js").Order>;
124
- cancelAllUnifiedAccountOrders(symbol?: string, params?: {}): Promise<any>;
125
- cancelAllSpotOrders(symbol?: string, params?: {}): Promise<any>;
126
- cancelAllUnifiedMarginOrders(symbol?: string, params?: {}): Promise<any>;
127
- cancelAllUSDCOrders(symbol?: string, params?: {}): Promise<any>;
128
- cancelAllDerivativesOrders(symbol?: string, params?: {}): Promise<import("./base/types.js").Order[]>;
112
+ cancelAllUsdcOrders(symbol?: string, params?: {}): Promise<any>;
129
113
  cancelAllOrders(symbol?: string, params?: {}): Promise<any>;
130
- fetchUnifiedAccountOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
131
- fetchUnifiedMarginOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
132
- fetchDerivativesOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
114
+ fetchUsdcOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
133
115
  fetchOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
134
- fetchSpotClosedOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
135
116
  fetchClosedOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
136
117
  fetchCanceledOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
137
- fetchUnifiedAccountOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
138
- fetchSpotOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
139
- fetchUnifiedMarginOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
140
- fetchDerivativesOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
141
- fetchUSDCOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
118
+ fetchUsdcOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
142
119
  fetchOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Order[]>;
143
120
  fetchOrderTrades(id: string, symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
144
- fetchMyUnifiedTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
145
- fetchMySpotTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
146
- fetchMyUnifiedMarginTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
147
- fetchMyContractTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
148
121
  fetchMyUsdcTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
149
122
  fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
150
123
  parseDepositAddress(depositAddress: any, currency?: any): {
@@ -225,14 +198,10 @@ export default class bybit extends Exchange {
225
198
  fee: any;
226
199
  }>;
227
200
  fetchPosition(symbol: string, params?: {}): Promise<any>;
228
- fetchUnifiedPositions(symbols?: string[], params?: {}): Promise<import("./base/types.js").Position[]>;
229
- fetchUSDCPositions(symbols?: string[], params?: {}): Promise<import("./base/types.js").Position[]>;
230
- fetchDerivativesPositions(symbols?: string[], params?: {}): Promise<import("./base/types.js").Position[]>;
231
- fetchPositions(symbols?: string[], params?: {}): Promise<import("./base/types.js").Position[]>;
201
+ fetchUsdcPositions(symbols?: string[], params?: {}): Promise<any>;
202
+ fetchPositions(symbols?: string[], params?: {}): Promise<any>;
232
203
  parsePosition(position: any, market?: any): import("./base/types.js").Position;
233
204
  setMarginMode(marginMode: any, symbol?: string, params?: {}): Promise<any>;
234
- setUnifiedMarginMode(marginMode: any, symbol?: string, params?: {}): Promise<any>;
235
- setDerivativesMarginMode(marginMode: any, symbol?: string, params?: {}): Promise<any>;
236
205
  setLeverage(leverage: any, symbol?: string, params?: {}): Promise<any>;
237
206
  setPositionMode(hedged: any, symbol?: string, params?: {}): Promise<any>;
238
207
  fetchDerivativesOpenInterestHistory(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;