ccxt 4.2.84 → 4.2.85

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 (164) hide show
  1. package/README.md +3 -3
  2. package/build.sh +1 -1
  3. package/dist/ccxt.browser.js +867 -904
  4. package/dist/ccxt.browser.min.js +4 -4
  5. package/dist/cjs/ccxt.js +1 -1
  6. package/dist/cjs/src/ace.js +5 -5
  7. package/dist/cjs/src/ascendex.js +8 -8
  8. package/dist/cjs/src/base/Exchange.js +76 -14
  9. package/dist/cjs/src/bigone.js +12 -12
  10. package/dist/cjs/src/binance.js +23 -35
  11. package/dist/cjs/src/bingx.js +13 -9
  12. package/dist/cjs/src/bit2c.js +1 -1
  13. package/dist/cjs/src/bitbank.js +8 -8
  14. package/dist/cjs/src/bitbns.js +5 -5
  15. package/dist/cjs/src/bitfinex.js +1 -1
  16. package/dist/cjs/src/bitfinex2.js +1 -1
  17. package/dist/cjs/src/bitget.js +30 -24
  18. package/dist/cjs/src/bithumb.js +5 -5
  19. package/dist/cjs/src/bitmart.js +16 -16
  20. package/dist/cjs/src/bitopro.js +1 -1
  21. package/dist/cjs/src/bitrue.js +4 -4
  22. package/dist/cjs/src/bitso.js +5 -5
  23. package/dist/cjs/src/bitstamp.js +1 -1
  24. package/dist/cjs/src/bitteam.js +8 -8
  25. package/dist/cjs/src/bl3p.js +1 -1
  26. package/dist/cjs/src/btcturk.js +6 -6
  27. package/dist/cjs/src/bybit.js +31 -95
  28. package/dist/cjs/src/coincheck.js +4 -4
  29. package/dist/cjs/src/coinex.js +11 -11
  30. package/dist/cjs/src/coinlist.js +7 -7
  31. package/dist/cjs/src/coinmate.js +4 -4
  32. package/dist/cjs/src/coinmetro.js +3 -3
  33. package/dist/cjs/src/coinone.js +5 -5
  34. package/dist/cjs/src/coinspot.js +2 -2
  35. package/dist/cjs/src/cryptocom.js +17 -17
  36. package/dist/cjs/src/currencycom.js +1 -1
  37. package/dist/cjs/src/delta.js +0 -8
  38. package/dist/cjs/src/deribit.js +16 -92
  39. package/dist/cjs/src/digifinex.js +8 -8
  40. package/dist/cjs/src/exmo.js +8 -8
  41. package/dist/cjs/src/gate.js +0 -8
  42. package/dist/cjs/src/hitbtc.js +5 -4
  43. package/dist/cjs/src/hollaex.js +7 -7
  44. package/dist/cjs/src/htx.js +7 -7
  45. package/dist/cjs/src/huobijp.js +3 -3
  46. package/dist/cjs/src/idex.js +2 -2
  47. package/dist/cjs/src/independentreserve.js +2 -2
  48. package/dist/cjs/src/indodax.js +2 -2
  49. package/dist/cjs/src/kraken.js +8 -8
  50. package/dist/cjs/src/krakenfutures.js +6 -6
  51. package/dist/cjs/src/kucoin.js +5 -1
  52. package/dist/cjs/src/kucoinfutures.js +8 -8
  53. package/dist/cjs/src/kuna.js +16 -16
  54. package/dist/cjs/src/latoken.js +2 -2
  55. package/dist/cjs/src/lbank.js +10 -10
  56. package/dist/cjs/src/luno.js +4 -4
  57. package/dist/cjs/src/mercado.js +5 -5
  58. package/dist/cjs/src/mexc.js +6 -6
  59. package/dist/cjs/src/ndax.js +1 -1
  60. package/dist/cjs/src/novadax.js +9 -9
  61. package/dist/cjs/src/oceanex.js +7 -7
  62. package/dist/cjs/src/okcoin.js +13 -13
  63. package/dist/cjs/src/okx.js +23 -31
  64. package/dist/cjs/src/onetrading.js +4 -4
  65. package/dist/cjs/src/p2b.js +7 -7
  66. package/dist/cjs/src/phemex.js +12 -12
  67. package/dist/cjs/src/poloniexfutures.js +5 -5
  68. package/dist/cjs/src/pro/binance.js +167 -121
  69. package/dist/cjs/src/pro/kucoin.js +6 -7
  70. package/dist/cjs/src/pro/okx.js +19 -2
  71. package/dist/cjs/src/probit.js +11 -11
  72. package/dist/cjs/src/timex.js +7 -7
  73. package/dist/cjs/src/tokocrypto.js +9 -9
  74. package/dist/cjs/src/wavesexchange.js +3 -3
  75. package/dist/cjs/src/whitebit.js +5 -5
  76. package/dist/cjs/src/woo.js +1 -1
  77. package/dist/cjs/src/zaif.js +1 -1
  78. package/dist/cjs/src/zonda.js +7 -7
  79. package/examples/js/cli.js +0 -1
  80. package/examples/ts/cli.ts +0 -1
  81. package/js/ccxt.d.ts +1 -1
  82. package/js/ccxt.js +1 -1
  83. package/js/src/ace.js +5 -5
  84. package/js/src/ascendex.js +8 -8
  85. package/js/src/base/Exchange.d.ts +4 -3
  86. package/js/src/base/Exchange.js +76 -14
  87. package/js/src/bigone.js +12 -12
  88. package/js/src/binance.d.ts +0 -1
  89. package/js/src/binance.js +23 -35
  90. package/js/src/bingx.js +13 -9
  91. package/js/src/bit2c.js +1 -1
  92. package/js/src/bitbank.js +8 -8
  93. package/js/src/bitbns.js +5 -5
  94. package/js/src/bitfinex.js +1 -1
  95. package/js/src/bitfinex2.js +1 -1
  96. package/js/src/bitget.js +30 -24
  97. package/js/src/bithumb.js +5 -5
  98. package/js/src/bitmart.js +16 -16
  99. package/js/src/bitopro.js +1 -1
  100. package/js/src/bitrue.js +4 -4
  101. package/js/src/bitso.js +5 -5
  102. package/js/src/bitstamp.js +1 -1
  103. package/js/src/bitteam.js +8 -8
  104. package/js/src/bl3p.js +1 -1
  105. package/js/src/btcturk.js +6 -6
  106. package/js/src/bybit.d.ts +0 -3
  107. package/js/src/bybit.js +31 -95
  108. package/js/src/coincheck.js +4 -4
  109. package/js/src/coinex.js +11 -11
  110. package/js/src/coinlist.js +7 -7
  111. package/js/src/coinmate.js +4 -4
  112. package/js/src/coinmetro.js +3 -3
  113. package/js/src/coinone.js +5 -5
  114. package/js/src/coinspot.js +2 -2
  115. package/js/src/cryptocom.js +17 -17
  116. package/js/src/currencycom.js +1 -1
  117. package/js/src/delta.d.ts +0 -1
  118. package/js/src/delta.js +0 -8
  119. package/js/src/deribit.d.ts +0 -3
  120. package/js/src/deribit.js +16 -92
  121. package/js/src/digifinex.js +8 -8
  122. package/js/src/exmo.js +8 -8
  123. package/js/src/gate.d.ts +0 -1
  124. package/js/src/gate.js +0 -8
  125. package/js/src/hitbtc.js +5 -4
  126. package/js/src/hollaex.js +7 -7
  127. package/js/src/htx.js +7 -7
  128. package/js/src/huobijp.js +3 -3
  129. package/js/src/idex.js +2 -2
  130. package/js/src/independentreserve.js +2 -2
  131. package/js/src/indodax.js +2 -2
  132. package/js/src/kraken.js +8 -8
  133. package/js/src/krakenfutures.js +6 -6
  134. package/js/src/kucoin.js +5 -1
  135. package/js/src/kucoinfutures.js +8 -8
  136. package/js/src/kuna.js +16 -16
  137. package/js/src/latoken.js +2 -2
  138. package/js/src/lbank.js +10 -10
  139. package/js/src/luno.js +4 -4
  140. package/js/src/mercado.js +5 -5
  141. package/js/src/mexc.js +6 -6
  142. package/js/src/ndax.js +1 -1
  143. package/js/src/novadax.js +9 -9
  144. package/js/src/oceanex.js +7 -7
  145. package/js/src/okcoin.js +13 -13
  146. package/js/src/okx.d.ts +0 -1
  147. package/js/src/okx.js +23 -31
  148. package/js/src/onetrading.js +4 -4
  149. package/js/src/p2b.js +7 -7
  150. package/js/src/phemex.js +12 -12
  151. package/js/src/poloniexfutures.js +5 -5
  152. package/js/src/pro/binance.d.ts +5 -1
  153. package/js/src/pro/binance.js +168 -122
  154. package/js/src/pro/kucoin.js +6 -7
  155. package/js/src/pro/okx.js +19 -2
  156. package/js/src/probit.js +11 -11
  157. package/js/src/timex.js +7 -7
  158. package/js/src/tokocrypto.js +9 -9
  159. package/js/src/wavesexchange.js +3 -3
  160. package/js/src/whitebit.js +5 -5
  161. package/js/src/woo.js +1 -1
  162. package/js/src/zaif.js +1 -1
  163. package/js/src/zonda.js +7 -7
  164. package/package.json +1 -1
