ccxt 4.1.55 → 4.1.57

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 (328) hide show
  1. package/.git-templates/hooks/pre-push +2 -2
  2. package/CONTRIBUTING.md +1 -1
  3. package/README.md +6 -6
  4. package/build.sh +30 -8
  5. package/dist/ccxt.browser.js +5592 -4907
  6. package/dist/ccxt.browser.min.js +13 -13
  7. package/dist/cjs/ccxt.js +1 -1
  8. package/dist/cjs/src/ace.js +17 -13
  9. package/dist/cjs/src/alpaca.js +6 -6
  10. package/dist/cjs/src/ascendex.js +35 -29
  11. package/dist/cjs/src/base/Exchange.js +39 -26
  12. package/dist/cjs/src/base/Precise.js +1 -3
  13. package/dist/cjs/src/bigone.js +24 -20
  14. package/dist/cjs/src/binance.js +97 -76
  15. package/dist/cjs/src/bingx.js +63 -44
  16. package/dist/cjs/src/bit2c.js +18 -15
  17. package/dist/cjs/src/bitbank.js +17 -15
  18. package/dist/cjs/src/bitbns.js +28 -18
  19. package/dist/cjs/src/bitfinex.js +23 -21
  20. package/dist/cjs/src/bitfinex2.js +32 -28
  21. package/dist/cjs/src/bitflyer.js +28 -20
  22. package/dist/cjs/src/bitforex.js +25 -18
  23. package/dist/cjs/src/bitget.js +184 -147
  24. package/dist/cjs/src/bithumb.js +23 -16
  25. package/dist/cjs/src/bitmart.js +129 -94
  26. package/dist/cjs/src/bitmex.js +104 -64
  27. package/dist/cjs/src/bitopro.js +38 -26
  28. package/dist/cjs/src/bitpanda.js +24 -23
  29. package/dist/cjs/src/bitrue.js +33 -24
  30. package/dist/cjs/src/bitso.js +24 -23
  31. package/dist/cjs/src/bitstamp.js +24 -23
  32. package/dist/cjs/src/bittrex.js +30 -29
  33. package/dist/cjs/src/bitvavo.js +38 -30
  34. package/dist/cjs/src/bl3p.js +11 -10
  35. package/dist/cjs/src/blockchaincom.js +20 -20
  36. package/dist/cjs/src/btcalpha.js +18 -17
  37. package/dist/cjs/src/btcbox.js +13 -12
  38. package/dist/cjs/src/btcmarkets.js +20 -19
  39. package/dist/cjs/src/btcturk.js +14 -13
  40. package/dist/cjs/src/bybit.js +84 -54
  41. package/dist/cjs/src/cex.js +16 -14
  42. package/dist/cjs/src/coinbase.js +29 -27
  43. package/dist/cjs/src/coinbasepro.js +27 -25
  44. package/dist/cjs/src/coincheck.js +15 -14
  45. package/dist/cjs/src/coinex.js +101 -78
  46. package/dist/cjs/src/coinlist.js +28 -27
  47. package/dist/cjs/src/coinmate.js +20 -17
  48. package/dist/cjs/src/coinone.js +21 -16
  49. package/dist/cjs/src/coinsph.js +37 -28
  50. package/dist/cjs/src/coinspot.js +12 -11
  51. package/dist/cjs/src/cryptocom.js +40 -202
  52. package/dist/cjs/src/currencycom.js +32 -25
  53. package/dist/cjs/src/delta.js +34 -28
  54. package/dist/cjs/src/deribit.js +39 -36
  55. package/dist/cjs/src/digifinex.js +64 -44
  56. package/dist/cjs/src/exmo.js +29 -27
  57. package/dist/cjs/src/gate.js +67 -53
  58. package/dist/cjs/src/gemini.js +23 -20
  59. package/dist/cjs/src/hitbtc.js +65 -56
  60. package/dist/cjs/src/hollaex.js +30 -27
  61. package/dist/cjs/src/htx.js +135 -143
  62. package/dist/cjs/src/huobijp.js +22 -20
  63. package/dist/cjs/src/idex.js +22 -21
  64. package/dist/cjs/src/independentreserve.js +15 -14
  65. package/dist/cjs/src/indodax.js +30 -26
  66. package/dist/cjs/src/kraken.js +29 -27
  67. package/dist/cjs/src/krakenfutures.js +29 -22
  68. package/dist/cjs/src/kucoin.js +48 -43
  69. package/dist/cjs/src/kucoinfutures.js +33 -28
  70. package/dist/cjs/src/kuna.js +25 -24
  71. package/dist/cjs/src/latoken.js +24 -22
  72. package/dist/cjs/src/lbank.js +45 -30
  73. package/dist/cjs/src/luno.js +22 -19
  74. package/dist/cjs/src/lykke.js +19 -17
  75. package/dist/cjs/src/mercado.js +30 -19
  76. package/dist/cjs/src/mexc.js +60 -49
  77. package/dist/cjs/src/ndax.js +23 -22
  78. package/dist/cjs/src/novadax.js +23 -22
  79. package/dist/cjs/src/oceanex.js +22 -19
  80. package/dist/cjs/src/okcoin.js +29 -23
  81. package/dist/cjs/src/okx.js +92 -84
  82. package/dist/cjs/src/p2b.js +80 -83
  83. package/dist/cjs/src/paymium.js +10 -10
  84. package/dist/cjs/src/phemex.js +63 -40
  85. package/dist/cjs/src/poloniex.js +22 -22
  86. package/dist/cjs/src/poloniexfutures.js +23 -19
  87. package/dist/cjs/src/pro/alpaca.js +5 -5
  88. package/dist/cjs/src/pro/ascendex.js +4 -4
  89. package/dist/cjs/src/pro/binance.js +16 -16
  90. package/dist/cjs/src/pro/bingx.js +1 -1
  91. package/dist/cjs/src/pro/bitfinex.js +4 -4
  92. package/dist/cjs/src/pro/bitfinex2.js +6 -6
  93. package/dist/cjs/src/pro/bitget.js +7 -7
  94. package/dist/cjs/src/pro/bitmart.js +7 -5
  95. package/dist/cjs/src/pro/bitmex.js +6 -6
  96. package/dist/cjs/src/pro/bitopro.js +4 -4
  97. package/dist/cjs/src/pro/bitpanda.js +6 -6
  98. package/dist/cjs/src/pro/bitrue.js +2 -2
  99. package/dist/cjs/src/pro/bitstamp.js +6 -4
  100. package/dist/cjs/src/pro/bittrex.js +6 -6
  101. package/dist/cjs/src/pro/bitvavo.js +11 -7
  102. package/dist/cjs/src/pro/blockchaincom.js +8 -8
  103. package/dist/cjs/src/pro/bybit.js +7 -7
  104. package/dist/cjs/src/pro/cex.js +13 -9
  105. package/dist/cjs/src/pro/coinbase.js +5 -5
  106. package/dist/cjs/src/pro/coinbasepro.js +11 -10
  107. package/dist/cjs/src/pro/coinex.js +7 -9
  108. package/dist/cjs/src/pro/cryptocom.js +9 -9
  109. package/dist/cjs/src/pro/currencycom.js +4 -4
  110. package/dist/cjs/src/pro/deribit.js +6 -6
  111. package/dist/cjs/src/pro/exmo.js +12 -14
  112. package/dist/cjs/src/pro/gate.js +7 -7
  113. package/dist/cjs/src/pro/gemini.js +3 -3
  114. package/dist/cjs/src/pro/hitbtc.js +263 -4
  115. package/dist/cjs/src/pro/hollaex.js +5 -5
  116. package/dist/cjs/src/pro/htx.js +6 -6
  117. package/dist/cjs/src/pro/huobijp.js +3 -3
  118. package/dist/cjs/src/pro/idex.js +4 -4
  119. package/dist/cjs/src/pro/independentreserve.js +2 -2
  120. package/dist/cjs/src/pro/kraken.js +10 -10
  121. package/dist/cjs/src/pro/krakenfutures.js +41 -17
  122. package/dist/cjs/src/pro/kucoin.js +7 -7
  123. package/dist/cjs/src/pro/kucoinfutures.js +8 -6
  124. package/dist/cjs/src/pro/luno.js +2 -2
  125. package/dist/cjs/src/pro/mexc.js +6 -6
  126. package/dist/cjs/src/pro/ndax.js +3 -3
  127. package/dist/cjs/src/pro/okcoin.js +5 -5
  128. package/dist/cjs/src/pro/okx.js +12 -12
  129. package/dist/cjs/src/pro/phemex.js +6 -6
  130. package/dist/cjs/src/pro/poloniex.js +7 -7
  131. package/dist/cjs/src/pro/poloniexfutures.js +5 -5
  132. package/dist/cjs/src/pro/probit.js +6 -6
  133. package/dist/cjs/src/pro/upbit.js +3 -3
  134. package/dist/cjs/src/pro/wazirx.js +8 -8
  135. package/dist/cjs/src/pro/whitebit.js +12 -8
  136. package/dist/cjs/src/pro/woo.js +1 -1
  137. package/dist/cjs/src/probit.js +28 -23
  138. package/dist/cjs/src/tidex.js +16 -15
  139. package/dist/cjs/src/timex.js +19 -18
  140. package/dist/cjs/src/tokocrypto.js +27 -22
  141. package/dist/cjs/src/upbit.js +19 -19
  142. package/dist/cjs/src/wavesexchange.js +22 -19
  143. package/dist/cjs/src/wazirx.js +24 -17
  144. package/dist/cjs/src/whitebit.js +33 -27
  145. package/dist/cjs/src/woo.js +44 -34
  146. package/dist/cjs/src/yobit.js +25 -20
  147. package/dist/cjs/src/zaif.js +9 -9
  148. package/dist/cjs/src/zonda.js +18 -17
  149. package/js/ccxt.d.ts +1 -1
  150. package/js/ccxt.js +1 -1
  151. package/js/src/abstract/bitbank.d.ts +1 -0
  152. package/js/src/abstract/bybit.d.ts +1 -0
  153. package/js/src/abstract/cryptocom.d.ts +0 -20
  154. package/js/src/abstract/htx.d.ts +3 -0
  155. package/js/src/abstract/huobi.d.ts +3 -0
  156. package/js/src/abstract/huobipro.d.ts +3 -0
  157. package/js/src/abstract/okex.d.ts +3 -1
  158. package/js/src/abstract/okex5.d.ts +3 -1
  159. package/js/src/abstract/okx.d.ts +3 -1
  160. package/js/src/ace.js +18 -14
  161. package/js/src/alpaca.js +6 -6
  162. package/js/src/ascendex.js +35 -29
  163. package/js/src/base/Exchange.d.ts +37 -34
  164. package/js/src/base/Exchange.js +39 -26
  165. package/js/src/base/Precise.d.ts +4 -4
  166. package/js/src/base/Precise.js +1 -3
  167. package/js/src/base/functions/type.d.ts +25 -25
  168. package/js/src/base/types.d.ts +21 -14
  169. package/js/src/bigone.js +25 -21
  170. package/js/src/binance.d.ts +2 -2
  171. package/js/src/binance.js +97 -76
  172. package/js/src/bingx.js +63 -44
  173. package/js/src/bit2c.js +19 -16
  174. package/js/src/bitbank.js +17 -15
  175. package/js/src/bitbns.js +28 -18
  176. package/js/src/bitfinex.js +23 -21
  177. package/js/src/bitfinex2.js +32 -28
  178. package/js/src/bitflyer.js +28 -20
  179. package/js/src/bitforex.js +26 -19
  180. package/js/src/bitget.d.ts +25 -3
  181. package/js/src/bitget.js +184 -147
  182. package/js/src/bithumb.js +23 -16
  183. package/js/src/bitmart.d.ts +1 -1
  184. package/js/src/bitmart.js +129 -94
  185. package/js/src/bitmex.d.ts +2 -2
  186. package/js/src/bitmex.js +104 -64
  187. package/js/src/bitopro.js +38 -26
  188. package/js/src/bitpanda.js +24 -23
  189. package/js/src/bitrue.js +33 -24
  190. package/js/src/bitso.js +24 -23
  191. package/js/src/bitstamp.d.ts +2 -2
  192. package/js/src/bitstamp.js +24 -23
  193. package/js/src/bittrex.js +30 -29
  194. package/js/src/bitvavo.js +38 -30
  195. package/js/src/bl3p.js +11 -10
  196. package/js/src/blockchaincom.js +20 -20
  197. package/js/src/btcalpha.js +18 -17
  198. package/js/src/btcbox.js +13 -12
  199. package/js/src/btcmarkets.js +20 -19
  200. package/js/src/btcturk.js +14 -13
  201. package/js/src/bybit.d.ts +1 -1
  202. package/js/src/bybit.js +84 -54
  203. package/js/src/cex.js +16 -14
  204. package/js/src/coinbase.js +29 -27
  205. package/js/src/coinbasepro.js +27 -25
  206. package/js/src/coincheck.js +15 -14
  207. package/js/src/coinex.d.ts +1 -1
  208. package/js/src/coinex.js +101 -78
  209. package/js/src/coinlist.js +28 -27
  210. package/js/src/coinmate.js +21 -18
  211. package/js/src/coinone.js +21 -16
  212. package/js/src/coinsph.js +37 -28
  213. package/js/src/coinspot.js +12 -11
  214. package/js/src/cryptocom.d.ts +0 -23
  215. package/js/src/cryptocom.js +40 -202
  216. package/js/src/currencycom.js +32 -25
  217. package/js/src/delta.js +35 -29
  218. package/js/src/deribit.js +39 -36
  219. package/js/src/digifinex.d.ts +2 -2
  220. package/js/src/digifinex.js +65 -45
  221. package/js/src/exmo.js +29 -27
  222. package/js/src/gate.d.ts +1 -1
  223. package/js/src/gate.js +67 -53
  224. package/js/src/gemini.js +23 -20
  225. package/js/src/hitbtc.d.ts +1 -0
  226. package/js/src/hitbtc.js +65 -56
  227. package/js/src/hollaex.js +30 -27
  228. package/js/src/htx.d.ts +11 -3
  229. package/js/src/htx.js +135 -143
  230. package/js/src/huobijp.js +23 -21
  231. package/js/src/idex.js +22 -21
  232. package/js/src/independentreserve.js +15 -14
  233. package/js/src/indodax.js +30 -26
  234. package/js/src/kraken.js +29 -27
  235. package/js/src/krakenfutures.js +29 -22
  236. package/js/src/kucoin.d.ts +1 -1
  237. package/js/src/kucoin.js +48 -43
  238. package/js/src/kucoinfutures.js +33 -28
  239. package/js/src/kuna.js +25 -24
  240. package/js/src/latoken.js +25 -23
  241. package/js/src/lbank.js +46 -31
  242. package/js/src/luno.js +22 -19
  243. package/js/src/lykke.js +19 -17
  244. package/js/src/mercado.js +30 -19
  245. package/js/src/mexc.d.ts +1 -1
  246. package/js/src/mexc.js +60 -49
  247. package/js/src/ndax.js +23 -22
  248. package/js/src/novadax.js +23 -22
  249. package/js/src/oceanex.js +22 -19
  250. package/js/src/okcoin.js +29 -23
  251. package/js/src/okx.d.ts +2 -2
  252. package/js/src/okx.js +92 -84
  253. package/js/src/p2b.d.ts +8 -7
  254. package/js/src/p2b.js +80 -82
  255. package/js/src/paymium.js +10 -10
  256. package/js/src/phemex.js +63 -40
  257. package/js/src/poloniex.js +22 -22
  258. package/js/src/poloniexfutures.js +23 -19
  259. package/js/src/pro/alpaca.js +5 -5
  260. package/js/src/pro/ascendex.js +4 -4
  261. package/js/src/pro/binance.js +16 -16
  262. package/js/src/pro/bingx.js +1 -1
  263. package/js/src/pro/bitfinex.js +4 -4
  264. package/js/src/pro/bitfinex2.d.ts +1 -1
  265. package/js/src/pro/bitfinex2.js +6 -6
  266. package/js/src/pro/bitget.js +7 -7
  267. package/js/src/pro/bitmart.js +7 -5
  268. package/js/src/pro/bitmex.js +6 -6
  269. package/js/src/pro/bitopro.js +4 -4
  270. package/js/src/pro/bitpanda.js +6 -6
  271. package/js/src/pro/bitrue.js +2 -2
  272. package/js/src/pro/bitstamp.js +7 -5
  273. package/js/src/pro/bittrex.js +6 -6
  274. package/js/src/pro/bitvavo.js +12 -8
  275. package/js/src/pro/blockchaincom.js +8 -8
  276. package/js/src/pro/bybit.js +7 -7
  277. package/js/src/pro/cex.js +14 -10
  278. package/js/src/pro/coinbase.js +5 -5
  279. package/js/src/pro/coinbasepro.js +12 -11
  280. package/js/src/pro/coinex.js +7 -9
  281. package/js/src/pro/cryptocom.js +9 -9
  282. package/js/src/pro/currencycom.js +4 -4
  283. package/js/src/pro/deribit.js +6 -6
  284. package/js/src/pro/exmo.js +12 -14
  285. package/js/src/pro/gate.js +7 -7
  286. package/js/src/pro/gemini.js +3 -3
  287. package/js/src/pro/hitbtc.d.ts +8 -1
  288. package/js/src/pro/hitbtc.js +264 -5
  289. package/js/src/pro/hollaex.js +5 -5
  290. package/js/src/pro/htx.js +6 -6
  291. package/js/src/pro/huobijp.js +3 -3
  292. package/js/src/pro/idex.js +4 -4
  293. package/js/src/pro/independentreserve.js +2 -2
  294. package/js/src/pro/kraken.js +10 -10
  295. package/js/src/pro/krakenfutures.d.ts +1 -0
  296. package/js/src/pro/krakenfutures.js +42 -18
  297. package/js/src/pro/kucoin.js +7 -7
  298. package/js/src/pro/kucoinfutures.js +8 -6
  299. package/js/src/pro/luno.js +2 -2
  300. package/js/src/pro/mexc.js +6 -6
  301. package/js/src/pro/ndax.js +3 -3
  302. package/js/src/pro/okcoin.js +5 -5
  303. package/js/src/pro/okx.js +12 -12
  304. package/js/src/pro/phemex.js +6 -6
  305. package/js/src/pro/poloniex.js +7 -7
  306. package/js/src/pro/poloniexfutures.js +5 -5
  307. package/js/src/pro/probit.js +6 -6
  308. package/js/src/pro/upbit.js +3 -3
  309. package/js/src/pro/wazirx.js +8 -8
  310. package/js/src/pro/whitebit.js +13 -9
  311. package/js/src/pro/woo.js +1 -1
  312. package/js/src/probit.js +29 -24
  313. package/js/src/tidex.js +16 -15
  314. package/js/src/timex.js +19 -18
  315. package/js/src/tokocrypto.js +28 -23
  316. package/js/src/upbit.js +19 -19
  317. package/js/src/wavesexchange.js +23 -20
  318. package/js/src/wazirx.js +25 -18
  319. package/js/src/whitebit.js +33 -27
  320. package/js/src/woo.js +45 -35
  321. package/js/src/yobit.js +25 -20
  322. package/js/src/zaif.js +9 -9
  323. package/js/src/zonda.js +18 -17
  324. package/package.json +2 -2
  325. package/js/src/bitstamp1.d.ts +0 -28
  326. package/js/src/bitstamp1.js +0 -430
  327. package/js/src/lbank2.d.ts +0 -90
  328. package/js/src/lbank2.js +0 -2779
