ccxt 4.4.12__py2.py3-none-any.whl → 4.4.13__py2.py3-none-any.whl

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 (58) hide show
  1. ccxt/__init__.py +1 -1
  2. ccxt/async_support/__init__.py +1 -1
  3. ccxt/async_support/base/exchange.py +4 -1
  4. ccxt/async_support/bigone.py +2 -0
  5. ccxt/async_support/binance.py +44 -1
  6. ccxt/async_support/bingx.py +69 -3
  7. ccxt/async_support/bitget.py +1 -0
  8. ccxt/async_support/bitmex.py +1 -0
  9. ccxt/async_support/bybit.py +2 -0
  10. ccxt/async_support/coinbaseinternational.py +2 -0
  11. ccxt/async_support/coinex.py +2 -0
  12. ccxt/async_support/delta.py +2 -0
  13. ccxt/async_support/deribit.py +2 -0
  14. ccxt/async_support/digifinex.py +2 -0
  15. ccxt/async_support/gate.py +2 -0
  16. ccxt/async_support/htx.py +2 -2
  17. ccxt/async_support/krakenfutures.py +2 -0
  18. ccxt/async_support/kucoinfutures.py +2 -0
  19. ccxt/async_support/okx.py +36 -0
  20. ccxt/async_support/oxfun.py +1 -0
  21. ccxt/async_support/paradex.py +1 -0
  22. ccxt/async_support/poloniex.py +1 -0
  23. ccxt/base/exchange.py +7 -1
  24. ccxt/base/types.py +2 -0
  25. ccxt/bigone.py +2 -0
  26. ccxt/binance.py +44 -1
  27. ccxt/bingx.py +69 -3
  28. ccxt/bitget.py +1 -0
  29. ccxt/bitmex.py +1 -0
  30. ccxt/bybit.py +2 -0
  31. ccxt/coinbaseinternational.py +2 -0
  32. ccxt/coinex.py +2 -0
  33. ccxt/delta.py +2 -0
  34. ccxt/deribit.py +2 -0
  35. ccxt/digifinex.py +2 -0
  36. ccxt/gate.py +2 -0
  37. ccxt/htx.py +2 -2
  38. ccxt/krakenfutures.py +2 -0
  39. ccxt/kucoinfutures.py +2 -0
  40. ccxt/okx.py +36 -0
  41. ccxt/oxfun.py +1 -0
  42. ccxt/paradex.py +1 -0
  43. ccxt/poloniex.py +1 -0
  44. ccxt/pro/__init__.py +1 -1
  45. ccxt/pro/binance.py +72 -5
  46. ccxt/pro/bitfinex.py +8 -8
  47. ccxt/pro/krakenfutures.py +2 -0
  48. ccxt/pro/phemex.py +2 -0
  49. ccxt/pro/woo.py +69 -0
  50. ccxt/test/tests_async.py +31 -3
  51. ccxt/test/tests_helpers.py +13 -36
  52. ccxt/test/tests_init.py +6 -2
  53. ccxt/test/tests_sync.py +31 -3
  54. {ccxt-4.4.12.dist-info → ccxt-4.4.13.dist-info}/METADATA +4 -5
  55. {ccxt-4.4.12.dist-info → ccxt-4.4.13.dist-info}/RECORD +58 -58
  56. {ccxt-4.4.12.dist-info → ccxt-4.4.13.dist-info}/LICENSE.txt +0 -0
  57. {ccxt-4.4.12.dist-info → ccxt-4.4.13.dist-info}/WHEEL +0 -0
  58. {ccxt-4.4.12.dist-info → ccxt-4.4.13.dist-info}/top_level.txt +0 -0
ccxt/test/tests_async.py CHANGED
@@ -3,9 +3,37 @@
3
3
  import asyncio
4
4
 
5
5
 
6
- from tests_helpers import AuthenticationError, NotSupported, InvalidProxySettings, ExchangeNotAvailable, OperationFailed, OnMaintenance, get_cli_arg_value, baseMainTestClass, dump, json_parse, json_stringify, convert_ascii, io_file_exists, io_file_read, io_dir_read, call_method, call_method_sync, call_exchange_method_dynamically, call_exchange_method_dynamically_sync, get_root_exception, exception_message, exit_script, get_exchange_prop, set_exchange_prop, init_exchange, get_test_files_sync, get_test_files, set_fetch_response, is_null_value, close # noqa: F401
6
+ from tests_helpers import AuthenticationError, NotSupported, InvalidProxySettings, ExchangeNotAvailable, OperationFailed, OnMaintenance, get_cli_arg_value, ENV_VARS, NEW_LINE, LANG, EXT, ROOT_DIR, PROXY_TEST_FILE_NAME, IS_SYNCHRONOUS, dump, json_parse, json_stringify, convert_ascii, io_file_exists, io_file_read, io_dir_read, call_method, call_method_sync, call_exchange_method_dynamically, call_exchange_method_dynamically_sync, get_root_exception, exception_message, exit_script, get_exchange_prop, set_exchange_prop, init_exchange, get_test_files_sync, get_test_files, set_fetch_response, is_null_value, close # noqa: F401
7
+
8
+ class testMainClass:
9
+ is_synchronous = IS_SYNCHRONOUS
10
+ id_tests = False
11
+ request_tests_failed = False
12
+ response_tests_failed = False
13
+ request_tests = False
14
+ ws_tests = False
15
+ response_tests = False
16
+ static_tests = False
17
+ info = False
18
+ verbose = False
19
+ debug = False
20
+ private_test = False
21
+ private_test_only = False
22
+ load_keys = False
23
+ sandbox = False
24
+ proxy_test_file_name = PROXY_TEST_FILE_NAME
25
+ only_specific_tests = []
26
+ skipped_settings_for_exchange = {}
27
+ skipped_methods = {}
28
+ checked_public_tests = {}
29
+ test_files = {}
30
+ public_tests = {}
31
+ new_line = NEW_LINE
32
+ root_dir = ROOT_DIR
33
+ env_vars = ENV_VARS
34
+ ext = EXT
35
+ lang = LANG
7
36
 
8
- class testMainClass(baseMainTestClass):
9
37
  def parse_cli_args(self):
10
38
  self.response_tests = get_cli_arg_value('--responseTests')
11
39
  self.id_tests = get_cli_arg_value('--idTests')
@@ -117,7 +145,7 @@ class testMainClass(baseMainTestClass):
117
145
  if self.load_keys:
118
146
  self.load_credentials_from_env(exchange)
119
147
  # skipped tests
120
- skipped_file = self.root_dir_for_skips + 'skip-tests.json'
148
+ skipped_file = self.root_dir + 'skip-tests.json'
121
149
  skipped_settings = io_file_read(skipped_file)
122
150
  self.skipped_settings_for_exchange = exchange.safe_value(skipped_settings, exchange_id, {})
123
151
  skipped_settings_for_exchange = self.skipped_settings_for_exchange
@@ -105,14 +105,15 @@ sys.excepthook = handle_all_unhandled_exceptions
105
105
 
106
106
  # non-transpiled part, but shared names among langs
107
107
 
108
- is_synchronous = argv.sync # 'async' not in os.path.basename(__file__)
109
-
110
- rootDir = DIR_NAME + '/../../../'
111
- rootDirForSkips = DIR_NAME + '/../../../'
112
- envVars = os.environ
108
+ EXT = 'py'
109
+ LANG = 'PY'
110
+ IS_SYNCHRONOUS = argv.sync # 'async' not in os.path.basename(__file__)
111
+ PROXY_TEST_FILE_NAME = 'proxies'
112
+ ROOT_DIR = DIR_NAME + '/../../../'
113
+ ENV_VARS = os.environ
114
+ NEW_LINE = '\n'
113
115
  LOG_CHARS_LENGTH = 10000
114
- ext = 'py'
115
- proxyTestFileName = 'proxies'
116
+
116
117
 
117
118
 
118
119
  def get_cli_arg_value(arg):
@@ -125,30 +126,6 @@ def get_cli_arg_value(arg):
125
126
 
126
127
  isWsTests = get_cli_arg_value('--ws')
127
128
 