@@ -514,7 +514,7 @@ class mercado extends mercado$1 {
514
514
  // }
515
515
  //
516
516
  const responseData = this.safeValue(response, 'response_data', {});
517
- const order = this.safeValue(responseData, 'order', {});
517
+ const order = this.safeDict(responseData, 'order', {});
518
518
  return this.parseOrder(order, market);
519
519
  }
520
520
  parseOrderStatus(status) {
@@ -617,7 +617,7 @@ class mercado extends mercado$1 {
617
617
  };
618
618
  const response = await this.privatePostGetOrder(this.extend(request, params));
619
619
  const responseData = this.safeValue(response, 'response_data', {});
620
- const order = this.safeValue(responseData, 'order');
620
+ const order = this.safeDict(responseData, 'order');
621
621
  return this.parseOrder(order, market);
622
622
  }
623
623
  async withdraw(code, amount, address, tag = undefined, params = {}) {
@@ -684,7 +684,7 @@ class mercado extends mercado$1 {
684
684
  // }
685
685
  //
686
686
  const responseData = this.safeValue(response, 'response_data', {});
687
- const withdrawal = this.safeValue(responseData, 'withdrawal');
687
+ const withdrawal = this.safeDict(responseData, 'withdrawal');
688
688
  return this.parseTransaction(withdrawal, currency);
689
689
  }
690
690
  parseTransaction(transaction, currency = undefined) {
@@ -789,7 +789,7 @@ class mercado extends mercado$1 {
789
789
  };
790
790
  const response = await this.privatePostListOrders(this.extend(request, params));
791
791
  const responseData = this.safeValue(response, 'response_data', {});
792
- const orders = this.safeValue(responseData, 'orders', []);
792
+ const orders = this.safeList(responseData, 'orders', []);
793
793
  return this.parseOrders(orders, market, since, limit);
794
794
  }
795
795
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -814,7 +814,7 @@ class mercado extends mercado$1 {
814
814
  };
815
815
  const response = await this.privatePostListOrders(this.extend(request, params));
816
816
  const responseData = this.safeValue(response, 'response_data', {});
817
- const orders = this.safeValue(responseData, 'orders', []);
817
+ const orders = this.safeList(responseData, 'orders', []);
818
818
  return this.parseOrders(orders, market, since, limit);
819
819
  }