@@ -87,12 +87,11 @@ class gate extends gate$1 {
87
87
  'createStopOrder': true,
88
88
  'editOrder': true,
89
89
  'fetchBalance': true,
90
- 'fetchBorrowRate': false,
91
90
  'fetchBorrowRateHistories': false,
92
91
  'fetchBorrowRateHistory': false,
93
- 'fetchBorrowRates': false,
94
- 'fetchBorrowRatesPerSymbol': false,
95
92
  'fetchClosedOrders': true,
93
+ 'fetchCrossBorrowRate': false,
94
+ 'fetchCrossBorrowRates': false,
96
95
  'fetchCurrencies': true,
97
96
  'fetchDepositAddress': true,
98
97
  'fetchDeposits': true,
@@ -104,6 +103,8 @@ class gate extends gate$1 {
104
103
  'fetchFundingRates': true,
105
104
  'fetchGreeks': true,
106
105
  'fetchIndexOHLCV': true,
106
+ 'fetchIsolatedBorrowRate': false,
107
+ 'fetchIsolatedBorrowRates': false,
107
108
  'fetchLedger': true,
108
109
  'fetchLeverage': false,
109
110
  'fetchLeverageTiers': true,
@@ -1679,7 +1680,7 @@ class gate extends gate$1 {
1679
1680
  * @see https://www.gate.io/docs/developers/apiv4/en/#get-a-single-contract
1680
1681
  * @param {string} symbol unified market symbol
1681
1682
  * @param {object} [params] extra parameters specific to the gate api endpoint
1682
- * @returns {object} a [funding rate structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#funding-rate-structure}
1683
+ * @returns {object} a [funding rate structure]{@link https://docs.ccxt.com/#/?id=funding-rate-structure}
1683
1684
  */
1684
1685
  await this.loadMarkets();
1685
1686
  const market = this.market(symbol);
@@ -1742,7 +1743,7 @@ class gate extends gate$1 {
1742
1743
  * @see https://www.gate.io/docs/developers/apiv4/en/#list-all-futures-contracts
1743
1744
  * @param {string[]|undefined} symbols list of unified market symbols
1744
1745
  * @param {object} [params] extra parameters specific to the gate api endpoint
1745
- * @returns {object} a dictionary of [funding rates structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#funding-rates-structure}, indexe by market symbols
1746
+ * @returns {object} a dictionary of [funding rates structures]{@link https://docs.ccxt.com/#/?id=funding-rates-structure}, indexe by market symbols
1746
1747
  */
1747
1748
  await this.loadMarkets();
1748
1749
  symbols = this.marketSymbols(symbols);
@@ -1913,7 +1914,7 @@ class gate extends gate$1 {
1913
1914
  * @see https://www.gate.io/docs/developers/apiv4/en/#generate-currency-deposit-address
1914
1915
  * @param {string} code unified currency code
1915
1916
  * @param {object} [params] extra parameters specific to the gate api endpoint
1916
- * @returns {object} an [address structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#address-structure}
1917
+ * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
1917
1918
  */
1918
1919
  await this.loadMarkets();
1919
1920
  const currency = this.currency(code);
@@ -1972,7 +1973,7 @@ class gate extends gate$1 {
1972
1973
  * @see https://www.gate.io/docs/developers/apiv4/en/#retrieve-personal-trading-fee
1973
1974
  * @param {string} symbol unified market symbol
1974
1975
  * @param {object} [params] extra parameters specific to the gate api endpoint
1975
- * @returns {object} a [fee structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#fee-structure}
1976
+ * @returns {object} a [fee structure]{@link https://docs.ccxt.com/#/?id=fee-structure}
1976
1977
  */
1977
1978
  await this.loadMarkets();
1978
1979
  const market = this.market(symbol);
@@ -2003,7 +2004,7 @@ class gate extends gate$1 {
2003
2004
  * @description fetch the trading fees for multiple markets
2004
2005
  * @see https://www.gate.io/docs/developers/apiv4/en/#retrieve-personal-trading-fee
2005
2006
  * @param {object} [params] extra parameters specific to the gate api endpoint
2006
- * @returns {object} a dictionary of [fee structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#fee-structure} indexed by market symbols
2007
+ * @returns {object} a dictionary of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure} indexed by market symbols
2007
2008
  */
2008
2009
  await this.loadMarkets();
2009
2010
  const response = await this.privateWalletGetFee(params);
@@ -2069,7 +2070,7 @@ class gate extends gate$1 {
2069
2070
  * @see https://www.gate.io/docs/developers/apiv4/en/#retrieve-withdrawal-status
2070
2071
  * @param {string[]|undefined} codes list of unified currency codes
2071
2072
  * @param {object} [params] extra parameters specific to the gate api endpoint
2072
- * @returns {object} a list of [fee structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#fee-structure}
2073
+ * @returns {object} a list of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure}
2073
2074
  */
2074
2075
  await this.loadMarkets();
2075
2076
  const response = await this.privateWalletGetWithdrawStatus(params);
@@ -2127,7 +2128,7 @@ class gate extends gate$1 {
2127
2128
  * @see https://www.gate.io/docs/developers/apiv4/en/#retrieve-withdrawal-status
2128
2129
  * @param {string[]|undefined} codes list of unified currency codes
2129
2130
  * @param {object} [params] extra parameters specific to the gate api endpoint
2130
- * @returns {object} a list of [fee structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#fee-structure}
2131
+ * @returns {object} a list of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure}
2131
2132
  */
2132
2133
  await this.loadMarkets();
2133
2134
  const response = await this.privateWalletGetWithdrawStatus(params);
@@ -2212,7 +2213,7 @@ class gate extends gate$1 {
2212
2213
  * @param {int} [since] the earliest time in ms to fetch funding history for
2213
2214
  * @param {int} [limit] the maximum number of funding history structures to retrieve
2214
2215
  * @param {object} [params] extra parameters specific to the gate api endpoint
2215
- * @returns {object} a [funding history structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#funding-history-structure}
2216
+ * @returns {object} a [funding history structure]{@link https://docs.ccxt.com/#/?id=funding-history-structure}
2216
2217
  */
2217
2218
  await this.loadMarkets();
2218
2219
  // let defaultType = 'future';
@@ -2294,7 +2295,7 @@ class gate extends gate$1 {
2294
2295
  * @param {string} symbol unified symbol of the market to fetch the order book for
2295
2296
  * @param {int} [limit] the maximum amount of order book entries to return
2296
2297
  * @param {object} [params] extra parameters specific to the gate api endpoint
2297
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
2298
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
2298
2299
  */
2299
2300
  await this.loadMarkets();
2300
2301
  const market = this.market(symbol);
@@ -2405,7 +2406,7 @@ class gate extends gate$1 {
2405
2406
  * @see https://www.gate.io/docs/developers/apiv4/en/#list-tickers-of-options-contracts
2406
2407
  * @param {string} symbol unified symbol of the market to fetch the ticker for
2407
2408
  * @param {object} [params] extra parameters specific to the gate api endpoint
2408
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
2409
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
2409
2410
  */
2410
2411
  await this.loadMarkets();
2411
2412
  const market = this.market(symbol);
@@ -2561,7 +2562,7 @@ class gate extends gate$1 {
2561
2562
  * @see https://www.gate.io/docs/developers/apiv4/en/#list-tickers-of-options-contracts
2562
2563
  * @param {string[]|undefined} symbols unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
2563
2564
  * @param {object} [params] extra parameters specific to the gate api endpoint
2564
- * @returns {object} a dictionary of [ticker structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
2565
+ * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
2565
2566
  */
2566
2567
  await this.loadMarkets();
2567
2568
  symbols = this.marketSymbols(symbols);
@@ -2911,11 +2912,13 @@ class gate extends gate$1 {
2911
2912
  * @see https://www.gate.io/docs/developers/apiv4/en/#funding-rate-history
2912
2913
  * @param {string} symbol unified symbol of the market to fetch the funding rate history for
2913
2914
  * @param {int} [since] timestamp in ms of the earliest funding rate to fetch
2914
- * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#funding-rate-history-structure} to fetch
2915
+ * @param {int} [limit] the maximum amount of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure} to fetch
2915
2916
  * @param {object} [params] extra parameters specific to the gate api endpoint
2916
- * @returns {object[]} a list of [funding rate structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#funding-rate-history-structure}
2917
+ * @returns {object[]} a list of [funding rate structures]{@link https://docs.ccxt.com/#/?id=funding-rate-history-structure}
2917
2918
  */
2918
- this.checkRequiredSymbol('fetchFundingRateHistory', symbol);
2919
+ if (symbol === undefined) {
2920
+ throw new errors.ArgumentsRequired(this.id + ' fetchFundingRateHistory() requires a symbol argument');
2921
+ }
2919
2922
  await this.loadMarkets();
2920
2923
  const market = this.market(symbol);
2921
2924
  if (!market['swap']) {
@@ -3010,7 +3013,7 @@ class gate extends gate$1 {
3010
3013
  * @param {object} [params] extra parameters specific to the gate api endpoint
3011
3014
  * @param {int} [params.until] timestamp in ms of the latest trade to fetch
3012
3015
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
3013
- * @returns {Trade[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
3016
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
3014
3017
  */
3015
3018
  await this.loadMarkets();
3016
3019
  let paginate = false;
@@ -3116,10 +3119,12 @@ class gate extends gate$1 {
3116
3119
  * @param {int} [since] the earliest time in ms to fetch trades for
3117
3120
  * @param {int} [limit] the maximum number of trades to retrieve
3118
3121
  * @param {object} [params] extra parameters specific to the binance api endpoint
3119
- * @returns {object[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure}
3122
+ * @returns {object[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
3120
3123
  */
3124
+ if (symbol === undefined) {
3125
+ throw new errors.ArgumentsRequired(this.id + ' fetchOrderTrades() requires a symbol argument');
3126
+ }
3121
3127
  await this.loadMarkets();
3122
- this.checkRequiredSymbol('fetchOrderTrades', symbol);
3123
3128
  //
3124
3129
  // [
3125
3130
  // {
@@ -3165,7 +3170,7 @@ class gate extends gate$1 {
3165
3170
  * @param {string} [params.last_id] *contract only* specify list staring point using the id of last record in previous list-query results
3166
3171
  * @param {int} [params.count_total] *contract only* whether to return total number matched, default to 0(no return)
3167
3172
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
3168
- * @returns {Trade[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure}
3173
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
3169
3174
  */
3170
3175
  await this.loadMarkets();
3171
3176
  let paginate = false;
@@ -3435,7 +3440,7 @@ class gate extends gate$1 {
3435
3440
  * @param {int} [params.until] end time in ms
3436
3441
  * @param {object} [params] extra parameters specific to the gate api endpoint
3437
3442
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
3438
- * @returns {object[]} a list of [transaction structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
3443
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
3439
3444
  */
3440
3445
  await this.loadMarkets();
3441
3446
  let paginate = false;
@@ -3473,7 +3478,7 @@ class gate extends gate$1 {
3473
3478
  * @param {object} [params] extra parameters specific to the gate api endpoint
3474
3479
  * @param {int} [params.until] end time in ms
3475
3480
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
3476
- * @returns {object[]} a list of [transaction structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
3481
+ * @returns {object[]} a list of [transaction structures]{@link https://docs.ccxt.com/#/?id=transaction-structure}
3477
3482
  */
3478
3483
  await this.loadMarkets();
3479
3484
  let paginate = false;
@@ -3510,7 +3515,7 @@ class gate extends gate$1 {
3510
3515
  * @param {string} address the address to withdraw to
3511
3516
  * @param {string} tag
3512
3517
  * @param {object} [params] extra parameters specific to the gate api endpoint
3513
- * @returns {object} a [transaction structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
3518
+ * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
3514
3519
  */
3515
3520
  [tag, params] = this.handleWithdrawTagAndParams(tag, params);
3516
3521
  this.checkAddress(address);
@@ -3678,7 +3683,7 @@ class gate extends gate$1 {
3678
3683
  * @param {bool} [params.close] *contract only* Set as true to close the position, with size set to 0
3679
3684
  * @param {bool} [params.auto_size] *contract only* Set side to close dual-mode position, close_long closes the long side, while close_short the short one, size also needs to be set to 0
3680
3685
  * @param {int} [params.price_type] *contract only* 0 latest deal price, 1 mark price, 2 index price
3681
- * @returns {object|undefined} [An order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
3686
+ * @returns {object|undefined} [An order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
3682
3687
  */
3683
3688
  await this.loadMarkets();
3684
3689
  const market = this.market(symbol);
@@ -3793,7 +3798,7 @@ class gate extends gate$1 {
3793
3798
  * @see https://www.gate.io/docs/developers/apiv4/en/#get-a-single-order-2
3794
3799
  * @see https://www.gate.io/docs/developers/apiv4/en/#create-a-batch-of-orders
3795
3800
  * @param {Array} orders list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params
3796
- * @returns {object} an [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
3801
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
3797
3802
  */
3798
3803
  await this.loadMarkets();
3799
3804
  const ordersRequests = [];
@@ -4086,7 +4091,7 @@ class gate extends gate$1 {
4086
4091
  * @param {float} amount how much of the currency you want to trade in units of the base currency
4087
4092
  * @param {float} [price] the price at which the order is to be fullfilled, in units of the base currency, ignored in market orders
4088
4093
  * @param {object} [params] extra parameters specific to the gate api endpoint
4089
- * @returns {object} an [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
4094
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
4090
4095
  */
4091
4096
  await this.loadMarkets();
4092
4097
  const market = this.market(symbol);
@@ -4442,7 +4447,7 @@ class gate extends gate$1 {
4442
4447
  * @param {string} [params.marginMode] 'cross' or 'isolated' - marginMode for margin trading if not provided this.options['defaultMarginMode'] is used
4443
4448
  * @param {string} [params.type] 'spot', 'swap', or 'future', if not provided this.options['defaultMarginMode'] is used
4444
4449
  * @param {string} [params.settle] 'btc' or 'usdt' - settle currency for perpetual swap and future - market settle currency is used if symbol !== undefined, default="usdt" for swap and "btc" for future
4445
- * @returns An [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
4450
+ * @returns An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
4446
4451
  */
4447
4452
  await this.loadMarkets();
4448
4453
  const stop = this.safeValue2(params, 'is_stop_order', 'stop', false);
@@ -4485,7 +4490,7 @@ class gate extends gate$1 {
4485
4490
  * @param {bool} [params.stop] true for fetching stop orders
4486
4491
  * @param {string} [params.type] spot, margin, swap or future, if not provided this.options['defaultType'] is used
4487
4492
  * @param {string} [params.marginMode] 'cross' or 'isolated' - marginMode for type='margin', if not provided this.options['defaultMarginMode'] is used
4488
- * @returns {Order[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
4493
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
4489
4494
  */
4490
4495
  return await this.fetchOrdersByStatus('open', symbol, since, limit, params);
4491
4496
  }
@@ -4508,7 +4513,7 @@ class gate extends gate$1 {
4508
4513
  * @param {bool} [params.stop] true for fetching stop orders
4509
4514
  * @param {string} [params.type] spot, swap or future, if not provided this.options['defaultType'] is used
4510
4515
  * @param {string} [params.marginMode] 'cross' or 'isolated' - marginMode for margin trading if not provided this.options['defaultMarginMode'] is used
4511
- * @returns {Order[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
4516
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
4512
4517
  */
4513
4518
  return await this.fetchOrdersByStatus('finished', symbol, since, limit, params);
4514
4519
  }
@@ -4717,7 +4722,7 @@ class gate extends gate$1 {
4717
4722
  * @param {string} symbol Unified market symbol
4718
4723
  * @param {object} [params] Parameters specified by the exchange api
4719
4724
  * @param {bool} [params.stop] True if the order to be cancelled is a trigger order
4720
- * @returns An [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
4725
+ * @returns An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
4721
4726
  */
4722
4727
  await this.loadMarkets();
4723
4728
  const market = (symbol === undefined) ? undefined : this.market(symbol);
@@ -4829,7 +4834,7 @@ class gate extends gate$1 {
4829
4834
  * @see https://www.gate.io/docs/developers/apiv4/en/#cancel-all-open-orders-matched-3
4830
4835
  * @param {string} symbol unified market symbol, only orders in the market of this symbol are cancelled when symbol is not undefined
4831
4836
  * @param {object} [params] extra parameters specific to the gate api endpoint
4832
- * @returns {object[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
4837
+ * @returns {object[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
4833
4838
  */
4834
4839
  await this.loadMarkets();
4835
4840
  const market = (symbol === undefined) ? undefined : this.market(symbol);
@@ -4888,7 +4893,7 @@ class gate extends gate$1 {
4888
4893
  * @param {string} toAccount the account to transfer currency to
4889
4894
  * @param {object} [params] extra parameters specific to the gate api endpoint
4890
4895
  * @param {string} [params.symbol] Unified market symbol *required for type == margin*
4891
- * @returns A [transfer structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#transfer-structure}
4896
+ * @returns A [transfer structure]{@link https://docs.ccxt.com/#/?id=transfer-structure}
4892
4897
  */
4893
4898
  await this.loadMarkets();
4894
4899
  const currency = this.currency(code);
@@ -4965,7 +4970,9 @@ class gate extends gate$1 {
4965
4970
  * @param {object} [params] extra parameters specific to the gate api endpoint
4966
4971
  * @returns {object} response from the exchange
4967
4972
  */
4968
- this.checkRequiredSymbol('setLeverage', symbol);
4973
+ if (symbol === undefined) {
4974
+ throw new errors.ArgumentsRequired(this.id + ' setLeverage() requires a symbol argument');
4975
+ }
4969
4976
  // WARNING: THIS WILL INCREASE LIQUIDATION PRICE FOR OPEN ISOLATED LONG POSITIONS
4970
4977
  // AND DECREASE LIQUIDATION PRICE FOR OPEN ISOLATED SHORT POSITIONS
4971
4978
  if ((leverage < 0) || (leverage > 100)) {
@@ -5142,7 +5149,7 @@ class gate extends gate$1 {
5142
5149
  * @see https://www.gate.io/docs/developers/apiv4/en/#get-specified-contract-position
5143
5150
  * @param {string} symbol unified market symbol of the market the position is held in
5144
5151
  * @param {object} [params] extra parameters specific to the gate api endpoint
5145
- * @returns {object} a [position structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#position-structure}
5152
+ * @returns {object} a [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
5146
5153
  */
5147
5154
  await this.loadMarkets();
5148
5155
  const market = this.market(symbol);
@@ -5226,7 +5233,7 @@ class gate extends gate$1 {
5226
5233
  * @param {object} [params] extra parameters specific to the gate api endpoint
5227
5234
  * @param {string} [params.settle] 'btc' or 'usdt' - settle currency for perpetual swap and future - default="usdt" for swap and "btc" for future
5228
5235
  * @param {string} [params.type] swap, future or option, if not provided this.options['defaultType'] is used
5229
- * @returns {object[]} a list of [position structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#position-structure}
5236
+ * @returns {object[]} a list of [position structure]{@link https://docs.ccxt.com/#/?id=position-structure}
5230
5237
  */
5231
5238
  await this.loadMarkets();
5232
5239
  let market = undefined;
@@ -5328,7 +5335,7 @@ class gate extends gate$1 {
5328
5335
  * @see https://www.gate.io/docs/developers/apiv4/en/#list-all-futures-contracts-2
5329
5336
  * @param {string[]|undefined} symbols list of unified market symbols
5330
5337
  * @param {object} [params] extra parameters specific to the gate api endpoint
5331
- * @returns {object} a dictionary of [leverage tiers structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#leverage-tiers-structure}, indexed by market symbols
5338
+ * @returns {object} a dictionary of [leverage tiers structures]{@link https://docs.ccxt.com/#/?id=leverage-tiers-structure}, indexed by market symbols
5332
5339
  */
5333
5340
  await this.loadMarkets();
5334
5341
  const [type, query] = this.handleMarketTypeAndParams('fetchLeverageTiers', undefined, params);
@@ -5570,7 +5577,7 @@ class gate extends gate$1 {
5570
5577
  * @param {object} [params] extra parameters specific to the gate api endpoint
5571
5578
  * @param {string} [params.mode] 'all' or 'partial' payment mode, extra parameter required for isolated margin
5572
5579
  * @param {string} [params.id] '34267567' loan id, extra parameter required for isolated margin
5573
- * @returns {object} a [margin loan structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#margin-loan-structure}
5580
+ * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/#/?id=margin-loan-structure}
5574
5581
  */
5575
5582
  const marginMode = this.safeString(params, 'marginMode'); // cross or isolated
5576
5583
  params = this.omit(params, 'marginMode');
@@ -5653,7 +5660,7 @@ class gate extends gate$1 {
5653
5660
  * @param {string} symbol unified market symbol, required for isolated margin
5654
5661
  * @param {object} [params] extra parameters specific to the gate api endpoint
5655
5662
  * @param {string} [params.rate] '0.0002' or '0.002' extra parameter required for isolated margin
5656
- * @returns {object} a [margin loan structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#margin-loan-structure}
5663
+ * @returns {object} a [margin loan structure]{@link https://docs.ccxt.com/#/?id=margin-loan-structure}
5657
5664
  */
5658
5665
  const marginMode = this.safeString(params, 'marginMode'); // cross or isolated
5659
5666
  params = this.omit(params, 'marginMode');
@@ -5907,7 +5914,7 @@ class gate extends gate$1 {
5907
5914
  * @param {string} symbol unified market symbol
5908
5915
  * @param {float} amount the amount of margin to remove
5909
5916
  * @param {object} [params] extra parameters specific to the exmo api endpoint
5910
- * @returns {object} a [margin structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#reduce-margin-structure}
5917
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/#/?id=reduce-margin-structure}
5911
5918
  */
5912
5919
  return await this.modifyMarginHelper(symbol, -amount, params);
5913
5920
  }
@@ -5921,7 +5928,7 @@ class gate extends gate$1 {
5921
5928
  * @param {string} symbol unified market symbol
5922
5929
  * @param {float} amount amount of margin to add
5923
5930
  * @param {object} [params] extra parameters specific to the exmo api endpoint
5924
- * @returns {object} a [margin structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#add-margin-structure}
5931
+ * @returns {object} a [margin structure]{@link https://docs.ccxt.com/#/?id=add-margin-structure}
5925
5932
  */
5926
5933
  return await this.modifyMarginHelper(symbol, amount, params);
5927
5934
  }
@@ -5936,7 +5943,7 @@ class gate extends gate$1 {
5936
5943
  * @param {int} [since] the time(ms) of the earliest record to retrieve as a unix timestamp
5937
5944
  * @param {int} [limit] default 30
5938
5945
  * @param {object} [params] exchange specific parameters
5939
- * @returns {object} an open interest structure{@link https://github.com/ccxt/ccxt/wiki/Manual#open-interest-structure}
5946
+ * @returns {object} an open interest structure{@link https://docs.ccxt.com/#/?id=open-interest-structure}
5940
5947
  */
5941
5948
  await this.loadMarkets();
5942
5949
  let paginate = false;
@@ -6022,9 +6029,11 @@ class gate extends gate$1 {
6022
6029
  * @param {int} [since] timestamp in ms
6023
6030
  * @param {int} [limit] number of records
6024
6031
  * @param {object} [params] exchange specific params
6025
- * @returns {object[]} a list of [settlement history objects]{@link https://github.com/ccxt/ccxt/wiki/Manual#settlement-history-structure}
6032
+ * @returns {object[]} a list of [settlement history objects]{@link https://docs.ccxt.com/#/?id=settlement-history-structure}
6026
6033
  */
6027
- this.checkRequiredSymbol('fetchSettlementHistory', symbol);
6034
+ if (symbol === undefined) {
6035
+ throw new errors.ArgumentsRequired(this.id + ' fetchSettlementHistory() requires a symbol argument');
6036
+ }
6028
6037
  await this.loadMarkets();
6029
6038
  const market = this.market(symbol);
6030
6039
  let type = undefined;
@@ -6072,7 +6081,9 @@ class gate extends gate$1 {
6072
6081
  * @param {object} [params] exchange specific params
6073
6082
  * @returns {object[]} a list of [settlement history objects]
6074
6083
  */
6075
- this.checkRequiredSymbol('fetchMySettlementHistory', symbol);
6084
+ if (symbol === undefined) {
6085
+ throw new errors.ArgumentsRequired(this.id + ' fetchMySettlementHistory() requires a symbol argument');
6086
+ }
6076
6087
  await this.loadMarkets();
6077
6088
  const market = this.market(symbol);
6078
6089
  let type = undefined;
@@ -6204,7 +6215,7 @@ class gate extends gate$1 {
6204
6215
  * @param {object} [params] extra parameters specific to the gate api endpoint
6205
6216
  * @param {int} [params.until] end time in ms
6206
6217
  * @param {boolean} [params.paginate] default false, when true will automatically paginate by calling this endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
6207
- * @returns {object} a [ledger structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ledger-structure}
6218
+ * @returns {object} a [ledger structure]{@link https://docs.ccxt.com/#/?id=ledger-structure}
6208
6219
  */
6209
6220
  await this.loadMarkets();
6210
6221
  let paginate = false;
@@ -6458,7 +6469,7 @@ class gate extends gate$1 {
6458
6469
  * @see https://www.gate.io/docs/developers/apiv4/en/#list-all-underlyings
6459
6470
  * @param {object} [params] exchange specific params
6460
6471
  * @param {string} [params.type] the contract market type, 'option', 'swap' or 'future', the default is 'option'
6461
- * @returns {object[]} a list of [underlying assets]{@link https://github.com/ccxt/ccxt/wiki/Manual#underlying-assets-structure}
6472
+ * @returns {object[]} a list of [underlying assets]{@link https://docs.ccxt.com/#/?id=underlying-assets-structure}
6462
6473
  */
6463
6474
  await this.loadMarkets();
6464
6475
  let marketType = undefined;
@@ -6500,7 +6511,7 @@ class gate extends gate$1 {
6500
6511
  * @param {int} [limit] the maximum number of liquidation structures to retrieve
6501
6512
  * @param {object} [params] exchange specific parameters for the gate api endpoint
6502
6513
  * @param {int} [params.until] timestamp in ms of the latest liquidation
6503
- * @returns {object} an array of [liquidation structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#liquidation-structure}
6514
+ * @returns {object} an array of [liquidation structures]{@link https://docs.ccxt.com/#/?id=liquidation-structure}
6504
6515
  */
6505
6516
  await this.loadMarkets();
6506
6517
  const market = this.market(symbol);
@@ -6545,9 +6556,11 @@ class gate extends gate$1 {
6545
6556
  * @param {int} [since] the earliest time in ms to fetch liquidations for
6546
6557
  * @param {int} [limit] the maximum number of liquidation structures to retrieve
6547
6558
  * @param {object} [params] exchange specific parameters for the gate api endpoint
6548
- * @returns {object} an array of [liquidation structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#liquidation-structure}
6559
+ * @returns {object} an array of [liquidation structures]{@link https://docs.ccxt.com/#/?id=liquidation-structure}
6549
6560
  */
6550
- this.checkRequiredSymbol('fetchMyLiquidations', symbol);
6561
+ if (symbol === undefined) {
6562
+ throw new errors.ArgumentsRequired(this.id + ' fetchMyLiquidations() requires a symbol argument');
6563
+ }
6551
6564
  await this.loadMarkets();
6552
6565
  const market = this.market(symbol);
6553
6566
  const request = {
@@ -6655,8 +6668,9 @@ class gate extends gate$1 {
6655
6668
  //
6656
6669
  const marketId = this.safeString(liquidation, 'contract');
6657
6670
  const timestamp = this.safeTimestamp(liquidation, 'time');
6658
- const contractsStringRaw = this.safeString2(liquidation, 'size', 'settle_size');
6659
- const contractsString = Precise["default"].stringAbs(contractsStringRaw);
6671
+ const size = this.safeString2(liquidation, 'size', 'settle_size');
6672
+ const left = this.safeString(liquidation, 'left', '0');
6673
+ const contractsString = Precise["default"].stringAbs(Precise["default"].stringSub(size, left));
6660
6674
  const contractSizeString = this.safeString(market, 'contractSize');
6661
6675
  const priceString = this.safeString2(liquidation, 'liq_price', 'fill_price');
6662
6676
  const baseValueString = Precise["default"].stringMul(contractsString, contractSizeString);
@@ -6684,7 +6698,7 @@ class gate extends gate$1 {
6684
6698
  * @see https://www.gate.io/docs/developers/apiv4/en/#list-tickers-of-options-contracts
6685
6699
  * @param {string} symbol unified symbol of the market to fetch greeks for
6686
6700
  * @param {object} [params] extra parameters specific to the gate api endpoint
6687
- * @returns {object} a [greeks structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#greeks-structure}
6701
+ * @returns {object} a [greeks structure]{@link https://docs.ccxt.com/#/?id=greeks-structure}
6688
6702
  */
6689
6703
  await this.loadMarkets();
6690
6704
  const market = this.market(symbol);
@@ -38,12 +38,11 @@ class gemini extends gemini$1 {
38
38
  'createReduceOnlyOrder': false,
39
39
  'fetchBalance': true,
40
40
  'fetchBidsAsks': false,
41
- 'fetchBorrowRate': false,
42
41
  'fetchBorrowRateHistories': false,
43
42
  'fetchBorrowRateHistory': false,
44
- 'fetchBorrowRates': false,
45
- 'fetchBorrowRatesPerSymbol': false,
46
43
  'fetchClosedOrders': false,
44
+ 'fetchCrossBorrowRate': false,
45
+ 'fetchCrossBorrowRates': false,
47
46
  'fetchCurrencies': true,
48
47
  'fetchDepositAddress': true,
49
48
  'fetchDepositAddressesByNetwork': true,
@@ -53,6 +52,8 @@ class gemini extends gemini$1 {
53
52
  'fetchFundingRateHistory': false,
54
53
  'fetchFundingRates': false,
55
54
  'fetchIndexOHLCV': false,
55
+ 'fetchIsolatedBorrowRate': false,
56
+ 'fetchIsolatedBorrowRates': false,
56
57
  'fetchLeverage': false,
57
58
  'fetchLeverageTiers': false,
58
59
  'fetchMarginMode': false,
@@ -654,7 +655,7 @@ class gemini extends gemini$1 {
654
655
  * @param {string} symbol unified symbol of the market to fetch the order book for
655
656
  * @param {int} [limit] the maximum amount of order book entries to return
656
657
  * @param {object} [params] extra parameters specific to the gemini api endpoint
657
- * @returns {object} A dictionary of [order book structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-book-structure} indexed by market symbols
658
+ * @returns {object} A dictionary of [order book structures]{@link https://docs.ccxt.com/#/?id=order-book-structure} indexed by market symbols
658
659
  */
659
660
  await this.loadMarkets();
660
661
  const market = this.market(symbol);
@@ -732,7 +733,7 @@ class gemini extends gemini$1 {
732
733
  * @param {string} symbol unified symbol of the market to fetch the ticker for
733
734
  * @param {object} [params] extra parameters specific to the gemini api endpoint
734
735
  * @param {object} [params.fetchTickerMethod] 'fetchTickerV2', 'fetchTickerV1' or 'fetchTickerV1AndV2' - 'fetchTickerV1' for original ccxt.gemini.fetchTicker - 'fetchTickerV1AndV2' for 2 api calls to get the result of both fetchTicker methods - default = 'fetchTickerV1'
735
- * @returns {object} a [ticker structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
736
+ * @returns {object} a [ticker structure]{@link https://docs.ccxt.com/#/?id=ticker-structure}
736
737
  */
737
738
  const method = this.safeValue(this.options, 'fetchTickerMethod', 'fetchTickerV1');
738
739
  if (method === 'fetchTickerV1') {
@@ -844,7 +845,7 @@ class gemini extends gemini$1 {
844
845
  * @description fetches price tickers for multiple markets, statistical calculations with the information calculated over the past 24 hours each market
845
846
  * @param {string[]|undefined} symbols unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
846
847
  * @param {object} [params] extra parameters specific to the gemini api endpoint
847
- * @returns {object} a dictionary of [ticker structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure}
848
+ * @returns {object} a dictionary of [ticker structures]{@link https://docs.ccxt.com/#/?id=ticker-structure}
848
849
  */
849
850
  await this.loadMarkets();
850
851
  const response = await this.publicGetV1Pricefeed(params);
@@ -937,7 +938,7 @@ class gemini extends gemini$1 {
937
938
  * @param {int} [since] timestamp in ms of the earliest trade to fetch
938
939
  * @param {int} [limit] the maximum amount of trades to fetch
939
940
  * @param {object} [params] extra parameters specific to the gemini api endpoint
940
- * @returns {Trade[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#public-trades}
941
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=public-trades}
941
942
  */
942
943
  await this.loadMarkets();
943
944
  const market = this.market(symbol);
@@ -985,7 +986,7 @@ class gemini extends gemini$1 {
985
986
  * @name gemini#fetchTradingFees
986
987
  * @description fetch the trading fees for multiple markets
987
988
  * @param {object} [params] extra parameters specific to the gemini api endpoint
988
- * @returns {object} a dictionary of [fee structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#fee-structure} indexed by market symbols
989
+ * @returns {object} a dictionary of [fee structures]{@link https://docs.ccxt.com/#/?id=fee-structure} indexed by market symbols
989
990
  */
990
991
  await this.loadMarkets();
991
992
  const response = await this.privatePostV1Notionalvolume(params);
@@ -1043,7 +1044,7 @@ class gemini extends gemini$1 {
1043
1044
  * @name gemini#fetchBalance
1044
1045
  * @description query for balance and get the amount of funds available for trading or funds locked in orders
1045
1046
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1046
- * @returns {object} a [balance structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#balance-structure}
1047
+ * @returns {object} a [balance structure]{@link https://docs.ccxt.com/#/?id=balance-structure}
1047
1048
  */
1048
1049
  await this.loadMarkets();
1049
1050
  const response = await this.privatePostV1Balances(params);
@@ -1225,7 +1226,7 @@ class gemini extends gemini$1 {
1225
1226
  * @description fetches information on an order made by the user
1226
1227
  * @param {string} symbol unified symbol of the market the order was made in
1227
1228
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1228
- * @returns {object} An [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1229
+ * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1229
1230
  */
1230
1231
  await this.loadMarkets();
1231
1232
  const request = {
@@ -1266,7 +1267,7 @@ class gemini extends gemini$1 {
1266
1267
  * @param {int} [since] the earliest time in ms to fetch open orders for
1267
1268
  * @param {int} [limit] the maximum number of open orders structures to retrieve
1268
1269
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1269
- * @returns {Order[]} a list of [order structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1270
+ * @returns {Order[]} a list of [order structures]{@link https://docs.ccxt.com/#/?id=order-structure}
1270
1271
  */
1271
1272
  await this.loadMarkets();
1272
1273
  const response = await this.privatePostV1Orders(params);
@@ -1313,7 +1314,7 @@ class gemini extends gemini$1 {
1313
1314
  * @param {float} amount how much of currency you want to trade in units of base currency
1314
1315
  * @param {float} [price] the price at which the order is to be fullfilled, in units of the quote currency, ignored in market orders
1315
1316
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1316
- * @returns {object} an [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1317
+ * @returns {object} an [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1317
1318
  */
1318
1319
  await this.loadMarkets();
1319
1320
  if (type !== 'limit') {
@@ -1407,7 +1408,7 @@ class gemini extends gemini$1 {
1407
1408
  * @param {string} id order id
1408
1409
  * @param {string} symbol unified symbol of the market the order was made in
1409
1410
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1410
- * @returns {object} An [order structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#order-structure}
1411
+ * @returns {object} An [order structure]{@link https://docs.ccxt.com/#/?id=order-structure}
1411
1412
  */
1412
1413
  await this.loadMarkets();
1413
1414
  const request = {
@@ -1449,9 +1450,11 @@ class gemini extends gemini$1 {
1449
1450
  * @param {int} [since] the earliest time in ms to fetch trades for
1450
1451
  * @param {int} [limit] the maximum number of trades structures to retrieve
1451
1452
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1452
- * @returns {Trade[]} a list of [trade structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#trade-structure}
1453
+ * @returns {Trade[]} a list of [trade structures]{@link https://docs.ccxt.com/#/?id=trade-structure}
1453
1454
  */
1454
- this.checkRequiredSymbol('fetchMyTrades', symbol);
1455
+ if (symbol === undefined) {
1456
+ throw new errors.ArgumentsRequired(this.id + ' fetchMyTrades() requires a symbol argument');
1457
+ }
1455
1458
  await this.loadMarkets();
1456
1459
  const market = this.market(symbol);
1457
1460
  const request = {
@@ -1476,7 +1479,7 @@ class gemini extends gemini$1 {
1476
1479
  * @param {string} address the address to withdraw to
1477
1480
  * @param {string} tag
1478
1481
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1479
- * @returns {object} a [transaction structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
1482
+ * @returns {object} a [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
1480
1483
  */
1481
1484
  [tag, params] = this.handleWithdrawTagAndParams(tag, params);
1482
1485
  this.checkAddress(address);
@@ -1533,7 +1536,7 @@ class gemini extends gemini$1 {
1533
1536
  * @param {int} [since] timestamp in ms of the earliest deposit/withdrawal, default is undefined
1534
1537
  * @param {int} [limit] max number of deposit/withdrawals to return, default is undefined
1535
1538
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1536
- * @returns {object} a list of [transaction structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#transaction-structure}
1539
+ * @returns {object} a list of [transaction structure]{@link https://docs.ccxt.com/#/?id=transaction-structure}
1537
1540
  */
1538
1541
  await this.loadMarkets();
1539
1542
  const request = {};
@@ -1637,7 +1640,7 @@ class gemini extends gemini$1 {
1637
1640
  * @param {string} code unified currency code
1638
1641
  * @param {object} [params] extra parameters specific to the endpoint
1639
1642
  * @param {string} [params.network] *required* The chain of currency
1640
- * @returns {object} an [address structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#address-structure}
1643
+ * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
1641
1644
  */
1642
1645
  await this.loadMarkets();
1643
1646
  const groupedByNetwork = await this.fetchDepositAddressesByNetwork(code, params);
@@ -1655,7 +1658,7 @@ class gemini extends gemini$1 {
1655
1658
  * @param {string} code unified currency code of the currency for the deposit address
1656
1659
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1657
1660
  * @param {string} [params.network] *required* The chain of currency
1658
- * @returns {object} a dictionary of [address structures]{@link https://github.com/ccxt/ccxt/wiki/Manual#address-structure} indexed by the network
1661
+ * @returns {object} a dictionary of [address structures]{@link https://docs.ccxt.com/#/?id=address-structure} indexed by the network
1659
1662
  */
1660
1663
  await this.loadMarkets();
1661
1664
  const currency = this.currency(code);
@@ -1742,7 +1745,7 @@ class gemini extends gemini$1 {
1742
1745
  * @description create a currency deposit address
1743
1746
  * @param {string} code unified currency code of the currency for the deposit address
1744
1747
  * @param {object} [params] extra parameters specific to the gemini api endpoint
1745
- * @returns {object} an [address structure]{@link https://github.com/ccxt/ccxt/wiki/Manual#address-structure}
1748
+ * @returns {object} an [address structure]{@link https://docs.ccxt.com/#/?id=address-structure}
1746
1749
  */
1747
1750
  await this.loadMarkets();
1748
1751
  const currency = this.currency(code);