128
-
129
- class baseMainTestClass():
130
- lang = 'PY'
131
- is_synchronous = is_synchronous
132
- request_tests_failed = False
133
- response_tests_failed = False
134
- response_tests = False
135
- ws_tests = False
136
- load_keys = False
137
- skipped_settings_for_exchange = {}
138
- skipped_methods = {}
139
- check_public_tests = {}
140
- test_files = {}
141
- public_tests = {}
142
- new_line = '\n'
143
- root_dir = rootDir
144
- env_vars = envVars
145
- ext = ext
146
- root_dir_for_skips = rootDirForSkips
147
- only_specific_tests = []
148
- proxy_test_file_name = proxyTestFileName
149
- pass
150
-
151
-
152
129
  def dump(*args):
153
130
  print(' '.join([str(arg) for arg in args]))
154
131
 
@@ -240,7 +217,7 @@ def set_exchange_prop(exchange, prop, value):
240
217
 
241
218
 
242
219
  def init_exchange(exchangeId, args, is_ws=False):
243
- if is_synchronous:
220
+ if IS_SYNCHRONOUS:
244
221
  return getattr(ccxt_sync, exchangeId)(args)
245
222
  if (is_ws):
246
223
  return getattr(ccxtpro, exchangeId)(args)
@@ -249,11 +226,11 @@ def init_exchange(exchangeId, args, is_ws=False):
249
226
 
250
227
  def get_test_files_sync(properties, ws=False):
251
228
  tests = {}
252
- finalPropList = properties + [proxyTestFileName]
229
+ finalPropList = properties + [PROXY_TEST_FILE_NAME]
253
230
  for i in range(0, len(finalPropList)):
254
231
  methodName = finalPropList[i]
255
232
  name_snake_case = convert_to_snake_case(methodName)
256
- prefix = 'async' if not is_synchronous else 'sync'
233
+ prefix = 'async' if not IS_SYNCHRONOUS else 'sync'
257
234
  dir_to_test = DIR_NAME + '/exchange/' + prefix + '/'
258
235
  module_string = 'ccxt.test.exchange.' + prefix + '.test_' + name_snake_case
259
236
  if (ws):
@@ -270,14 +247,14 @@ async def get_test_files(properties, ws=False):
270
247
  return get_test_files_sync(properties, ws)
271
248
 
272
249
  async def close(exchange):
273
- if (not is_synchronous and hasattr(exchange, 'close')):
250
+ if (not IS_SYNCHRONOUS and hasattr(exchange, 'close')):
274
251
  await exchange.close()
275
252
 
276
253
  def is_null_value(value):
277
254
  return value is None
278
255
 
279
256
  def set_fetch_response(exchange: ccxt.Exchange, data):
280
- if (is_synchronous):
257
+ if (IS_SYNCHRONOUS):
281
258
  def fetch(url, method='GET', headers=None, body=None):
282
259
  return data
283
260
  exchange.fetch = fetch
ccxt/test/tests_init.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
 
3
- from tests_helpers import get_cli_arg_value, is_synchronous, argvExchange, argvSymbol, argvMethod
3
+ from tests_helpers import get_cli_arg_value, IS_SYNCHRONOUS, argvExchange, argvSymbol, argvMethod
4
4
 
5
5
  try:
6
6
  import asyncio
@@ -10,6 +10,10 @@ except ImportError:
10
10
  from base.tests_init import base_tests_init # noqa: F401
11
11
  from ccxt.pro.test.base.tests_init import test_base_init_ws # noqa: F401
12
12
 
13
+ # fix : https://github.com/aio-libs/aiodns/issues/86
14
+ import sys
15
+ if sys.platform == 'win32':
16
+ asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
13
17
 
14
18
  # ########### args ###########
15
19
  isWs = get_cli_arg_value('--ws')
@@ -27,7 +31,7 @@ if (isBaseTests):
27
31
  exit(0)
28
32
 
29
33
  # ###### exchange tests #######
30
- if (is_synchronous):
34
+ if (IS_SYNCHRONOUS):
31
35
  from tests_sync import testMainClass as testMainClassSync
32
36
  testMainClassSync().init(argvExchange, argvSymbol, argvMethod)
33
37
  else:
ccxt/test/tests_sync.py CHANGED
@@ -1,8 +1,36 @@
1
1
  # -*- coding: utf-8 -*-
2
2
 
3
- from tests_helpers import AuthenticationError, NotSupported, InvalidProxySettings, ExchangeNotAvailable, OperationFailed, OnMaintenance, get_cli_arg_value, baseMainTestClass, dump, json_parse, json_stringify, convert_ascii, io_file_exists, io_file_read, io_dir_read, call_method, call_method_sync, call_exchange_method_dynamically, call_exchange_method_dynamically_sync, get_root_exception, exception_message, exit_script, get_exchange_prop, set_exchange_prop, init_exchange, get_test_files_sync, get_test_files, set_fetch_response, is_null_value, close # noqa: F401
3
+ from tests_helpers import AuthenticationError, NotSupported, InvalidProxySettings, ExchangeNotAvailable, OperationFailed, OnMaintenance, get_cli_arg_value, ENV_VARS, NEW_LINE, LANG, EXT, ROOT_DIR, PROXY_TEST_FILE_NAME, IS_SYNCHRONOUS, dump, json_parse, json_stringify, convert_ascii, io_file_exists, io_file_read, io_dir_read, call_method, call_method_sync, call_exchange_method_dynamically, call_exchange_method_dynamically_sync, get_root_exception, exception_message, exit_script, get_exchange_prop, set_exchange_prop, init_exchange, get_test_files_sync, get_test_files, set_fetch_response, is_null_value, close # noqa: F401
4
+
5
+ class testMainClass:
6
+ is_synchronous = IS_SYNCHRONOUS
7
+ id_tests = False
8
+ request_tests_failed = False
9
+ response_tests_failed = False
10
+ request_tests = False
11
+ ws_tests = False
12
+ response_tests = False
13
+ static_tests = False
14
+ info = False
15
+ verbose = False
16
+ debug = False
17
+ private_test = False
18
+ private_test_only = False
19
+ load_keys = False
20
+ sandbox = False
21
+ proxy_test_file_name = PROXY_TEST_FILE_NAME
22
+ only_specific_tests = []
23
+ skipped_settings_for_exchange = {}
24
+ skipped_methods = {}
25
+ checked_public_tests = {}
26
+ test_files = {}
27
+ public_tests = {}
28
+ new_line = NEW_LINE
29
+ root_dir = ROOT_DIR
30
+ env_vars = ENV_VARS
31
+ ext = EXT
32
+ lang = LANG
4
33
 
5
- class testMainClass(baseMainTestClass):
6
34
  def parse_cli_args(self):
7
35
  self.response_tests = get_cli_arg_value('--responseTests')
8
36
  self.id_tests = get_cli_arg_value('--idTests')
@@ -114,7 +142,7 @@ class testMainClass(baseMainTestClass):
114
142
  if self.load_keys:
115
143
  self.load_credentials_from_env(exchange)
116
144
  # skipped tests
117
- skipped_file = self.root_dir_for_skips + 'skip-tests.json'
145
+ skipped_file = self.root_dir + 'skip-tests.json'
118
146
  skipped_settings = io_file_read(skipped_file)
119
147
  self.skipped_settings_for_exchange = exchange.safe_value(skipped_settings, exchange_id, {})
120
148
  skipped_settings_for_exchange = self.skipped_settings_for_exchange
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.4.12
3
+ Version: 4.4.13
4
4
  Summary: A JavaScript / TypeScript / Python / C# / PHP cryptocurrency trading library with support for 100+ exchanges
5
5
  Home-page: https://ccxt.com
6
6
  Author: Igor Kroitor
@@ -70,7 +70,6 @@ Current feature list:
70
70
 
71
71
 
72
72
  ## Sponsored Promotion