820
820
  async fetchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2831,7 +2831,7 @@ class mexc extends mexc$1 {
2831
2831
  // ]
2832
2832
  // }
2833
2833
  //
2834
- const data = this.safeValue(response, 'data');
2834
+ const data = this.safeList(response, 'data');
2835
2835
  return this.parseOrders(data, market);
2836
2836
  }
2837
2837
  }
@@ -3115,7 +3115,7 @@ class mexc extends mexc$1 {
3115
3115
  // ]
3116
3116
  // }
3117
3117
  //
3118
- const data = this.safeValue(response, 'data');
3118
+ const data = this.safeList(response, 'data');
3119
3119
  return this.parseOrders(data, market);
3120
3120
  }
3121
3121
  }
@@ -3209,7 +3209,7 @@ class mexc extends mexc$1 {
3209
3209
  // "code": "0"
3210
3210
  // }
3211
3211
  //
3212
- const data = this.safeValue(response, 'data', []);
3212
+ const data = this.safeList(response, 'data', []);
3213
3213
  return this.parseOrders(data, market);
3214
3214
  }
3215
3215
  }
@@ -4352,7 +4352,7 @@ class mexc extends mexc$1 {
4352
4352
  // ]
4353
4353
  // }
4354
4354
  //
4355
- const data = this.safeValue(response, 'data');
4355
+ const data = this.safeList(response, 'data');
4356
4356
  return this.parseLeverageTiers(data, symbols, 'symbol');
4357
4357
  }
