ccxt-ir 4.9.31 → 4.10.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 +4 -4
- package/dist/ccxt.browser.min.js +2 -2
- package/dist/cjs/ccxt.js +4 -1
- package/dist/cjs/src/abstract/asretether.js +11 -0
- package/dist/cjs/src/asretether.js +325 -0
- package/dist/cjs/src/bit24.js +138 -3
- package/dist/cjs/src/raastin.js +144 -16
- package/js/ccxt.d.ts +5 -2
- package/js/ccxt.js +4 -2
- package/js/src/abstract/asretether.d.ts +8 -0
- package/js/src/abstract/asretether.js +11 -0
- package/js/src/abstract/bit24.d.ts +1 -0
- package/js/src/abstract/raastin.d.ts +1 -0
- package/js/src/asretether.d.ts +21 -0
- package/js/src/asretether.js +324 -0
- package/js/src/bit24.d.ts +3 -0
- package/js/src/bit24.js +138 -3
- package/js/src/raastin.d.ts +2 -0
- package/js/src/raastin.js +144 -16
- package/js/test.js +16 -16
- package/package.json +1 -1
package/dist/cjs/src/raastin.js
CHANGED
|
@@ -79,6 +79,7 @@ class raastin extends raastin$1["default"] {
|
|
|
79
79
|
'fetchTradingFee': false,
|
|
80
80
|
'fetchTradingFees': false,
|
|
81
81
|
'fetchWithdrawals': false,
|
|
82
|
+
'otc': true,
|
|
82
83
|
'setLeverage': false,
|
|
83
84
|
'setMarginMode': false,
|
|
84
85
|
'transfer': false,
|
|
@@ -101,6 +102,7 @@ class raastin extends raastin$1["default"] {
|
|
|
101
102
|
'api/v1/market/symbols': 1,
|
|
102
103
|
'api/v1/market/symbols/{symbol}/': 1,
|
|
103
104
|
'api/v1/market/depth/{symbol}': 1,
|
|
105
|
+
'api/v1/market': 1,
|
|
104
106
|
},
|
|
105
107
|
},
|
|
106
108
|
},
|
|
@@ -122,10 +124,24 @@ class raastin extends raastin$1["default"] {
|
|
|
122
124
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
123
125
|
* @returns {object[]} an array of objects representing market data
|
|
124
126
|
*/
|
|
127
|
+
const result = [];
|
|
128
|
+
const marketType = this.safeString(params, 'type', 'spot');
|
|
129
|
+
if (marketType === 'otc') {
|
|
130
|
+
const qoutes = ['irt', 'usdt'];
|
|
131
|
+
for (let i = 0; i < qoutes.length; i++) {
|
|
132
|
+
const quote = qoutes[i];
|
|
133
|
+
const OTCmarkets = await this.publicGetApiV1Market(this.extend(params, { 'quote': quote }));
|
|
134
|
+
for (let j = 0; j < OTCmarkets.length; j++) {
|
|
135
|
+
OTCmarkets[j]['quote'] = quote;
|
|
136
|
+
const market = this.parseOtcMarket(OTCmarkets[j]);
|
|
137
|
+
result.push(market);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
return result;
|
|
141
|
+
}
|
|
125
142
|
const response = await this.publicGetApiV1MarketSymbols(params);
|
|
126
143
|
// Response is a flat array, not nested in 'result'
|
|
127
144
|
const markets = response;
|
|
128
|
-
const result = [];
|
|
129
145
|
for (let i = 0; i < markets.length; i++) {
|
|
130
146
|
const market = this.parseMarket(markets[i]);
|
|
131
147
|
result.push(market);
|
|
@@ -240,6 +256,68 @@ class raastin extends raastin$1["default"] {
|
|
|
240
256
|
'info': market,
|
|
241
257
|
};
|
|
242
258
|
}
|
|
259
|
+
parseOtcMarket(market) {
|
|
260
|
+
// {
|
|
261
|
+
// symbol: "USDT",
|
|
262
|
+
// ask: "1",
|
|
263
|
+
// bid: "1",
|
|
264
|
+
// name: "tether"
|
|
265
|
+
// },
|
|
266
|
+
const baseSymbol = this.safeString(market, 'symbol');
|
|
267
|
+
const base = this.safeCurrencyCode(baseSymbol.toUpperCase());
|
|
268
|
+
const quote = this.safeCurrencyCode(market['quote'].toUpperCase());
|
|
269
|
+
const id = base.toUpperCase() + quote.toUpperCase();
|
|
270
|
+
const enabled = true;
|
|
271
|
+
return {
|
|
272
|
+
'id': id,
|
|
273
|
+
'symbol': base + '/' + quote,
|
|
274
|
+
'base': base,
|
|
275
|
+
'quote': quote,
|
|
276
|
+
'settle': undefined,
|
|
277
|
+
'baseId': base,
|
|
278
|
+
'quoteId': quote,
|
|
279
|
+
'settleId': undefined,
|
|
280
|
+
'type': 'otc',
|
|
281
|
+
'spot': false,
|
|
282
|
+
'margin': false,
|
|
283
|
+
'swap': false,
|
|
284
|
+
'future': false,
|
|
285
|
+
'option': false,
|
|
286
|
+
'active': enabled,
|
|
287
|
+
'contract': false,
|
|
288
|
+
'linear': undefined,
|
|
289
|
+
'inverse': undefined,
|
|
290
|
+
'contractSize': undefined,
|
|
291
|
+
'expiry': undefined,
|
|
292
|
+
'expiryDatetime': undefined,
|
|
293
|
+
'strike': undefined,
|
|
294
|
+
'optionType': undefined,
|
|
295
|
+
'precision': {
|
|
296
|
+
'amount': undefined,
|
|
297
|
+
'price': undefined,
|
|
298
|
+
},
|
|
299
|
+
'limits': {
|
|
300
|
+
'leverage': {
|
|
301
|
+
'min': undefined,
|
|
302
|
+
'max': undefined,
|
|
303
|
+
},
|
|
304
|
+
'amount': {
|
|
305
|
+
'min': undefined,
|
|
306
|
+
'max': undefined,
|
|
307
|
+
},
|
|
308
|
+
'price': {
|
|
309
|
+
'min': undefined,
|
|
310
|
+
'max': undefined,
|
|
311
|
+
},
|
|
312
|
+
'cost': {
|
|
313
|
+
'min': undefined,
|
|
314
|
+
'max': undefined,
|
|
315
|
+
},
|
|
316
|
+
},
|
|
317
|
+
'created': undefined,
|
|
318
|
+
'info': market,
|
|
319
|
+
};
|
|
320
|
+
}
|
|
243
321
|
async fetchTickers(symbols = undefined, params = {}) {
|
|
244
322
|
/**
|
|
245
323
|
* @method
|
|
@@ -249,13 +327,27 @@ class raastin extends raastin$1["default"] {
|
|
|
249
327
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
250
328
|
* @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
251
329
|
*/
|
|
252
|
-
|
|
330
|
+
const marketType = this.safeString(params, 'type', 'spot');
|
|
331
|
+
await this.loadMarkets(false, { 'type': marketType });
|
|
253
332
|
if (symbols !== undefined) {
|
|
254
333
|
symbols = this.marketSymbols(symbols);
|
|
255
334
|
}
|
|
256
|
-
const response = await this.publicGetApiV1MarketSymbols(params);
|
|
257
|
-
const markets = this.safeList(response, response);
|
|
258
335
|
const result = {};
|
|
336
|
+
if (marketType === 'otc') {
|
|
337
|
+
const qoutes = ['irt', 'usdt'];
|
|
338
|
+
for (let i = 0; i < qoutes.length; i++) {
|
|
339
|
+
const quote = qoutes[i];
|
|
340
|
+
const OTCmarkets = await this.publicGetApiV1Market(this.extend(params, { 'quote': quote }));
|
|
341
|
+
for (let j = 0; j < OTCmarkets.length; j++) {
|
|
342
|
+
OTCmarkets[j]['quote'] = quote.toUpperCase();
|
|
343
|
+
const ticker = await this.parseOTCTicker(OTCmarkets[j]);
|
|
344
|
+
const symbol = ticker['symbol'];
|
|
345
|
+
result[symbol] = ticker;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
return this.filterByArrayTickers(result, 'symbol', symbols);
|
|
349
|
+
}
|
|
350
|
+
const markets = await this.publicGetApiV1MarketSymbols(params);
|
|
259
351
|
for (let i = 0; i < markets.length; i++) {
|
|
260
352
|
const marketData = markets[i];
|
|
261
353
|
const ticker = this.parseTicker(marketData);
|
|
@@ -273,7 +365,12 @@ class raastin extends raastin$1["default"] {
|
|
|
273
365
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
274
366
|
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
275
367
|
*/
|
|
276
|
-
|
|
368
|
+
const marketType = this.safeString(params, 'type', 'spot');
|
|
369
|
+
await this.loadMarkets(false, { 'type': marketType });
|
|
370
|
+
if (marketType === 'otc') {
|
|
371
|
+
const tickers = await this.fetchTickers([symbol], { 'type': 'otc' });
|
|
372
|
+
return tickers[symbol];
|
|
373
|
+
}
|
|
277
374
|
const market = this.market(symbol);
|
|
278
375
|
const request = {
|
|
279
376
|
'symbol': market['id'],
|
|
@@ -289,36 +386,61 @@ class raastin extends raastin$1["default"] {
|
|
|
289
386
|
const symbol = this.safeSymbol(marketId, market, undefined, marketType);
|
|
290
387
|
// Since the exact ticker fields are not provided in the user's example,
|
|
291
388
|
// we'll set up the basic structure. These may need adjustment based on actual API response.
|
|
292
|
-
const last = this.safeFloat(ticker, '
|
|
293
|
-
const high = this.safeFloat(ticker, '
|
|
294
|
-
const low = this.safeFloat(ticker, '
|
|
295
|
-
const baseVolume = this.safeFloat(ticker, '
|
|
296
|
-
const quoteVolume = this.safeFloat(ticker, '
|
|
297
|
-
const
|
|
298
|
-
const ask = this.safeFloat(ticker, 'ask_price', 0);
|
|
389
|
+
const last = this.safeFloat(ticker, 'price', 0);
|
|
390
|
+
const high = this.safeFloat(ticker, 'high', 0);
|
|
391
|
+
const low = this.safeFloat(ticker, 'low', 0);
|
|
392
|
+
const baseVolume = this.safeFloat(ticker, 'base_volume', 0);
|
|
393
|
+
const quoteVolume = this.safeFloat(ticker, 'volume', 0);
|
|
394
|
+
const changePercentage = this.safeFloat(ticker, 'change_percentage', 0);
|
|
299
395
|
return this.safeTicker({
|
|
300
396
|
'symbol': symbol,
|
|
301
397
|
'timestamp': undefined,
|
|
302
398
|
'datetime': undefined,
|
|
303
399
|
'high': high,
|
|
304
400
|
'low': low,
|
|
305
|
-
'bid':
|
|
401
|
+
'bid': undefined,
|
|
306
402
|
'bidVolume': undefined,
|
|
307
|
-
'ask':
|
|
403
|
+
'ask': undefined,
|
|
308
404
|
'askVolume': undefined,
|
|
309
405
|
'vwap': undefined,
|
|
310
406
|
'open': undefined,
|
|
311
407
|
'close': last,
|
|
312
408
|
'last': last,
|
|
313
409
|
'previousClose': undefined,
|
|
314
|
-
'change':
|
|
315
|
-
'percentage':
|
|
410
|
+
'change': changePercentage,
|
|
411
|
+
'percentage': changePercentage,
|
|
316
412
|
'average': undefined,
|
|
317
413
|
'baseVolume': baseVolume,
|
|
318
414
|
'quoteVolume': quoteVolume,
|
|
319
415
|
'info': ticker,
|
|
320
416
|
}, market);
|
|
321
417
|
}
|
|
418
|
+
parseOTCTicker(ticker, market = undefined) {
|
|
419
|
+
const symbol = this.safeString(ticker, 'symbol') + '/' + this.safeString(ticker, 'quote');
|
|
420
|
+
const bid = this.safeFloat(ticker, 'bid');
|
|
421
|
+
const ask = this.safeFloat(ticker, 'ask');
|
|
422
|
+
return this.safeTicker({
|
|
423
|
+
'symbol': symbol,
|
|
424
|
+
'timestamp': undefined,
|
|
425
|
+
'datetime': undefined,
|
|
426
|
+
'high': undefined,
|
|
427
|
+
'low': undefined,
|
|
428
|
+
'bid': bid,
|
|
429
|
+
'bidVolume': undefined,
|
|
430
|
+
'ask': ask,
|
|
431
|
+
'askVolume': undefined,
|
|
432
|
+
'vwap': undefined,
|
|
433
|
+
'open': undefined,
|
|
434
|
+
'close': undefined,
|
|
435
|
+
'previousClose': undefined,
|
|
436
|
+
'change': undefined,
|
|
437
|
+
'percentage': undefined,
|
|
438
|
+
'average': undefined,
|
|
439
|
+
'baseVolume': undefined,
|
|
440
|
+
'quoteVolume': undefined,
|
|
441
|
+
'info': ticker,
|
|
442
|
+
}, market);
|
|
443
|
+
}
|
|
322
444
|
async fetchOrderBook(symbol, limit = undefined, params = {}) {
|
|
323
445
|
/**
|
|
324
446
|
* @method
|
|
@@ -359,6 +481,12 @@ class raastin extends raastin$1["default"] {
|
|
|
359
481
|
if (Object.keys(query).length) {
|
|
360
482
|
url = url + '?' + this.urlencode(query);
|
|
361
483
|
}
|
|
484
|
+
if (path === 'api/v1/market') {
|
|
485
|
+
const quote = this.safeString(params, 'quote');
|
|
486
|
+
if (quote !== undefined) {
|
|
487
|
+
url = this.urls['api']['public'] + '/' + path + '/' + quote + '/info';
|
|
488
|
+
}
|
|
489
|
+
}
|
|
362
490
|
headers = { 'Content-Type': 'application/json' };
|
|
363
491
|
return { 'url': url, 'method': method, 'body': body, 'headers': headers };
|
|
364
492
|
}
|
package/js/ccxt.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import * as functions from './src/base/functions.js';
|
|
|
4
4
|
import * as errors from './src/base/errors.js';
|
|
5
5
|
import type { Int, int, Str, Strings, Num, Bool, IndexType, OrderSide, OrderType, MarketType, SubType, Dict, NullableDict, List, NullableList, Fee, OHLCV, OHLCVC, implicitReturnType, Market, Currency, Dictionary, MinMax, FeeInterface, TradingFeeInterface, MarketMarginModes, MarketInterface, Trade, Order, OrderBook, Ticker, Transaction, Tickers, CurrencyInterface, Balance, BalanceAccount, Account, PartialBalances, Balances, DepositAddress, WithdrawalResponse, FundingRate, FundingRates, Position, BorrowInterest, LeverageTier, LedgerEntry, DepositWithdrawFeeNetwork, DepositWithdrawFee, TransferEntry, CrossBorrowRate, IsolatedBorrowRate, FundingRateHistory, OpenInterest, Liquidation, OrderRequest, CancellationRequest, FundingHistory, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers, LongShortRatio, OrderBooks, OpenInterests, ConstructorArgs } from './src/base/types.js';
|
|
6
6
|
import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, RestrictedLocation, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError } from './src/base/errors.js';
|
|
7
|
-
declare const version = "4.
|
|
7
|
+
declare const version = "4.10.0";
|
|
8
8
|
import abantether from './src/abantether.js';
|
|
9
9
|
import afratether from './src/afratether.js';
|
|
10
10
|
import alpaca from './src/alpaca.js';
|
|
@@ -12,6 +12,7 @@ import apex from './src/apex.js';
|
|
|
12
12
|
import arzinja from './src/arzinja.js';
|
|
13
13
|
import arzplus from './src/arzplus.js';
|
|
14
14
|
import ascendex from './src/ascendex.js';
|
|
15
|
+
import asretether from './src/asretether.js';
|
|
15
16
|
import bequant from './src/bequant.js';
|
|
16
17
|
import bigone from './src/bigone.js';
|
|
17
18
|
import binance from './src/binance.js';
|
|
@@ -233,6 +234,7 @@ declare const exchanges: {
|
|
|
233
234
|
arzinja: typeof arzinja;
|
|
234
235
|
arzplus: typeof arzplus;
|
|
235
236
|
ascendex: typeof ascendex;
|
|
237
|
+
asretether: typeof asretether;
|
|
236
238
|
bequant: typeof bequant;
|
|
237
239
|
bigone: typeof bigone;
|
|
238
240
|
binance: typeof binance;
|
|
@@ -537,6 +539,7 @@ declare const ccxt: {
|
|
|
537
539
|
arzinja: typeof arzinja;
|
|
538
540
|
arzplus: typeof arzplus;
|
|
539
541
|
ascendex: typeof ascendex;
|
|
542
|
+
asretether: typeof asretether;
|
|
540
543
|
bequant: typeof bequant;
|
|
541
544
|
bigone: typeof bigone;
|
|
542
545
|
binance: typeof binance;
|
|
@@ -678,5 +681,5 @@ declare const ccxt: {
|
|
|
678
681
|
zaif: typeof zaif;
|
|
679
682
|
zonda: typeof zonda;
|
|
680
683
|
} & typeof functions & typeof errors;
|
|
681
|
-
export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, RestrictedLocation, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError, Int, int, Str, Strings, Num, Bool, IndexType, OrderSide, OrderType, MarketType, SubType, Dict, NullableDict, List, NullableList, Fee, OHLCV, OHLCVC, implicitReturnType, Market, Currency, ConstructorArgs, Dictionary, MinMax, FeeInterface, TradingFeeInterface, MarketMarginModes, MarketInterface, Trade, Order, OrderBook, OrderBooks, Ticker, Transaction, Tickers, CurrencyInterface, Balance, BalanceAccount, Account, PartialBalances, Balances, DepositAddress, WithdrawalResponse, FundingRate, FundingRates, Position, BorrowInterest, LeverageTier, LedgerEntry, DepositWithdrawFeeNetwork, DepositWithdrawFee, TransferEntry, CrossBorrowRate, IsolatedBorrowRate, FundingRateHistory, OpenInterest, OpenInterests, Liquidation, OrderRequest, CancellationRequest, FundingHistory, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, LongShortRatio, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers, abantether, afratether, alpaca, apex, arzinja, arzplus, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit24, bit2c, bitbank, bitbarg, bitbns, bitfinex, bitflyer, bitget, bithumb, bitimen, bitir, bitmart, bitmex, bitopro, bitpin, bitrue, bitso, bitstamp, bitteam, bittrade, bitunix, bitvavo, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, defx, delta, deribit, derive, digifinex, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, mercado, mexc, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, sarmayex, sarrafex, tabdeal, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
|
|
684
|
+
export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, RestrictedLocation, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError, Int, int, Str, Strings, Num, Bool, IndexType, OrderSide, OrderType, MarketType, SubType, Dict, NullableDict, List, NullableList, Fee, OHLCV, OHLCVC, implicitReturnType, Market, Currency, ConstructorArgs, Dictionary, MinMax, FeeInterface, TradingFeeInterface, MarketMarginModes, MarketInterface, Trade, Order, OrderBook, OrderBooks, Ticker, Transaction, Tickers, CurrencyInterface, Balance, BalanceAccount, Account, PartialBalances, Balances, DepositAddress, WithdrawalResponse, FundingRate, FundingRates, Position, BorrowInterest, LeverageTier, LedgerEntry, DepositWithdrawFeeNetwork, DepositWithdrawFee, TransferEntry, CrossBorrowRate, IsolatedBorrowRate, FundingRateHistory, OpenInterest, OpenInterests, Liquidation, OrderRequest, CancellationRequest, FundingHistory, MarginMode, Greeks, Conversion, Option, LastPrice, Leverage, LongShortRatio, MarginModification, Leverages, LastPrices, Currencies, TradingFees, MarginModes, OptionChain, IsolatedBorrowRates, CrossBorrowRates, LeverageTiers, abantether, afratether, alpaca, apex, arzinja, arzplus, ascendex, asretether, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit24, bit2c, bitbank, bitbarg, bitbns, bitfinex, bitflyer, bitget, bithumb, bitimen, bitir, bitmart, bitmex, bitopro, bitpin, bitrue, bitso, bitstamp, bitteam, bittrade, bitunix, bitvavo, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, defx, delta, deribit, derive, digifinex, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, mercado, mexc, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, sarmayex, sarrafex, tabdeal, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
|
|
682
685
|
export default ccxt;
|
package/js/ccxt.js
CHANGED
|
@@ -38,7 +38,7 @@ import * as errors from './src/base/errors.js';
|
|
|
38
38
|
import { BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, RestrictedLocation, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError } from './src/base/errors.js';
|
|
39
39
|
//-----------------------------------------------------------------------------
|
|
40
40
|
// this is updated by vss.js when building
|
|
41
|
-
const version = '4.
|
|
41
|
+
const version = '4.10.0';
|
|
42
42
|
Exchange.ccxtVersion = version;
|
|
43
43
|
//-----------------------------------------------------------------------------
|
|
44
44
|
import abantether from './src/abantether.js';
|
|
@@ -48,6 +48,7 @@ import apex from './src/apex.js';
|
|
|
48
48
|
import arzinja from './src/arzinja.js';
|
|
49
49
|
import arzplus from './src/arzplus.js';
|
|
50
50
|
import ascendex from './src/ascendex.js';
|
|
51
|
+
import asretether from './src/asretether.js';
|
|
51
52
|
import bequant from './src/bequant.js';
|
|
52
53
|
import bigone from './src/bigone.js';
|
|
53
54
|
import binance from './src/binance.js';
|
|
@@ -270,6 +271,7 @@ const exchanges = {
|
|
|
270
271
|
'arzinja': arzinja,
|
|
271
272
|
'arzplus': arzplus,
|
|
272
273
|
'ascendex': ascendex,
|
|
274
|
+
'asretether': asretether,
|
|
273
275
|
'bequant': bequant,
|
|
274
276
|
'bigone': bigone,
|
|
275
277
|
'binance': binance,
|
|
@@ -498,6 +500,6 @@ pro.exchanges = Object.keys(pro);
|
|
|
498
500
|
pro['Exchange'] = Exchange; // now the same for rest and ts
|
|
499
501
|
//-----------------------------------------------------------------------------
|
|
500
502
|
const ccxt = Object.assign({ version, Exchange, Precise, 'exchanges': Object.keys(exchanges), 'pro': pro }, exchanges, functions, errors);
|
|
501
|
-
export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, RestrictedLocation, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError, abantether, afratether, alpaca, apex, arzinja, arzplus, ascendex, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit24, bit2c, bitbank, bitbarg, bitbns, bitfinex, bitflyer, bitget, bithumb, bitimen, bitir, bitmart, bitmex, bitopro, bitpin, bitrue, bitso, bitstamp, bitteam, bittrade, bitunix, bitvavo, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, defx, delta, deribit, derive, digifinex, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, mercado, mexc, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, sarmayex, sarrafex, tabdeal, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
|
|
503
|
+
export { version, Exchange, exchanges, pro, Precise, functions, errors, BaseError, ExchangeError, AuthenticationError, PermissionDenied, AccountNotEnabled, AccountSuspended, ArgumentsRequired, BadRequest, BadSymbol, OperationRejected, NoChange, MarginModeAlreadySet, MarketClosed, ManualInteractionNeeded, RestrictedLocation, InsufficientFunds, InvalidAddress, AddressPending, InvalidOrder, OrderNotFound, OrderNotCached, OrderImmediatelyFillable, OrderNotFillable, DuplicateOrderId, ContractUnavailable, NotSupported, InvalidProxySettings, ExchangeClosedByUser, OperationFailed, NetworkError, DDoSProtection, RateLimitExceeded, ExchangeNotAvailable, OnMaintenance, InvalidNonce, ChecksumError, RequestTimeout, BadResponse, NullResponse, CancelPending, UnsubscribeError, abantether, afratether, alpaca, apex, arzinja, arzplus, ascendex, asretether, bequant, bigone, binance, binancecoinm, binanceus, binanceusdm, bingx, bit24, bit2c, bitbank, bitbarg, bitbns, bitfinex, bitflyer, bitget, bithumb, bitimen, bitir, bitmart, bitmex, bitopro, bitpin, bitrue, bitso, bitstamp, bitteam, bittrade, bitunix, bitvavo, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, defx, delta, deribit, derive, digifinex, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, mercado, mexc, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, sarmayex, sarrafex, tabdeal, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zonda, };
|
|
502
504
|
export default ccxt;
|
|
503
505
|
//-----------------------------------------------------------------------------
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { implicitReturnType } from '../base/types.js';
|
|
2
|
+
import { Exchange as _Exchange } from '../base/Exchange.js';
|
|
3
|
+
interface Exchange {
|
|
4
|
+
publicGetV2Market(params?: {}): Promise<implicitReturnType>;
|
|
5
|
+
}
|
|
6
|
+
declare abstract class Exchange extends _Exchange {
|
|
7
|
+
}
|
|
8
|
+
export default Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// ----------------------------------------------------------------------------
|
|
2
|
+
|
|
3
|
+
// PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
|
|
4
|
+
// https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
|
|
5
|
+
// EDIT THE CORRESPONDENT .ts FILE INSTEAD
|
|
6
|
+
|
|
7
|
+
// -------------------------------------------------------------------------------
|
|
8
|
+
import { Exchange as _Exchange } from '../base/Exchange.js';
|
|
9
|
+
class Exchange extends _Exchange {
|
|
10
|
+
}
|
|
11
|
+
export default Exchange;
|
|
@@ -2,6 +2,7 @@ import { implicitReturnType } from '../base/types.js';
|
|
|
2
2
|
import { Exchange as _Exchange } from '../base/Exchange.js';
|
|
3
3
|
interface Exchange {
|
|
4
4
|
publicGetProCapiV1Markets(params?: {}): Promise<implicitReturnType>;
|
|
5
|
+
publicGetApiV1CoinsSimpleList(params?: {}): Promise<implicitReturnType>;
|
|
5
6
|
}
|
|
6
7
|
declare abstract class Exchange extends _Exchange {
|
|
7
8
|
}
|
|
@@ -4,6 +4,7 @@ interface Exchange {
|
|
|
4
4
|
publicGetApiV1MarketSymbols(params?: {}): Promise<implicitReturnType>;
|
|
5
5
|
publicGetApiV1MarketSymbolsSymbol(params?: {}): Promise<implicitReturnType>;
|
|
6
6
|
publicGetApiV1MarketDepthSymbol(params?: {}): Promise<implicitReturnType>;
|
|
7
|
+
publicGetApiV1Market(params?: {}): Promise<implicitReturnType>;
|
|
7
8
|
}
|
|
8
9
|
declare abstract class Exchange extends _Exchange {
|
|
9
10
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Exchange from './abstract/asretether.js';
|
|
2
|
+
import { Market, Strings, Ticker, Tickers } from './base/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* @class asretether
|
|
5
|
+
* @augments Exchange
|
|
6
|
+
* @description Set rateLimit to 1000 if fully verified
|
|
7
|
+
*/
|
|
8
|
+
export default class asretether extends Exchange {
|
|
9
|
+
describe(): any;
|
|
10
|
+
fetchMarkets(params?: {}): Promise<Market[]>;
|
|
11
|
+
parseMarket(market: any): Market;
|
|
12
|
+
fetchTickers(symbols?: Strings, params?: {}): Promise<Tickers>;
|
|
13
|
+
fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
|
|
14
|
+
parseTicker(ticker: any, market?: Market): Ticker;
|
|
15
|
+
sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
|
|
16
|
+
url: string;
|
|
17
|
+
method: string;
|
|
18
|
+
body: any;
|
|
19
|
+
headers: any;
|
|
20
|
+
};
|
|
21
|
+
}
|