ccxt-ir 4.19.0 → 4.20.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 +7 -7
- package/dist/cjs/ccxt.js +4 -1
- package/dist/cjs/package.json +1 -1
- package/dist/cjs/src/baazar.js +8 -4
- package/dist/cjs/src/daric.js +10 -4
- package/dist/cjs/src/gerami.js +180 -0
- package/dist/cjs/src/goldika.js +6 -2
- package/dist/cjs/src/hamrahgold.js +8 -4
- package/dist/cjs/src/melligold.js +6 -2
- package/dist/cjs/src/ramzinex.js +5 -2
- package/dist/cjs/src/talapp.js +10 -4
- package/dist/cjs/src/technogold.js +8 -4
- package/dist/cjs/src/wallgold.js +6 -2
- package/dist/cjs/src/zarafza.js +8 -4
- package/dist/cjs/src/zarminex.js +5 -5
- package/dist/cjs/src/zarniv.js +6 -3
- package/js/ccxt.d.ts +5 -2
- package/js/ccxt.js +4 -2
- package/js/src/abstract/gerami.d.ts +8 -0
- package/js/src/abstract/gerami.js +11 -0
- package/js/src/baazar.js +8 -4
- package/js/src/daric.js +10 -4
- package/js/src/gerami.d.ts +20 -0
- package/js/src/gerami.js +179 -0
- package/js/src/goldika.js +6 -2
- package/js/src/hamrahgold.js +8 -4
- package/js/src/melligold.js +6 -2
- package/js/src/ramzinex.js +5 -2
- package/js/src/talapp.js +10 -4
- package/js/src/technogold.js +8 -4
- package/js/src/wallgold.js +6 -2
- package/js/src/zarafza.js +8 -4
- package/js/src/zarminex.js +5 -5
- package/js/src/zarniv.js +6 -3
- package/js/test.js +48 -13
- package/package.json +1 -1
package/dist/cjs/ccxt.js
CHANGED
|
@@ -97,6 +97,7 @@ var foxbit = require('./src/foxbit.js');
|
|
|
97
97
|
var gate = require('./src/gate.js');
|
|
98
98
|
var gateio = require('./src/gateio.js');
|
|
99
99
|
var gemini = require('./src/gemini.js');
|
|
100
|
+
var gerami = require('./src/gerami.js');
|
|
100
101
|
var goldika = require('./src/goldika.js');
|
|
101
102
|
var goldis = require('./src/goldis.js');
|
|
102
103
|
var hamrahgold = require('./src/hamrahgold.js');
|
|
@@ -259,7 +260,7 @@ var xt$1 = require('./src/pro/xt.js');
|
|
|
259
260
|
|
|
260
261
|
//-----------------------------------------------------------------------------
|
|
261
262
|
// this is updated by vss.js when building
|
|
262
|
-
const version = '4.
|
|
263
|
+
const version = '4.20.0';
|
|
263
264
|
Exchange["default"].ccxtVersion = version;
|
|
264
265
|
const exchanges = {
|
|
265
266
|
'abantether': abantether["default"],
|
|
@@ -347,6 +348,7 @@ const exchanges = {
|
|
|
347
348
|
'gate': gate["default"],
|
|
348
349
|
'gateio': gateio["default"],
|
|
349
350
|
'gemini': gemini["default"],
|
|
351
|
+
'gerami': gerami["default"],
|
|
350
352
|
'goldika': goldika["default"],
|
|
351
353
|
'goldis': goldis["default"],
|
|
352
354
|
'hamrahgold': hamrahgold["default"],
|
|
@@ -645,6 +647,7 @@ exports.foxbit = foxbit["default"];
|
|
|
645
647
|
exports.gate = gate["default"];
|
|
646
648
|
exports.gateio = gateio["default"];
|
|
647
649
|
exports.gemini = gemini["default"];
|
|
650
|
+
exports.gerami = gerami["default"];
|
|
648
651
|
exports.goldika = goldika["default"];
|
|
649
652
|
exports.goldis = goldis["default"];
|
|
650
653
|
exports.hamrahgold = hamrahgold["default"];
|
package/dist/cjs/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{ "type": "commonjs" }
|
|
1
|
+
{ "type": "commonjs" }
|
package/dist/cjs/src/baazar.js
CHANGED
|
@@ -115,14 +115,18 @@ class baazar extends Exchange["default"] {
|
|
|
115
115
|
}
|
|
116
116
|
parseTicker(response, market = undefined) {
|
|
117
117
|
const data = this.safeDict(response, 'data', {});
|
|
118
|
-
let bid = this.safeNumber(data, '
|
|
119
|
-
let ask = this.safeNumber(data, '
|
|
118
|
+
let bid = this.safeNumber(data, 'buyPrice');
|
|
119
|
+
let ask = this.safeNumber(data, 'sellPrice');
|
|
120
120
|
if (bid !== undefined) {
|
|
121
121
|
bid = bid / 10;
|
|
122
122
|
}
|
|
123
123
|
if (ask !== undefined) {
|
|
124
124
|
ask = ask / 10;
|
|
125
125
|
}
|
|
126
|
+
let last = bid;
|
|
127
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
128
|
+
last = ask;
|
|
129
|
+
}
|
|
126
130
|
return this.safeTicker({
|
|
127
131
|
'symbol': market['symbol'],
|
|
128
132
|
'timestamp': this.safeInteger(data, 'currentTime'),
|
|
@@ -135,8 +139,8 @@ class baazar extends Exchange["default"] {
|
|
|
135
139
|
'askVolume': undefined,
|
|
136
140
|
'vwap': undefined,
|
|
137
141
|
'open': undefined,
|
|
138
|
-
'close':
|
|
139
|
-
'last':
|
|
142
|
+
'close': last,
|
|
143
|
+
'last': last,
|
|
140
144
|
'previousClose': undefined,
|
|
141
145
|
'change': undefined,
|
|
142
146
|
'percentage': undefined,
|
package/dist/cjs/src/daric.js
CHANGED
|
@@ -144,20 +144,26 @@ class daric extends Exchange["default"] {
|
|
|
144
144
|
markets = response;
|
|
145
145
|
}
|
|
146
146
|
const ticker = this.filterBy(markets, 'destinationCoinSymbol', market['baseId'])[0];
|
|
147
|
+
const bid = this.safeNumber(ticker, 'bestSell');
|
|
148
|
+
const ask = this.safeNumber(ticker, 'bestBuy');
|
|
149
|
+
let last = bid;
|
|
150
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
151
|
+
last = ask;
|
|
152
|
+
}
|
|
147
153
|
return this.safeTicker({
|
|
148
154
|
'symbol': market['symbol'],
|
|
149
155
|
'timestamp': undefined,
|
|
150
156
|
'datetime': undefined,
|
|
151
157
|
'high': this.safeNumber(ticker, 'highestRecentOrder'),
|
|
152
158
|
'low': this.safeNumber(ticker, 'lowestRecentOrder'),
|
|
153
|
-
'bid':
|
|
159
|
+
'bid': bid,
|
|
154
160
|
'bidVolume': undefined,
|
|
155
|
-
'ask':
|
|
161
|
+
'ask': ask,
|
|
156
162
|
'askVolume': undefined,
|
|
157
163
|
'vwap': undefined,
|
|
158
164
|
'open': undefined,
|
|
159
|
-
'close':
|
|
160
|
-
'last':
|
|
165
|
+
'close': last,
|
|
166
|
+
'last': last,
|
|
161
167
|
'previousClose': undefined,
|
|
162
168
|
'change': undefined,
|
|
163
169
|
'percentage': this.safeNumber(ticker, 'change'),
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Exchange = require('./base/Exchange.js');
|
|
6
|
+
|
|
7
|
+
// ----------------------------------------------------------------------------
|
|
8
|
+
// ---------------------------------------------------------------------------
|
|
9
|
+
/**
|
|
10
|
+
* @class gerami
|
|
11
|
+
* @augments Exchange
|
|
12
|
+
*/
|
|
13
|
+
class gerami extends Exchange["default"] {
|
|
14
|
+
describe() {
|
|
15
|
+
return this.deepExtend(super.describe(), {
|
|
16
|
+
'id': 'gerami',
|
|
17
|
+
'name': 'Gerami',
|
|
18
|
+
'countries': ['IR'],
|
|
19
|
+
'rateLimit': 1000,
|
|
20
|
+
'certified': false,
|
|
21
|
+
'pro': false,
|
|
22
|
+
'has': {
|
|
23
|
+
'CORS': undefined,
|
|
24
|
+
'spot': false,
|
|
25
|
+
'margin': false,
|
|
26
|
+
'swap': false,
|
|
27
|
+
'future': false,
|
|
28
|
+
'option': false,
|
|
29
|
+
'fetchMarkets': true,
|
|
30
|
+
'fetchTicker': true,
|
|
31
|
+
'fetchTickers': true,
|
|
32
|
+
'otc': true,
|
|
33
|
+
},
|
|
34
|
+
'options': {
|
|
35
|
+
'defaultType': 'otc',
|
|
36
|
+
},
|
|
37
|
+
'urls': {
|
|
38
|
+
'api': {
|
|
39
|
+
'public': 'https://api.gerami.com/api/v1',
|
|
40
|
+
},
|
|
41
|
+
'www': 'https://gerami.com',
|
|
42
|
+
'doc': 'https://api.gerami.com/api/v1/pairs/XAU750g_IRT',
|
|
43
|
+
},
|
|
44
|
+
'api': {
|
|
45
|
+
'public': {
|
|
46
|
+
'get': {
|
|
47
|
+
'pairs/{pair}': 1,
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async fetchMarkets(params = {}) {
|
|
54
|
+
const marketIds = ['XAU750g_IRT', 'XAG999g_IRT'];
|
|
55
|
+
const result = [];
|
|
56
|
+
for (let i = 0; i < marketIds.length; i++) {
|
|
57
|
+
const response = await this.publicGetPairsPair(this.extend({
|
|
58
|
+
'pair': marketIds[i],
|
|
59
|
+
}, params));
|
|
60
|
+
result.push(this.parseMarket(response));
|
|
61
|
+
}
|
|
62
|
+
return result;
|
|
63
|
+
}
|
|
64
|
+
parseMarket(response) {
|
|
65
|
+
const data = this.safeDict(response, 'data', {});
|
|
66
|
+
const baseId = this.safeString(data, 'base_symbol');
|
|
67
|
+
const quoteId = this.safeString(data, 'quote_symbol');
|
|
68
|
+
let base = 'XAG-1G';
|
|
69
|
+
if (baseId === 'XAU750g') {
|
|
70
|
+
base = 'XAU18';
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
'id': this.safeString(data, 'market'),
|
|
74
|
+
'symbol': base + '/' + quoteId,
|
|
75
|
+
'base': base,
|
|
76
|
+
'quote': quoteId,
|
|
77
|
+
'settle': undefined,
|
|
78
|
+
'baseId': baseId,
|
|
79
|
+
'quoteId': quoteId,
|
|
80
|
+
'settleId': undefined,
|
|
81
|
+
'type': 'otc',
|
|
82
|
+
'spot': false,
|
|
83
|
+
'margin': false,
|
|
84
|
+
'swap': false,
|
|
85
|
+
'future': false,
|
|
86
|
+
'option': false,
|
|
87
|
+
'active': this.safeBool(data, 'buy_is_active') && this.safeBool(data, 'sell_is_active'),
|
|
88
|
+
'contract': false,
|
|
89
|
+
'linear': undefined,
|
|
90
|
+
'inverse': undefined,
|
|
91
|
+
'contractSize': undefined,
|
|
92
|
+
'expiry': undefined,
|
|
93
|
+
'expiryDatetime': undefined,
|
|
94
|
+
'strike': undefined,
|
|
95
|
+
'optionType': undefined,
|
|
96
|
+
'precision': {
|
|
97
|
+
'amount': this.safeNumber(data, 'amount_precision'),
|
|
98
|
+
'price': this.safeNumber(data, 'price_precision'),
|
|
99
|
+
},
|
|
100
|
+
'limits': {
|
|
101
|
+
'leverage': { 'min': undefined, 'max': undefined },
|
|
102
|
+
'amount': {
|
|
103
|
+
'min': this.safeNumber(data, 'buy_min_amount'),
|
|
104
|
+
'max': this.safeNumber(data, 'buy_max_amount'),
|
|
105
|
+
},
|
|
106
|
+
'price': { 'min': undefined, 'max': undefined },
|
|
107
|
+
'cost': { 'min': undefined, 'max': undefined },
|
|
108
|
+
},
|
|
109
|
+
'created': undefined,
|
|
110
|
+
'info': data,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
async fetchTicker(symbol, params = {}) {
|
|
114
|
+
await this.loadMarkets();
|
|
115
|
+
const market = this.market(symbol);
|
|
116
|
+
const response = await this.publicGetPairsPair(this.extend({
|
|
117
|
+
'pair': market['id'],
|
|
118
|
+
}, params));
|
|
119
|
+
return this.parseTicker(response, market);
|
|
120
|
+
}
|
|
121
|
+
async fetchTickers(symbols = undefined, params = {}) {
|
|
122
|
+
await this.loadMarkets();
|
|
123
|
+
if (symbols !== undefined) {
|
|
124
|
+
symbols = this.marketSymbols(symbols);
|
|
125
|
+
}
|
|
126
|
+
const marketSymbols = ['XAU18/IRT', 'XAG-1G/IRT'];
|
|
127
|
+
const result = {};
|
|
128
|
+
for (let i = 0; i < marketSymbols.length; i++) {
|
|
129
|
+
const market = this.market(marketSymbols[i]);
|
|
130
|
+
const response = await this.publicGetPairsPair(this.extend({
|
|
131
|
+
'pair': market['id'],
|
|
132
|
+
}, params));
|
|
133
|
+
const ticker = this.parseTicker(response, market);
|
|
134
|
+
result[ticker['symbol']] = ticker;
|
|
135
|
+
}
|
|
136
|
+
return this.filterByArrayTickers(result, 'symbol', symbols);
|
|
137
|
+
}
|
|
138
|
+
parseTicker(response, market = undefined) {
|
|
139
|
+
const data = this.safeDict(response, 'data', {});
|
|
140
|
+
const bid = this.safeNumber(data, 'buy_price');
|
|
141
|
+
const ask = this.safeNumber(data, 'sell_price');
|
|
142
|
+
let last = bid;
|
|
143
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
144
|
+
last = ask;
|
|
145
|
+
}
|
|
146
|
+
return this.safeTicker({
|
|
147
|
+
'symbol': market['symbol'],
|
|
148
|
+
'timestamp': undefined,
|
|
149
|
+
'datetime': undefined,
|
|
150
|
+
'high': undefined,
|
|
151
|
+
'low': undefined,
|
|
152
|
+
'bid': bid,
|
|
153
|
+
'bidVolume': undefined,
|
|
154
|
+
'ask': ask,
|
|
155
|
+
'askVolume': undefined,
|
|
156
|
+
'vwap': undefined,
|
|
157
|
+
'open': undefined,
|
|
158
|
+
'close': last,
|
|
159
|
+
'last': last,
|
|
160
|
+
'previousClose': undefined,
|
|
161
|
+
'change': this.safeNumber(data, 'daily_price_change_amount'),
|
|
162
|
+
'percentage': this.safeNumber(data, 'daily_price_change_percentage'),
|
|
163
|
+
'average': undefined,
|
|
164
|
+
'baseVolume': undefined,
|
|
165
|
+
'quoteVolume': undefined,
|
|
166
|
+
'info': data,
|
|
167
|
+
}, market);
|
|
168
|
+
}
|
|
169
|
+
sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
|
|
170
|
+
let url = this.urls['api'][api] + '/' + this.implodeParams(path, params);
|
|
171
|
+
const query = this.omit(params, this.extractParams(path));
|
|
172
|
+
if (Object.keys(query).length) {
|
|
173
|
+
url += '?' + this.urlencode(query);
|
|
174
|
+
}
|
|
175
|
+
headers = { 'Accept': 'application/json' };
|
|
176
|
+
return { 'url': url, 'method': method, 'body': body, 'headers': headers };
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
exports["default"] = gerami;
|
package/dist/cjs/src/goldika.js
CHANGED
|
@@ -126,6 +126,10 @@ class goldika extends Exchange["default"] {
|
|
|
126
126
|
if (ask !== undefined) {
|
|
127
127
|
ask = ask / 10;
|
|
128
128
|
}
|
|
129
|
+
let last = bid;
|
|
130
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
131
|
+
last = ask;
|
|
132
|
+
}
|
|
129
133
|
return this.safeTicker({
|
|
130
134
|
'symbol': market['symbol'],
|
|
131
135
|
'timestamp': timestamp,
|
|
@@ -138,8 +142,8 @@ class goldika extends Exchange["default"] {
|
|
|
138
142
|
'askVolume': undefined,
|
|
139
143
|
'vwap': undefined,
|
|
140
144
|
'open': undefined,
|
|
141
|
-
'close':
|
|
142
|
-
'last':
|
|
145
|
+
'close': last,
|
|
146
|
+
'last': last,
|
|
143
147
|
'previousClose': undefined,
|
|
144
148
|
'change': undefined,
|
|
145
149
|
'percentage': this.safeNumber(data, 'daily_change_percent'),
|
|
@@ -122,8 +122,8 @@ class hamrahgold extends Exchange["default"] {
|
|
|
122
122
|
const sell = this.safeDict(sellResponse, 'data', {});
|
|
123
123
|
const changes = this.safeDict(sell, 'changes', {});
|
|
124
124
|
const dailyChange = this.safeDict(changes, '1d', {});
|
|
125
|
-
let bid = this.safeNumber(
|
|
126
|
-
let ask = this.safeNumber(
|
|
125
|
+
let bid = this.safeNumber(sell, 'current');
|
|
126
|
+
let ask = this.safeNumber(buy, 'current');
|
|
127
127
|
let previousClose = this.safeNumber(dailyChange, 'price');
|
|
128
128
|
if (bid !== undefined) {
|
|
129
129
|
bid = bid / 10;
|
|
@@ -134,6 +134,10 @@ class hamrahgold extends Exchange["default"] {
|
|
|
134
134
|
if (previousClose !== undefined) {
|
|
135
135
|
previousClose = previousClose / 10;
|
|
136
136
|
}
|
|
137
|
+
let last = bid;
|
|
138
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
139
|
+
last = ask;
|
|
140
|
+
}
|
|
137
141
|
return this.safeTicker({
|
|
138
142
|
'symbol': market['symbol'],
|
|
139
143
|
'timestamp': undefined,
|
|
@@ -146,8 +150,8 @@ class hamrahgold extends Exchange["default"] {
|
|
|
146
150
|
'askVolume': undefined,
|
|
147
151
|
'vwap': undefined,
|
|
148
152
|
'open': undefined,
|
|
149
|
-
'close':
|
|
150
|
-
'last':
|
|
153
|
+
'close': last,
|
|
154
|
+
'last': last,
|
|
151
155
|
'previousClose': previousClose,
|
|
152
156
|
'change': undefined,
|
|
153
157
|
'percentage': this.safeNumber(dailyChange, 'percent'),
|
|
@@ -180,6 +180,10 @@ class melligold extends Exchange["default"] {
|
|
|
180
180
|
const data = this.safeDict(response, 'data', {});
|
|
181
181
|
const buy = this.safeNumber(data, 'price_buy');
|
|
182
182
|
const sell = this.safeNumber(data, 'price_sell');
|
|
183
|
+
let last = buy;
|
|
184
|
+
if (sell !== undefined && (last === undefined || sell > last)) {
|
|
185
|
+
last = sell;
|
|
186
|
+
}
|
|
183
187
|
return this.safeTicker({
|
|
184
188
|
'symbol': market['symbol'],
|
|
185
189
|
'timestamp': this.safeTimestamp(data, 'timestamp'),
|
|
@@ -192,8 +196,8 @@ class melligold extends Exchange["default"] {
|
|
|
192
196
|
'askVolume': undefined,
|
|
193
197
|
'vwap': undefined,
|
|
194
198
|
'open': undefined,
|
|
195
|
-
'close':
|
|
196
|
-
'last':
|
|
199
|
+
'close': last,
|
|
200
|
+
'last': last,
|
|
197
201
|
'previousClose': undefined,
|
|
198
202
|
'change': undefined,
|
|
199
203
|
'percentage': undefined,
|
package/dist/cjs/src/ramzinex.js
CHANGED
|
@@ -360,7 +360,6 @@ class ramzinex extends ramzinex$1["default"] {
|
|
|
360
360
|
let open = this.safeFloat(tickerinfo, 'open');
|
|
361
361
|
let close = this.safeFloat(tickerinfo, 'close');
|
|
362
362
|
const change = this.safeFloat(tickerinfo, 'change_percent');
|
|
363
|
-
let last = this.safeFloat(ticker, 'buy');
|
|
364
363
|
let quoteVolume = this.safeFloat(tickerinfo, 'quote_volume');
|
|
365
364
|
const baseVolume = this.safeFloat(tickerinfo, 'base_volume');
|
|
366
365
|
if (marketinfo['quote'] === 'IRT') {
|
|
@@ -370,9 +369,13 @@ class ramzinex extends ramzinex$1["default"] {
|
|
|
370
369
|
ask = ask ? ask / 10 : 0;
|
|
371
370
|
open = open ? open / 10 : 0;
|
|
372
371
|
close = close ? close / 10 : 0;
|
|
373
|
-
last = last ? last / 10 : 0;
|
|
374
372
|
quoteVolume = quoteVolume ? quoteVolume / 10 : 0;
|
|
375
373
|
}
|
|
374
|
+
let last = bid;
|
|
375
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
376
|
+
last = ask;
|
|
377
|
+
}
|
|
378
|
+
close = last;
|
|
376
379
|
return this.safeTicker({
|
|
377
380
|
'symbol': symbol,
|
|
378
381
|
'timestamp': undefined,
|
package/dist/cjs/src/talapp.js
CHANGED
|
@@ -119,20 +119,26 @@ class talapp extends Exchange["default"] {
|
|
|
119
119
|
if (fetchedAt !== undefined) {
|
|
120
120
|
timestamp = this.parse8601(fetchedAt.replace(' ', 'T') + '+03:30');
|
|
121
121
|
}
|
|
122
|
+
const bid = this.safeNumber(response, 'buy_gold');
|
|
123
|
+
const ask = this.safeNumber(response, 'sell_gold');
|
|
124
|
+
let last = bid;
|
|
125
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
126
|
+
last = ask;
|
|
127
|
+
}
|
|
122
128
|
return this.safeTicker({
|
|
123
129
|
'symbol': market['symbol'],
|
|
124
130
|
'timestamp': timestamp,
|
|
125
131
|
'datetime': undefined,
|
|
126
132
|
'high': undefined,
|
|
127
133
|
'low': undefined,
|
|
128
|
-
'bid':
|
|
134
|
+
'bid': bid,
|
|
129
135
|
'bidVolume': undefined,
|
|
130
|
-
'ask':
|
|
136
|
+
'ask': ask,
|
|
131
137
|
'askVolume': undefined,
|
|
132
138
|
'vwap': undefined,
|
|
133
139
|
'open': undefined,
|
|
134
|
-
'close':
|
|
135
|
-
'last':
|
|
140
|
+
'close': last,
|
|
141
|
+
'last': last,
|
|
136
142
|
'previousClose': undefined,
|
|
137
143
|
'change': undefined,
|
|
138
144
|
'percentage': this.safeNumber(response, 'sell_diff'),
|
|
@@ -116,20 +116,24 @@ class technogold extends Exchange["default"] {
|
|
|
116
116
|
const prices = this.safeDict(response, 'results', {});
|
|
117
117
|
const buy = this.safeNumber(prices, 'buy_price');
|
|
118
118
|
const sell = this.safeNumber(prices, 'sell_price');
|
|
119
|
+
let last = buy;
|
|
120
|
+
if (sell !== undefined && (last === undefined || sell > last)) {
|
|
121
|
+
last = sell;
|
|
122
|
+
}
|
|
119
123
|
return this.safeTicker({
|
|
120
124
|
'symbol': market['symbol'],
|
|
121
125
|
'timestamp': undefined,
|
|
122
126
|
'datetime': undefined,
|
|
123
127
|
'high': undefined,
|
|
124
128
|
'low': undefined,
|
|
125
|
-
'bid':
|
|
129
|
+
'bid': buy,
|
|
126
130
|
'bidVolume': undefined,
|
|
127
|
-
'ask':
|
|
131
|
+
'ask': sell,
|
|
128
132
|
'askVolume': undefined,
|
|
129
133
|
'vwap': undefined,
|
|
130
134
|
'open': undefined,
|
|
131
|
-
'close':
|
|
132
|
-
'last':
|
|
135
|
+
'close': last,
|
|
136
|
+
'last': last,
|
|
133
137
|
'previousClose': undefined,
|
|
134
138
|
'change': undefined,
|
|
135
139
|
'percentage': undefined,
|
package/dist/cjs/src/wallgold.js
CHANGED
|
@@ -125,6 +125,10 @@ class wallgold extends Exchange["default"] {
|
|
|
125
125
|
const sellResult = this.safeDict(sellResponse, 'result', buyResult);
|
|
126
126
|
const bid = this.safeNumber(buyResult, 'price');
|
|
127
127
|
const ask = this.safeNumber(sellResult, 'price');
|
|
128
|
+
let last = bid;
|
|
129
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
130
|
+
last = ask;
|
|
131
|
+
}
|
|
128
132
|
const currentTime = this.safeString(buyResult, 'currentTime');
|
|
129
133
|
const timestamp = currentTime ? this.parse8601(currentTime) : undefined;
|
|
130
134
|
return this.safeTicker({
|
|
@@ -139,8 +143,8 @@ class wallgold extends Exchange["default"] {
|
|
|
139
143
|
'askVolume': undefined,
|
|
140
144
|
'vwap': undefined,
|
|
141
145
|
'open': undefined,
|
|
142
|
-
'close':
|
|
143
|
-
'last':
|
|
146
|
+
'close': last,
|
|
147
|
+
'last': last,
|
|
144
148
|
'previousClose': undefined,
|
|
145
149
|
'change': undefined,
|
|
146
150
|
'percentage': undefined,
|
package/dist/cjs/src/zarafza.js
CHANGED
|
@@ -120,8 +120,12 @@ class zarafza extends Exchange["default"] {
|
|
|
120
120
|
const gold = this.safeDict(data, 'G18', {});
|
|
121
121
|
const buy = this.safeDict(gold, 'buy', {});
|
|
122
122
|
const sell = this.safeDict(gold, 'sell', {});
|
|
123
|
-
const bid = this.safeNumber(
|
|
124
|
-
const ask = this.safeNumber(
|
|
123
|
+
const bid = this.safeNumber(sell, 'price');
|
|
124
|
+
const ask = this.safeNumber(buy, 'price');
|
|
125
|
+
let last = bid;
|
|
126
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
127
|
+
last = ask;
|
|
128
|
+
}
|
|
125
129
|
return this.safeTicker({
|
|
126
130
|
'symbol': market['symbol'],
|
|
127
131
|
'timestamp': undefined,
|
|
@@ -134,8 +138,8 @@ class zarafza extends Exchange["default"] {
|
|
|
134
138
|
'askVolume': undefined,
|
|
135
139
|
'vwap': undefined,
|
|
136
140
|
'open': undefined,
|
|
137
|
-
'close':
|
|
138
|
-
'last':
|
|
141
|
+
'close': last,
|
|
142
|
+
'last': last,
|
|
139
143
|
'previousClose': undefined,
|
|
140
144
|
'change': undefined,
|
|
141
145
|
'percentage': this.safeNumber(sell, 'change'),
|
package/dist/cjs/src/zarminex.js
CHANGED
|
@@ -113,17 +113,17 @@ class zarminex extends Exchange["default"] {
|
|
|
113
113
|
return this.filterByArrayTickers(result, 'symbol', symbols);
|
|
114
114
|
}
|
|
115
115
|
parseTicker(response, market = undefined) {
|
|
116
|
-
let bid = this.safeNumber(response, '
|
|
117
|
-
let ask = this.safeNumber(response, '
|
|
118
|
-
let last = this.safeNumber(response, 'cached_price');
|
|
116
|
+
let bid = this.safeNumber(response, 'buy');
|
|
117
|
+
let ask = this.safeNumber(response, 'sell');
|
|
119
118
|
if (bid !== undefined) {
|
|
120
119
|
bid = bid / 10;
|
|
121
120
|
}
|
|
122
121
|
if (ask !== undefined) {
|
|
123
122
|
ask = ask / 10;
|
|
124
123
|
}
|
|
125
|
-
|
|
126
|
-
|
|
124
|
+
let last = bid;
|
|
125
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
126
|
+
last = ask;
|
|
127
127
|
}
|
|
128
128
|
return this.safeTicker({
|
|
129
129
|
'symbol': market['symbol'],
|
package/dist/cjs/src/zarniv.js
CHANGED
|
@@ -138,9 +138,12 @@ class zarniv extends Exchange["default"] {
|
|
|
138
138
|
if (serverTime !== undefined) {
|
|
139
139
|
timestamp = this.parse8601(serverTime + '+03:30');
|
|
140
140
|
}
|
|
141
|
-
const bid = this.safeNumber(response, '
|
|
142
|
-
const ask = this.safeNumber(response, '
|
|
143
|
-
|
|
141
|
+
const bid = this.safeNumber(response, 'buy_price_per_gram');
|
|
142
|
+
const ask = this.safeNumber(response, 'sell_price_per_gram');
|
|
143
|
+
let last = bid;
|
|
144
|
+
if (ask !== undefined && (last === undefined || ask > last)) {
|
|
145
|
+
last = ask;
|
|
146
|
+
}
|
|
144
147
|
return this.safeTicker({
|
|
145
148
|
'symbol': market['symbol'],
|
|
146
149
|
'timestamp': timestamp,
|
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.20.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';
|
|
@@ -90,6 +90,7 @@ import foxbit from './src/foxbit.js';
|
|
|
90
90
|
import gate from './src/gate.js';
|
|
91
91
|
import gateio from './src/gateio.js';
|
|
92
92
|
import gemini from './src/gemini.js';
|
|
93
|
+
import gerami from './src/gerami.js';
|
|
93
94
|
import goldika from './src/goldika.js';
|
|
94
95
|
import goldis from './src/goldis.js';
|
|
95
96
|
import hamrahgold from './src/hamrahgold.js';
|
|
@@ -335,6 +336,7 @@ declare const exchanges: {
|
|
|
335
336
|
gate: typeof gate;
|
|
336
337
|
gateio: typeof gateio;
|
|
337
338
|
gemini: typeof gemini;
|
|
339
|
+
gerami: typeof gerami;
|
|
338
340
|
goldika: typeof goldika;
|
|
339
341
|
goldis: typeof goldis;
|
|
340
342
|
hamrahgold: typeof hamrahgold;
|
|
@@ -663,6 +665,7 @@ declare const ccxt: {
|
|
|
663
665
|
gate: typeof gate;
|
|
664
666
|
gateio: typeof gateio;
|
|
665
667
|
gemini: typeof gemini;
|
|
668
|
+
gerami: typeof gerami;
|
|
666
669
|
goldika: typeof goldika;
|
|
667
670
|
goldis: typeof goldis;
|
|
668
671
|
hamrahgold: typeof hamrahgold;
|
|
@@ -750,5 +753,5 @@ declare const ccxt: {
|
|
|
750
753
|
zarpin: typeof zarpin;
|
|
751
754
|
zonda: typeof zonda;
|
|
752
755
|
} & typeof functions & typeof errors;
|
|
753
|
-
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, asacoine, ascendex, asretether, baazar, bequant, bidarz, 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, bitwana, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, changefa, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, daric, defx, delta, deribit, derive, digifinex, digikalagold, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, goldika, goldis, hamrahgold, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, melligold, mercado, mexc, milligold, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, ourbit, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, saraf, sarmayex, sarrafex, tabdeal, talaavan, talapp, talasea, technogold, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wallgold, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zarafza, zarminex, zarniv, zarpin, zonda, };
|
|
756
|
+
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, asacoine, ascendex, asretether, baazar, bequant, bidarz, 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, bitwana, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, changefa, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, daric, defx, delta, deribit, derive, digifinex, digikalagold, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, gerami, goldika, goldis, hamrahgold, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, melligold, mercado, mexc, milligold, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, ourbit, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, saraf, sarmayex, sarrafex, tabdeal, talaavan, talapp, talasea, technogold, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wallgold, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zarafza, zarminex, zarniv, zarpin, zonda, };
|
|
754
757
|
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.20.0';
|
|
42
42
|
Exchange.ccxtVersion = version;
|
|
43
43
|
//-----------------------------------------------------------------------------
|
|
44
44
|
import abantether from './src/abantether.js';
|
|
@@ -126,6 +126,7 @@ import foxbit from './src/foxbit.js';
|
|
|
126
126
|
import gate from './src/gate.js';
|
|
127
127
|
import gateio from './src/gateio.js';
|
|
128
128
|
import gemini from './src/gemini.js';
|
|
129
|
+
import gerami from './src/gerami.js';
|
|
129
130
|
import goldika from './src/goldika.js';
|
|
130
131
|
import goldis from './src/goldis.js';
|
|
131
132
|
import hamrahgold from './src/hamrahgold.js';
|
|
@@ -372,6 +373,7 @@ const exchanges = {
|
|
|
372
373
|
'gate': gate,
|
|
373
374
|
'gateio': gateio,
|
|
374
375
|
'gemini': gemini,
|
|
376
|
+
'gerami': gerami,
|
|
375
377
|
'goldika': goldika,
|
|
376
378
|
'goldis': goldis,
|
|
377
379
|
'hamrahgold': hamrahgold,
|
|
@@ -546,6 +548,6 @@ pro.exchanges = Object.keys(pro);
|
|
|
546
548
|
pro['Exchange'] = Exchange; // now the same for rest and ts
|
|
547
549
|
//-----------------------------------------------------------------------------
|
|
548
550
|
const ccxt = Object.assign({ version, Exchange, Precise, 'exchanges': Object.keys(exchanges), 'pro': pro }, exchanges, functions, errors);
|
|
549
|
-
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, asacoine, ascendex, asretether, baazar, bequant, bidarz, 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, bitwana, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, changefa, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, daric, defx, delta, deribit, derive, digifinex, digikalagold, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, goldika, goldis, hamrahgold, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, melligold, mercado, mexc, milligold, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, ourbit, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, saraf, sarmayex, sarrafex, tabdeal, talaavan, talapp, talasea, technogold, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wallgold, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zarafza, zarminex, zarniv, zarpin, zonda, };
|
|
551
|
+
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, asacoine, ascendex, asretether, baazar, bequant, bidarz, 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, bitwana, blockchaincom, blofin, btcalpha, btcbox, btcmarkets, btcturk, bybit, bydfi, cafearz, cex, changefa, coinbase, coinbaseadvanced, coinbaseexchange, coinbaseinternational, coincatch, coincheck, coinex, coinmate, coinmetro, coinone, coinsph, coinspot, cryptocom, cryptomus, daric, defx, delta, deribit, derive, digifinex, digikalagold, ellipx, eterex, excoino, exir, exmo, exnovin, farhadexchange, fmfwio, foxbit, gate, gateio, gemini, gerami, goldika, goldis, hamrahgold, hamtapay, hashkey, hibachi, hitbtc, hitobit, hollaex, htx, huobi, hyperliquid, independentreserve, indodax, iranexchange, jibitex, kcex, kifpoolme, kraken, krakenfutures, kucoin, kucoinfutures, latoken, lbank, luno, mazdax, melligold, mercado, mexc, milligold, modetrade, myokx, ndax, nobitex, novadax, oceanex, okcoin, okexchange, okx, okxus, ompfinex, onetrading, ourbit, oxfun, p2b, paradex, paymium, phemex, pingi, poloniex, pooleno, probit, raastin, ramzinex, saraf, sarmayex, sarrafex, tabdeal, talaavan, talapp, talasea, technogold, tehran_exchange, tetherland, timex, tokocrypto, toobit, tradeogre, twox, ubitex, upbit, vertex, wallex, wallgold, wavesexchange, whitebit, woo, woofipro, xt, yobit, zaif, zarafza, zarminex, zarniv, zarpin, zonda, };
|
|
550
552
|
export default ccxt;
|
|
551
553
|
//-----------------------------------------------------------------------------
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { implicitReturnType } from '../base/types.js';
|
|
2
|
+
import { Exchange as _Exchange } from '../base/Exchange.js';
|
|
3
|
+
interface Exchange {
|
|
4
|
+
publicGetPairsPair(params?: {}): Promise<implicitReturnType>;
|
|
5
|
+
}
|
|
6
|
+
declare abstract class Exchange extends _Exchange {
|
|
7
|
+
}
|
|
8
|
+
export default Exchange;
|