4358
4358
  parseMarketLeverageTiers(info, market = undefined) {
@@ -4810,7 +4810,7 @@ class mexc extends mexc$1 {
4810
4810
  // ]
4811
4811
  // }
4812
4812
  //
4813
- const data = this.safeValue(response, 'data', []);
4813
+ const data = this.safeList(response, 'data', []);
4814
4814
  return this.parsePositions(data, symbols);
4815
4815
  }
4816
4816
  parsePosition(position, market = undefined) {
@@ -4901,7 +4901,7 @@ class mexc extends mexc$1 {
4901
4901
  // }
4902
4902
  // }
4903
4903
  //
4904
- const data = this.safeValue(response, 'data', {});
4904
+ const data = this.safeDict(response, 'data', {});
4905
4905
  return this.parseTransfer(data);
4906
4906
  }
4907
4907
  else if (marketType === 'swap') {
@@ -1939,7 +1939,7 @@ class ndax extends ndax$1 {
1939
1939
  // ]
1940
1940
  //
1941
1941
  const grouped = this.groupBy(response, 'ChangeReason');
1942
- const trades = this.safeValue(grouped, 'Trade', []);
1942
+ const trades = this.safeList(grouped, 'Trade', []);
1943
1943
  return this.parseTrades(trades, market, since, limit);
1944
1944
  }
1945
1945
  async fetchDepositAddress(code, params = {}) {
@@ -396,7 +396,7 @@ class novadax extends novadax$1 {
396
396
  // "message":"Success"
397
397
  // }
398
398
  //
399
- const data = this.safeValue(response, 'data', {});
399
+ const data = this.safeDict(response, 'data', {});
400
400
  return this.parseTicker(data, market);
401
401
  }
402
402
  async fetchTickers(symbols = undefined, params = {}) {
@@ -594,7 +594,7 @@ class novadax extends novadax$1 {
594
594
  // "message":"Success"
595
595
  // }
596
596
  //
597
- const data = this.safeValue(response, 'data', []);
597
+ const data = this.safeList(response, 'data', []);
598
598
  return this.parseTrades(data, market, since, limit);
599
599
  }
600
600
  async fetchOHLCV(symbol, timeframe = '1m', since = undefined, limit = undefined, params = {}) {
@@ -650,7 +650,7 @@ class novadax extends novadax$1 {
650
650
  // "message": "Success"
651
651
  // }
652
652
  //
653
- const data = this.safeValue(response, 'data', []);
653
+ const data = this.safeList(response, 'data', []);
654
654
  return this.parseOHLCVs(data, market, timeframe, since, limit);
655
655
  }
656
656
  parseOHLCV(ohlcv, market = undefined) {
@@ -829,7 +829,7 @@ class novadax extends novadax$1 {
829
829
  // "message": "Success"
830
830
  // }
831
831
  //
832
- const data = this.safeValue(response, 'data', {});
832
+ const data = this.safeDict(response, 'data', {});
833
833
  return this.parseOrder(data, market);
834
834
  }
835
835
  async cancelOrder(id, symbol = undefined, params = {}) {
@@ -857,7 +857,7 @@ class novadax extends novadax$1 {
857
857
  // "message": "Success"
858
858
  // }
859
859
  //
860
- const data = this.safeValue(response, 'data', {});
860
+ const data = this.safeDict(response, 'data', {});
861
861
  return this.parseOrder(data);
862
862
  }
863
863
  async fetchOrder(id, symbol = undefined, params = {}) {
@@ -896,7 +896,7 @@ class novadax extends novadax$1 {
896
896
  // "message": "Success"
897
897
  // }
898
898
  //
899
- const data = this.safeValue(response, 'data', {});
899
+ const data = this.safeDict(response, 'data', {});
900
900
  return this.parseOrder(data);
901
901
  }
902
902
  async fetchOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -956,7 +956,7 @@ class novadax extends novadax$1 {
956
956
  // "message": "Success"
957
957
  // }
958
958
  //
959
- const data = this.safeValue(response, 'data', []);
959
+ const data = this.safeList(response, 'data', []);
960
960
  return this.parseOrders(data, market, since, limit);
961
961
  }
962
962
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1357,7 +1357,7 @@ class novadax extends novadax$1 {
1357
1357
  // "message": "Success"
1358
1358
  // }
1359
1359
  //
1360
- const data = this.safeValue(response, 'data', []);
1360
+ const data = this.safeList(response, 'data', []);
1361
1361
  return this.parseTransactions(data, currency, since, limit);
1362
1362
  }
1363
1363
  parseTransactionStatus(status) {
@@ -1502,7 +1502,7 @@ class novadax extends novadax$1 {
1502
1502
  // "message": "Success"
1503
1503
  // }
1504
1504
  //
1505
- const data = this.safeValue(response, 'data', []);
1505
+ const data = this.safeList(response, 'data', []);
1506
1506
  return this.parseTrades(data, market, since, limit);
1507
1507
  }
1508
1508
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
@@ -268,7 +268,7 @@ class oceanex extends oceanex$1 {
268
268
  // }
269
269
  // }
270
270
  //
271
- const data = this.safeValue(response, 'data', {});
271
+ const data = this.safeDict(response, 'data', {});
272
272
  return this.parseTicker(data, market);
273
273
  }
274
274
  async fetchTickers(symbols = undefined, params = {}) {
@@ -496,7 +496,7 @@ class oceanex extends oceanex$1 {
496
496
  // ]
497
497
  // }
498
498
  //
499
- const data = this.safeValue(response, 'data');
499
+ const data = this.safeList(response, 'data');
500
500
  return this.parseTrades(data, market, since, limit);
501
501
  }
502
502
  parseTrade(trade, market = undefined) {
@@ -646,7 +646,7 @@ class oceanex extends oceanex$1 {
646
646
  request['price'] = this.priceToPrecision(symbol, price);
647
647
  }
648
648
  const response = await this.privatePostOrders(this.extend(request, params));
649
- const data = this.safeValue(response, 'data');
649
+ const data = this.safeDict(response, 'data');
650
650
  return this.parseOrder(data, market);
651
651
  }
652
652
  async fetchOrder(id, symbol = undefined, params = {}) {
@@ -797,7 +797,7 @@ class oceanex extends oceanex$1 {
797
797
  request['limit'] = limit;
798
798
  }
799
799
  const response = await this.publicPostK(this.extend(request, params));
800
- const ohlcvs = this.safeValue(response, 'data', []);
800
+ const ohlcvs = this.safeList(response, 'data', []);
801
801
  return this.parseOHLCVs(ohlcvs, market, timeframe, since, limit);
802
802
  }
803
803
  parseOrder(order, market = undefined) {
@@ -876,7 +876,7 @@ class oceanex extends oceanex$1 {
876
876
  */
877
877
  await this.loadMarkets();
878
878
  const response = await this.privatePostOrderDelete(this.extend({ 'id': id }, params));
879
- const data = this.safeValue(response, 'data');
879
+ const data = this.safeDict(response, 'data');
880
880
  return this.parseOrder(data);
881
881
  }
882
882
  async cancelOrders(ids, symbol = undefined, params = {}) {
@@ -892,7 +892,7 @@ class oceanex extends oceanex$1 {
892
892
  */
893
893
  await this.loadMarkets();
894
894
  const response = await this.privatePostOrderDeleteMulti(this.extend({ 'ids': ids }, params));
895
- const data = this.safeValue(response, 'data');
895
+ const data = this.safeList(response, 'data');
896
896
  return this.parseOrders(data);
897
897
  }
898
898
  async cancelAllOrders(symbol = undefined, params = {}) {
@@ -907,7 +907,7 @@ class oceanex extends oceanex$1 {
907
907
  */
908
908
  await this.loadMarkets();
909
909
  const response = await this.privatePostOrdersClear(params);
910
- const data = this.safeValue(response, 'data');
910
+ const data = this.safeList(response, 'data');
911
911
  return this.parseOrders(data);
912
912
  }
913
913
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
@@ -972,7 +972,7 @@ class okcoin extends okcoin$1 {
972
972
  'instType': 'SPOT',
973
973
  };
974
974
  const response = await this.publicGetMarketTickers(this.extend(request, params));
975
- const data = this.safeValue(response, 'data', []);
975
+ const data = this.safeList(response, 'data', []);
976
976
  return this.parseTickers(data, symbols, params);
977
977
  }
978
978
  parseTrade(trade, market = undefined) {
@@ -1081,7 +1081,7 @@ class okcoin extends okcoin$1 {
1081
1081
  else {
1082
1082
  response = await this.publicGetMarketHistoryTrades(this.extend(request, params));
1083
1083
  }
1084
- const data = this.safeValue(response, 'data', []);
1084
+ const data = this.safeList(response, 'data', []);
1085
1085
  return this.parseTrades(data, market, since, limit);
1086
1086
  }
1087
1087
  parseOHLCV(ohlcv, market = undefined) {
@@ -1144,7 +1144,7 @@ class okcoin extends okcoin$1 {
1144
1144
  else {
1145
1145
  response = await this.publicGetMarketHistoryCandles(this.extend(request, params));
1146
1146
  }
1147
- const data = this.safeValue(response, 'data', []);
1147
+ const data = this.safeList(response, 'data', []);
1148
1148
  return this.parseOHLCVs(data, market, timeframe, since, limit);
1149
1149
  }
1150
1150
  parseAccountBalance(response) {
@@ -1665,7 +1665,7 @@ class okcoin extends okcoin$1 {
1665
1665
  const response = await this.privatePostTradeCancelOrder(this.extend(request, query));
1666
1666
  // {"code":"0","data":[{"clOrdId":"","ordId":"317251910906576896","sCode":"0","sMsg":""}],"msg":""}
1667
1667
  const data = this.safeValue(response, 'data', []);
1668
- const order = this.safeValue(data, 0);
1668
+ const order = this.safeDict(data, 0);
1669
1669
  return this.parseOrder(order, market);
1670
1670
  }
1671
1671
  parseIds(ids) {
@@ -1766,7 +1766,7 @@ class okcoin extends okcoin$1 {
1766
1766
  // }
1767
1767
  //
1768
1768
  //
1769
- const ordersData = this.safeValue(response, 'data', []);
1769
+ const ordersData = this.safeList(response, 'data', []);
1770
1770
  return this.parseOrders(ordersData, market, undefined, undefined, params);
1771
1771
  }
1772
1772
  parseOrderStatus(status) {
@@ -2026,7 +2026,7 @@ class okcoin extends okcoin$1 {
2026
2026
  response = await this.privateGetTradeOrder(this.extend(request, query));
2027
2027
  }
2028
2028
  const data = this.safeValue(response, 'data', []);
2029
- const order = this.safeValue(data, 0);
2029
+ const order = this.safeDict(data, 0);
2030
2030
  return this.parseOrder(order);
2031
2031
  }
2032
2032
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2074,7 +2074,7 @@ class okcoin extends okcoin$1 {
2074
2074
  else {
2075
2075
  response = await this.privateGetTradeOrdersPending(this.extend(request, params));
2076
2076
  }
2077
- const data = this.safeValue(response, 'data', []);
2077
+ const data = this.safeList(response, 'data', []);
2078
2078
  return this.parseOrders(data, market, since, limit);
2079
2079
  }
2080
2080
  async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2163,7 +2163,7 @@ class okcoin extends okcoin$1 {
2163
2163
  // "msg":""
2164
2164
  // }
2165
2165
  //
2166
- const data = this.safeValue(response, 'data', []);
2166
+ const data = this.safeList(response, 'data', []);
2167
2167
  return this.parseOrders(data, market, since, limit);
2168
2168
  }
2169
2169
  parseDepositAddress(depositAddress, currency = undefined) {
@@ -2379,7 +2379,7 @@ class okcoin extends okcoin$1 {
2379
2379
  // }
2380
2380
  //
2381
2381
  const data = this.safeValue(response, 'data', []);
2382
- const rawTransfer = this.safeValue(data, 0, {});
2382
+ const rawTransfer = this.safeDict(data, 0, {});
2383
2383
  return this.parseTransfer(rawTransfer, currency);
2384
2384
  }
2385
2385
  parseTransfer(transfer, currency = undefined) {
@@ -2522,7 +2522,7 @@ class okcoin extends okcoin$1 {
2522
2522
  // }
2523
2523
  //
2524
2524
  const data = this.safeValue(response, 'data', []);
2525
- const transaction = this.safeValue(data, 0);
2525
+ const transaction = this.safeDict(data, 0);
2526
2526
  return this.parseTransaction(transaction, currency);
2527
2527
  }
2528
2528
  async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2596,7 +2596,7 @@ class okcoin extends okcoin$1 {
2596
2596
  // ]
2597
2597
  // }
2598
2598
  //
2599
- const data = this.safeValue(response, 'data', []);
2599
+ const data = this.safeList(response, 'data', []);
2600
2600
  return this.parseTransactions(data, currency, since, limit, params);
2601
2601
  }
2602
2602
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2662,7 +2662,7 @@ class okcoin extends okcoin$1 {
2662
2662
  // ]
2663
2663
  // }
2664
2664
  //
2665
- const data = this.safeValue(response, 'data', []);
2665
+ const data = this.safeList(response, 'data', []);
2666
2666
  return this.parseTransactions(data, currency, since, limit, params);
2667
2667
  }
2668
2668
  parseTransactionStatus(status) {
@@ -2833,7 +2833,7 @@ class okcoin extends okcoin$1 {
2833
2833
  else {
2834
2834
  response = await this.privateGetTradeFills(this.extend(request, params));
2835
2835
  }
2836
- const data = this.safeValue(response, 'data', []);
2836
+ const data = this.safeList(response, 'data', []);
2837
2837
  return this.parseTrades(data, market, since, limit);
2838
2838
  }
2839
2839
  async fetchOrderTrades(id, symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1117,14 +1117,6 @@ class okx extends okx$1 {
1117
1117
  const exchangeTypes = this.safeValue(this.options, 'exchangeType', {});
1118
1118
  return this.safeString(exchangeTypes, type, type);
1119
1119
  }
1120
- convertExpireDate(date) {
1121
- // parse YYMMDD to timestamp
1122
- const year = date.slice(0, 2);
1123
- const month = date.slice(2, 4);
1124
- const day = date.slice(4, 6);
1125
- const reconstructedDate = '20' + year + '-' + month + '-' + day + 'T00:00:00Z';
1126
- return reconstructedDate;
1127
- }
1128
1120
  createExpiredOptionMarket(symbol) {
1129
1121
  // support expired option contracts
1130
1122
  const quote = 'USD';
@@ -1854,7 +1846,7 @@ class okx extends okx$1 {
1854
1846
  // }
1855
1847
  //
1856
1848
  const data = this.safeValue(response, 'data', []);
1857
- const first = this.safeValue(data, 0, {});
1849
+ const first = this.safeDict(data, 0, {});
1858
1850
  return this.parseTicker(first, market);
1859
1851
  }
1860
1852
  async fetchTickers(symbols = undefined, params = {}) {
@@ -2083,7 +2075,7 @@ class okx extends okx$1 {
2083
2075
  // "msg": ""
2084
2076
  // }
2085
2077
  //
2086
- const data = this.safeValue(response, 'data', []);
2078
+ const data = this.safeList(response, 'data', []);
2087
2079
  return this.parseTrades(data, market, since, limit);
2088
2080
  }
2089
2081
  parseOHLCV(ohlcv, market = undefined) {
@@ -2216,7 +2208,7 @@ class okx extends okx$1 {
2216
2208
  // ]
2217
2209
  // }
2218
2210
  //
2219
- const data = this.safeValue(response, 'data', []);
2211
+ const data = this.safeList(response, 'data', []);
2220
2212
  return this.parseOHLCVs(data, market, timeframe, since, limit);
2221
2213
  }
2222
2214
  async fetchFundingRateHistory(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -2952,7 +2944,7 @@ class okx extends okx$1 {
2952
2944
  // "msg": "",
2953
2945
  // "outTime": "1697979038586493"
2954
2946
  // }
2955
- const data = this.safeValue(response, 'data', []);
2947
+ const data = this.safeList(response, 'data', []);
2956
2948
  return this.parseOrders(data);
2957
2949
  }
2958
2950
  editOrderRequest(id, symbol, type, side, amount = undefined, price = undefined, params = {}) {
@@ -3161,7 +3153,7 @@ class okx extends okx$1 {
3161
3153
  const response = await this.privatePostTradeCancelOrder(this.extend(request, query));
3162
3154
  // {"code":"0","data":[{"clOrdId":"","ordId":"317251910906576896","sCode":"0","sMsg":""}],"msg":""}
3163
3155
  const data = this.safeValue(response, 'data', []);
3164
- const order = this.safeValue(data, 0);
3156
+ const order = this.safeDict(data, 0);
3165
3157
  return this.parseOrder(order, market);
3166
3158
  }
3167
3159
  parseIds(ids) {
@@ -3279,7 +3271,7 @@ class okx extends okx$1 {
3279
3271
  // "msg": ""
3280
3272
  // }
3281
3273
  //
3282
- const ordersData = this.safeValue(response, 'data', []);
3274
+ const ordersData = this.safeList(response, 'data', []);
3283
3275
  return this.parseOrders(ordersData, market, undefined, undefined, params);
3284
3276
  }
3285
3277
  parseOrderStatus(status) {
@@ -3653,7 +3645,7 @@ class okx extends okx$1 {
3653
3645
  // }
3654
3646
  //
3655
3647
  const data = this.safeValue(response, 'data', []);
3656
- const order = this.safeValue(data, 0);
3648
+ const order = this.safeDict(data, 0);
3657
3649
  return this.parseOrder(order, market);
3658
3650
  }
3659
3651
  async fetchOpenOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -3817,7 +3809,7 @@ class okx extends okx$1 {
3817
3809
  // "msg": ""
3818
3810
  // }
3819
3811
  //
3820
- const data = this.safeValue(response, 'data', []);
3812
+ const data = this.safeList(response, 'data', []);
3821
3813
  return this.parseOrders(data, market, since, limit);
3822
3814
  }
3823
3815
  async fetchCanceledOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -4004,7 +3996,7 @@ class okx extends okx$1 {
4004
3996
  // "msg": ""
4005
3997
  // }
4006
3998
  //
4007
- const data = this.safeValue(response, 'data', []);
3999
+ const data = this.safeList(response, 'data', []);
4008
4000
  return this.parseOrders(data, market, since, limit);
4009
4001
  }
4010
4002
  async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -4193,7 +4185,7 @@ class okx extends okx$1 {
4193
4185
  // "msg": ""
4194
4186
  // }
4195
4187
  //
4196
- const data = this.safeValue(response, 'data', []);
4188
+ const data = this.safeList(response, 'data', []);
4197
4189
  return this.parseOrders(data, market, since, limit);
4198
4190
  }
4199
4191
  async fetchMyTrades(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -4265,7 +4257,7 @@ class okx extends okx$1 {
4265
4257
  // "msg": ""
4266
4258
  // }
4267
4259
  //
4268
- const data = this.safeValue(response, 'data', []);
4260
+ const data = this.safeList(response, 'data', []);
4269
4261
  return this.parseTrades(data, market, since, limit, query);
4270
4262
  }
4271
4263
  async fetchOrderTrades(id, symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -4748,7 +4740,7 @@ class okx extends okx$1 {
4748
4740
  // }
4749
4741
  //
4750
4742
  const data = this.safeValue(response, 'data', []);
4751
- const transaction = this.safeValue(data, 0);
4743
+ const transaction = this.safeDict(data, 0);
4752
4744
  return this.parseTransaction(transaction, currency);
4753
4745
  }
4754
4746
  async fetchDeposits(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -4829,7 +4821,7 @@ class okx extends okx$1 {
4829
4821
  // ]
4830
4822
  // }
4831
4823
  //
4832
- const data = this.safeValue(response, 'data', []);
4824
+ const data = this.safeList(response, 'data', []);
4833
4825
  return this.parseTransactions(data, currency, since, limit, params);
4834
4826
  }
4835
4827
  async fetchDeposit(id, code = undefined, params = {}) {
@@ -4854,7 +4846,7 @@ class okx extends okx$1 {
4854
4846
  }
4855
4847
  const response = await this.privateGetAssetDepositHistory(this.extend(request, params));
4856
4848
  const data = this.safeValue(response, 'data');
4857
- const deposit = this.safeValue(data, 0, {});
4849
+ const deposit = this.safeDict(data, 0, {});
4858
4850
  return this.parseTransaction(deposit, currency);
4859
4851
  }
4860
4852
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -4927,7 +4919,7 @@ class okx extends okx$1 {
4927
4919
  // ]
4928
4920
  // }
4929
4921
  //
4930
- const data = this.safeValue(response, 'data', []);
4922
+ const data = this.safeList(response, 'data', []);
4931
4923
  return this.parseTransactions(data, currency, since, limit, params);
4932
4924
  }
4933
4925
  async fetchWithdrawal(id, code = undefined, params = {}) {
@@ -4973,7 +4965,7 @@ class okx extends okx$1 {
4973
4965
  // }
4974
4966
  //
4975
4967
  const data = this.safeValue(response, 'data');
4976
- const withdrawal = this.safeValue(data, 0, {});
4968
+ const withdrawal = this.safeDict(data, 0, {});
4977
4969
  return this.parseTransaction(withdrawal);
4978
4970
  }
4979
4971
  parseTransactionStatus(status) {
@@ -5602,7 +5594,7 @@ class okx extends okx$1 {
5602
5594
  // }
5603
5595
  //
5604
5596
  const data = this.safeValue(response, 'data', []);
5605
- const rawTransfer = this.safeValue(data, 0, {});
5597
+ const rawTransfer = this.safeDict(data, 0, {});
5606
5598
  return this.parseTransfer(rawTransfer, currency);
5607
5599
  }
5608
5600
  parseTransfer(transfer, currency = undefined) {
@@ -5716,7 +5708,7 @@ class okx extends okx$1 {
5716
5708
  // }
5717
5709
  //
5718
5710
  const data = this.safeValue(response, 'data', []);
5719
- const transfer = this.safeValue(data, 0);
5711
+ const transfer = this.safeDict(data, 0);
5720
5712
  return this.parseTransfer(transfer);
5721
5713
  }
5722
5714
  async fetchTransfers(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -5779,7 +5771,7 @@ class okx extends okx$1 {
5779
5771
  // "msg": ""
5780
5772
  // }
5781
5773
  //
5782
- const transfers = this.safeValue(response, 'data', []);
5774
+ const transfers = this.safeList(response, 'data', []);
5783
5775
  return this.parseTransfers(transfers, currency, since, limit, params);
5784
5776
  }
5785
5777
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {
@@ -6839,7 +6831,7 @@ class okx extends okx$1 {
6839
6831
  // "msg": ""
6840
6832
  // }
6841
6833
  //
6842
- const data = this.safeValue(response, 'data', []);
6834
+ const data = this.safeList(response, 'data', []);
6843
6835
  return this.parseOpenInterest(data[0], market);
6844
6836
  }
6845
6837
  async fetchOpenInterestHistory(symbol, timeframe = '1d', since = undefined, limit = undefined, params = {}) {
@@ -6910,7 +6902,7 @@ class okx extends okx$1 {
6910
6902
  // "msg": ''
6911
6903
  // }
6912
6904
  //
6913
- const data = this.safeValue(response, 'data', []);
6905
+ const data = this.safeList(response, 'data', []);
6914
6906
  return this.parseOpenInterests(data, undefined, since, limit);
6915
6907
  }
6916
6908
  parseOpenInterest(interest, market = undefined) {
@@ -7033,7 +7025,7 @@ class okx extends okx$1 {
7033
7025
  // "msg": ""
7034
7026
  // }
7035
7027
  //
7036
- const data = this.safeValue(response, 'data');
7028
+ const data = this.safeList(response, 'data');
7037
7029
  return this.parseDepositWithdrawFees(data, codes);
7038
7030
  }
7039
7031
  parseDepositWithdrawFees(response, codes = undefined, currencyIdKey = undefined) {
@@ -7409,7 +7401,7 @@ class okx extends okx$1 {
7409
7401
  // }
7410
7402
  //
7411
7403
  const data = this.safeValue(response, 'data');
7412
- const order = this.safeValue(data, 0);
7404
+ const order = this.safeDict(data, 0);
7413
7405
  return this.parseOrder(order, market);
7414
7406
  }
7415
7407
  async fetchOption(symbol, params = {}) {
@@ -1149,7 +1149,7 @@ class onetrading extends onetrading$1 {
1149
1149
  // "cursor": "eyJhY2NvdW50X2lkIjp7InMiOiJlMzY5YWM4MC00NTc3LTExZTktYWUwOC05YmVkYzQ3OTBiODQiLCJzcyI6W10sIm5zIjpbXSwiYnMiOltdLCJtIjp7fSwibCI6W119LCJpdGVtX2tleSI6eyJzIjoiV0lUSERSQVdBTDo6MmFlMjYwY2ItOTk3MC00YmNiLTgxNmEtZGY4MDVmY2VhZTY1Iiwic3MiOltdLCJucyI6W10sImJzIjpbXSwibSI6e30sImwiOltdfSwiZ2xvYmFsX3dpdGhkcmF3YWxfaW5kZXhfaGFzaF9rZXkiOnsicyI6ImUzNjlhYzgwLTQ1NzctMTFlOS1hZTA4LTliZWRjNDc5MGI4NCIsInNzIjpbXSwibnMiOltdLCJicyI6W10sIm0iOnt9LCJsIjpbXX0sInRpbWVzdGFtcCI6eyJuIjoiMTU4ODA1ODc2Nzk0OCIsInNzIjpbXSwibnMiOltdLCJicyI6W10sIm0iOnt9LCJsIjpbXX19"
1150
1150
  // }
1151
1151
  //
1152
- const depositHistory = this.safeValue(response, 'deposit_history', []);
1152
+ const depositHistory = this.safeList(response, 'deposit_history', []);
1153
1153
  return this.parseTransactions(depositHistory, currency, since, limit, { 'type': 'deposit' });
1154
1154
  }
1155
1155
  async fetchWithdrawals(code = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1214,7 +1214,7 @@ class onetrading extends onetrading$1 {
1214
1214
  // "max_page_size": 2
1215
1215
  // }
1216
1216
  //
1217
- const withdrawalHistory = this.safeValue(response, 'withdrawal_history', []);
1217
+ const withdrawalHistory = this.safeList(response, 'withdrawal_history', []);
1218
1218
  return this.parseTransactions(withdrawalHistory, currency, since, limit, { 'type': 'withdrawal' });
1219
1219
  }
1220
1220
  async withdraw(code, amount, address, tag = undefined, params = {}) {
@@ -1807,7 +1807,7 @@ class onetrading extends onetrading$1 {
1807
1807
  // "max_page_size": 100
1808
1808
  // }
1809
1809
  //
1810
- const orderHistory = this.safeValue(response, 'order_history', []);
1810
+ const orderHistory = this.safeList(response, 'order_history', []);
1811
1811
  return this.parseOrders(orderHistory, market, since, limit);
1812
1812
  }
1813
1813
  async fetchClosedOrders(symbol = undefined, since = undefined, limit = undefined, params = {}) {
@@ -1950,7 +1950,7 @@ class onetrading extends onetrading$1 {
1950
1950
  // "cursor": "string"
1951
1951
  // }
1952
1952
  //
1953
- const tradeHistory = this.safeValue(response, 'trade_history', []);
1953
+ const tradeHistory = this.safeList(response, 'trade_history', []);
1954
1954
  return this.parseTrades(tradeHistory, market, since, limit);
1955
1955
  }
1956
1956
  sign(path, api = 'public', method = 'GET', params = {}, headers = undefined, body = undefined) {