ccxt 4.2.60 → 4.2.61
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 +103 -102
- package/build.sh +1 -1
- package/dist/ccxt.browser.js +107943 -100121
- package/dist/ccxt.browser.min.js +7 -7
- package/dist/cjs/ccxt.js +4 -1
- package/dist/cjs/src/abstract/hyperliquid.js +9 -0
- package/dist/cjs/src/base/Exchange.js +22 -1
- package/dist/cjs/src/base/functions/encode.js +5 -0
- package/dist/cjs/src/base/functions.js +1 -0
- package/dist/cjs/src/bitfinex2.js +1 -1
- package/dist/cjs/src/coinbase.js +108 -103
- package/dist/cjs/src/coinex.js +61 -1
- package/dist/cjs/src/hyperliquid.js +2035 -0
- package/dist/cjs/src/kraken.js +8 -2
- package/dist/cjs/src/krakenfutures.js +28 -0
- package/dist/cjs/src/kucoinfutures.js +2 -2
- package/dist/cjs/src/okx.js +1 -1
- package/dist/cjs/src/phemex.js +2 -2
- package/dist/cjs/src/pro/bingx.js +1 -0
- package/dist/cjs/src/static_dependencies/ethers/abi-coder.js +158 -0
- package/dist/cjs/src/static_dependencies/ethers/address/address.js +144 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/abstract-coder.js +407 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/address.js +45 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/anonymous.js +28 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/array.js +176 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/boolean.js +27 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/bytes.js +52 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/fixed-bytes.js +45 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/null.js +30 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/number.js +60 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/string.js +27 -0
- package/dist/cjs/src/static_dependencies/ethers/coders/tuple.js +68 -0
- package/dist/cjs/src/static_dependencies/ethers/fragments.js +614 -0
- package/dist/cjs/src/static_dependencies/ethers/hash/typed-data.js +492 -0
- package/dist/cjs/src/static_dependencies/ethers/index.js +35 -0
- package/dist/cjs/src/static_dependencies/ethers/interface.js +44 -0
- package/dist/cjs/src/static_dependencies/ethers/typed.js +618 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/base58.js +20 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/data.js +134 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/errors.js +228 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/events.js +13 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/fixednumber.js +29 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/index.js +53 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/maths.js +231 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/properties.js +47 -0
- package/dist/cjs/src/static_dependencies/ethers/utils/utf8.js +218 -0
- package/dist/cjs/src/static_dependencies/messagepack/msgpack.js +292 -0
- package/dist/cjs/src/tokocrypto.js +22 -2
- package/dist/cjs/src/wazirx.js +308 -3
- package/js/ccxt.d.ts +5 -2
- package/js/ccxt.js +4 -2
- package/js/src/abstract/coinbase.d.ts +3 -3
- package/js/src/abstract/hyperliquid.d.ts +9 -0
- package/js/src/abstract/hyperliquid.js +11 -0
- package/js/src/base/Exchange.d.ts +4 -0
- package/js/src/base/Exchange.js +13 -1
- package/js/src/base/functions/encode.d.ts +2 -1
- package/js/src/base/functions/encode.js +5 -1
- package/js/src/bitfinex2.js +1 -1
- package/js/src/coinbase.js +108 -103
- package/js/src/coinex.d.ts +3 -1
- package/js/src/coinex.js +61 -1
- package/js/src/hyperliquid.d.ts +83 -0
- package/js/src/hyperliquid.js +2036 -0
- package/js/src/kraken.js +8 -2
- package/js/src/krakenfutures.d.ts +2 -1
- package/js/src/krakenfutures.js +28 -0
- package/js/src/kucoinfutures.js +2 -2
- package/js/src/okx.js +1 -1
- package/js/src/phemex.js +2 -2
- package/js/src/pro/bingx.js +1 -0
- package/js/src/static_dependencies/ethers/abi-coder.d.ts +50 -0
- package/js/src/static_dependencies/ethers/abi-coder.js +148 -0
- package/js/src/static_dependencies/ethers/address/address.d.ts +55 -0
- package/js/src/static_dependencies/ethers/address/address.js +162 -0
- package/js/src/static_dependencies/ethers/address/checks.d.ts +80 -0
- package/js/src/static_dependencies/ethers/address/checks.js +119 -0
- package/js/src/static_dependencies/ethers/address/contract-address.d.ts +47 -0
- package/js/src/static_dependencies/ethers/address/contract-address.js +73 -0
- package/js/src/static_dependencies/ethers/address/index.d.ts +48 -0
- package/js/src/static_dependencies/ethers/address/index.js +24 -0
- package/js/src/static_dependencies/ethers/bytes32.d.ts +14 -0
- package/js/src/static_dependencies/ethers/bytes32.js +45 -0
- package/js/src/static_dependencies/ethers/coders/abstract-coder.d.ts +120 -0
- package/js/src/static_dependencies/ethers/coders/abstract-coder.js +424 -0
- package/js/src/static_dependencies/ethers/coders/address.d.ts +12 -0
- package/js/src/static_dependencies/ethers/coders/address.js +34 -0
- package/js/src/static_dependencies/ethers/coders/anonymous.d.ts +14 -0
- package/js/src/static_dependencies/ethers/coders/anonymous.js +27 -0
- package/js/src/static_dependencies/ethers/coders/array.d.ts +24 -0
- package/js/src/static_dependencies/ethers/coders/array.js +162 -0
- package/js/src/static_dependencies/ethers/coders/boolean.d.ts +12 -0
- package/js/src/static_dependencies/ethers/coders/boolean.js +26 -0
- package/js/src/static_dependencies/ethers/coders/bytes.d.ts +18 -0
- package/js/src/static_dependencies/ethers/coders/bytes.js +39 -0
- package/js/src/static_dependencies/ethers/coders/fixed-bytes.d.ts +14 -0
- package/js/src/static_dependencies/ethers/coders/fixed-bytes.js +32 -0
- package/js/src/static_dependencies/ethers/coders/null.d.ts +11 -0
- package/js/src/static_dependencies/ethers/coders/null.js +29 -0
- package/js/src/static_dependencies/ethers/coders/number.d.ts +15 -0
- package/js/src/static_dependencies/ethers/coders/number.js +48 -0
- package/js/src/static_dependencies/ethers/coders/string.d.ts +12 -0
- package/js/src/static_dependencies/ethers/coders/string.js +26 -0
- package/js/src/static_dependencies/ethers/coders/tuple.d.ts +15 -0
- package/js/src/static_dependencies/ethers/coders/tuple.js +67 -0
- package/js/src/static_dependencies/ethers/fragments.d.ts +458 -0
- package/js/src/static_dependencies/ethers/fragments.js +1252 -0
- package/js/src/static_dependencies/ethers/hash/index.d.ts +10 -0
- package/js/src/static_dependencies/ethers/hash/index.js +15 -0
- package/js/src/static_dependencies/ethers/hash/solidity.d.ts +30 -0
- package/js/src/static_dependencies/ethers/hash/solidity.js +107 -0
- package/js/src/static_dependencies/ethers/hash/typed-data.d.ts +144 -0
- package/js/src/static_dependencies/ethers/hash/typed-data.js +490 -0
- package/js/src/static_dependencies/ethers/index.d.ts +19 -0
- package/js/src/static_dependencies/ethers/index.js +22 -0
- package/js/src/static_dependencies/ethers/interface.d.ts +380 -0
- package/js/src/static_dependencies/ethers/interface.js +990 -0
- package/js/src/static_dependencies/ethers/typed.d.ts +569 -0
- package/js/src/static_dependencies/ethers/typed.js +608 -0
- package/js/src/static_dependencies/ethers/utils/base58.d.ts +22 -0
- package/js/src/static_dependencies/ethers/utils/base58.js +68 -0
- package/js/src/static_dependencies/ethers/utils/base64-browser.d.ts +3 -0
- package/js/src/static_dependencies/ethers/utils/base64-browser.js +24 -0
- package/js/src/static_dependencies/ethers/utils/base64.d.ts +39 -0
- package/js/src/static_dependencies/ethers/utils/base64.js +58 -0
- package/js/src/static_dependencies/ethers/utils/data.d.ts +92 -0
- package/js/src/static_dependencies/ethers/utils/data.js +175 -0
- package/js/src/static_dependencies/ethers/utils/errors.d.ts +509 -0
- package/js/src/static_dependencies/ethers/utils/errors.js +227 -0
- package/js/src/static_dependencies/ethers/utils/events.d.ts +76 -0
- package/js/src/static_dependencies/ethers/utils/events.js +52 -0
- package/js/src/static_dependencies/ethers/utils/fixednumber.d.ts +251 -0
- package/js/src/static_dependencies/ethers/utils/fixednumber.js +529 -0
- package/js/src/static_dependencies/ethers/utils/index.d.ts +30 -0
- package/js/src/static_dependencies/ethers/utils/index.js +38 -0
- package/js/src/static_dependencies/ethers/utils/maths.d.ts +65 -0
- package/js/src/static_dependencies/ethers/utils/maths.js +220 -0
- package/js/src/static_dependencies/ethers/utils/properties.d.ts +22 -0
- package/js/src/static_dependencies/ethers/utils/properties.js +59 -0
- package/js/src/static_dependencies/ethers/utils/rlp-decode.d.ts +5 -0
- package/js/src/static_dependencies/ethers/utils/rlp-decode.js +84 -0
- package/js/src/static_dependencies/ethers/utils/rlp-encode.d.ts +5 -0
- package/js/src/static_dependencies/ethers/utils/rlp-encode.js +54 -0
- package/js/src/static_dependencies/ethers/utils/rlp.d.ts +16 -0
- package/js/src/static_dependencies/ethers/utils/rlp.js +14 -0
- package/js/src/static_dependencies/ethers/utils/units.d.ts +23 -0
- package/js/src/static_dependencies/ethers/utils/units.js +88 -0
- package/js/src/static_dependencies/ethers/utils/utf8.d.ts +95 -0
- package/js/src/static_dependencies/ethers/utils/utf8.js +225 -0
- package/js/src/static_dependencies/ethers/utils/uuid.d.ts +7 -0
- package/js/src/static_dependencies/ethers/utils/uuid.js +35 -0
- package/js/src/static_dependencies/messagepack/msgpack.d.ts +2 -0
- package/js/src/static_dependencies/messagepack/msgpack.js +572 -0
- package/js/src/tokocrypto.js +22 -2
- package/js/src/wazirx.d.ts +12 -1
- package/js/src/wazirx.js +308 -3
- package/package.json +1 -1
- package/skip-tests.json +18 -0
package/js/src/coinbase.js
CHANGED
|
@@ -22,7 +22,12 @@ export default class coinbase extends Exchange {
|
|
|
22
22
|
'name': 'Coinbase',
|
|
23
23
|
'countries': ['US'],
|
|
24
24
|
'pro': true,
|
|
25
|
-
|
|
25
|
+
// rate-limits:
|
|
26
|
+
// ADVANCED API: https://docs.cloud.coinbase.com/advanced-trade-api/docs/rest-api-rate-limits
|
|
27
|
+
// - max 30 req/second for private data, 10 req/s for public data
|
|
28
|
+
// DATA API : https://docs.cloud.coinbase.com/sign-in-with-coinbase/docs/rate-limiting
|
|
29
|
+
// - max 10000 req/hour (to prevent userland mistakes we apply ~3 req/second RL per call
|
|
30
|
+
'rateLimit': 34,
|
|
26
31
|
'version': 'v2',
|
|
27
32
|
'userAgent': this.userAgents['chrome'],
|
|
28
33
|
'headers': {
|
|
@@ -135,116 +140,116 @@ export default class coinbase extends Exchange {
|
|
|
135
140
|
'api': {
|
|
136
141
|
'v2': {
|
|
137
142
|
'public': {
|
|
138
|
-
'get':
|
|
139
|
-
'currencies',
|
|
140
|
-
'currencies/crypto',
|
|
141
|
-
'time',
|
|
142
|
-
'exchange-rates',
|
|
143
|
-
'users/{user_id}',
|
|
144
|
-
'prices/{symbol}/buy',
|
|
145
|
-
'prices/{symbol}/sell',
|
|
146
|
-
'prices/{symbol}/spot',
|
|
147
|
-
|
|
143
|
+
'get': {
|
|
144
|
+
'currencies': 10.6,
|
|
145
|
+
'currencies/crypto': 10.6,
|
|
146
|
+
'time': 10.6,
|
|
147
|
+
'exchange-rates': 10.6,
|
|
148
|
+
'users/{user_id}': 10.6,
|
|
149
|
+
'prices/{symbol}/buy': 10.6,
|
|
150
|
+
'prices/{symbol}/sell': 10.6,
|
|
151
|
+
'prices/{symbol}/spot': 10.6,
|
|
152
|
+
},
|
|
148
153
|
},
|
|
149
154
|
'private': {
|
|
150
|
-
'get':
|
|
151
|
-
'accounts',
|
|
152
|
-
'accounts/{account_id}',
|
|
153
|
-
'accounts/{account_id}/addresses',
|
|
154
|
-
'accounts/{account_id}/addresses/{address_id}',
|
|
155
|
-
'accounts/{account_id}/addresses/{address_id}/transactions',
|
|
156
|
-
'accounts/{account_id}/transactions',
|
|
157
|
-
'accounts/{account_id}/transactions/{transaction_id}',
|
|
158
|
-
'accounts/{account_id}/buys',
|
|
159
|
-
'accounts/{account_id}/buys/{buy_id}',
|
|
160
|
-
'accounts/{account_id}/sells',
|
|
161
|
-
'accounts/{account_id}/sells/{sell_id}',
|
|
162
|
-
'accounts/{account_id}/deposits',
|
|
163
|
-
'accounts/{account_id}/deposits/{deposit_id}',
|
|
164
|
-
'accounts/{account_id}/withdrawals',
|
|
165
|
-
'accounts/{account_id}/withdrawals/{withdrawal_id}',
|
|
166
|
-
'payment-methods',
|
|
167
|
-
'payment-methods/{payment_method_id}',
|
|
168
|
-
'user',
|
|
169
|
-
'user/auth',
|
|
170
|
-
|
|
171
|
-
'post':
|
|
172
|
-
'accounts',
|
|
173
|
-
'accounts/{account_id}/primary',
|
|
174
|
-
'accounts/{account_id}/addresses',
|
|
175
|
-
'accounts/{account_id}/transactions',
|
|
176
|
-
'accounts/{account_id}/transactions/{transaction_id}/complete',
|
|
177
|
-
'accounts/{account_id}/transactions/{transaction_id}/resend',
|
|
178
|
-
'accounts/{account_id}/buys',
|
|
179
|
-
'accounts/{account_id}/buys/{buy_id}/commit',
|
|
180
|
-
'accounts/{account_id}/sells',
|
|
181
|
-
'accounts/{account_id}/sells/{sell_id}/commit',
|
|
182
|
-
'accounts/{account_id}/deposits',
|
|
183
|
-
'accounts/{account_id}/deposits/{deposit_id}/commit',
|
|
184
|
-
'accounts/{account_id}/withdrawals',
|
|
185
|
-
'accounts/{account_id}/withdrawals/{withdrawal_id}/commit',
|
|
186
|
-
|
|
187
|
-
'put':
|
|
188
|
-
'accounts/{account_id}',
|
|
189
|
-
'user',
|
|
190
|
-
|
|
191
|
-
'delete':
|
|
192
|
-
'accounts/{id}',
|
|
193
|
-
'accounts/{account_id}/transactions/{transaction_id}',
|
|
194
|
-
|
|
155
|
+
'get': {
|
|
156
|
+
'accounts': 10.6,
|
|
157
|
+
'accounts/{account_id}': 10.6,
|
|
158
|
+
'accounts/{account_id}/addresses': 10.6,
|
|
159
|
+
'accounts/{account_id}/addresses/{address_id}': 10.6,
|
|
160
|
+
'accounts/{account_id}/addresses/{address_id}/transactions': 10.6,
|
|
161
|
+
'accounts/{account_id}/transactions': 10.6,
|
|
162
|
+
'accounts/{account_id}/transactions/{transaction_id}': 10.6,
|
|
163
|
+
'accounts/{account_id}/buys': 10.6,
|
|
164
|
+
'accounts/{account_id}/buys/{buy_id}': 10.6,
|
|
165
|
+
'accounts/{account_id}/sells': 10.6,
|
|
166
|
+
'accounts/{account_id}/sells/{sell_id}': 10.6,
|
|
167
|
+
'accounts/{account_id}/deposits': 10.6,
|
|
168
|
+
'accounts/{account_id}/deposits/{deposit_id}': 10.6,
|
|
169
|
+
'accounts/{account_id}/withdrawals': 10.6,
|
|
170
|
+
'accounts/{account_id}/withdrawals/{withdrawal_id}': 10.6,
|
|
171
|
+
'payment-methods': 10.6,
|
|
172
|
+
'payment-methods/{payment_method_id}': 10.6,
|
|
173
|
+
'user': 10.6,
|
|
174
|
+
'user/auth': 10.6,
|
|
175
|
+
},
|
|
176
|
+
'post': {
|
|
177
|
+
'accounts': 10.6,
|
|
178
|
+
'accounts/{account_id}/primary': 10.6,
|
|
179
|
+
'accounts/{account_id}/addresses': 10.6,
|
|
180
|
+
'accounts/{account_id}/transactions': 10.6,
|
|
181
|
+
'accounts/{account_id}/transactions/{transaction_id}/complete': 10.6,
|
|
182
|
+
'accounts/{account_id}/transactions/{transaction_id}/resend': 10.6,
|
|
183
|
+
'accounts/{account_id}/buys': 10.6,
|
|
184
|
+
'accounts/{account_id}/buys/{buy_id}/commit': 10.6,
|
|
185
|
+
'accounts/{account_id}/sells': 10.6,
|
|
186
|
+
'accounts/{account_id}/sells/{sell_id}/commit': 10.6,
|
|
187
|
+
'accounts/{account_id}/deposits': 10.6,
|
|
188
|
+
'accounts/{account_id}/deposits/{deposit_id}/commit': 10.6,
|
|
189
|
+
'accounts/{account_id}/withdrawals': 10.6,
|
|
190
|
+
'accounts/{account_id}/withdrawals/{withdrawal_id}/commit': 10.6,
|
|
191
|
+
},
|
|
192
|
+
'put': {
|
|
193
|
+
'accounts/{account_id}': 10.6,
|
|
194
|
+
'user': 10.6,
|
|
195
|
+
},
|
|
196
|
+
'delete': {
|
|
197
|
+
'accounts/{id}': 10.6,
|
|
198
|
+
'accounts/{account_id}/transactions/{transaction_id}': 10.6,
|
|
199
|
+
},
|
|
195
200
|
},
|
|
196
201
|
},
|
|
197
202
|
'v3': {
|
|
198
203
|
'public': {
|
|
199
|
-
'get':
|
|
200
|
-
'brokerage/time',
|
|
201
|
-
|
|
204
|
+
'get': {
|
|
205
|
+
'brokerage/time': 3,
|
|
206
|
+
},
|
|
202
207
|
},
|
|
203
208
|
'private': {
|
|
204
|
-
'get':
|
|
205
|
-
'brokerage/accounts',
|
|
206
|
-
'brokerage/accounts/{account_uuid}',
|
|
207
|
-
'brokerage/orders/historical/batch',
|
|
208
|
-
'brokerage/orders/historical/fills',
|
|
209
|
-
'brokerage/orders/historical/{order_id}',
|
|
210
|
-
'brokerage/products',
|
|
211
|
-
'brokerage/products/{product_id}',
|
|
212
|
-
'brokerage/products/{product_id}/candles',
|
|
213
|
-
'brokerage/products/{product_id}/ticker',
|
|
214
|
-
'brokerage/
|
|
215
|
-
'brokerage/
|
|
216
|
-
'brokerage/transaction_summary',
|
|
217
|
-
'brokerage/
|
|
218
|
-
'brokerage/
|
|
219
|
-
'brokerage/convert/trade/{trade_id}',
|
|
220
|
-
'brokerage/cfm/balance_summary',
|
|
221
|
-
'brokerage/cfm/positions',
|
|
222
|
-
'brokerage/cfm/positions/{product_id}',
|
|
223
|
-
'brokerage/cfm/sweeps',
|
|
224
|
-
'brokerage/intx/portfolio/{portfolio_uuid}',
|
|
225
|
-
'brokerage/intx/positions/{portfolio_uuid}',
|
|
226
|
-
'brokerage/intx/positions/{portfolio_uuid}/{symbol}',
|
|
227
|
-
|
|
228
|
-
'post':
|
|
229
|
-
'brokerage/orders',
|
|
230
|
-
'brokerage/orders/batch_cancel',
|
|
231
|
-
'brokerage/orders/edit',
|
|
232
|
-
'brokerage/orders/edit_preview',
|
|
233
|
-
'brokerage/orders/preview',
|
|
234
|
-
'brokerage/portfolios',
|
|
235
|
-
'brokerage/portfolios/move_funds',
|
|
236
|
-
'brokerage/convert/quote',
|
|
237
|
-
'brokerage/convert/trade/{trade_id}',
|
|
238
|
-
'brokerage/cfm/sweeps/schedule',
|
|
239
|
-
'brokerage/intx/allocate',
|
|
240
|
-
|
|
241
|
-
'put':
|
|
242
|
-
'brokerage/portfolios/{portfolio_uuid}',
|
|
243
|
-
|
|
244
|
-
'delete':
|
|
245
|
-
'brokerage/portfolios/{portfolio_uuid}',
|
|
246
|
-
'brokerage/cfm/sweeps',
|
|
247
|
-
|
|
209
|
+
'get': {
|
|
210
|
+
'brokerage/accounts': 1,
|
|
211
|
+
'brokerage/accounts/{account_uuid}': 1,
|
|
212
|
+
'brokerage/orders/historical/batch': 1,
|
|
213
|
+
'brokerage/orders/historical/fills': 1,
|
|
214
|
+
'brokerage/orders/historical/{order_id}': 1,
|
|
215
|
+
'brokerage/products': 3,
|
|
216
|
+
'brokerage/products/{product_id}': 3,
|
|
217
|
+
'brokerage/products/{product_id}/candles': 3,
|
|
218
|
+
'brokerage/products/{product_id}/ticker': 3,
|
|
219
|
+
'brokerage/best_bid_ask': 3,
|
|
220
|
+
'brokerage/product_book': 3,
|
|
221
|
+
'brokerage/transaction_summary': 3,
|
|
222
|
+
'brokerage/portfolios': 1,
|
|
223
|
+
'brokerage/portfolios/{portfolio_uuid}': 1,
|
|
224
|
+
'brokerage/convert/trade/{trade_id}': 1,
|
|
225
|
+
'brokerage/cfm/balance_summary': 1,
|
|
226
|
+
'brokerage/cfm/positions': 1,
|
|
227
|
+
'brokerage/cfm/positions/{product_id}': 1,
|
|
228
|
+
'brokerage/cfm/sweeps': 1,
|
|
229
|
+
'brokerage/intx/portfolio/{portfolio_uuid}': 1,
|
|
230
|
+
'brokerage/intx/positions/{portfolio_uuid}': 1,
|
|
231
|
+
'brokerage/intx/positions/{portfolio_uuid}/{symbol}': 1,
|
|
232
|
+
},
|
|
233
|
+
'post': {
|
|
234
|
+
'brokerage/orders': 1,
|
|
235
|
+
'brokerage/orders/batch_cancel': 1,
|
|
236
|
+
'brokerage/orders/edit': 1,
|
|
237
|
+
'brokerage/orders/edit_preview': 1,
|
|
238
|
+
'brokerage/orders/preview': 1,
|
|
239
|
+
'brokerage/portfolios': 1,
|
|
240
|
+
'brokerage/portfolios/move_funds': 1,
|
|
241
|
+
'brokerage/convert/quote': 1,
|
|
242
|
+
'brokerage/convert/trade/{trade_id}': 1,
|
|
243
|
+
'brokerage/cfm/sweeps/schedule': 1,
|
|
244
|
+
'brokerage/intx/allocate': 1,
|
|
245
|
+
},
|
|
246
|
+
'put': {
|
|
247
|
+
'brokerage/portfolios/{portfolio_uuid}': 1,
|
|
248
|
+
},
|
|
249
|
+
'delete': {
|
|
250
|
+
'brokerage/portfolios/{portfolio_uuid}': 1,
|
|
251
|
+
'brokerage/cfm/sweeps': 1,
|
|
252
|
+
},
|
|
248
253
|
},
|
|
249
254
|
},
|
|
250
255
|
},
|
package/js/src/coinex.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Exchange from './abstract/coinex.js';
|
|
2
|
-
import type { Balances, Currency, FundingHistory, FundingRateHistory, Int, Market, OHLCV, Order, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, OrderRequest, TransferEntry } from './base/types.js';
|
|
2
|
+
import type { Balances, Currency, FundingHistory, FundingRateHistory, Int, Market, OHLCV, Order, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, OrderRequest, TransferEntry, Leverage, Leverages } from './base/types.js';
|
|
3
3
|
/**
|
|
4
4
|
* @class coinex
|
|
5
5
|
* @augments Exchange
|
|
@@ -207,6 +207,8 @@ export default class coinex extends Exchange {
|
|
|
207
207
|
};
|
|
208
208
|
fetchDepositWithdrawFees(codes?: Strings, params?: {}): Promise<{}>;
|
|
209
209
|
parseDepositWithdrawFees(response: any, codes?: any, currencyIdKey?: any): {};
|
|
210
|
+
fetchLeverages(symbols?: string[], params?: {}): Promise<Leverages>;
|
|
211
|
+
parseLeverage(leverage: any, market?: any): Leverage;
|
|
210
212
|
handleMarginModeAndParams(methodName: any, params?: {}, defaultValue?: any): any[];
|
|
211
213
|
nonce(): number;
|
|
212
214
|
sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
|
package/js/src/coinex.js
CHANGED
|
@@ -79,7 +79,8 @@ export default class coinex extends Exchange {
|
|
|
79
79
|
'fetchIndexOHLCV': false,
|
|
80
80
|
'fetchIsolatedBorrowRate': true,
|
|
81
81
|
'fetchIsolatedBorrowRates': true,
|
|
82
|
-
'fetchLeverage':
|
|
82
|
+
'fetchLeverage': 'emulated',
|
|
83
|
+
'fetchLeverages': true,
|
|
83
84
|
'fetchLeverageTiers': true,
|
|
84
85
|
'fetchMarketLeverageTiers': 'emulated',
|
|
85
86
|
'fetchMarkets': true,
|
|
@@ -5345,6 +5346,65 @@ export default class coinex extends Exchange {
|
|
|
5345
5346
|
}
|
|
5346
5347
|
return depositWithdrawFees;
|
|
5347
5348
|
}
|
|
5349
|
+
async fetchLeverages(symbols = undefined, params = {}) {
|
|
5350
|
+
/**
|
|
5351
|
+
* @method
|
|
5352
|
+
* @name coinex#fetchLeverages
|
|
5353
|
+
* @description fetch the set leverage for all contract and margin markets
|
|
5354
|
+
* @see https://viabtc.github.io/coinex_api_en_doc/spot/#docsspot002_account007_margin_account_settings
|
|
5355
|
+
* @param {string[]} [symbols] a list of unified market symbols
|
|
5356
|
+
* @param {object} [params] extra parameters specific to the exchange API endpoint
|
|
5357
|
+
* @returns {object} a list of [leverage structures]{@link https://docs.ccxt.com/#/?id=leverage-structure}
|
|
5358
|
+
*/
|
|
5359
|
+
await this.loadMarkets();
|
|
5360
|
+
symbols = this.marketSymbols(symbols);
|
|
5361
|
+
let market = undefined;
|
|
5362
|
+
if (symbols !== undefined) {
|
|
5363
|
+
const symbol = this.safeValue(symbols, 0);
|
|
5364
|
+
market = this.market(symbol);
|
|
5365
|
+
}
|
|
5366
|
+
let marketType = undefined;
|
|
5367
|
+
[marketType, params] = this.handleMarketTypeAndParams('fetchLeverages', market, params);
|
|
5368
|
+
if (marketType !== 'spot') {
|
|
5369
|
+
throw new NotSupported(this.id + ' fetchLeverages() supports spot margin markets only');
|
|
5370
|
+
}
|
|
5371
|
+
const response = await this.privateGetMarginConfig(params);
|
|
5372
|
+
//
|
|
5373
|
+
// {
|
|
5374
|
+
// "code": 0,
|
|
5375
|
+
// "data": [
|
|
5376
|
+
// {
|
|
5377
|
+
// "market": "BTCUSDT",
|
|
5378
|
+
// "leverage": 10,
|
|
5379
|
+
// "BTC": {
|
|
5380
|
+
// "min_amount": "0.0008",
|
|
5381
|
+
// "max_amount": "200",
|
|
5382
|
+
// "day_rate": "0.0015"
|
|
5383
|
+
// },
|
|
5384
|
+
// "USDT": {
|
|
5385
|
+
// "min_amount": "50",
|
|
5386
|
+
// "max_amount": "500000",
|
|
5387
|
+
// "day_rate": "0.001"
|
|
5388
|
+
// }
|
|
5389
|
+
// },
|
|
5390
|
+
// ],
|
|
5391
|
+
// "message": "Success"
|
|
5392
|
+
// }
|
|
5393
|
+
//
|
|
5394
|
+
const leverages = this.safeList(response, 'data', []);
|
|
5395
|
+
return this.parseLeverages(leverages, symbols, 'market', marketType);
|
|
5396
|
+
}
|
|
5397
|
+
parseLeverage(leverage, market = undefined) {
|
|
5398
|
+
const marketId = this.safeString(leverage, 'market');
|
|
5399
|
+
const leverageValue = this.safeInteger(leverage, 'leverage');
|
|
5400
|
+
return {
|
|
5401
|
+
'info': leverage,
|
|
5402
|
+
'symbol': this.safeSymbol(marketId, market, undefined, 'spot'),
|
|
5403
|
+
'marginMode': undefined,
|
|
5404
|
+
'longLeverage': leverageValue,
|
|
5405
|
+
'shortLeverage': leverageValue,
|
|
5406
|
+
};
|
|
5407
|
+
}
|
|
5348
5408
|
handleMarginModeAndParams(methodName, params = {}, defaultValue = undefined) {
|
|
5349
5409
|
/**
|
|
5350
5410
|
* @ignore
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import Exchange from './abstract/hyperliquid.js';
|
|
2
|
+
import type { Market, TransferEntry, Balances, Int, OrderBook, OHLCV, Str, FundingRateHistory, Order, OrderType, OrderSide, Trade, Strings, Position, OrderRequest, Dict } from './base/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* @class hyperliquid
|
|
5
|
+
* @augments Exchange
|
|
6
|
+
*/
|
|
7
|
+
export default class hyperliquid extends Exchange {
|
|
8
|
+
describe(): any;
|
|
9
|
+
setSandboxMode(enabled: any): void;
|
|
10
|
+
fetchCurrencies(params?: {}): Promise<{}>;
|
|
11
|
+
fetchMarkets(params?: {}): Promise<import("./base/types.js").MarketInterface[]>;
|
|
12
|
+
parseMarket(market: any): Market;
|
|
13
|
+
fetchBalance(params?: {}): Promise<Balances>;
|
|
14
|
+
fetchOrderBook(symbol: string, limit?: Int, params?: {}): Promise<OrderBook>;
|
|
15
|
+
fetchOHLCV(symbol: string, timeframe?: string, since?: Int, limit?: Int, params?: {}): Promise<OHLCV[]>;
|
|
16
|
+
parseOHLCV(ohlcv: any, market?: Market): OHLCV;
|
|
17
|
+
fetchTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
18
|
+
amountToPrecision(symbol: any, amount: any): any;
|
|
19
|
+
hashMessage(message: any): string;
|
|
20
|
+
signHash(hash: any, privateKey: any): {
|
|
21
|
+
r: string;
|
|
22
|
+
s: string;
|
|
23
|
+
v: any;
|
|
24
|
+
};
|
|
25
|
+
signMessage(message: any, privateKey: any): {
|
|
26
|
+
r: string;
|
|
27
|
+
s: string;
|
|
28
|
+
v: any;
|
|
29
|
+
};
|
|
30
|
+
constructPhantomAgent(hash: any, isTestnet?: boolean): {
|
|
31
|
+
source: string;
|
|
32
|
+
connectionId: any;
|
|
33
|
+
};
|
|
34
|
+
actionHash(action: any, vaultAddress: any, nonce: any): any;
|
|
35
|
+
signL1Action(action: any, nonce: any, vaultAdress?: any): object;
|
|
36
|
+
buildSig(chainId: any, messageTypes: any, message: any): {
|
|
37
|
+
r: string;
|
|
38
|
+
s: string;
|
|
39
|
+
v: any;
|
|
40
|
+
};
|
|
41
|
+
buildTransferSig(message: any): {
|
|
42
|
+
r: string;
|
|
43
|
+
s: string;
|
|
44
|
+
v: any;
|
|
45
|
+
};
|
|
46
|
+
buildWithdrawSig(message: any): {
|
|
47
|
+
r: string;
|
|
48
|
+
s: string;
|
|
49
|
+
v: any;
|
|
50
|
+
};
|
|
51
|
+
createOrder(symbol: string, type: OrderType, side: OrderSide, amount: number, price?: number, params?: {}): Promise<Order>;
|
|
52
|
+
createOrders(orders: OrderRequest[], params?: {}): Promise<Order[]>;
|
|
53
|
+
cancelOrder(id: string, symbol?: Str, params?: {}): Promise<any>;
|
|
54
|
+
cancelOrders(ids: string[], symbol?: Str, params?: {}): Promise<any>;
|
|
55
|
+
editOrder(id: string, symbol: string, type: string, side: string, amount?: number, price?: number, params?: {}): Promise<Order>;
|
|
56
|
+
fetchFundingRateHistory(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<FundingRateHistory[]>;
|
|
57
|
+
fetchOpenOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
58
|
+
fetchClosedOrders(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
|
|
59
|
+
fetchOrder(id: string, symbol?: Str, params?: {}): Promise<Order>;
|
|
60
|
+
parseOrder(order: any, market?: Market): Order;
|
|
61
|
+
parseOrderStatus(status: any): string;
|
|
62
|
+
parseOrderType(status: any): string;
|
|
63
|
+
fetchMyTrades(symbol?: Str, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
|
|
64
|
+
parseTrade(trade: any, market?: Market): Trade;
|
|
65
|
+
fetchPosition(symbol: string, params?: {}): Promise<Position>;
|
|
66
|
+
fetchPositions(symbols?: Strings, params?: {}): Promise<Position[]>;
|
|
67
|
+
parsePosition(position: any, market?: Market): Position;
|
|
68
|
+
setMarginMode(marginMode: string, symbol?: Str, params?: {}): Promise<any>;
|
|
69
|
+
setLeverage(leverage: Int, symbol?: Str, params?: {}): Promise<any>;
|
|
70
|
+
addMargin(symbol: string, amount: any, params?: {}): Promise<any>;
|
|
71
|
+
reduceMargin(symbol: string, amount: any, params?: {}): Promise<any>;
|
|
72
|
+
modifyMarginHelper(symbol: string, amount: any, type: any, params?: {}): Promise<any>;
|
|
73
|
+
transfer(code: string, amount: number, fromAccount: string, toAccount: string, params?: {}): Promise<TransferEntry>;
|
|
74
|
+
withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<any>;
|
|
75
|
+
handlePublicAddress(methodName: string, params: Dict): any[];
|
|
76
|
+
handleErrors(code: any, reason: any, url: any, method: any, headers: any, body: any, response: any, requestHeaders: any, requestBody: any): any;
|
|
77
|
+
sign(path: any, api?: string, method?: string, params?: {}, headers?: any, body?: any): {
|
|
78
|
+
url: string;
|
|
79
|
+
method: string;
|
|
80
|
+
body: any;
|
|
81
|
+
headers: any;
|
|
82
|
+
};
|
|
83
|
+
}
|