73
- [![bitmart-campaign](https://github-production-user-asset-6210df.s3.amazonaws.com/43336371/368140830-0148e114-a937-40b4-8cc3-f836ae1bfafe.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240917%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240917T111656Z&X-Amz-Expires=300&X-Amz-Signature=e2fcc2cec4c61cf400bbcc41af23efffbe8d2419841bb50fd11bafaf9b1b7d45&X-Amz-SignedHeaders=host&actor_id=43336371&key_id=0&repo_id=91253698)](https://www.bitmart.com/activity/BitMartxCCXT/en-US)
74
73
 
75
74
  ## See Also
76
75
 
@@ -272,13 +271,13 @@ console.log(version, Object.keys(exchanges));
272
271
 
273
272
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
274
273
 
275
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.12/dist/ccxt.browser.min.js
276
- * unpkg: https://unpkg.com/ccxt@4.4.12/dist/ccxt.browser.min.js
274
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.13/dist/ccxt.browser.min.js
275
+ * unpkg: https://unpkg.com/ccxt@4.4.13/dist/ccxt.browser.min.js
277
276
 
278
277
  CDNs are not updated in real-time and may have delays. Defaulting to the most recent version without specifying the version number is not recommended. Please, keep in mind that we are not responsible for the correct operation of those CDN servers.
279
278
 
280
279
  ```HTML
281
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.12/dist/ccxt.browser.min.js"></script>
280
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.13/dist/ccxt.browser.min.js"></script>
282
281
  ```
283
282
 
284
283
  Creates a global `ccxt` object:
@@ -1,14 +1,14 @@
1
- ccxt/__init__.py,sha256=77RnCYK970kXTx905nM3HzbRQhZNnWJl2Vc9nipVtgg,16486
1
+ ccxt/__init__.py,sha256=0kH84arskOUPoVbQI-vLXvELGXLk20Hk9KPf0L2xSjk,16486
2
2
  ccxt/ace.py,sha256=3KFlbRm6N9hXsKUsgZbQCFPZT5WGLm4HOjR19Q3uPts,42419
3
3
  ccxt/alpaca.py,sha256=nVQJ8vG4JrjEvMlu_nPoyR2lBq41j9Z2smPq95nDhng,47504
4
4
  ccxt/ascendex.py,sha256=LIC9mnNkXzkxUWJDsgyDkL4gQUkzMHq5peHlD8EBKPw,151624
5
5
  ccxt/bequant.py,sha256=RBiAmaTbL35DgiV3Hl6uchLUd78V0z1T9riTlNsrpdc,1174
6
- ccxt/bigone.py,sha256=Gu9bXaa4rVRRVZEkUEKDWEUZ2Hjly22C6jrbseGv-r8,90980
7
- ccxt/binance.py,sha256=FuatBHbjAD3xkb69gcESv5hddkMdwXgzz4cd22tsj78,648418
6
+ ccxt/bigone.py,sha256=fdoOrn0K0uZAX9cTSxt5hdxbxSfOZ7v-4686MB6QwRU,91110
7
+ ccxt/binance.py,sha256=g7JYNG1ZelcE1tUDxLSWb7bAxVvj12tX6PA1Ckfu9Jo,650803
8
8
  ccxt/binancecoinm.py,sha256=arFnEh8mErSyi23eVPWE4iwoT7PWQyxGGVJCKCy6UJY,1702
9
9
  ccxt/binanceus.py,sha256=HRsk0fIoi8AAFdzRCUMkkXUGLqBrf0guUOfUxupHFeY,9202
10
10
  ccxt/binanceusdm.py,sha256=bAPcJj5HLxoCdPolriM8sJpoTBwbV78vBTbKRmWhNP4,2632
11
- ccxt/bingx.py,sha256=x0vcfceNywJ83xjki5I3J_gLCf78QxDKWsjbReYWLcw,246838
11
+ ccxt/bingx.py,sha256=xnkNPrUgwPQjQNrzsV45wv1N_UOWTG-d4f1RkHLJp8A,249627
12
12
  ccxt/bit2c.py,sha256=nJgmrsEpOaYB0ylSIVhzf-tbyLCa3g4yxpmF3BSz3Qk,37097
13
13
  ccxt/bitbank.py,sha256=rROws6WlMgzgGQiKT7vqHxOQjy-DI_-uwSxUhXzMxjY,43570
14
14
  ccxt/bitbay.py,sha256=xAIjzGRDVGwoy-Gygd99H0YN4wiaz_0lR0Z14oxaaxc,478
@@ -17,10 +17,10 @@ ccxt/bitcoincom.py,sha256=PyWIl4nC4jp5Uba2lI1At0N_hhNyWD0DoZC_MSyL_s4,502
17
17
  ccxt/bitfinex.py,sha256=w3t0YAwtOfCwLy5_w2wTq90qkTgUUyn0sqdO22zD-9U,73527
18
18
  ccxt/bitfinex2.py,sha256=4374ASOWdG6FMPEQAliCVnGX1w1ZGQrYZJHg-pb0wPs,160678
19
19
  ccxt/bitflyer.py,sha256=nh1EDzO66S-Ps9xBy-U4CErt6Q06E77wbWF_aTRw6RI,41663
20
- ccxt/bitget.py,sha256=UEoxtK12lgL8aOdkC9bARjV3Q-FS3YcZ4gdzIpnQnEI,424477
20
+ ccxt/bitget.py,sha256=j8PoqEgIKiL30BprQQfJxfMq7BkH45e7NBrHkWrMpq0,424543
21
21
  ccxt/bithumb.py,sha256=8oTnFWi8Ai9fnm5FPXvNmaUAVJEOqYi-18VC23cWmXY,47935
22
22
  ccxt/bitmart.py,sha256=xhBbJO2vxoKdMA4MKTQfmtJ4j8DRsstCg3P2VaTyDTk,221980
23
- ccxt/bitmex.py,sha256=7ipuNwCEqU8KduLJIvhxxF4GLNmtP6SOsVHBnRcHH74,127309
23
+ ccxt/bitmex.py,sha256=N9UYrYR1uR2G1izDUYq3StRZf9lYX98hEYP-x8b2QkU,127373
24
24
  ccxt/bitopro.py,sha256=XV878befM45AOnlSRpMYTnaBol342JAYWbFshvJ9fvs,69358
25
25
  ccxt/bitpanda.py,sha256=aiwPkx9lKbVzt4ggoYdq_mIbMGtg5ZtGl2yRHO5xyz8,471
26
26
  ccxt/bitrue.py,sha256=zYYTU3OME7zBJ3d63nE8C4EiR4IYLVdoyIWfE36-DQw,136749
@@ -35,14 +35,14 @@ ccxt/btcalpha.py,sha256=plU5SSsJn0ZMLW7I8sXb_L0Woc3-kamGMSlqPGujUzE,36751
35
35
  ccxt/btcbox.py,sha256=lvY7cgoe4tglaQiTJZ4vILmzvoEjAWxgswRuB2iYzmE,27780
36
36
  ccxt/btcmarkets.py,sha256=WDDbtbUQ9I0odVZp8nJdIjc4-zv4li49EDSt8EqQbRU,52733
37
37
  ccxt/btcturk.py,sha256=jSA4UnD1GiJu24gXNkfb94f-zXifP5By_Ptery_cMnY,37024
38
- ccxt/bybit.py,sha256=usIBvJs-LpoLcNNSpe-MQhHEzXs39_7mz-fNiDWPo1U,441030
38
+ ccxt/bybit.py,sha256=GmB-gfl9Ks5yelG8PrAmoX9YiQ9rOX89LNBVMlYQNEQ,441160
39
39
  ccxt/cex.py,sha256=WkzjeUi22kVFNU_f2PB7SwGiddOulKS6DDzmxdVDkXs,70120
40
40
  ccxt/coinbase.py,sha256=pHPkUkGRC9UzpGAl3-QEFUEHT2tts-NoSvbc7s3EMP8,218667
41
41
  ccxt/coinbaseadvanced.py,sha256=d5g6nRx-NCcCwZDdtp8FsI2D-pRjSvnAP9ISSKY_nCQ,538
42
42
  ccxt/coinbaseexchange.py,sha256=hSqkZw0y3EELtpsbJaMQXzc2nCbevVjHw6LDPcGH7_Y,79031
43
- ccxt/coinbaseinternational.py,sha256=JHciYqg_ZcVXWAUBj_zlcaUKfSjOL6CQmoAtO8ZbtSE,97484
43
+ ccxt/coinbaseinternational.py,sha256=XY6VLnNk3aefZfH5SbTxvNqowRbmEtUfeiGZUVIjzWE,97616
44
44
  ccxt/coincheck.py,sha256=SeNvZm_3p01IsW8y6b3rw67qiMu29S59HHPG6Jma_T4,35942
45
- ccxt/coinex.py,sha256=w_fGjXFy-w9VlFOrf92FVds55ZnNNWIZZrNEiIau4r0,258029
45
+ ccxt/coinex.py,sha256=4WVzRosEFmyzTbzijrb6I6a8Mf2aJR-DoWNutmuVdgk,258161
46
46
  ccxt/coinlist.py,sha256=KI49yKisargPm5nApMMfWfFs3e0Uxbx9yMRibY9n7Tw,104273
47
47
  ccxt/coinmate.py,sha256=BkPcT92OQFeUQtnLDIkl-Sg0PcLrQ87RfHMFIybJoWk,46190
48
48
  ccxt/coinmetro.py,sha256=sVDcyA3ZC3MBEvslnkOepbYGlnonbf8K5MRoLIIQ2-k,80647
@@ -51,19 +51,19 @@ ccxt/coinsph.py,sha256=DIqcTDjosc3kufV78oUfFPer5bWC4MjRrl2oiBIUQkw,90858
51
51
  ccxt/coinspot.py,sha256=-9oRdHdc6iWrkxXxcVF9zBashNcRJSoFORwHRa9scMc,23876
52
52
  ccxt/cryptocom.py,sha256=GynfGZljVT46rwFJ5Z8WGJYrWvBP55NVoOPtjhvubp8,136635
53
53
  ccxt/currencycom.py,sha256=d0TR2rxlv5sre1A5R00XxF7rME6aCeuympMsCUVEaTQ,87128
54
- ccxt/delta.py,sha256=U_R8C1P6gOBuJ2kDas0Bs62_EmJbELyzp-GQ3aIe5tk,151021
55
- ccxt/deribit.py,sha256=TWw9NUyuJpxH_HesYlIcW2FAC2iA5FvIO3SYMelsnio,161423
56
- ccxt/digifinex.py,sha256=rDFLwIbp9kcFau2sCKRhVI-hPzAFQSkojW1QEVVaKVI,170126
54
+ ccxt/delta.py,sha256=JQ1habsJEosBvvOscGKMqKG90WXVfopE1rlLZctl3XI,151152
55
+ ccxt/deribit.py,sha256=tGnhV5NyTeMpmRTpIZiZv_0qIW-tPJ4ORzEySgdfIyo,161555
56
+ ccxt/digifinex.py,sha256=eXEs7DlRdgb2kxzlI-bT7rXdOBTN7uX9arc_T_qblrQ,170229
57
57
  ccxt/exmo.py,sha256=KlQqGZey31br-SVwhQg6mWIESyeM_wiIKRDOzIekuSs,114638
58
58
  ccxt/fmfwio.py,sha256=RbVLvzPwnqfDsE7Ea-N13ISCC82eJVPsXYjrleASmew,1236
59
- ccxt/gate.py,sha256=T3ZIZmtzIGZaEJh5eKS1O0MLlWVi6wdWQIUbU99sNjw,330313
59
+ ccxt/gate.py,sha256=CsKW6dVjS9nNkkNOaZlBLmhV0A7uOK9RF2aT7AN_f7c,330445
60
60
  ccxt/gateio.py,sha256=86AETJWODl_vA5VNeQRHZprmpNIY1HAxCddKZcnKSi8,445
61
61
  ccxt/gemini.py,sha256=qWLpJE-Ue3F-KhFfzhAteAMMJOr35duwdI-exBrRTEo,80950
62
62
  ccxt/hashkey.py,sha256=bJAXP1YkNOB92oT0WUVpygn0eKREvW43wu7ntdN9yhI,191991
63
63
  ccxt/hitbtc.py,sha256=dY9ghNwp76I9_xhoCIH2W1jMahq7FYn5rWRDPbPnU88,153572
64
64
  ccxt/hitbtc3.py,sha256=qRAr4Zvaju9IQWRZUohdoN7xRnzIMPq8AyYb3gPv-Is,455
65
65
  ccxt/hollaex.py,sha256=2KIbenZ3vcBDN_rs2CxG5_foKLaYxJd73vVV7M8n_8E,76140
66
- ccxt/htx.py,sha256=T_1G5sRfP2xX5UEoMsVgDhEh1CV4SnBPucLG0uNdJSg,431529
66
+ ccxt/htx.py,sha256=iRho2E5Q_uYSHPRzmNbDv130HLtx1mCmIpYHkxoxbGM,431552
67
67
  ccxt/huobi.py,sha256=4vaG7IRN7fyjaJ_ac6S-njlHOfSEN5de7aq0noznxYw,438
68
68
  ccxt/huobijp.py,sha256=m9rYCCApGDtpbiqCK6Gw4GDd5EskEmho4xSemGbY1kY,89852
69
69
  ccxt/hyperliquid.py,sha256=QTly1QFJoFse-ioADxf7KRQWCvK-Ksiopemg0D9y59k,122981
@@ -71,9 +71,9 @@ ccxt/idex.py,sha256=P2jNsxiwIlMgrfPKbtmjLJQrzFcWp_TjgJaLq793oco,73255
71
71
  ccxt/independentreserve.py,sha256=k2T7rA1zcvlHC8QpmkKYO7ik44SayiElaSpW0EsTevA,37847
72
72
  ccxt/indodax.py,sha256=o5YLVpQzm1LFWPAsvUOnvJxeBEWtaB_jQCvCOmXEw1Y,54758
73
73
  ccxt/kraken.py,sha256=hMne2ENv-UE6-duoWvRW7cK0B8y6KfXdDZFPFtuCXHA,135747
74
- ccxt/krakenfutures.py,sha256=3hMs_WJWkt5numbsdT4ip8AaY5SLLeRQe98c4N_sJrU,119709
74
+ ccxt/krakenfutures.py,sha256=dbreVGrjMD7AY6xai0eazuvnUpTXTD7wLDVT9VDD5Qk,119839
75
75
  ccxt/kucoin.py,sha256=kD33ixY0cJKSrkAyDFhcy4Qt2nbTrjh-fBGHTwygwf0,229853
76
- ccxt/kucoinfutures.py,sha256=ACYvHVWNoidt5Y9taKnBLt1qs1iui7hvpkFn46WvvkE,132560
76
+ ccxt/kucoinfutures.py,sha256=ZnnYldDrGxerTR5exMW-nW3X3P7Bf2eKrvtA0POhJZI,132690
77
77
  ccxt/kuna.py,sha256=GnIMk8R_IL84FTUHDNP6jHxd2FKNX9YwfoCXoYG83uA,96157
78
78
  ccxt/latoken.py,sha256=wBhaMcTEsB316nFCxm_WbLRZ_G2Q0Vi1FK-850Q07D0,79516
79
79
  ccxt/lbank.py,sha256=Glx9CN_jdQMiUngJLYioxzwDfgFTdusdOfK53_Bg6A8,116045
@@ -85,14 +85,14 @@ ccxt/ndax.py,sha256=m9MhE8i8JmaSf7Lc-I_CcvUpQ5VNTRcfYZLrFEwk3UI,109097
85
85
  ccxt/novadax.py,sha256=_xFkuZ72vHhpJb1N9h_MQHRD05GDWlqUeLQQcOp43BM,64436
86
86
  ccxt/oceanex.py,sha256=jBXRD1hZk_wa9PXVp9feistAO_jK7UvzG5zznhPQgH4,41120
87
87
  ccxt/okcoin.py,sha256=nKWsJTRprIODYHUTIoXRz6eANM2zdRPF7BHY86ExEyQ,151126
88
- ccxt/okx.py,sha256=3pRwdtaEzf686jU0vlo_T40XQlTJJSxXIlY9sjuiCX4,380190
88
+ ccxt/okx.py,sha256=aObPVOOAWKIkNw8SHiRO6ukPW5XP-IF0Ll2-TODo96E,382140
89
89
  ccxt/onetrading.py,sha256=evWWr4z7-HglV2ma2z-R34_JYJqlr6LQT0rV_OyWKGs,88375
90
- ccxt/oxfun.py,sha256=iHy_pywYS8t-cbmh-AkhGc8Kfp9aMgawVr0VloKW_ik,124760
90
+ ccxt/oxfun.py,sha256=fJs9UO_rd6wtC9i6kcyu4CnRfg6pcF4zRoylUyO8JiY,124824
91
91
  ccxt/p2b.py,sha256=iPzHv663K8F1F0uTWEYpfQBcaqowY8MQ5tZt2ZNpoQE,54290
92
- ccxt/paradex.py,sha256=LabpIUrV3DGbi14tfOi2UOtlSzBdvZHEDkHMGwch_sU,85602
92
+ ccxt/paradex.py,sha256=srDConLWOPbnIi6k8_3g232vyhfnVOn5hAE_A7Z6scE,85667
93
93
  ccxt/paymium.py,sha256=Xz-H66MQWQcQ1KJbciSMeremCD9kl2up_-IQUvBt22Y,24419
94
94
  ccxt/phemex.py,sha256=KuJjGe49xKwy9diEPZGFn9gRYuOowFgtWoXDa1swx2c,223868
95
- ccxt/poloniex.py,sha256=vaLhyTpZpzBvrrM6dCA_TVypLwLICXotixqiM27q-MA,102301
95
+ ccxt/poloniex.py,sha256=eQnL1_atEDnCJvY7-m7FKkztHmCqlJotP2Sbvcf0dpY,102365
96
96
  ccxt/poloniexfutures.py,sha256=ZZ7Vs12Tt1D_twM40jhGa28wEBN_Iyy0IdbyUcEGnKA,79005
97
97
  ccxt/probit.py,sha256=IuKLtAprvH6_oo0ajqUHkK33aZ-d39oe2GXT0yK83RQ,76201
98
98
  ccxt/timex.py,sha256=Un10iGNwAHPifpQftyXdUwoqS-10ho6ZIesz2Ts_Iqg,72068
@@ -218,17 +218,17 @@ ccxt/abstract/xt.py,sha256=JkWvsic3L2O968BCr9H5Wd5NIbRE9aTT2A-9WbAtl0c,27146
218
218
  ccxt/abstract/yobit.py,sha256=8ycfCO8ORFly9hc0Aa47sZyX4_ZKPXS9h9yJzI-uQ7Q,1339
219
219
  ccxt/abstract/zaif.py,sha256=m15WHdl3gYy0GOXNZ8NEH8eE7sVh8c0T_ITNuU8vXeU,3935
220
220
  ccxt/abstract/zonda.py,sha256=X-hCW0SdX3YKZWixDyW-O2211M58Rno8kKJ6quY7rw4,7183
221
- ccxt/async_support/__init__.py,sha256=pL-ROTyLKdnKsAxydkv2Z65VXId5psjUAcXGCz78Y4E,16289
221
+ ccxt/async_support/__init__.py,sha256=mVUAgepJrGCbHsw_jBtqXqS_R62ayaK8UElPRxowuBQ,16289
222
222
  ccxt/async_support/ace.py,sha256=ucCkKaWRkILAIK9g4iEi1Q_-zmn0V89-rX8Al4WdK8s,42643
223
223
  ccxt/async_support/alpaca.py,sha256=HxonsP_MzbE7Z9r6hZ1rgmf_jPcP4H7H3z1YQgCv4qc,47716
224
224
  ccxt/async_support/ascendex.py,sha256=rSsbtR8BKtun-QFKduQ4rHr_h4rKqU0eB_-jYdWeWuM,152437
225
225
  ccxt/async_support/bequant.py,sha256=1hTwHovo1bW1XTIc8ZKjvJ-Xg6LfmpGdzT7TepykaVM,1188
226
- ccxt/async_support/bigone.py,sha256=0Ljt-JAt4i4Hvl7Jxd-MOggzqC0ra1v9_NlTgCbtptM,91434
227
- ccxt/async_support/binance.py,sha256=I3ReyQXrK07QLRK5Pt8sqRUNb3_GyXXE3y9vNSQTPLc,651175
226
+ ccxt/async_support/bigone.py,sha256=OEo7nE40Pe6POpLqAOYq5Gg0g-e5qCNU6UW2E5yuhWk,91564
227
+ ccxt/async_support/binance.py,sha256=wvT-T4wqxRhJ80TuIRRsInszO5rnqKU4QuI466-bC54,653584
228
228
  ccxt/async_support/binancecoinm.py,sha256=yeE73xG5UXD_X3VPul6DMGnV_mgJfWYskpas1BUDdCU,1740
229
229
  ccxt/async_support/binanceus.py,sha256=ZkGgQGB0bWYZTz7PqBCgw22yyOZbvd7GuJAJzzgDTCA,9216
230
230
  ccxt/async_support/binanceusdm.py,sha256=8ugRkx7vyYmn67wdkEEf2f-DFMGAoC4t09usKlPVNyw,2670
231
- ccxt/async_support/bingx.py,sha256=egzd8Awb-KOgh_fUa_BWVWllTG_V7fcAH4fCXN0_ycg,248108
231
+ ccxt/async_support/bingx.py,sha256=by3rIDIhMnPVcBHJzWn8bQG1qPsjKSKiyE2zjFl1WYg,250921
232
232
  ccxt/async_support/bit2c.py,sha256=Ix9TBLFXAlyCspEr707RGsSMsaRE22odMjdAYLfbbog,37309
233
233
  ccxt/async_support/bitbank.py,sha256=ZicMgUF9fZMYZ5EXPnUWy9S0lHYEJCv_wt0t0JZFvPg,43830
234
234
  ccxt/async_support/bitbay.py,sha256=jcaEXi2IhYTva8ezO_SfJhwxEZk7HST4J3NaxD16BQA,492
@@ -237,10 +237,10 @@ ccxt/async_support/bitcoincom.py,sha256=RiqwhK3RfxQ_PXTa860fphDCvwA8dalL-_rXlK85
237
237
  ccxt/async_support/bitfinex.py,sha256=pzyfQzUSxFYd6Ted0hNLgL545S8rFCrsoJc9Odk3zoo,73993
238
238
  ccxt/async_support/bitfinex2.py,sha256=Dn20G_rQ2Z5TdDWjjg45MiNrSuSRR8JowZ1X7Th7Nh0,161420
239
239
  ccxt/async_support/bitflyer.py,sha256=DTyHe4QBOED0xUEYoDfpGFL0sULp_3CxTXCWfDPbGbE,41971
240
- ccxt/async_support/bitget.py,sha256=g5NUgS_unqA7iwursi15c3OFmnu74hR1sp8I0BBs8nc,426089
240
+ ccxt/async_support/bitget.py,sha256=EPgqGfJko0sTBQtqADzYVWx_mrkiyqJ5t-QtmR5WTWw,426155
241
241
  ccxt/async_support/bithumb.py,sha256=Q0Cx_cRKZRfdpBAhQyINm63Qw3M6BRYQRiF0UqYzfis,48214
242
242
  ccxt/async_support/bitmart.py,sha256=DK5e-GZvF66oeJrwhclxlumdW9e-FUxI5PUZ0H73qxs,222972
243
- ccxt/async_support/bitmex.py,sha256=Kd_Mw3VuNB1PGxhpz3my295tzkAVQlT_GZVadTHR6nY,127887
243
+ ccxt/async_support/bitmex.py,sha256=jrA00luLv1XNvc1xnVjX8izvNFfPHBAY6GeMH2bU5U0,127951
244
244
  ccxt/async_support/bitopro.py,sha256=uWrH_HdRkf0UCs-N_JE1hCN6eWYWwXpc8VXMb0niM78,69762
245
245
  ccxt/async_support/bitpanda.py,sha256=2k3URBWrpnh2xHa7JiYenI7_4MW5UeOPGzetlmRkR4U,485
246
246
  ccxt/async_support/bitrue.py,sha256=iWjylMVLphkxj4jEeFh00pK-S4SuRosVdOtKHi5c3UI,137407
@@ -255,14 +255,14 @@ ccxt/async_support/btcalpha.py,sha256=8OefA3GsJ27eAL44yQQcRNOruHXAwTemjTPkpLKwjE
255
255
  ccxt/async_support/btcbox.py,sha256=rBXxuvdQaku5QYseQ4XSvMrCkohDefYmf-rGeS9W0IU,28004
256
256
  ccxt/async_support/btcmarkets.py,sha256=fTf_MDIM7NMwpbv6X5lYPLNg8tFKcviNiUB7N3yO6FI,53083
257
257
  ccxt/async_support/btcturk.py,sha256=Uq9rXMoDkXIy0nw1rzmw2e8eeRepcNtXKNYuw-02tkM,37242
258
- ccxt/async_support/bybit.py,sha256=gUc2PtEGzLYUxgXkWLofSN3NbWhJRnuPRHKyQVNe7us,443049
258
+ ccxt/async_support/bybit.py,sha256=9fhhPtgbJoLMP6gSx4K4PNNDyT5KegX0fnOsQmdptXo,443179
259
259
  ccxt/async_support/cex.py,sha256=DPQ4-rrO4Ut3zHax7wOnk47rfF5zVh4AgheFQ05pWDs,70470
260
260
  ccxt/async_support/coinbase.py,sha256=SK8RaT5LFn-y9EVKaa8vKacMA5IWxuJzQ6anBKHPpIQ,219821
261
261
  ccxt/async_support/coinbaseadvanced.py,sha256=Kupwnuxiu_qTjwCNV2asacoDUNFQvcaHNAznUJPhdQs,552
262
262
  ccxt/async_support/coinbaseexchange.py,sha256=u4s7rt6wavGgwzvfGtKkVeiBphq0hCG8VODQCb9Phi0,79537
263
- ccxt/async_support/coinbaseinternational.py,sha256=o7Fhezgb75wSyxzyH0hHYzRaNnQvkZtpylXdYYgRedo,98098
263
+ ccxt/async_support/coinbaseinternational.py,sha256=Y2d0pXbtMupgpsrDLwkAwWaLTgVDwM1Bc2mVIwaKRXA,98230
264
264
  ccxt/async_support/coincheck.py,sha256=N_0cDMAiFRC4G--QgOmSH8esKDr_lEVZUpukc4QoHk8,36148
265
- ccxt/async_support/coinex.py,sha256=63QkzHpbYJsVb69oMXPlgKzaCNWK4Uq3OJyJJE5lshc,259287
265
+ ccxt/async_support/coinex.py,sha256=2xfifAkz30xy6Vw9Vca_nHf3J9HQWcGbXvufeg7ueHE,259419
266
266
  ccxt/async_support/coinlist.py,sha256=VOqcXFP1fpK5vXKALS8GcioZhb1o-VvhpOUym594xl8,104761
267
267
  ccxt/async_support/coinmate.py,sha256=NI58zYMkuOL9lB3UFzyjUNbuFZGrtjZbb4PBFTOsbz4,46456
268
268
  ccxt/async_support/coinmetro.py,sha256=7Ao4bkTg4xR1vD9EB9y9oI65_s5fXPB6u9k2wP9gSwo,80967
@@ -271,19 +271,19 @@ ccxt/async_support/coinsph.py,sha256=q40WnrointhQKzu8uXvPdb9aMbYTMRJmacIG7kac-n4
271
271
  ccxt/async_support/coinspot.py,sha256=54ogK4qq8RNEnUIR17lpbGPIR9Ed1SXlDtxSKoxi1uQ,24034
272
272
  ccxt/async_support/cryptocom.py,sha256=Y4LvablaPicd4Jo-E-yG3Lz8bSiOb0qoke4xYaCrweY,137243
273
273
  ccxt/async_support/currencycom.py,sha256=1448gvEvLe04n6DHkGZK_B050IWz1iGF-Kpzz71OKVw,87550
274
- ccxt/async_support/delta.py,sha256=Gw0DAp7hh6N5xdUNhGYKONlPUgmajwsJrRCrJZaPSRg,151629
275
- ccxt/async_support/deribit.py,sha256=d7MKTNPnE9vZadaxWORjA-aj9OlczUDxRWyCMCG6iQc,162199
276
- ccxt/async_support/digifinex.py,sha256=Z_bjbAghA7Ewbzhjb5DyDw3U9_xMljYouVyPgPgGTkg,171096
274
+ ccxt/async_support/delta.py,sha256=3JT7yBi2azW-laqg_GG1HqKdBmvrCK5_D7-FzzsHGB4,151760
275
+ ccxt/async_support/deribit.py,sha256=2QrogCCMSCjIyjGcBhgy9u21nIFJqHtmwnVPvC9aqZs,162331
276
+ ccxt/async_support/digifinex.py,sha256=uzrvKMuFlqHDbFvq4K5tM2I-bp4SZtEmTG46DbDMdZA,171199
277
277
  ccxt/async_support/exmo.py,sha256=uVJsy3mfNLpfbY0ndl2EF9hipUylEw8J58J3wCGyyA0,115270
278
278
  ccxt/async_support/fmfwio.py,sha256=lzfSnPrB2ARcC3EIqAuBM4vyg6LJ6n8RE71Zvt3ez1s,1250
279
- ccxt/async_support/gate.py,sha256=mnIo9FSlS2kVFvCnfDOeKb1zyiKE79ozD2kXfTfzRGs,332056
279
+ ccxt/async_support/gate.py,sha256=yJD5Dgj8VH1CXWv_6cMsWSPDrA8Q1X4Qf87ENvMrXmg,332188
280
280
  ccxt/async_support/gateio.py,sha256=6_t032F9p9x5KGTjtSuqGXITzFOx-XAQBYLpsuQjzxw,459
281
281
  ccxt/async_support/gemini.py,sha256=nB8pdA9FAezRsRhF6_7w-T5keDtlahjPo9WPApEJbsY,81474
282
282
  ccxt/async_support/hashkey.py,sha256=xiS8FXemxDKVKQNJBtyOYG5-QaizyyGR8-I1CusmFcY,192833
283
283
  ccxt/async_support/hitbtc.py,sha256=_CPsYQhE-1wDAOFGi4Xq9OxTqMuZ4ABwXbpSuOvMuNg,154618
284
284
  ccxt/async_support/hitbtc3.py,sha256=dmSYoD2o4av_zzbZI8HNIoj8BWxA7QozsVpy8JaOXzU,469
285
285
  ccxt/async_support/hollaex.py,sha256=msUnnbWLNeCxFW77BnfLoFWBdvQIDwV7Rtbi9TA4TYY,76574
286
- ccxt/async_support/htx.py,sha256=y56SHOMwkVX5iPUPuWAm---t1X1Yoshf6izdSSw_Li4,433921
286
+ ccxt/async_support/htx.py,sha256=qSNqgbB_gpeZ_j2I9Oc3mcnk7G-bKzpHKptPRG5PAbo,433944
287
287
  ccxt/async_support/huobi.py,sha256=fup0j6wQ1khAtfbb1H4CSyJAOzhxuoHMmrM6sgTuhr8,452
288
288
  ccxt/async_support/huobijp.py,sha256=OeEHn0GXQ56YGeUM21zwRqsEm8d2LD_SDspBsQMlds4,90352
289
289
  ccxt/async_support/hyperliquid.py,sha256=sjt1Z2dv2YCWdhSfOmjYLmxYhcp2zd7M-_3Wh1S4lWE,123645
@@ -291,9 +291,9 @@ ccxt/async_support/idex.py,sha256=UcAvdMc2CP_6E8lET4rmQiIP-RaUfZHSo6pQeA17v-g,73
291
291
  ccxt/async_support/independentreserve.py,sha256=-W-SMPkJwY9FMN5I6l5eL8cPwC0_UuqmfU5yMmyJoiw,38145
292
292
  ccxt/async_support/indodax.py,sha256=-dcr5VdpSkcLgy2KUlumm0NhGs4_mNstysIlunhF2-4,55066
293
293
  ccxt/async_support/kraken.py,sha256=ou7UWH5-I6uoEFQvCiBaKZUYGjYc4lewK72Q1CUM094,136403
294
- ccxt/async_support/krakenfutures.py,sha256=qtXSy52rlCa8LeqrqFWkiPvO7Og-nCoqXJlL3ZDph5A,120197
294
+ ccxt/async_support/krakenfutures.py,sha256=Wcry7ar4Esbi_3Urp8LcnzPMsThN6KcdU6QN5YMxDCk,120327
295
295
  ccxt/async_support/kucoin.py,sha256=5Tf9244VECUmOvckxH-_6ug1_i-SJimUo_LUv1XnBEc,230996
296
- ccxt/async_support/kucoinfutures.py,sha256=KYqgQcDQMaOEHHKA_XChoF4V6uLTHv5Qkdc44HjJwy4,133288
296
+ ccxt/async_support/kucoinfutures.py,sha256=D9WAsRoD3nUt-sUOzl4HU65zUUzxgve4aTdf6Xe5GLo,133418
297
297
  ccxt/async_support/kuna.py,sha256=QtzLgqgv8mLXECN2drWNVtdvm_vy-bawdxKvozDzbVE,96573
298
298
  ccxt/async_support/latoken.py,sha256=9BUu8akWtbBtAzVr_c_cYLkiLQqcJdSdkJbHmuLee-Y,79992
299
299
  ccxt/async_support/lbank.py,sha256=MeqPjECSmsplCtatu7Ns6sHRwzAGP_6S5MwB2BomnXk,116757
@@ -305,14 +305,14 @@ ccxt/async_support/ndax.py,sha256=IX7cFNjCELJIImof_jVsNzihXjCOmMyqRnlFHnzOq_w,10
305
305
  ccxt/async_support/novadax.py,sha256=YNKUM1CGFK7lpBwbxSSL1IAEJCRVsNxeITkwtw6VWCM,64804
306
306
  ccxt/async_support/oceanex.py,sha256=nU_3t_nXz4WP0k3m5cHL3i67REZMpFSgtboeKPrwY-c,41458
307
307
  ccxt/async_support/okcoin.py,sha256=TV0xooV4DIw1M8DrMNQBsDv4fhSTEp7Xtb5WK-F9bvc,151650
308
- ccxt/async_support/okx.py,sha256=VjfpKDVsCpOJ0HB72MSyhBCj0cdGUjYKSoDVugLIJ24,381783
308
+ ccxt/async_support/okx.py,sha256=tKqkIR1WpDMveo2ylTyOBQdKrOwh7SAbhDe_GMIlYbw,383751
309
309
  ccxt/async_support/onetrading.py,sha256=cZSvu7ZIavao-bqv1CgQatPfsrfXDgCt2UfxMtYsOMM,88827
310
- ccxt/async_support/oxfun.py,sha256=dwBuBi8-JFyU4IoNQCtq73zoiU_i6CK4vhEi2YT02Dc,125304
310
+ ccxt/async_support/oxfun.py,sha256=Tx6_o3oWTnqIhBfUyJ1KwdxlYeAsAdZwAkk-q0ifjbY,125368
311
311
  ccxt/async_support/p2b.py,sha256=VKUX8u7gtHkKDwBjAyskScm2FEs6xxDuKLXE-jSHXwY,54532
312
- ccxt/async_support/paradex.py,sha256=OUzR0JoTe2cjYQa6AilFTJ-XfU8KKSbuSmFtDOl69iw,86210
312
+ ccxt/async_support/paradex.py,sha256=e46UVIJU0WlwE1sPb6rvs0f60S6vjcdnNXhG2locNUY,86275
313
313
  ccxt/async_support/paymium.py,sha256=GIAgyOjR11o1pfq8om4Pwr68jMkLoEwEz7sB8lIDMI0,24607
314
314
  ccxt/async_support/phemex.py,sha256=7Tx7m5Yy_LltWX1EDSeJOU-9wz2-ZouAk7sp8-11DGQ,224686
315
- ccxt/async_support/poloniex.py,sha256=hYmiGQfwKyYcaPp1Q1Qa4gPP0TaqJrG2367y-q0WxXE,102849
315
+ ccxt/async_support/poloniex.py,sha256=Tnv1X7pwk7cjnUdBT6iB5MAoewiHmf-dgAr5P8dKdtE,102913
316
316
  ccxt/async_support/poloniexfutures.py,sha256=6_RpKxHjezUpd9kvUpUogVtMGpn9jYOPODdnsngZyyk,79391
317
317
  ccxt/async_support/probit.py,sha256=nj7lDM1cQ6c1SL0dw4fX814t8y1zKS2RumpgjDYopsc,76593
318
318
  ccxt/async_support/timex.py,sha256=vRHjqc-6uMgZTY-sFTBApU_QBnrUri8gaHPNw_Na3Jo,72430
@@ -330,7 +330,7 @@ ccxt/async_support/yobit.py,sha256=GQhvYrsGHQrVdTrNHQxx9isEGqUABexlllzao9HL3f8,5
330
330
  ccxt/async_support/zaif.py,sha256=-ZTr8M2JaIRCL90VrbCDXBMAsZwbiwsFChSQ2rWODuQ,29044
331
331
  ccxt/async_support/zonda.py,sha256=njWK4t42n7BowCvc3j5WKwCxEDc2Y8vi0d-yp296-q0,81883
332
332
  ccxt/async_support/base/__init__.py,sha256=aVYSsFi--b4InRs9zDN_wtCpj8odosAB726JdUHavrk,67
333
- ccxt/async_support/base/exchange.py,sha256=6kBDNCIgAlFjJ6ITqBm_UvlAVKmRQ0_y09gNlUQ9nGo,111720
333
+ ccxt/async_support/base/exchange.py,sha256=nBwC1uBZViO3Y_2n6kXFmnmzmGq_InNRMnkzIf1xELk,111876
334
334
  ccxt/async_support/base/throttler.py,sha256=tvDVcdRUVYi8fZRlEcnqtgzcgB_KMUMRs5Pu8tuU-tU,1847
335
335
  ccxt/async_support/base/ws/__init__.py,sha256=uockzpLuwntKGZbs5EOWFe-Zg-k6Cj7GhNJLc_RX0so,1791
336
336
  ccxt/async_support/base/ws/aiohttp_client.py,sha256=5IEiT0elWI9a7Vr-KV0jgmlbpLJWBzIlrLaCkTKGaqY,5752
@@ -344,20 +344,20 @@ ccxt/async_support/base/ws/order_book_side.py,sha256=GhnGUt78pJ-AYL_Dq9produGjmB
344
344
  ccxt/base/__init__.py,sha256=eTx1OE3HJjspFUQjGm6LBhaQiMKJnXjkdP-JUXknyQ0,1320
345
345
  ccxt/base/decimal_to_precision.py,sha256=fgWRBzRTtsf3r2INyS4f7WHlzgjB5YM1ekiwqD21aac,6634
346
346
  ccxt/base/errors.py,sha256=Pad-6ugvGUwhoYuKUliX-N7FTrcnKCQGFjsaq2tMn0I,4610
347
- ccxt/base/exchange.py,sha256=cxeon9dEn3pJ2D8KwFZ6isAoxEwQwLfhW7YVvn_5U3M,299018
347
+ ccxt/base/exchange.py,sha256=maCwGjJyeRuN_DaDZmomjL9xgAjILBJrIa1hy1foMkw,299339
348
348
  ccxt/base/precise.py,sha256=koce64Yrp6vFbGijJtUt-QQ6XhJgeGTCksZ871FPp_A,8886
349
- ccxt/base/types.py,sha256=M9-wX1o2UqZxMMuLZgTGuQ8J6LpiGQsen17QhKwDc0k,9634
350
- ccxt/pro/__init__.py,sha256=pjjC6DRQjtebsJFqT4TfJwgNveRvwE5VX3sOZZJNA8c,7710
349
+ ccxt/base/types.py,sha256=sI5Z0rP_QKGvvukEDEyNZFmpw0FWKld1Km3KC6wRTlU,9673
350
+ ccxt/pro/__init__.py,sha256=k2TaE71oVYoqzpCL8BrLeZNIRMVPZfCJ90fGxJCTgJw,7710
351
351
  ccxt/pro/alpaca.py,sha256=xh1yg1Ok-Zh_Mfx-MBjNrfJDs6MUU0exFfEj3GuQPC4,27631
352
352
  ccxt/pro/ascendex.py,sha256=QueLgISoIxgGSOta2W7En4pwAsEXbTP5q5ef4UjpTQQ,37524
353
353
  ccxt/pro/bequant.py,sha256=33OEUWBi4D9-2w8CmkwN3aF1qS-AlLqX3pxrWwNbXPY,1552
354
- ccxt/pro/binance.py,sha256=U1SZFos3GkA-f1w-_UpZHVlFJC2Kx_sL-_A-ECmp1bU,196509
354
+ ccxt/pro/binance.py,sha256=R4G7fmAFeDEEC9NlLROB55M5_TqIkO5ZlA5YMzAS4-U,200367
355
355
  ccxt/pro/binancecoinm.py,sha256=LlgF4rXHHrsQMaklhTEzSiE6U9V25AjHHg_DRat7Mf0,1036
356
356
  ccxt/pro/binanceus.py,sha256=lcRxvQSJ5sJCx1FqzDI9PVOg_vvpFwwlZs4_8QkoPJ0,1995
357
357
  ccxt/pro/binanceusdm.py,sha256=lLdOv0d-lM-1wfCc_y_POb6GdmVIiX7PFzmKTWsVyNw,1512
358
358
  ccxt/pro/bingx.py,sha256=Nj0sPJtM5hRmyI3Azo0E9bimvMYRaCkG1kiaVNjj1_8,60901
359
359
  ccxt/pro/bitcoincom.py,sha256=zAX6hiz4hS6Un8dSGp88rpnvItxQHfNmsfF0IZ2xIVA,1181
360
- ccxt/pro/bitfinex.py,sha256=BlgNy4_TUPggvfcfpfl7309Phons-2lFp73OdDbQHpw,25305
360
+ ccxt/pro/bitfinex.py,sha256=pvwMA7w-Sv45XyRcEEIXXKXBl2kC8rvl8D1KXnoont4,25329
361
361
  ccxt/pro/bitfinex2.py,sha256=H2evIdXrXaHpmvlqoPCOqADYjiHqvZVLf9EnbYHBOj8,43106
362
362
  ccxt/pro/bitget.py,sha256=IcXYY1ZC_1AagkJY7FSEoCYkxQUZv1H6GaGFP3fetuM,87712
363
363
  ccxt/pro/bithumb.py,sha256=cAiRpOT1kxlpphu7xd6NYH43j7of_kXXy0M9YqXeat4,17411
@@ -395,7 +395,7 @@ ccxt/pro/hyperliquid.py,sha256=IB-fVwHfbqoGev1OqEkDT6Y6cMSFi--_k6EJ_E3bJxU,42300
395
395
  ccxt/pro/idex.py,sha256=WAY58yMHFUPoqZUGFvzxqcKizvMuFXqdZ6BD0WgstQA,28361
396
396
  ccxt/pro/independentreserve.py,sha256=JWMjJ0FUs4LhybAZ4rjHMQIWeOu5Njaj8aVimA7kf30,11356
397
397
  ccxt/pro/kraken.py,sha256=alloCzXC0EvYoAWLf0osOAcDOHAYA1uRM2f5k-wap9k,66576
398
- ccxt/pro/krakenfutures.py,sha256=Y9vqrxNbr7OJ0BIMZqrVtMedUzk7XtOZuF_OGQ2tUJc,64033
398
+ ccxt/pro/krakenfutures.py,sha256=XHIOW-xXi5ROvSArUxTmTXsUGNiRjm2oCwf5OAMY7bk,64158
399
399
  ccxt/pro/kucoin.py,sha256=pxU42TftiKQaggpViEZ-rWfdI7GgqV43rHIxMgwluhE,61038
400
400
  ccxt/pro/kucoinfutures.py,sha256=DU5vLB0Oufffcn1Rv-aYqpV9Mx7gGlRdi7YC9hNO8sw,56277
401
401
  ccxt/pro/lbank.py,sha256=p6Ynjmud9B3Yw1SGTPdTB36AW4KtyR1JOotqFBdyyxs,35083
@@ -408,7 +408,7 @@ ccxt/pro/onetrading.py,sha256=2LP1LvwbQrwsyXDPRU6_ez4fWR3htKFuzC-4CenHzhU,54817
408
408
  ccxt/pro/oxfun.py,sha256=-O1xdbfnF5Q3lC16vxc4J2NnYMhAGbafiOZTn0yEsVE,46741
409
409
  ccxt/pro/p2b.py,sha256=S-gzeaSOW_WBZdsllE75RuxCi9KGnJ25trlCt1OG0Z8,20919
410
410
  ccxt/pro/paradex.py,sha256=3YzYqrGXHvaRBA_r2zwUHVKyFI3CV_ZhCekca_K1jyw,14431
411
- ccxt/pro/phemex.py,sha256=3nTvPlMd9X9UD-7Jcc5TFxABBJwvf9EyYI4Gz5Vqupo,63221
411
+ ccxt/pro/phemex.py,sha256=lj6sE6XWtB95I3EVcdR70Dfw2mvLJGisulibwgojSLU,63433
412
412
  ccxt/pro/poloniex.py,sha256=QKpKOTW73iUQxaFXFZ_0KbyPFJhXtMWNNsfgP-CBeXU,53574
413
413
  ccxt/pro/poloniexfutures.py,sha256=a3u8CIc7CuK04jU4PTLPVtGsw7omJ80KRopshziShYU,42020
414
414
  ccxt/pro/probit.py,sha256=_oX1OHOd9M5D_fT2w3-zqACXouoUOFsbKxb6Ew3sNOk,23223
@@ -416,7 +416,7 @@ ccxt/pro/upbit.py,sha256=ViN4k89UDZykSOhSF_D0-Lt3ZwYDoBmzITC3oEyUA0s,24055
416
416
  ccxt/pro/vertex.py,sha256=n0BFW9So4VxSsjv5vJbFCqeaq8cy-IVe_bw-zB1pC48,40580
417
417
  ccxt/pro/wazirx.py,sha256=St9GkOg3vFZ4o3NySL_izzbrs4Kes2-1iS7iznDxZ6o,30247
418
418
  ccxt/pro/whitebit.py,sha256=eZ35sh_VGAzOkCbu8wh-Dw1FWU7XiEb76ID3MdOqH4Y,37046
419
- ccxt/pro/woo.py,sha256=TtGZVRdh0IDYICHYTBEgGMBsWm1SoX6aCokw-CMoKy0,48845
419
+ ccxt/pro/woo.py,sha256=UWRqDIGv5A-pfF-_DZg7lLRfl94EACC1fz9BDUDWu30,51563
420
420
  ccxt/pro/woofipro.py,sha256=QkZB0FzpkNOS3m7sEn5tKuJtMX60_J6LrelXACIiUZc,51637
421
421
  ccxt/pro/xt.py,sha256=AkO1NpgcKp6RAnB_asqMeYxoIE4psUsNiTHJtKuPxUU,48417
422
422
  ccxt/static_dependencies/__init__.py,sha256=tzFje8cloqmiIE6kola3EaYC0SnD1izWnri69hzHsSw,168
@@ -646,12 +646,12 @@ ccxt/static_dependencies/toolz/curried/operator.py,sha256=ML92mknkAwzBl2NCm-4wer
646
646
  ccxt/static_dependencies/typing_inspect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
647
647
  ccxt/static_dependencies/typing_inspect/typing_inspect.py,sha256=5gIWomLPfuDpgd3gX1GlnX0MuXM3VorR4j2W2qXORiQ,28269
648
648
  ccxt/test/__init__.py,sha256=GKPbEcj0Rrz5HG-GUm-iY1IHhDYmlvcBXZAGk6-m2CI,141
649
- ccxt/test/tests_async.py,sha256=Hfdxrjw3nP7lGyjYs35ZgTBM7pF6UIJrkZWz-ycceRw,84579
650
- ccxt/test/tests_helpers.py,sha256=xhOILoZ_x3RSfQjtKt6AQlkp9DkOtpTQe8GAUUZoM6s,10069
651
- ccxt/test/tests_init.py,sha256=eVwwUHujX9t4rjgo4TqEeg7DDhR1Hb_e2SJN8NVGyl0,998
652
- ccxt/test/tests_sync.py,sha256=tQNiZZi3ulprLY513aSadwieBCuNyzyRLE8nSTZIUvw,83641
653
- ccxt-4.4.12.dist-info/LICENSE.txt,sha256=EIb9221AhMHV7xF1_55STFdKTFsnJVJYkRpY2Lnvo5w,1068
654
- ccxt-4.4.12.dist-info/METADATA,sha256=7H8eh-k0vP5GqGzjnjBpycbOsBOH5Oc0G31nPCORoUM,114994
655
- ccxt-4.4.12.dist-info/WHEEL,sha256=z9j0xAa_JmUKMpmz72K0ZGALSM_n-wQVmGbleXx2VHg,110
656
- ccxt-4.4.12.dist-info/top_level.txt,sha256=CkQDuCTDKNcImPV60t36G6MdYfxsAPNiSaEwifVoVMo,5
657
- ccxt-4.4.12.dist-info/RECORD,,
649
+ ccxt/test/tests_async.py,sha256=tzlepTRAHhYpslYWnwdj2V6fEbSYwd7N7SEG-OlesjU,85301
650
+ ccxt/test/tests_helpers.py,sha256=pbwibQjex529cT5QuxmfifeFU6ZQCHaqQswQ-2Vzc1w,9506
651
+ ccxt/test/tests_init.py,sha256=GodMIrJue4KBHHqD4vSPZxokPWpxbZIuEp19UdxlFAg,1166
652
+ ccxt/test/tests_sync.py,sha256=ohf-7amQF8mD494F0G8gLSyHdPj-Htl3U8Kihkz19fY,84363
653
+ ccxt-4.4.13.dist-info/LICENSE.txt,sha256=EIb9221AhMHV7xF1_55STFdKTFsnJVJYkRpY2Lnvo5w,1068
654
+ ccxt-4.4.13.dist-info/METADATA,sha256=bOJ7BGBsGACaRIlUFDjywoGijEW2RQb-HPcaLxkikEA,114487
655
+ ccxt-4.4.13.dist-info/WHEEL,sha256=z9j0xAa_JmUKMpmz72K0ZGALSM_n-wQVmGbleXx2VHg,110
656
+ ccxt-4.4.13.dist-info/top_level.txt,sha256=CkQDuCTDKNcImPV60t36G6MdYfxsAPNiSaEwifVoVMo,5
657
+ ccxt-4.4.13.dist-info/RECORD,,
File without changes