ccxt 4.1.41 → 4.1.44

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.
Files changed (363) hide show
  1. package/README.md +6 -5
  2. package/change.sh +2 -4
  3. package/dist/ccxt.browser.js +14841 -12517
  4. package/dist/ccxt.browser.min.js +3 -3
  5. package/dist/cjs/ccxt.js +4 -1
  6. package/dist/cjs/src/abstract/coinlist.js +9 -0
  7. package/dist/cjs/src/ace.js +3 -3
  8. package/dist/cjs/src/ascendex.js +226 -96
  9. package/dist/cjs/src/bigone.js +107 -107
  10. package/dist/cjs/src/binance.js +258 -257
  11. package/dist/cjs/src/bingx.js +117 -117
  12. package/dist/cjs/src/bit2c.js +4 -4
  13. package/dist/cjs/src/bitbank.js +19 -19
  14. package/dist/cjs/src/bitfinex.js +72 -72
  15. package/dist/cjs/src/bitfinex2.js +59 -59
  16. package/dist/cjs/src/bitget.js +355 -355
  17. package/dist/cjs/src/bithumb.js +35 -35
  18. package/dist/cjs/src/bitmart.js +37 -37
  19. package/dist/cjs/src/bitmex.js +111 -111
  20. package/dist/cjs/src/bitopro.js +12 -12
  21. package/dist/cjs/src/bitpanda.js +8 -8
  22. package/dist/cjs/src/bitrue.js +17 -17
  23. package/dist/cjs/src/bitso.js +212 -212
  24. package/dist/cjs/src/bitstamp.js +95 -95
  25. package/dist/cjs/src/bittrex.js +28 -28
  26. package/dist/cjs/src/bitvavo.js +34 -33
  27. package/dist/cjs/src/bl3p.js +18 -18
  28. package/dist/cjs/src/blockchaincom.js +24 -24
  29. package/dist/cjs/src/btcalpha.js +27 -27
  30. package/dist/cjs/src/btcturk.js +6 -6
  31. package/dist/cjs/src/bybit.js +46 -247
  32. package/dist/cjs/src/cex.js +105 -105
  33. package/dist/cjs/src/coinbase.js +179 -179
  34. package/dist/cjs/src/coinbasepro.js +113 -113
  35. package/dist/cjs/src/coincheck.js +21 -21
  36. package/dist/cjs/src/coinex.js +19 -19
  37. package/dist/cjs/src/coinfalcon.js +53 -53
  38. package/dist/cjs/src/coinlist.js +2327 -0
  39. package/dist/cjs/src/coinmate.js +67 -67
  40. package/dist/cjs/src/coinone.js +9 -9
  41. package/dist/cjs/src/coinsph.js +108 -108
  42. package/dist/cjs/src/coinspot.js +28 -28
  43. package/dist/cjs/src/cryptocom.js +32 -32
  44. package/dist/cjs/src/currencycom.js +52 -52
  45. package/dist/cjs/src/delta.js +3 -3
  46. package/dist/cjs/src/deribit.js +285 -284
  47. package/dist/cjs/src/exmo.js +41 -41
  48. package/dist/cjs/src/gate.js +174 -174
  49. package/dist/cjs/src/gemini.js +4 -4
  50. package/dist/cjs/src/hitbtc.js +26 -27
  51. package/dist/cjs/src/hollaex.js +78 -78
  52. package/dist/cjs/src/huobi.js +267 -267
  53. package/dist/cjs/src/huobijp.js +125 -125
  54. package/dist/cjs/src/idex.js +202 -202
  55. package/dist/cjs/src/kraken.js +161 -161
  56. package/dist/cjs/src/krakenfutures.js +223 -223
  57. package/dist/cjs/src/kucoin.js +122 -122
  58. package/dist/cjs/src/kucoinfutures.js +128 -128
  59. package/dist/cjs/src/kuna.js +23 -24
  60. package/dist/cjs/src/latoken.js +70 -70
  61. package/dist/cjs/src/lbank.js +6 -6
  62. package/dist/cjs/src/lbank2.js +35 -35
  63. package/dist/cjs/src/luno.js +5 -5
  64. package/dist/cjs/src/lykke.js +4 -4
  65. package/dist/cjs/src/mercado.js +17 -17
  66. package/dist/cjs/src/mexc.js +172 -172
  67. package/dist/cjs/src/ndax.js +9 -8
  68. package/dist/cjs/src/oceanex.js +9 -9
  69. package/dist/cjs/src/okcoin.js +65 -65
  70. package/dist/cjs/src/okx.js +67 -67
  71. package/dist/cjs/src/phemex.js +110 -110
  72. package/dist/cjs/src/poloniex.js +43 -43
  73. package/dist/cjs/src/poloniexfutures.js +96 -96
  74. package/dist/cjs/src/pro/alpaca.js +174 -174
  75. package/dist/cjs/src/pro/ascendex.js +151 -151
  76. package/dist/cjs/src/pro/binance.js +278 -278
  77. package/dist/cjs/src/pro/bingx.js +136 -136
  78. package/dist/cjs/src/pro/bitfinex.js +38 -38
  79. package/dist/cjs/src/pro/bitfinex2.js +57 -57
  80. package/dist/cjs/src/pro/bitget.js +227 -227
  81. package/dist/cjs/src/pro/bitmart.js +98 -98
  82. package/dist/cjs/src/pro/bitmex.js +584 -584
  83. package/dist/cjs/src/pro/bitopro.js +49 -49
  84. package/dist/cjs/src/pro/bitpanda.js +249 -249
  85. package/dist/cjs/src/pro/bitrue.js +79 -79
  86. package/dist/cjs/src/pro/bitstamp.js +59 -59
  87. package/dist/cjs/src/pro/bittrex.js +107 -107
  88. package/dist/cjs/src/pro/bitvavo.js +115 -115
  89. package/dist/cjs/src/pro/blockchaincom.js +169 -169
  90. package/dist/cjs/src/pro/bybit.js +57 -57
  91. package/dist/cjs/src/pro/cex.js +199 -199
  92. package/dist/cjs/src/pro/coinbase.js +4 -4
  93. package/dist/cjs/src/pro/coinbasepro.js +95 -95
  94. package/dist/cjs/src/pro/coinex.js +232 -232
  95. package/dist/cjs/src/pro/cryptocom.js +32 -32
  96. package/dist/cjs/src/pro/currencycom.js +108 -108
  97. package/dist/cjs/src/pro/deribit.js +140 -140
  98. package/dist/cjs/src/pro/exmo.js +72 -72
  99. package/dist/cjs/src/pro/gate.js +160 -160
  100. package/dist/cjs/src/pro/gemini.js +135 -135
  101. package/dist/cjs/src/pro/hitbtc.js +10 -10
  102. package/dist/cjs/src/pro/hollaex.js +88 -88
  103. package/dist/cjs/src/pro/huobi.js +277 -277
  104. package/dist/cjs/src/pro/huobijp.js +71 -71
  105. package/dist/cjs/src/pro/idex.js +58 -58
  106. package/dist/cjs/src/pro/independentreserve.js +29 -29
  107. package/dist/cjs/src/pro/kraken.js +113 -113
  108. package/dist/cjs/src/pro/krakenfutures.js +58 -58
  109. package/dist/cjs/src/pro/kucoin.js +95 -95
  110. package/dist/cjs/src/pro/kucoinfutures.js +100 -100
  111. package/dist/cjs/src/pro/luno.js +42 -42
  112. package/dist/cjs/src/pro/mexc.js +98 -98
  113. package/dist/cjs/src/pro/ndax.js +24 -24
  114. package/dist/cjs/src/pro/okcoin.js +104 -104
  115. package/dist/cjs/src/pro/okx.js +161 -161
  116. package/dist/cjs/src/pro/phemex.js +295 -295
  117. package/dist/cjs/src/pro/poloniex.js +79 -79
  118. package/dist/cjs/src/pro/poloniexfutures.js +172 -172
  119. package/dist/cjs/src/pro/probit.js +87 -87
  120. package/dist/cjs/src/pro/upbit.js +66 -66
  121. package/dist/cjs/src/pro/wazirx.js +11 -11
  122. package/dist/cjs/src/pro/whitebit.js +77 -77
  123. package/dist/cjs/src/pro/woo.js +78 -78
  124. package/dist/cjs/src/probit.js +78 -44
  125. package/dist/cjs/src/tidex.js +9 -9
  126. package/dist/cjs/src/tokocrypto.js +57 -57
  127. package/dist/cjs/src/upbit.js +157 -157
  128. package/dist/cjs/src/wavesexchange.js +125 -125
  129. package/dist/cjs/src/whitebit.js +63 -63
  130. package/dist/cjs/src/woo.js +244 -243
  131. package/dist/cjs/src/yobit.js +9 -9
  132. package/dist/cjs/src/zonda.js +103 -103
  133. package/js/ccxt.d.ts +5 -2
  134. package/js/ccxt.js +4 -2
  135. package/js/src/abstract/bybit.d.ts +13 -195
  136. package/js/src/abstract/coinlist.d.ts +49 -0
  137. package/js/src/abstract/coinlist.js +11 -0
  138. package/js/src/ace.d.ts +9 -9
  139. package/js/src/ace.js +3 -3
  140. package/js/src/alpaca.d.ts +3 -3
  141. package/js/src/ascendex.d.ts +13 -35
  142. package/js/src/ascendex.js +227 -97
  143. package/js/src/base/types.d.ts +8 -0
  144. package/js/src/bigone.d.ts +11 -49
  145. package/js/src/bigone.js +107 -107
  146. package/js/src/binance.d.ts +8 -65
  147. package/js/src/binance.js +258 -257
  148. package/js/src/bingx.d.ts +10 -34
  149. package/js/src/bingx.js +117 -117
  150. package/js/src/bit2c.d.ts +8 -8
  151. package/js/src/bit2c.js +4 -4
  152. package/js/src/bitbank.d.ts +10 -50
  153. package/js/src/bitbank.js +19 -19
  154. package/js/src/bitbns.d.ts +9 -29
  155. package/js/src/bitfinex.d.ts +9 -57
  156. package/js/src/bitfinex.js +72 -72
  157. package/js/src/bitfinex2.d.ts +5 -29
  158. package/js/src/bitfinex2.js +59 -59
  159. package/js/src/bitflyer.d.ts +10 -50
  160. package/js/src/bitforex.d.ts +8 -8
  161. package/js/src/bitget.d.ts +7 -27
  162. package/js/src/bitget.js +355 -355
  163. package/js/src/bithumb.d.ts +10 -50
  164. package/js/src/bithumb.js +35 -35
  165. package/js/src/bitmart.d.ts +11 -68
  166. package/js/src/bitmart.js +37 -37
  167. package/js/src/bitmex.d.ts +8 -56
  168. package/js/src/bitmex.js +111 -111
  169. package/js/src/bitopro.d.ts +12 -84
  170. package/js/src/bitopro.js +12 -12
  171. package/js/src/bitpanda.d.ts +12 -50
  172. package/js/src/bitpanda.js +8 -8
  173. package/js/src/bitrue.d.ts +12 -52
  174. package/js/src/bitrue.js +17 -17
  175. package/js/src/bitso.d.ts +12 -72
  176. package/js/src/bitso.js +212 -212
  177. package/js/src/bitstamp.d.ts +13 -65
  178. package/js/src/bitstamp.js +95 -95
  179. package/js/src/bitstamp1.d.ts +8 -8
  180. package/js/src/bittrex.d.ts +13 -57
  181. package/js/src/bittrex.js +28 -28
  182. package/js/src/bitvavo.d.ts +8 -44
  183. package/js/src/bitvavo.js +34 -33
  184. package/js/src/bl3p.d.ts +7 -7
  185. package/js/src/bl3p.js +18 -18
  186. package/js/src/blockchaincom.d.ts +10 -90
  187. package/js/src/blockchaincom.js +24 -24
  188. package/js/src/btcalpha.d.ts +10 -30
  189. package/js/src/btcalpha.js +27 -27
  190. package/js/src/btcbox.d.ts +7 -7
  191. package/js/src/btcmarkets.d.ts +11 -59
  192. package/js/src/btctradeua.d.ts +7 -7
  193. package/js/src/btcturk.d.ts +6 -6
  194. package/js/src/btcturk.js +6 -6
  195. package/js/src/bybit.d.ts +8 -46
  196. package/js/src/bybit.js +46 -247
  197. package/js/src/cex.d.ts +8 -8
  198. package/js/src/cex.js +105 -105
  199. package/js/src/coinbase.d.ts +9 -9
  200. package/js/src/coinbase.js +179 -179
  201. package/js/src/coinbasepro.d.ts +8 -56
  202. package/js/src/coinbasepro.js +113 -113
  203. package/js/src/coincheck.d.ts +9 -29
  204. package/js/src/coincheck.js +21 -21
  205. package/js/src/coinex.d.ts +9 -53
  206. package/js/src/coinex.js +19 -19
  207. package/js/src/coinfalcon.d.ts +8 -52
  208. package/js/src/coinfalcon.js +53 -53
  209. package/js/src/coinlist.d.ts +104 -0
  210. package/js/src/coinlist.js +2328 -0
  211. package/js/src/coinmate.d.ts +8 -56
  212. package/js/src/coinmate.js +67 -67
  213. package/js/src/coinone.d.ts +9 -9
  214. package/js/src/coinone.js +9 -9
  215. package/js/src/coinsph.d.ts +13 -73
  216. package/js/src/coinsph.js +108 -108
  217. package/js/src/coinspot.d.ts +9 -9
  218. package/js/src/coinspot.js +28 -28
  219. package/js/src/cryptocom.d.ts +5 -45
  220. package/js/src/cryptocom.js +32 -32
  221. package/js/src/currencycom.d.ts +8 -32
  222. package/js/src/currencycom.js +52 -52
  223. package/js/src/delta.d.ts +9 -9
  224. package/js/src/delta.js +3 -3
  225. package/js/src/deribit.d.ts +12 -48
  226. package/js/src/deribit.js +285 -284
  227. package/js/src/digifinex.d.ts +11 -49
  228. package/js/src/exmo.d.ts +10 -106
  229. package/js/src/exmo.js +41 -41
  230. package/js/src/gate.d.ts +6 -50
  231. package/js/src/gate.js +174 -174
  232. package/js/src/gemini.d.ts +8 -46
  233. package/js/src/gemini.js +4 -4
  234. package/js/src/hitbtc.d.ts +5 -55
  235. package/js/src/hitbtc.js +26 -27
  236. package/js/src/hollaex.d.ts +13 -70
  237. package/js/src/hollaex.js +78 -78
  238. package/js/src/huobi.d.ts +6 -52
  239. package/js/src/huobi.js +267 -267
  240. package/js/src/huobijp.d.ts +8 -54
  241. package/js/src/huobijp.js +125 -125
  242. package/js/src/idex.d.ts +13 -89
  243. package/js/src/idex.js +202 -202
  244. package/js/src/independentreserve.d.ts +8 -8
  245. package/js/src/indodax.d.ts +10 -50
  246. package/js/src/kraken.d.ts +8 -52
  247. package/js/src/kraken.js +161 -161
  248. package/js/src/krakenfutures.d.ts +5 -5
  249. package/js/src/krakenfutures.js +223 -223
  250. package/js/src/kucoin.d.ts +6 -46
  251. package/js/src/kucoin.js +122 -122
  252. package/js/src/kucoinfutures.d.ts +5 -5
  253. package/js/src/kucoinfutures.js +128 -128
  254. package/js/src/kuna.d.ts +13 -105
  255. package/js/src/kuna.js +24 -24
  256. package/js/src/latoken.d.ts +8 -32
  257. package/js/src/latoken.js +70 -70
  258. package/js/src/lbank.d.ts +10 -64
  259. package/js/src/lbank.js +6 -6
  260. package/js/src/lbank2.d.ts +7 -28
  261. package/js/src/lbank2.js +35 -35
  262. package/js/src/luno.d.ts +9 -9
  263. package/js/src/luno.js +5 -5
  264. package/js/src/lykke.d.ts +11 -49
  265. package/js/src/lykke.js +4 -4
  266. package/js/src/mercado.d.ts +7 -47
  267. package/js/src/mercado.js +17 -17
  268. package/js/src/mexc.d.ts +11 -49
  269. package/js/src/mexc.js +172 -172
  270. package/js/src/ndax.d.ts +11 -47
  271. package/js/src/ndax.js +9 -8
  272. package/js/src/novadax.d.ts +12 -60
  273. package/js/src/oceanex.d.ts +5 -5
  274. package/js/src/oceanex.js +9 -9
  275. package/js/src/okcoin.d.ts +10 -54
  276. package/js/src/okcoin.js +65 -65
  277. package/js/src/okx.d.ts +9 -97
  278. package/js/src/okx.js +67 -67
  279. package/js/src/paymium.d.ts +7 -7
  280. package/js/src/phemex.d.ts +8 -27
  281. package/js/src/phemex.js +110 -110
  282. package/js/src/poloniex.d.ts +8 -56
  283. package/js/src/poloniex.js +43 -43
  284. package/js/src/poloniexfutures.d.ts +9 -9
  285. package/js/src/poloniexfutures.js +96 -96
  286. package/js/src/pro/alpaca.d.ts +2 -2
  287. package/js/src/pro/alpaca.js +174 -174
  288. package/js/src/pro/ascendex.js +151 -151
  289. package/js/src/pro/binance.d.ts +2 -19
  290. package/js/src/pro/binance.js +278 -278
  291. package/js/src/pro/bingx.js +136 -136
  292. package/js/src/pro/bitfinex.d.ts +2 -2
  293. package/js/src/pro/bitfinex.js +38 -38
  294. package/js/src/pro/bitfinex2.js +57 -57
  295. package/js/src/pro/bitget.js +227 -227
  296. package/js/src/pro/bitmart.js +98 -98
  297. package/js/src/pro/bitmex.js +584 -584
  298. package/js/src/pro/bitopro.js +49 -49
  299. package/js/src/pro/bitpanda.js +249 -249
  300. package/js/src/pro/bitrue.js +79 -79
  301. package/js/src/pro/bitstamp.js +59 -59
  302. package/js/src/pro/bittrex.js +107 -107
  303. package/js/src/pro/bitvavo.js +115 -115
  304. package/js/src/pro/blockchaincom.js +169 -169
  305. package/js/src/pro/bybit.js +57 -57
  306. package/js/src/pro/cex.js +199 -199
  307. package/js/src/pro/coinbase.js +4 -4
  308. package/js/src/pro/coinbasepro.d.ts +2 -2
  309. package/js/src/pro/coinbasepro.js +95 -95
  310. package/js/src/pro/coinex.js +232 -232
  311. package/js/src/pro/cryptocom.js +32 -32
  312. package/js/src/pro/currencycom.js +108 -108
  313. package/js/src/pro/deribit.js +140 -140
  314. package/js/src/pro/exmo.js +72 -72
  315. package/js/src/pro/gate.js +160 -160
  316. package/js/src/pro/gemini.js +135 -135
  317. package/js/src/pro/hitbtc.js +10 -10
  318. package/js/src/pro/hollaex.js +88 -88
  319. package/js/src/pro/huobi.js +277 -277
  320. package/js/src/pro/huobijp.js +71 -71
  321. package/js/src/pro/idex.js +58 -58
  322. package/js/src/pro/independentreserve.js +29 -29
  323. package/js/src/pro/kraken.js +113 -113
  324. package/js/src/pro/krakenfutures.js +58 -58
  325. package/js/src/pro/kucoin.js +95 -95
  326. package/js/src/pro/kucoinfutures.js +100 -100
  327. package/js/src/pro/luno.d.ts +2 -2
  328. package/js/src/pro/luno.js +42 -42
  329. package/js/src/pro/mexc.js +98 -98
  330. package/js/src/pro/ndax.js +24 -24
  331. package/js/src/pro/okcoin.js +104 -104
  332. package/js/src/pro/okx.js +161 -161
  333. package/js/src/pro/phemex.js +295 -295
  334. package/js/src/pro/poloniex.js +79 -79
  335. package/js/src/pro/poloniexfutures.js +172 -172
  336. package/js/src/pro/probit.js +87 -87
  337. package/js/src/pro/upbit.js +66 -66
  338. package/js/src/pro/wazirx.js +11 -11
  339. package/js/src/pro/whitebit.js +77 -77
  340. package/js/src/pro/woo.js +78 -78
  341. package/js/src/probit.d.ts +11 -49
  342. package/js/src/probit.js +78 -44
  343. package/js/src/tidex.d.ts +8 -62
  344. package/js/src/tidex.js +9 -9
  345. package/js/src/timex.d.ts +10 -43
  346. package/js/src/tokocrypto.d.ts +10 -60
  347. package/js/src/tokocrypto.js +57 -57
  348. package/js/src/upbit.d.ts +7 -51
  349. package/js/src/upbit.js +157 -157
  350. package/js/src/wavesexchange.d.ts +9 -49
  351. package/js/src/wavesexchange.js +125 -125
  352. package/js/src/wazirx.d.ts +8 -8
  353. package/js/src/whitebit.d.ts +8 -54
  354. package/js/src/whitebit.js +63 -63
  355. package/js/src/woo.d.ts +9 -47
  356. package/js/src/woo.js +244 -243
  357. package/js/src/yobit.d.ts +3 -3
  358. package/js/src/yobit.js +9 -9
  359. package/js/src/zaif.d.ts +9 -49
  360. package/js/src/zonda.d.ts +8 -48
  361. package/js/src/zonda.js +103 -103
  362. package/package.json +2 -1
  363. package/skip-tests.json +11 -0
