ccxt-ir 4.9.4 → 4.9.12
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 +157 -164
- package/dist/ccxt.browser.min.js +4 -4
- package/dist/cjs/ccxt.js +22 -1
- package/dist/cjs/src/abantether.js +88 -69
- package/dist/cjs/src/abstract/bitbarg.js +11 -0
- package/dist/cjs/src/abstract/bydfi.js +11 -0
- package/dist/cjs/src/abstract/cafearz.js +11 -0
- package/dist/cjs/src/abstract/kifpoolme.js +11 -0
- package/dist/cjs/src/abstract/mazdax.js +11 -0
- package/dist/cjs/src/abstract/pingi.js +11 -0
- package/dist/cjs/src/abstract/pooleno.js +11 -0
- package/dist/cjs/src/afratether.js +84 -36
- package/dist/cjs/src/arzplus.js +32 -15
- package/dist/cjs/src/bitbarg.js +313 -0
- package/dist/cjs/src/bydfi.js +435 -0
- package/dist/cjs/src/cafearz.js +347 -0
- package/dist/cjs/src/hamtapay.js +3 -2
- package/dist/cjs/src/kifpoolme.js +411 -0
- package/dist/cjs/src/mazdax.js +536 -0
- package/dist/cjs/src/pingi.js +448 -0
- package/dist/cjs/src/pooleno.js +348 -0
- package/dist/cjs/src/tetherland.js +5 -5
- package/dist/cjs/src/twox.js +56 -29
- package/js/ccxt.d.ts +23 -2
- package/js/ccxt.js +16 -2
- package/js/src/abantether.js +88 -69
- package/js/src/abstract/abantether.d.ts +1 -1
- package/js/src/abstract/bitbarg.d.ts +8 -0
- package/js/src/abstract/bitbarg.js +11 -0
- package/js/src/abstract/bydfi.d.ts +11 -0
- package/js/src/abstract/bydfi.js +11 -0
- package/js/src/abstract/cafearz.d.ts +8 -0
- package/js/src/abstract/cafearz.js +11 -0
- package/js/src/abstract/kifpoolme.d.ts +9 -0
- package/js/src/abstract/kifpoolme.js +11 -0
- package/js/src/abstract/mazdax.d.ts +11 -0
- package/js/src/abstract/mazdax.js +11 -0
- package/js/src/abstract/pingi.d.ts +9 -0
- package/js/src/abstract/pingi.js +11 -0
- package/js/src/abstract/pooleno.d.ts +8 -0
- package/js/src/abstract/pooleno.js +11 -0
- package/js/src/afratether.js +84 -36
- package/js/src/arzplus.d.ts +3 -2
- package/js/src/arzplus.js +32 -15
- package/js/src/bitbarg.d.ts +21 -0
- package/js/src/bitbarg.js +312 -0
- package/js/src/bydfi.d.ts +23 -0
- package/js/src/bydfi.js +434 -0
- package/js/src/cafearz.d.ts +21 -0
- package/js/src/cafearz.js +346 -0
- package/js/src/hamtapay.js +3 -2
- package/js/src/kifpoolme.d.ts +23 -0
- package/js/src/kifpoolme.js +410 -0
- package/js/src/mazdax.d.ts +23 -0
- package/js/src/mazdax.js +535 -0
- package/js/src/pingi.d.ts +22 -0
- package/js/src/pingi.js +447 -0
- package/js/src/pooleno.d.ts +21 -0
- package/js/src/pooleno.js +347 -0
- package/js/src/tetherland.js +5 -5
- package/js/src/twox.js +56 -29
- package/package.json +1 -1
package/dist/cjs/ccxt.js
CHANGED
|
@@ -29,6 +29,7 @@ var bingx = require('./src/bingx.js');
|
|
|
29
29
|
var bit24 = require('./src/bit24.js');
|
|
30
30
|
var bit2c = require('./src/bit2c.js');
|
|
31
31
|
var bitbank = require('./src/bitbank.js');
|
|
32
|
+
var bitbarg = require('./src/bitbarg.js');
|
|
32
33
|
var bitbns = require('./src/bitbns.js');
|
|
33
34
|
var bitfinex = require('./src/bitfinex.js');
|
|
34
35
|
var bitflyer = require('./src/bitflyer.js');
|
|
@@ -54,6 +55,8 @@ var btcbox = require('./src/btcbox.js');
|
|
|
54
55
|
var btcmarkets = require('./src/btcmarkets.js');
|
|
55
56
|
var btcturk = require('./src/btcturk.js');
|
|
56
57
|
var bybit = require('./src/bybit.js');
|
|
58
|
+
var bydfi = require('./src/bydfi.js');
|
|
59
|
+
var cafearz = require('./src/cafearz.js');
|
|
57
60
|
var cex = require('./src/cex.js');
|
|
58
61
|
var coinbase = require('./src/coinbase.js');
|
|
59
62
|
var coinbaseadvanced = require('./src/coinbaseadvanced.js');
|
|
@@ -99,6 +102,7 @@ var independentreserve = require('./src/independentreserve.js');
|
|
|
99
102
|
var indodax = require('./src/indodax.js');
|
|
100
103
|
var jibitex = require('./src/jibitex.js');
|
|
101
104
|
var kcex = require('./src/kcex.js');
|
|
105
|
+
var kifpoolme = require('./src/kifpoolme.js');
|
|
102
106
|
var kraken = require('./src/kraken.js');
|
|
103
107
|
var krakenfutures = require('./src/krakenfutures.js');
|
|
104
108
|
var kucoin = require('./src/kucoin.js');
|
|
@@ -106,6 +110,7 @@ var kucoinfutures = require('./src/kucoinfutures.js');
|
|
|
106
110
|
var latoken = require('./src/latoken.js');
|
|
107
111
|
var lbank = require('./src/lbank.js');
|
|
108
112
|
var luno = require('./src/luno.js');
|
|
113
|
+
var mazdax = require('./src/mazdax.js');
|
|
109
114
|
var mercado = require('./src/mercado.js');
|
|
110
115
|
var mexc = require('./src/mexc.js');
|
|
111
116
|
var modetrade = require('./src/modetrade.js');
|
|
@@ -125,7 +130,9 @@ var p2b = require('./src/p2b.js');
|
|
|
125
130
|
var paradex = require('./src/paradex.js');
|
|
126
131
|
var paymium = require('./src/paymium.js');
|
|
127
132
|
var phemex = require('./src/phemex.js');
|
|
133
|
+
var pingi = require('./src/pingi.js');
|
|
128
134
|
var poloniex = require('./src/poloniex.js');
|
|
135
|
+
var pooleno = require('./src/pooleno.js');
|
|
129
136
|
var probit = require('./src/probit.js');
|
|
130
137
|
var ramzinex = require('./src/ramzinex.js');
|
|
131
138
|
var sarmayex = require('./src/sarmayex.js');
|
|
@@ -225,7 +232,7 @@ var xt$1 = require('./src/pro/xt.js');
|
|
|
225
232
|
|
|
226
233
|
//-----------------------------------------------------------------------------
|
|
227
234
|
// this is updated by vss.js when building
|
|
228
|
-
const version = '4.9.
|
|
235
|
+
const version = '4.9.12';
|
|
229
236
|
Exchange["default"].ccxtVersion = version;
|
|
230
237
|
const exchanges = {
|
|
231
238
|
'abantether': abantether["default"],
|
|
@@ -245,6 +252,7 @@ const exchanges = {
|
|
|
245
252
|
'bit24': bit24["default"],
|
|
246
253
|
'bit2c': bit2c["default"],
|
|
247
254
|
'bitbank': bitbank["default"],
|
|
255
|
+
'bitbarg': bitbarg["default"],
|
|
248
256
|
'bitbns': bitbns["default"],
|
|
249
257
|
'bitfinex': bitfinex["default"],
|
|
250
258
|
'bitflyer': bitflyer["default"],
|
|
@@ -270,6 +278,8 @@ const exchanges = {
|
|
|
270
278
|
'btcmarkets': btcmarkets["default"],
|
|
271
279
|
'btcturk': btcturk["default"],
|
|
272
280
|
'bybit': bybit["default"],
|
|
281
|
+
'bydfi': bydfi["default"],
|
|
282
|
+
'cafearz': cafearz["default"],
|
|
273
283
|
'cex': cex["default"],
|
|
274
284
|
'coinbase': coinbase["default"],
|
|
275
285
|
'coinbaseadvanced': coinbaseadvanced["default"],
|
|
@@ -315,6 +325,7 @@ const exchanges = {
|
|
|
315
325
|
'indodax': indodax["default"],
|
|
316
326
|
'jibitex': jibitex["default"],
|
|
317
327
|
'kcex': kcex["default"],
|
|
328
|
+
'kifpoolme': kifpoolme["default"],
|
|
318
329
|
'kraken': kraken["default"],
|
|
319
330
|
'krakenfutures': krakenfutures["default"],
|
|
320
331
|
'kucoin': kucoin["default"],
|
|
@@ -322,6 +333,7 @@ const exchanges = {
|
|
|
322
333
|
'latoken': latoken["default"],
|
|
323
334
|
'lbank': lbank["default"],
|
|
324
335
|
'luno': luno["default"],
|
|
336
|
+
'mazdax': mazdax["default"],
|
|
325
337
|
'mercado': mercado["default"],
|
|
326
338
|
'mexc': mexc["default"],
|
|
327
339
|
'modetrade': modetrade["default"],
|
|
@@ -341,7 +353,9 @@ const exchanges = {
|
|
|
341
353
|
'paradex': paradex["default"],
|
|
342
354
|
'paymium': paymium["default"],
|
|
343
355
|
'phemex': phemex["default"],
|
|
356
|
+
'pingi': pingi["default"],
|
|
344
357
|
'poloniex': poloniex["default"],
|
|
358
|
+
'pooleno': pooleno["default"],
|
|
345
359
|
'probit': probit["default"],
|
|
346
360
|
'ramzinex': ramzinex["default"],
|
|
347
361
|
'sarmayex': sarmayex["default"],
|
|
@@ -509,6 +523,7 @@ exports.bingx = bingx["default"];
|
|
|
509
523
|
exports.bit24 = bit24["default"];
|
|
510
524
|
exports.bit2c = bit2c["default"];
|
|
511
525
|
exports.bitbank = bitbank["default"];
|
|
526
|
+
exports.bitbarg = bitbarg["default"];
|
|
512
527
|
exports.bitbns = bitbns["default"];
|
|
513
528
|
exports.bitfinex = bitfinex["default"];
|
|
514
529
|
exports.bitflyer = bitflyer["default"];
|
|
@@ -534,6 +549,8 @@ exports.btcbox = btcbox["default"];
|
|
|
534
549
|
exports.btcmarkets = btcmarkets["default"];
|
|
535
550
|
exports.btcturk = btcturk["default"];
|
|
536
551
|
exports.bybit = bybit["default"];
|
|
552
|
+
exports.bydfi = bydfi["default"];
|
|
553
|
+
exports.cafearz = cafearz["default"];
|
|
537
554
|
exports.cex = cex["default"];
|
|
538
555
|
exports.coinbase = coinbase["default"];
|
|
539
556
|
exports.coinbaseadvanced = coinbaseadvanced["default"];
|
|
@@ -579,6 +596,7 @@ exports.independentreserve = independentreserve["default"];
|
|
|
579
596
|
exports.indodax = indodax["default"];
|
|
580
597
|
exports.jibitex = jibitex["default"];
|
|
581
598
|
exports.kcex = kcex["default"];
|
|
599
|
+
exports.kifpoolme = kifpoolme["default"];
|
|
582
600
|
exports.kraken = kraken["default"];
|
|
583
601
|
exports.krakenfutures = krakenfutures["default"];
|
|
584
602
|
exports.kucoin = kucoin["default"];
|
|
@@ -586,6 +604,7 @@ exports.kucoinfutures = kucoinfutures["default"];
|
|
|
586
604
|
exports.latoken = latoken["default"];
|
|
587
605
|
exports.lbank = lbank["default"];
|
|
588
606
|
exports.luno = luno["default"];
|
|
607
|
+
exports.mazdax = mazdax["default"];
|
|
589
608
|
exports.mercado = mercado["default"];
|
|
590
609
|
exports.mexc = mexc["default"];
|
|
591
610
|
exports.modetrade = modetrade["default"];
|
|
@@ -605,7 +624,9 @@ exports.p2b = p2b["default"];
|
|
|
605
624
|
exports.paradex = paradex["default"];
|
|
606
625
|
exports.paymium = paymium["default"];
|
|
607
626
|
exports.phemex = phemex["default"];
|
|
627
|
+
exports.pingi = pingi["default"];
|
|
608
628
|
exports.poloniex = poloniex["default"];
|
|
629
|
+
exports.pooleno = pooleno["default"];
|
|
609
630
|
exports.probit = probit["default"];
|
|
610
631
|
exports.ramzinex = ramzinex["default"];
|
|
611
632
|
exports.sarmayex = sarmayex["default"];
|
|
@@ -23,7 +23,7 @@ class abantether extends abantether$1["default"] {
|
|
|
23
23
|
'pro': false,
|
|
24
24
|
'has': {
|
|
25
25
|
'CORS': undefined,
|
|
26
|
-
'spot':
|
|
26
|
+
'spot': false,
|
|
27
27
|
'margin': false,
|
|
28
28
|
'swap': false,
|
|
29
29
|
'future': false,
|
|
@@ -79,6 +79,7 @@ class abantether extends abantether$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,
|
|
@@ -88,7 +89,7 @@ class abantether extends abantether$1["default"] {
|
|
|
88
89
|
'urls': {
|
|
89
90
|
'logo': 'https://cdn.arz.digital/cr-odin/img/exchanges/abantether/64x64.png',
|
|
90
91
|
'api': {
|
|
91
|
-
'public': 'https://abantether.com',
|
|
92
|
+
'public': 'https://api.abantether.com',
|
|
92
93
|
},
|
|
93
94
|
'www': 'https://abantether.com',
|
|
94
95
|
'doc': [
|
|
@@ -98,7 +99,7 @@ class abantether extends abantether$1["default"] {
|
|
|
98
99
|
'api': {
|
|
99
100
|
'public': {
|
|
100
101
|
'get': {
|
|
101
|
-
'
|
|
102
|
+
'manager/coins/data': 1,
|
|
102
103
|
},
|
|
103
104
|
},
|
|
104
105
|
},
|
|
@@ -117,23 +118,24 @@ class abantether extends abantether$1["default"] {
|
|
|
117
118
|
* @method
|
|
118
119
|
* @name abantether#fetchMarkets
|
|
119
120
|
* @description retrieves data on all markets for abantether
|
|
120
|
-
* @see https://abantether.com/
|
|
121
|
+
* @see https://api.abantether.com/manager/coins/data
|
|
121
122
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
122
123
|
* @returns {object[]} an array of objects representing market data
|
|
123
124
|
*/
|
|
124
|
-
const response = await this.
|
|
125
|
+
const response = await this.publicGetManagerCoinsData(params);
|
|
126
|
+
const data = this.safeList(response, 'data', []);
|
|
125
127
|
const result = [];
|
|
126
128
|
const quotes = ['IRT', 'USDT'];
|
|
127
|
-
for (let i = 0; i <
|
|
128
|
-
const base = this.safeString(
|
|
129
|
+
for (let i = 0; i < data.length; i++) {
|
|
130
|
+
const base = this.safeString(data[i], 'symbol');
|
|
129
131
|
for (let index = 0; index < quotes.length; index++) {
|
|
130
132
|
const quote = quotes[index];
|
|
131
|
-
|
|
132
|
-
|
|
133
|
+
data[i]['base'] = base;
|
|
134
|
+
data[i]['quote'] = quote;
|
|
133
135
|
if (base === quote) {
|
|
134
136
|
continue;
|
|
135
137
|
}
|
|
136
|
-
const market = this.parseMarket(
|
|
138
|
+
const market = this.parseMarket(data[i]);
|
|
137
139
|
result.push(market);
|
|
138
140
|
}
|
|
139
141
|
}
|
|
@@ -141,29 +143,38 @@ class abantether extends abantether$1["default"] {
|
|
|
141
143
|
}
|
|
142
144
|
parseMarket(market) {
|
|
143
145
|
// {
|
|
144
|
-
//
|
|
145
|
-
//
|
|
146
|
-
//
|
|
147
|
-
//
|
|
148
|
-
//
|
|
149
|
-
//
|
|
150
|
-
//
|
|
151
|
-
//
|
|
152
|
-
//
|
|
153
|
-
//
|
|
154
|
-
//
|
|
155
|
-
//
|
|
156
|
-
//
|
|
157
|
-
//
|
|
158
|
-
//
|
|
159
|
-
//
|
|
160
|
-
//
|
|
161
|
-
//
|
|
162
|
-
//
|
|
163
|
-
//
|
|
164
|
-
//
|
|
165
|
-
//
|
|
166
|
-
//
|
|
146
|
+
// "id": 1,
|
|
147
|
+
// "name": "Tether USDt",
|
|
148
|
+
// "symbol": "USDT",
|
|
149
|
+
// "persian_name": "تتر",
|
|
150
|
+
// "is_active": true,
|
|
151
|
+
// "is_withdrawal_active": true,
|
|
152
|
+
// "is_deposit_active": true,
|
|
153
|
+
// "is_mid_wallet_transfer_active": true,
|
|
154
|
+
// "is_buy_active": true,
|
|
155
|
+
// "is_sell_active": true,
|
|
156
|
+
// "is_credit_active": true,
|
|
157
|
+
// "min_trade": "1.00",
|
|
158
|
+
// "max_trade": "100000.00",
|
|
159
|
+
// "tether_price": "1",
|
|
160
|
+
// "price_buy": "113540.0",
|
|
161
|
+
// "price_sell": "112630.0",
|
|
162
|
+
// "volume24h": "225163179366.25",
|
|
163
|
+
// "percent_change_1h": "0.00",
|
|
164
|
+
// "percent_change_24h": "0.00",
|
|
165
|
+
// "percent_change_7d": "0.04",
|
|
166
|
+
// "market_cap": "179884960573.99",
|
|
167
|
+
// "coin_type": "COIN",
|
|
168
|
+
// "exchange_type": "fake",
|
|
169
|
+
// "icon": "f71021586005413ea6f3a0bd1f7d8a55",
|
|
170
|
+
// "fund_tether_buy": "0",
|
|
171
|
+
// "fund_tether_sell": "0",
|
|
172
|
+
// "irt_decimal_point": 2,
|
|
173
|
+
// "tether_decimal_point": 6,
|
|
174
|
+
// "amount_decimal_point": 6,
|
|
175
|
+
// "base": "BTC",
|
|
176
|
+
// "qoute": "USDT",
|
|
177
|
+
// },
|
|
167
178
|
let baseId = this.safeString(market, 'base');
|
|
168
179
|
let quoteId = this.safeString(market, 'quote');
|
|
169
180
|
const base = this.safeCurrencyCode(baseId);
|
|
@@ -226,7 +237,7 @@ class abantether extends abantether$1["default"] {
|
|
|
226
237
|
* @method
|
|
227
238
|
* @name abantether#fetchTickers
|
|
228
239
|
* @description fetches price tickers for multiple markets, statistical information calculated over the past 24 hours for each market
|
|
229
|
-
* @see https://abantether.com/
|
|
240
|
+
* @see https://api.abantether.com/manager/coins/data
|
|
230
241
|
* @param {string[]|undefined} symbols unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
|
231
242
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
232
243
|
* @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
@@ -235,20 +246,21 @@ class abantether extends abantether$1["default"] {
|
|
|
235
246
|
if (symbols !== undefined) {
|
|
236
247
|
symbols = this.marketSymbols(symbols);
|
|
237
248
|
}
|
|
238
|
-
const response = await this.
|
|
249
|
+
const response = await this.publicGetManagerCoinsData(params);
|
|
250
|
+
const data = this.safeList(response, 'data', []);
|
|
239
251
|
const result = {};
|
|
240
252
|
const quotes = ['IRT', 'USDT'];
|
|
241
|
-
for (let i = 0; i <
|
|
242
|
-
const base = this.safeString(
|
|
253
|
+
for (let i = 0; i < data.length; i++) {
|
|
254
|
+
const base = this.safeString(data[i], 'symbol');
|
|
243
255
|
for (let index = 0; index < quotes.length; index++) {
|
|
244
256
|
const quote = quotes[index];
|
|
245
257
|
if (base === quote) {
|
|
246
258
|
continue;
|
|
247
259
|
}
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
const ticker = this.parseTicker(
|
|
260
|
+
data[i]['base'] = base;
|
|
261
|
+
data[i]['quote'] = quote;
|
|
262
|
+
data[i]['symbol'] = base + quote;
|
|
263
|
+
const ticker = this.parseTicker(data[i]);
|
|
252
264
|
const symbol = ticker['symbol'];
|
|
253
265
|
result[symbol] = ticker;
|
|
254
266
|
}
|
|
@@ -260,7 +272,7 @@ class abantether extends abantether$1["default"] {
|
|
|
260
272
|
* @method
|
|
261
273
|
* @name abantether#fetchTicker
|
|
262
274
|
* @description fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
263
|
-
* @see https://abantether.com/
|
|
275
|
+
* @see https://api.abantether.com/manager/coins/data
|
|
264
276
|
* @param {string} symbol unified symbol of the market to fetch the ticker for
|
|
265
277
|
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
266
278
|
* @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
|
|
@@ -270,38 +282,45 @@ class abantether extends abantether$1["default"] {
|
|
|
270
282
|
}
|
|
271
283
|
parseTicker(ticker, market = undefined) {
|
|
272
284
|
// {
|
|
273
|
-
//
|
|
274
|
-
//
|
|
275
|
-
//
|
|
276
|
-
//
|
|
277
|
-
//
|
|
278
|
-
//
|
|
279
|
-
//
|
|
280
|
-
//
|
|
281
|
-
//
|
|
282
|
-
//
|
|
283
|
-
//
|
|
284
|
-
//
|
|
285
|
-
//
|
|
286
|
-
//
|
|
287
|
-
//
|
|
288
|
-
//
|
|
289
|
-
//
|
|
290
|
-
//
|
|
291
|
-
//
|
|
292
|
-
//
|
|
293
|
-
//
|
|
294
|
-
//
|
|
295
|
-
//
|
|
285
|
+
// "id": 2,
|
|
286
|
+
// "name": "Bitcoin",
|
|
287
|
+
// "symbol": "BTC",
|
|
288
|
+
// "persian_name": "بیت کوین",
|
|
289
|
+
// "is_active": true,
|
|
290
|
+
// "is_withdrawal_active": true,
|
|
291
|
+
// "is_deposit_active": true,
|
|
292
|
+
// "is_mid_wallet_transfer_active": true,
|
|
293
|
+
// "is_buy_active": true,
|
|
294
|
+
// "is_sell_active": true,
|
|
295
|
+
// "is_credit_active": true,
|
|
296
|
+
// "min_trade": "1.00",
|
|
297
|
+
// "max_trade": "65000.00",
|
|
298
|
+
// "tether_price": "114909.43000000",
|
|
299
|
+
// "price_buy": "13049114870.800000000",
|
|
300
|
+
// "price_sell": "12944547289.500000000",
|
|
301
|
+
// "volume24h": "93585526493.26",
|
|
302
|
+
// "percent_change_1h": "-0.29",
|
|
303
|
+
// "percent_change_24h": "3.22",
|
|
304
|
+
// "percent_change_7d": "-7.19",
|
|
305
|
+
// "market_cap": "2292874615411.72",
|
|
306
|
+
// "coin_type": "COIN",
|
|
307
|
+
// "exchange_type": "binance",
|
|
308
|
+
// "icon": "561aa10abc0c45f7aa4499f48d618c80",
|
|
309
|
+
// "fund_tether_buy": "0",
|
|
310
|
+
// "fund_tether_sell": "0",
|
|
311
|
+
// "irt_decimal_point": 0,
|
|
312
|
+
// "tether_decimal_point": 2,
|
|
313
|
+
// "amount_decimal_point": 9
|
|
314
|
+
// },
|
|
296
315
|
const marketType = 'otc';
|
|
297
316
|
const marketId = this.safeString(ticker, 'symbol');
|
|
298
317
|
const symbol = this.safeSymbol(marketId, market, undefined, marketType);
|
|
299
|
-
let last = this.safeFloat(ticker, '
|
|
318
|
+
let last = this.safeFloat(ticker, 'tether_price', 0);
|
|
300
319
|
if (ticker['quote'] === 'IRT') {
|
|
301
|
-
last = this.safeFloat(ticker, '
|
|
320
|
+
last = this.safeFloat(ticker, 'price_buy', 0);
|
|
302
321
|
}
|
|
303
|
-
const change = this.safeFloat(ticker, '
|
|
304
|
-
const baseVolume = this.safeFloat(ticker, '
|
|
322
|
+
const change = this.safeFloat(ticker, 'percent_change_24h', 0);
|
|
323
|
+
const baseVolume = this.safeFloat(ticker, 'volume24h', 0);
|
|
305
324
|
return this.safeTicker({
|
|
306
325
|
'symbol': symbol,
|
|
307
326
|
'timestamp': undefined,
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange$1 = require('../base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
class Exchange extends Exchange$1["default"] {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports["default"] = Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange$1 = require('../base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
class Exchange extends Exchange$1["default"] {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports["default"] = Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange$1 = require('../base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
class Exchange extends Exchange$1["default"] {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports["default"] = Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange$1 = require('../base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
class Exchange extends Exchange$1["default"] {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports["default"] = Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange$1 = require('../base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
class Exchange extends Exchange$1["default"] {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports["default"] = Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange$1 = require('../base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
class Exchange extends Exchange$1["default"] {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports["default"] = Exchange;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange$1 = require('../base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
class Exchange extends Exchange$1["default"] {
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
exports["default"] = Exchange;
|
|
@@ -23,7 +23,7 @@ class afratether extends afratether$1["default"] {
|
|
|
23
23
|
'pro': false,
|
|
24
24
|
'has': {
|
|
25
25
|
'CORS': undefined,
|
|
26
|
-
'spot':
|
|
26
|
+
'spot': false,
|
|
27
27
|
'margin': false,
|
|
28
28
|
'swap': false,
|
|
29
29
|
'future': false,
|
|
@@ -79,6 +79,7 @@ class afratether extends afratether$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,
|
|
@@ -138,21 +139,43 @@ class afratether extends afratether$1["default"] {
|
|
|
138
139
|
}
|
|
139
140
|
parseMarket(market) {
|
|
140
141
|
// {
|
|
141
|
-
// "currencyAbb": "
|
|
142
|
-
// "nameEn": "
|
|
143
|
-
// "nameFa": "
|
|
144
|
-
// "icon": "/assets/crypto/
|
|
145
|
-
// "
|
|
146
|
-
// "
|
|
147
|
-
//
|
|
148
|
-
//
|
|
149
|
-
//
|
|
142
|
+
// "currencyAbb": "USDT",
|
|
143
|
+
// "nameEn": "Tether",
|
|
144
|
+
// "nameFa": "تتر",
|
|
145
|
+
// "icon": "/assets/crypto/usdt.png",
|
|
146
|
+
// "round": 1000000,
|
|
147
|
+
// "currency": "USDT",
|
|
148
|
+
// "changeRate24h": "-0.0065",
|
|
149
|
+
// "Klines": [
|
|
150
|
+
// [
|
|
151
|
+
// "1760227200000",
|
|
152
|
+
// "1147500",
|
|
153
|
+
// "1140000",
|
|
154
|
+
// "1145500",
|
|
155
|
+
// "1125000",
|
|
156
|
+
// "0",
|
|
157
|
+
// "0"
|
|
158
|
+
// ],
|
|
159
|
+
// ],
|
|
160
|
+
// "info": {
|
|
161
|
+
// "birth_date": 1412553600000,
|
|
162
|
+
// "open_24h": 1,
|
|
163
|
+
// "open_1w": 1,
|
|
164
|
+
// "open_3M": 1,
|
|
165
|
+
// "open_1y": 1
|
|
166
|
+
// },
|
|
167
|
+
// "prices": {
|
|
168
|
+
// "USDT": {
|
|
169
|
+
// "price": "1"
|
|
170
|
+
// },
|
|
171
|
+
// "IRR": {
|
|
172
|
+
// "price_sell": 1135000,
|
|
173
|
+
// "price_buy": 1123000
|
|
150
174
|
// }
|
|
151
|
-
//
|
|
152
|
-
// }
|
|
153
|
-
const details = this.safeList(market, 'prices');
|
|
175
|
+
// }
|
|
176
|
+
// }
|
|
154
177
|
let baseId = this.safeString(market, 'currency');
|
|
155
|
-
let quoteId =
|
|
178
|
+
let quoteId = 'IRR';
|
|
156
179
|
const base = this.safeCurrencyCode(baseId);
|
|
157
180
|
const quote = this.safeCurrencyCode(quoteId);
|
|
158
181
|
const id = base + quote;
|
|
@@ -167,8 +190,8 @@ class afratether extends afratether$1["default"] {
|
|
|
167
190
|
'baseId': baseId,
|
|
168
191
|
'quoteId': quoteId,
|
|
169
192
|
'settleId': undefined,
|
|
170
|
-
'type': '
|
|
171
|
-
'spot':
|
|
193
|
+
'type': 'otc',
|
|
194
|
+
'spot': false,
|
|
172
195
|
'margin': false,
|
|
173
196
|
'swap': false,
|
|
174
197
|
'future': false,
|
|
@@ -251,41 +274,66 @@ class afratether extends afratether$1["default"] {
|
|
|
251
274
|
}
|
|
252
275
|
parseTicker(ticker, market = undefined) {
|
|
253
276
|
// {
|
|
254
|
-
// "currencyAbb": "
|
|
255
|
-
// "nameEn": "
|
|
256
|
-
// "nameFa": "
|
|
257
|
-
// "icon": "/assets/crypto/
|
|
258
|
-
// "
|
|
259
|
-
// "
|
|
260
|
-
//
|
|
261
|
-
//
|
|
262
|
-
//
|
|
277
|
+
// "currencyAbb": "USDT",
|
|
278
|
+
// "nameEn": "Tether",
|
|
279
|
+
// "nameFa": "تتر",
|
|
280
|
+
// "icon": "/assets/crypto/usdt.png",
|
|
281
|
+
// "round": 1000000,
|
|
282
|
+
// "currency": "USDT",
|
|
283
|
+
// "changeRate24h": "-0.0065",
|
|
284
|
+
// "Klines": [
|
|
285
|
+
// [
|
|
286
|
+
// "1760227200000",
|
|
287
|
+
// "1147500",
|
|
288
|
+
// "1140000",
|
|
289
|
+
// "1145500",
|
|
290
|
+
// "1125000",
|
|
291
|
+
// "0",
|
|
292
|
+
// "0"
|
|
293
|
+
// ],
|
|
294
|
+
// ],
|
|
295
|
+
// "info": {
|
|
296
|
+
// "birth_date": 1412553600000,
|
|
297
|
+
// "open_24h": 1,
|
|
298
|
+
// "open_1w": 1,
|
|
299
|
+
// "open_3M": 1,
|
|
300
|
+
// "open_1y": 1
|
|
301
|
+
// },
|
|
302
|
+
// "prices": {
|
|
303
|
+
// "USDT": {
|
|
304
|
+
// "price": "1"
|
|
305
|
+
// },
|
|
306
|
+
// "IRR": {
|
|
307
|
+
// "price_sell": 1135000,
|
|
308
|
+
// "price_buy": 1123000
|
|
263
309
|
// }
|
|
264
|
-
//
|
|
265
|
-
// }
|
|
310
|
+
// }
|
|
311
|
+
// }
|
|
266
312
|
const marketType = 'otc';
|
|
267
|
-
const details = this.safeList(ticker, 'prices');
|
|
268
313
|
const base = this.safeString(ticker, 'currency');
|
|
269
|
-
const quote =
|
|
270
|
-
const marketId = base + quote;
|
|
314
|
+
const quote = 'IRR';
|
|
315
|
+
const marketId = base + '/' + quote;
|
|
271
316
|
const symbol = this.safeSymbol(marketId, market, undefined, marketType);
|
|
272
|
-
const
|
|
317
|
+
const prices = this.safeDict(ticker, 'prices', {});
|
|
318
|
+
const irrPrices = this.safeDict(prices, 'IRR', {});
|
|
319
|
+
const sell = this.safeFloat(irrPrices, 'price_sell', 0);
|
|
320
|
+
const buy = this.safeFloat(irrPrices, 'price_buy', 0);
|
|
273
321
|
return this.safeTicker({
|
|
274
322
|
'symbol': symbol,
|
|
275
323
|
'timestamp': undefined,
|
|
276
324
|
'datetime': undefined,
|
|
277
325
|
'high': undefined,
|
|
278
326
|
'low': undefined,
|
|
279
|
-
'bid':
|
|
327
|
+
'bid': sell,
|
|
280
328
|
'bidVolume': undefined,
|
|
281
|
-
'ask':
|
|
329
|
+
'ask': buy,
|
|
282
330
|
'askVolume': undefined,
|
|
283
331
|
'vwap': undefined,
|
|
284
332
|
'open': undefined,
|
|
285
|
-
'close':
|
|
286
|
-
'last':
|
|
333
|
+
'close': buy,
|
|
334
|
+
'last': buy,
|
|
287
335
|
'previousClose': undefined,
|
|
288
|
-
'change': undefined,
|
|
336
|
+
'change': this.safeFloat(ticker, 'changeRate24h', undefined),
|
|
289
337
|
'percentage': undefined,
|
|
290
338
|
'average': undefined,
|
|
291
339
|
'baseVolume': undefined,
|