package/js/src/gate.js CHANGED
@@ -2479,13 +2479,13 @@ export default class gate extends Exchange {
2479
2479
  //
2480
2480
  // bookTicker
2481
2481
  // {
2482
- // t: 1671363004228,
2483
- // u: 9793320464,
2484
- // s: 'BTC_USDT',
2485
- // b: '16716.8', // best bid price
2486
- // B: '0.0134', // best bid size
2487
- // a: '16716.9', // best ask price
2488
- // A: '0.0353' // best ask size
2482
+ // "t": 1671363004228,
2483
+ // "u": 9793320464,
2484
+ // "s": "BTC_USDT",
2485
+ // "b": "16716.8", // best bid price
2486
+ // "B": "0.0134", // best bid size
2487
+ // "a": "16716.9", // best ask price
2488
+ // "A": "0.0353" // best ask size
2489
2489
  // }
2490
2490
  //
2491
2491
  // option
@@ -2695,52 +2695,52 @@ export default class gate extends Exchange {
2695
2695
  // Perpetual Swap
2696
2696
  //
2697
2697
  // {
2698
- // order_margin: "0",
2699
- // point: "0",
2700
- // bonus: "0",
2701
- // history: {
2702
- // dnw: "2.1321",
2703
- // pnl: "11.5351",
2704
- // refr: "0",
2705
- // point_fee: "0",
2706
- // fund: "-0.32340576684",
2707
- // bonus_dnw: "0",
2708
- // point_refr: "0",
2709
- // bonus_offset: "0",
2710
- // fee: "-0.20132775",
2711
- // point_dnw: "0",
2698
+ // "order_margin": "0",
2699
+ // "point": "0",
2700
+ // "bonus": "0",
2701
+ // "history": {
2702
+ // "dnw": "2.1321",
2703
+ // "pnl": "11.5351",
2704
+ // "refr": "0",
2705
+ // "point_fee": "0",
2706
+ // "fund": "-0.32340576684",
2707
+ // "bonus_dnw": "0",
2708
+ // "point_refr": "0",
2709
+ // "bonus_offset": "0",
2710
+ // "fee": "-0.20132775",
2711
+ // "point_dnw": "0",
2712
2712
  // },
2713
- // unrealised_pnl: "13.315100000006",
2714
- // total: "12.51345151332",
2715
- // available: "0",
2716
- // in_dual_mode: false,
2717
- // currency: "USDT",
2718
- // position_margin: "12.51345151332",
2719
- // user: "6333333",
2713
+ // "unrealised_pnl": "13.315100000006",
2714
+ // "total": "12.51345151332",
2715
+ // "available": "0",
2716
+ // "in_dual_mode": false,
2717
+ // "currency": "USDT",
2718
+ // "position_margin": "12.51345151332",
2719
+ // "user": "6333333",
2720
2720
  // }
2721
2721
  //
2722
2722
  // Delivery Future
2723
2723
  //
2724
2724
  // {
2725
- // order_margin: "0",
2726
- // point: "0",
2727
- // history: {
2728
- // dnw: "1",
2729
- // pnl: "0",
2730
- // refr: "0",
2731
- // point_fee: "0",
2732
- // point_dnw: "0",
2733
- // settle: "0",
2734
- // settle_fee: "0",
2735
- // point_refr: "0",
2736
- // fee: "0",
2725
+ // "order_margin": "0",
2726
+ // "point": "0",
2727
+ // "history": {
2728
+ // "dnw": "1",
2729
+ // "pnl": "0",
2730
+ // "refr": "0",
2731
+ // "point_fee": "0",
2732
+ // "point_dnw": "0",
2733
+ // "settle": "0",
2734
+ // "settle_fee": "0",
2735
+ // "point_refr": "0",
2736
+ // "fee": "0",
2737
2737
  // },
2738
- // unrealised_pnl: "0",
2739
- // total: "1",
2740
- // available: "1",
2741
- // currency: "USDT",
2742
- // position_margin: "0",
2743
- // user: "6333333",
2738
+ // "unrealised_pnl": "0",
2739
+ // "total": "1",
2740
+ // "available": "1",
2741
+ // "currency": "USDT",
2742
+ // "position_margin": "0",
2743
+ // "user": "6333333",
2744
2744
  // }
2745
2745
  //
2746
2746
  // option
@@ -3069,13 +3069,13 @@ export default class gate extends Exchange {
3069
3069
  //
3070
3070
  // [
3071
3071
  // {
3072
- // id: "1852958144",
3073
- // create_time: "1634673259",
3074
- // create_time_ms: "1634673259378.105000",
3075
- // currency_pair: "ADA_USDT",
3076
- // side: "sell",
3077
- // amount: "307.078",
3078
- // price: "2.104",
3072
+ // "id": "1852958144",
3073
+ // "create_time": "1634673259",
3074
+ // "create_time_ms": "1634673259378.105000",
3075
+ // "currency_pair": "ADA_USDT",
3076
+ // "side": "sell",
3077
+ // "amount": "307.078",
3078
+ // "price": "2.104",
3079
3079
  // }
3080
3080
  // ]
3081
3081
  //
@@ -3083,12 +3083,12 @@ export default class gate extends Exchange {
3083
3083
  //
3084
3084
  // [
3085
3085
  // {
3086
- // size: "2",
3087
- // id: "2522911",
3088
- // create_time_ms: "1634673380.182",
3089
- // create_time: "1634673380.182",
3090
- // contract: "ADA_USDT",
3091
- // price: "2.10486",
3086
+ // "size": "2",
3087
+ // "id": "2522911",
3088
+ // "create_time_ms": "1634673380.182",
3089
+ // "create_time": "1634673380.182",
3090
+ // "contract": "ADA_USDT",
3091
+ // "price": "2.10486",
3092
3092
  // }
3093
3093
  // ]
3094
3094
  //
@@ -3298,11 +3298,11 @@ export default class gate extends Exchange {
3298
3298
  // public ws
3299
3299
  //
3300
3300
  // {
3301
- // id: 221994511,
3302
- // time: 1580311438.618647,
3303
- // price: '9309',
3304
- // amount: '0.0019',
3305
- // type: 'sell'
3301
+ // "id": 221994511,
3302
+ // "time": 1580311438.618647,
3303
+ // "price": "9309",
3304
+ // "amount": "0.0019",
3305
+ // "type": "sell"
3306
3306
  // }
3307
3307
  //
3308
3308
  // spot rest
@@ -4790,27 +4790,27 @@ export default class gate extends Exchange {
4790
4790
  // swap, future and option
4791
4791
  //
4792
4792
  // {
4793
- // id: "82241928192",
4794
- // contract: "BTC_USDT",
4795
- // mkfr: "0",
4796
- // tkfr: "0.0005",
4797
- // tif: "gtc",
4798
- // is_reduce_only: false,
4799
- // create_time: "1635196145.06",
4800
- // finish_time: "1635196233.396",
4801
- // price: "61000",
4802
- // size: "4",
4803
- // refr: "0",
4804
- // left: "4",
4805
- // text: "web",
4806
- // fill_price: "0",
4807
- // user: "6693577",
4808
- // finish_as: "cancelled",
4809
- // status: "finished",
4810
- // is_liq: false,
4811
- // refu: "0",
4812
- // is_close: false,
4813
- // iceberg: "0",
4793
+ // "id": "82241928192",
4794
+ // "contract": "BTC_USDT",
4795
+ // "mkfr": "0",
4796
+ // "tkfr": "0.0005",
4797
+ // "tif": "gtc",
4798
+ // "is_reduce_only": false,
4799
+ // "create_time": "1635196145.06",
4800
+ // "finish_time": "1635196233.396",
4801
+ // "price": "61000",
4802
+ // "size": "4",
4803
+ // "refr": "0",
4804
+ // "left": "4",
4805
+ // "text": "web",
4806
+ // "fill_price": "0",
4807
+ // "user": "6693577",
4808
+ // "finish_as": "cancelled",
4809
+ // "status": "finished",
4810
+ // "is_liq": false,
4811
+ // "refu": "0",
4812
+ // "is_close": false,
4813
+ // "iceberg": "0",
4814
4814
  // }
4815
4815
  //
4816
4816
  return this.parseOrder(response, market);
@@ -5026,29 +5026,29 @@ export default class gate extends Exchange {
5026
5026
  // swap and future
5027
5027
  //
5028
5028
  // {
5029
- // value: "12.475572",
5030
- // leverage: "0",
5031
- // mode: "single",
5032
- // realised_point: "0",
5033
- // contract: "BTC_USDT",
5034
- // entry_price: "62422.6",
5035
- // mark_price: "62377.86",
5036
- // history_point: "0",
5037
- // realised_pnl: "-0.00624226",
5038
- // close_order: null,
5039
- // size: "2",
5040
- // cross_leverage_limit: "25",
5041
- // pending_orders: "0",
5042
- // adl_ranking: "5",
5043
- // maintenance_rate: "0.005",
5044
- // unrealised_pnl: "-0.008948",
5045
- // user: "663337",
5046
- // leverage_max: "100",
5047
- // history_pnl: "14.98868396636",
5048
- // risk_limit: "1000000",
5049
- // margin: "0.740721495056",
5050
- // last_close_pnl: "-0.041996015",
5051
- // liq_price: "59058.58"
5029
+ // "value": "12.475572",
5030
+ // "leverage": "0",
5031
+ // "mode": "single",
5032
+ // "realised_point": "0",
5033
+ // "contract": "BTC_USDT",
5034
+ // "entry_price": "62422.6",
5035
+ // "mark_price": "62377.86",
5036
+ // "history_point": "0",
5037
+ // "realised_pnl": "-0.00624226",
5038
+ // "close_order": null,
5039
+ // "size": "2",
5040
+ // "cross_leverage_limit": "25",
5041
+ // "pending_orders": "0",
5042
+ // "adl_ranking": "5",
5043
+ // "maintenance_rate": "0.005",
5044
+ // "unrealised_pnl": "-0.008948",
5045
+ // "user": "663337",
5046
+ // "leverage_max": "100",
5047
+ // "history_pnl": "14.98868396636",
5048
+ // "risk_limit": "1000000",
5049
+ // "margin": "0.740721495056",
5050
+ // "last_close_pnl": "-0.041996015",
5051
+ // "liq_price": "59058.58"
5052
5052
  // }
5053
5053
  //
5054
5054
  // option
@@ -5227,23 +5227,19 @@ export default class gate extends Exchange {
5227
5227
  */
5228
5228
  await this.loadMarkets();
5229
5229
  let market = undefined;
5230
+ symbols = this.marketSymbols(symbols, undefined, true, true, true);
5230
5231
  if (symbols !== undefined) {
5231
- symbols = this.marketSymbols(symbols);
5232
5232
  const symbolsLength = symbols.length;
5233
5233
  if (symbolsLength > 0) {
5234
5234
  market = this.market(symbols[0]);
5235
- for (let i = 1; i < symbols.length; i++) {
5236
- const checkMarket = this.market(symbols[i]);
5237
- if (checkMarket['type'] !== market['type']) {
5238
- throw new BadRequest(this.id + ' fetchPositions() does not support multiple types of positions at the same time');
5239
- }
5240
- }
5241
5235
  }
5242
5236
  }
5243
5237
  let type = undefined;
5244
5238
  let request = {};
5245
5239
  [type, params] = this.handleMarketTypeAndParams('fetchPositions', market, params);
5246
- this.checkRequiredArgument('fetchPositions', type, 'type', ['swap', 'future', 'option']);
5240
+ if ((type === undefined) || (type === 'spot')) {
5241
+ type = 'swap'; // default to swap
5242
+ }
5247
5243
  if (type === 'option') {
5248
5244
  if (symbols !== undefined) {
5249
5245
  const marketId = market['id'];
@@ -5254,40 +5250,44 @@ export default class gate extends Exchange {
5254
5250
  else {
5255
5251
  [request, params] = this.prepareRequest(undefined, type, params);
5256
5252
  }
5257
- const method = this.getSupportedMapping(type, {
5258
- 'swap': 'privateFuturesGetSettlePositions',
5259
- 'future': 'privateDeliveryGetSettlePositions',
5260
- 'option': 'privateOptionsGetPositions',
5261
- });
5262
- const response = await this[method](this.extend(request, params));
5253
+ let response = undefined;
5254
+ if (type === 'swap') {
5255
+ response = await this.privateFuturesGetSettlePositions(this.extend(request, params));
5256
+ }
5257
+ else if (type === 'future') {
5258
+ response = await this.privateDeliveryGetSettlePositions(this.extend(request, params));
5259
+ }
5260
+ else if (type === 'option') {
5261
+ response = await this.privateOptionsGetPositions(this.extend(request, params));
5262
+ }
5263
5263
  //
5264
5264
  // swap and future
5265
5265
  //
5266
5266
  // [
5267
5267
  // {
5268
- // value: "12.475572",
5269
- // leverage: "0",
5270
- // mode: "single",
5271
- // realised_point: "0",
5272
- // contract: "BTC_USDT",
5273
- // entry_price: "62422.6",
5274
- // mark_price: "62377.86",
5275
- // history_point: "0",
5276
- // realised_pnl: "-0.00624226",
5277
- // close_order: null,
5278
- // size: "2",
5279
- // cross_leverage_limit: "25",
5280
- // pending_orders: "0",
5281
- // adl_ranking: "5",
5282
- // maintenance_rate: "0.005",
5283
- // unrealised_pnl: "-0.008948",
5284
- // user: "6693577",
5285
- // leverage_max: "100",
5286
- // history_pnl: "14.98868396636",
5287
- // risk_limit: "1000000",
5288
- // margin: "0.740721495056",
5289
- // last_close_pnl: "-0.041996015",
5290
- // liq_price: "59058.58"
5268
+ // "value": "12.475572",
5269
+ // "leverage": "0",
5270
+ // "mode": "single",
5271
+ // "realised_point": "0",
5272
+ // "contract": "BTC_USDT",
5273
+ // "entry_price": "62422.6",
5274
+ // "mark_price": "62377.86",
5275
+ // "history_point": "0",
5276
+ // "realised_pnl": "-0.00624226",
5277
+ // "close_order": null,
5278
+ // "size": "2",
5279
+ // "cross_leverage_limit": "25",
5280
+ // "pending_orders": "0",
5281
+ // "adl_ranking": "5",
5282
+ // "maintenance_rate": "0.005",
5283
+ // "unrealised_pnl": "-0.008948",
5284
+ // "user": "6693577",
5285
+ // "leverage_max": "100",
5286
+ // "history_pnl": "14.98868396636",
5287
+ // "risk_limit": "1000000",
5288
+ // "margin": "0.740721495056",
5289
+ // "last_close_pnl": "-0.041996015",
5290
+ // "liq_price": "59058.58"
5291
5291
  // }
5292
5292
  // ]
5293
5293
  //
@@ -5933,7 +5933,7 @@ export default class gate extends Exchange {
5933
5933
  * @param {int} [since] the time(ms) of the earliest record to retrieve as a unix timestamp
5934
5934
  * @param {int} [limit] default 30
5935
5935
  * @param {object} [params] exchange specific parameters
5936
- * @returns {object} an open interest structure{@link https://github.com/ccxt/ccxt/wiki/Manual#interest-history-structure}
5936
+ * @returns {object} an open interest structure{@link https://github.com/ccxt/ccxt/wiki/Manual#open-interest-structure}
5937
5937
  */
5938
5938
  await this.loadMarkets();
5939
5939
  let paginate = false;
@@ -5960,20 +5960,20 @@ export default class gate extends Exchange {
5960
5960
  //
5961
5961
  // [
5962
5962
  // {
5963
- // long_liq_size: '0',
5964
- // short_liq_size: '0',
5965
- // short_liq_usd: '0',
5966
- // lsr_account: '3.2808988764045',
5967
- // mark_price: '0.34619',
5968
- // top_lsr_size: '0',
5969
- // time: '1674057000',
5970
- // short_liq_amount: '0',
5971
- // long_liq_amount: '0',
5972
- // open_interest_usd: '9872386.7775',
5973
- // top_lsr_account: '0',
5974
- // open_interest: '2851725',
5975
- // long_liq_usd: '0',
5976
- // lsr_taker: '9.3765153315902'
5963
+ // "long_liq_size": "0",
5964
+ // "short_liq_size": "0",
5965
+ // "short_liq_usd": "0",
5966
+ // "lsr_account": "3.2808988764045",
5967
+ // "mark_price": "0.34619",
5968
+ // "top_lsr_size": "0",
5969
+ // "time": "1674057000",
5970
+ // "short_liq_amount": "0",
5971
+ // "long_liq_amount": "0",
5972
+ // "open_interest_usd": "9872386.7775",
5973
+ // "top_lsr_account": "0",
5974
+ // "open_interest": "2851725",
5975
+ // "long_liq_usd": "0",
5976
+ // "lsr_taker": "9.3765153315902"
5977
5977
  // },
5978
5978
  // ...
5979
5979
  // ]
@@ -5983,20 +5983,20 @@ export default class gate extends Exchange {
5983
5983
  parseOpenInterest(interest, market = undefined) {
5984
5984
  //
5985
5985
  // {
5986
- // long_liq_size: '0',
5987
- // short_liq_size: '0',
5988
- // short_liq_usd: '0',
5989
- // lsr_account: '3.2808988764045',
5990
- // mark_price: '0.34619',
5991
- // top_lsr_size: '0',
5992
- // time: '1674057000',
5993
- // short_liq_amount: '0',
5994
- // long_liq_amount: '0',
5995
- // open_interest_usd: '9872386.7775',
5996
- // top_lsr_account: '0',
5997
- // open_interest: '2851725',
5998
- // long_liq_usd: '0',
5999
- // lsr_taker: '9.3765153315902'
5986
+ // "long_liq_size": "0",
5987
+ // "short_liq_size": "0",
5988
+ // "short_liq_usd": "0",
5989
+ // "lsr_account": "3.2808988764045",
5990
+ // "mark_price": "0.34619",
5991
+ // "top_lsr_size": "0",
5992
+ // "time": "1674057000",
5993
+ // "short_liq_amount": "0",
5994
+ // "long_liq_amount": "0",
5995
+ // "open_interest_usd": "9872386.7775",
5996
+ // "top_lsr_account": "0",
5997
+ // "open_interest": "2851725",
5998
+ // "long_liq_usd": "0",
5999
+ // "lsr_taker": "9.3765153315902"
6000
6000
  // }
6001
6001
  //
6002
6002
  const timestamp = this.safeTimestamp(interest, 'time');
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/gemini.js';
2
- import { Int, Order, OrderSide, OrderType, Ticker } from './base/types.js';
2
+ import { Balances, Int, Order, OrderSide, OrderType, Ticker, Trade, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class gemini
5
5
  * @extends Exchange
@@ -69,59 +69,21 @@ export default class gemini extends Exchange {
69
69
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
70
70
  parseTicker(ticker: any, market?: any): Ticker;
71
71
  fetchTickers(symbols?: string[], params?: {}): Promise<import("./base/types.js").Dictionary<Ticker>>;
72
- parseTrade(trade: any, market?: any): import("./base/types.js").Trade;
73
- fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
74
- parseBalance(response: any): import("./base/types.js").Balances;
72
+ parseTrade(trade: any, market?: any): Trade;
73
+ fetchTrades(symbol: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
74
+ parseBalance(response: any): Balances;
75
75
  fetchTradingFees(params?: {}): Promise<{}>;
76
- fetchBalance(params?: {}): Promise<import("./base/types.js").Balances>;
76
+ fetchBalance(params?: {}): Promise<Balances>;
77
77
  parseOrder(order: any, market?: any): Order;
78
78
  fetchOrder(id: string, symbol?: string, params?: {}): Promise<Order>;
79
79
  fetchOpenOrders(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Order[]>;
80
80
  createOrder(symbol: string, type: OrderType, side: OrderSide, amount: any, price?: any, params?: {}): Promise<Order>;
81
81
  cancelOrder(id: string, symbol?: string, params?: {}): Promise<Order>;
82
- fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<import("./base/types.js").Trade[]>;
83
- withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<{
84
- info: any;
85
- id: string;
86
- txid: string;
87
- timestamp: number;
88
- datetime: string;
89
- network: any;
90
- address: string;
91
- addressTo: any;
92
- addressFrom: any;
93
- tag: any;
94
- tagTo: any;
95
- tagFrom: any;
96
- type: string;
97
- amount: number;
98
- currency: any;
99
- status: string;
100
- updated: any;
101
- fee: any;
102
- }>;
82
+ fetchMyTrades(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<Trade[]>;
83
+ withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<Transaction>;
103
84
  nonce(): number;
104
85
  fetchDepositsWithdrawals(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
105
- parseTransaction(transaction: any, currency?: any): {
106
- info: any;
107
- id: string;
108
- txid: string;
109
- timestamp: number;
110
- datetime: string;
111
- network: any;
112
- address: string;
113
- addressTo: any;
114
- addressFrom: any;
115
- tag: any;
116
- tagTo: any;
117
- tagFrom: any;
118
- type: string;
119
- amount: number;
120
- currency: any;
121
- status: string;
122
- updated: any;
123
- fee: any;
124
- };
86
+ parseTransaction(transaction: any, currency?: any): Transaction;
125
87
  parseTransactionStatus(status: any): string;
126
88
  parseDepositAddress(depositAddress: any, currency?: any): {
127
89
  currency: any;
package/js/src/gemini.js CHANGED
@@ -319,7 +319,7 @@ export default class gemini extends Exchange {
319
319
  // [ "ORCA", "Orca", 204, 6, 0, 6, 8, false, null, "solana" ], // as confirmed, precisions seem to be the 5th index
320
320
  // [ "ATOM", "Cosmos", 44, 6, 0, 6, 8, false, null, "cosmos" ],
321
321
  // [ "ETH", "Ether", 2, 6, 0, 18, 8, false, null, "ethereum" ],
322
- // [ "GBP", "Pound Sterling", 22, 2, 2, 2, 2, true, '£', null ],
322
+ // [ "GBP", "Pound Sterling", 22, 2, 2, 2, 2, true, "£", null ],
323
323
  // ...
324
324
  // ],
325
325
  // "networks": [
@@ -1616,9 +1616,9 @@ export default class gemini extends Exchange {
1616
1616
  parseDepositAddress(depositAddress, currency = undefined) {
1617
1617
  //
1618
1618
  // {
1619
- // address: "0xed6494Fe7c1E56d1bd6136e89268C51E32d9708B",
1620
- // timestamp: "1636813923098",
1621
- // addressVersion: "eV1" }
1619
+ // "address": "0xed6494Fe7c1E56d1bd6136e89268C51E32d9708B",
1620
+ // "timestamp": "1636813923098",
1621
+ // "addressVersion": "eV1" }
1622
1622
  // }
1623
1623
  //
1624
1624
  const address = this.safeString(depositAddress, 'address');
@@ -1,5 +1,5 @@
1
1
  import Exchange from './abstract/hitbtc.js';
2
- import { Int, OrderSide, OrderType, FundingRateHistory, OHLCV, Ticker, Order, OrderBook, Dictionary, Position, Trade } from './base/types.js';
2
+ import { Int, OrderSide, OrderType, FundingRateHistory, OHLCV, Ticker, Order, OrderBook, Dictionary, Position, Trade, Balances, Transaction } from './base/types.js';
3
3
  /**
4
4
  * @class hitbtc
5
5
  * @extends Exchange
@@ -25,8 +25,8 @@ export default class hitbtc extends Exchange {
25
25
  currency: any;
26
26
  network: any;
27
27
  }>;
28
- parseBalance(response: any): import("./base/types.js").Balances;
29
- fetchBalance(params?: {}): Promise<import("./base/types.js").Balances>;
28
+ parseBalance(response: any): Balances;
29
+ fetchBalance(params?: {}): Promise<Balances>;
30
30
  fetchTicker(symbol: string, params?: {}): Promise<Ticker>;
31
31
  fetchTickers(symbols?: string[], params?: {}): Promise<Dictionary<Ticker>>;
32
32
  parseTicker(ticker: any, market?: any): Ticker;
@@ -36,32 +36,7 @@ export default class hitbtc extends Exchange {
36
36
  fetchTransactionsHelper(types: any, code: any, since: any, limit: any, params: any): Promise<any>;
37
37
  parseTransactionStatus(status: any): string;
38
38
  parseTransactionType(type: any): string;
39
- parseTransaction(transaction: any, currency?: any): {
40
- info: any;
41
- id: string;
42
- txid: string;
43
- type: string;
44
- code: any;
45
- currency: any;
46
- network: any;
47
- amount: number;
48
- status: string;
49
- timestamp: number;
50
- datetime: string;
51
- address: string;
52
- addressFrom: string;
53
- addressTo: string;
54
- tag: string;
55
- tagFrom: any;
56
- tagTo: string;
57
- updated: number;
58
- comment: any;
59
- fee: {
60
- currency: any;
61
- cost: any;
62
- rate: any;
63
- };
64
- };
39
+ parseTransaction(transaction: any, currency?: any): Transaction;
65
40
  fetchDepositsWithdrawals(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
66
41
  fetchDeposits(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
67
42
  fetchWithdrawals(code?: string, since?: Int, limit?: Int, params?: {}): Promise<any>;
@@ -118,32 +93,7 @@ export default class hitbtc extends Exchange {
118
93
  convertCurrencyNetwork(code: string, amount: any, fromNetwork: any, toNetwork: any, params: any): Promise<{
119
94
  info: any;
120
95
  }>;
121
- withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<{
122
- info: any;
123
- id: string;
124
- txid: string;
125
- type: string;
126
- code: any;
127
- currency: any;
128
- network: any;
129
- amount: number;
130
- status: string;
131
- timestamp: number;
132
- datetime: string;
133
- address: string;
134
- addressFrom: string;
135
- addressTo: string;
136
- tag: string;
137
- tagFrom: any;
138
- tagTo: string;
139
- updated: number;
140
- comment: any;
141
- fee: {
142
- currency: any;
143
- cost: any;
144
- rate: any;
145
- };
146
- }>;
96
+ withdraw(code: string, amount: any, address: any, tag?: any, params?: {}): Promise<Transaction>;
147
97
  fetchFundingRateHistory(symbol?: string, since?: Int, limit?: Int, params?: {}): Promise<FundingRateHistory[]>;
148
98
  fetchPositions(symbols?: string[], params?: {}): Promise<Position[]>;
149
99
  fetchPosition(symbol: string, params?: {}): Promise<Position>;