ccxt 4.4.100__py2.py3-none-any.whl → 4.5.0__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.
- ccxt/__init__.py +1 -1
- ccxt/async_support/__init__.py +1 -1
- ccxt/async_support/base/exchange.py +2 -2
- ccxt/base/errors.py +6 -0
- ccxt/base/exchange.py +1 -1
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/mexc.py +10 -11
- {ccxt-4.4.100.dist-info → ccxt-4.5.0.dist-info}/METADATA +4 -4
- {ccxt-4.4.100.dist-info → ccxt-4.5.0.dist-info}/RECORD +12 -12
- {ccxt-4.4.100.dist-info → ccxt-4.5.0.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.4.100.dist-info → ccxt-4.5.0.dist-info}/WHEEL +0 -0
- {ccxt-4.4.100.dist-info → ccxt-4.5.0.dist-info}/top_level.txt +0 -0
ccxt/__init__.py
CHANGED
ccxt/async_support/__init__.py
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
# -----------------------------------------------------------------------------
|
4
4
|
|
5
|
-
__version__ = '4.
|
5
|
+
__version__ = '4.5.0'
|
6
6
|
|
7
7
|
# -----------------------------------------------------------------------------
|
8
8
|
|
@@ -585,7 +585,7 @@ class Exchange(BaseExchange):
|
|
585
585
|
|
586
586
|
def decode_proto_msg(self, data):
|
587
587
|
if not MessageToDict:
|
588
|
-
raise NotSupported(self.id + ' requires protobuf to decode messages, please install it with `pip install "protobuf==5.29.
|
588
|
+
raise NotSupported(self.id + ' requires protobuf to decode messages, please install it with `pip install "protobuf==5.29.5"`')
|
589
589
|
message = PushDataV3ApiWrapper_pb2.PushDataV3ApiWrapper()
|
590
590
|
message.ParseFromString(data)
|
591
591
|
dict_msg = MessageToDict(message)
|
ccxt/base/errors.py
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
# ----------------------------------------------------------------------------
|
2
|
+
|
3
|
+
# PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
|
4
|
+
# https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
|
5
|
+
# EDIT THE CORRESPONDENT .ts FILE INSTEAD
|
6
|
+
|
1
7
|
error_hierarchy = {
|
2
8
|
'BaseError': {
|
3
9
|
'ExchangeError': {
|
ccxt/base/exchange.py
CHANGED
ccxt/pro/__init__.py
CHANGED
ccxt/pro/mexc.py
CHANGED
@@ -855,7 +855,6 @@ class mexc(ccxt.async_support.mexc):
|
|
855
855
|
timestamp = self.safe_integer_n(message, ['t', 'ts', 'sendTime'])
|
856
856
|
storedOrderBook['timestamp'] = timestamp
|
857
857
|
storedOrderBook['datetime'] = self.iso8601(timestamp)
|
858
|
-
storedOrderBook['nonce'] = self.safe_integer(data, 'fromVersion')
|
859
858
|
except Exception as e:
|
860
859
|
del client.subscriptions[messageHash]
|
861
860
|
client.reject(e, messageHash)
|
@@ -1514,14 +1513,14 @@ class mexc(ccxt.async_support.mexc):
|
|
1514
1513
|
channel = 'spot@public.aggre.bookTicker.v3.api.pb@100ms@' + market['id']
|
1515
1514
|
url = self.urls['api']['ws']['spot']
|
1516
1515
|
params['unsubscribed'] = True
|
1517
|
-
|
1516
|
+
self.watch_spot_public(channel, messageHash, params)
|
1518
1517
|
else:
|
1519
1518
|
channel = 'unsub.ticker'
|
1520
1519
|
requestParams: dict = {
|
1521
1520
|
'symbol': market['id'],
|
1522
1521
|
}
|
1523
1522
|
url = self.urls['api']['ws']['swap']
|
1524
|
-
|
1523
|
+
self.watch_swap_public(channel, messageHash, requestParams, params)
|
1525
1524
|
client = self.client(url)
|
1526
1525
|
self.handle_unsubscriptions(client, [messageHash])
|
1527
1526
|
return None
|
@@ -1578,7 +1577,7 @@ class mexc(ccxt.async_support.mexc):
|
|
1578
1577
|
request['params'] = {}
|
1579
1578
|
messageHashes.append('unsubscribe:ticker')
|
1580
1579
|
client = self.client(url)
|
1581
|
-
|
1580
|
+
self.watch_multiple(url, messageHashes, self.extend(request, params), messageHashes)
|
1582
1581
|
self.handle_unsubscriptions(client, messageHashes)
|
1583
1582
|
return None
|
1584
1583
|
|
@@ -1612,7 +1611,7 @@ class mexc(ccxt.async_support.mexc):
|
|
1612
1611
|
'params': topics,
|
1613
1612
|
}
|
1614
1613
|
client = self.client(url)
|
1615
|
-
|
1614
|
+
self.watch_multiple(url, messageHashes, self.extend(request, params), messageHashes)
|
1616
1615
|
self.handle_unsubscriptions(client, messageHashes)
|
1617
1616
|
return None
|
1618
1617
|
|
@@ -1636,7 +1635,7 @@ class mexc(ccxt.async_support.mexc):
|
|
1636
1635
|
url = self.urls['api']['ws']['spot']
|
1637
1636
|
channel = 'spot@public.kline.v3.api.pb@' + market['id'] + '@' + timeframeId
|
1638
1637
|
params['unsubscribed'] = True
|
1639
|
-
|
1638
|
+
self.watch_spot_public(channel, messageHash, params)
|
1640
1639
|
else:
|
1641
1640
|
url = self.urls['api']['ws']['swap']
|
1642
1641
|
channel = 'unsub.kline'
|
@@ -1644,7 +1643,7 @@ class mexc(ccxt.async_support.mexc):
|
|
1644
1643
|
'symbol': market['id'],
|
1645
1644
|
'interval': timeframeId,
|
1646
1645
|
}
|
1647
|
-
|
1646
|
+
self.watch_swap_public(channel, messageHash, requestParams, params)
|
1648
1647
|
client = self.client(url)
|
1649
1648
|
self.handle_unsubscriptions(client, [messageHash])
|
1650
1649
|
return None
|
@@ -1668,14 +1667,14 @@ class mexc(ccxt.async_support.mexc):
|
|
1668
1667
|
frequency, params = self.handle_option_and_params(params, 'watchOrderBook', 'frequency', '100ms')
|
1669
1668
|
channel = 'spot@public.aggre.depth.v3.api.pb@' + frequency + '@' + market['id']
|
1670
1669
|
params['unsubscribed'] = True
|
1671
|
-
|
1670
|
+
self.watch_spot_public(channel, messageHash, params)
|
1672
1671
|
else:
|
1673
1672
|
url = self.urls['api']['ws']['swap']
|
1674
1673
|
channel = 'unsub.depth'
|
1675
1674
|
requestParams: dict = {
|
1676
1675
|
'symbol': market['id'],
|
1677
1676
|
}
|
1678
|
-
|
1677
|
+
self.watch_swap_public(channel, messageHash, requestParams, params)
|
1679
1678
|
client = self.client(url)
|
1680
1679
|
self.handle_unsubscriptions(client, [messageHash])
|
1681
1680
|
return None
|
@@ -1697,14 +1696,14 @@ class mexc(ccxt.async_support.mexc):
|
|
1697
1696
|
url = self.urls['api']['ws']['spot']
|
1698
1697
|
channel = 'spot@public.aggre.deals.v3.api.pb@100ms@' + market['id']
|
1699
1698
|
params['unsubscribed'] = True
|
1700
|
-
|
1699
|
+
self.watch_spot_public(channel, messageHash, params)
|
1701
1700
|
else:
|
1702
1701
|
url = self.urls['api']['ws']['swap']
|
1703
1702
|
channel = 'unsub.deal'
|
1704
1703
|
requestParams: dict = {
|
1705
1704
|
'symbol': market['id'],
|
1706
1705
|
}
|
1707
|
-
|
1706
|
+
self.watch_swap_public(channel, messageHash, requestParams, params)
|
1708
1707
|
client = self.client(url)
|
1709
1708
|
self.handle_unsubscriptions(client, [messageHash])
|
1710
1709
|
return None
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.
|
3
|
+
Version: 4.5.0
|
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
|
@@ -270,13 +270,13 @@ console.log(version, Object.keys(exchanges));
|
|
270
270
|
|
271
271
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
272
272
|
|
273
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.
|
274
|
-
* unpkg: https://unpkg.com/ccxt@4.
|
273
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.5.0/dist/ccxt.browser.min.js
|
274
|
+
* unpkg: https://unpkg.com/ccxt@4.5.0/dist/ccxt.browser.min.js
|
275
275
|
|
276
276
|
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.
|
277
277
|
|
278
278
|
```HTML
|
279
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.
|
279
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.5.0/dist/ccxt.browser.min.js"></script>
|
280
280
|
```
|
281
281
|
|
282
282
|
Creates a global `ccxt` object:
|
@@ -1,4 +1,4 @@
|
|
1
|
-
ccxt/__init__.py,sha256=
|
1
|
+
ccxt/__init__.py,sha256=E31QQv2YDnw0vEn8wp0n7Ol4349Z0s8QNVwcnasqEVw,16461
|
2
2
|
ccxt/alpaca.py,sha256=oO0YJHxo5_1iYyGVRMbxfGyPahqzuMlE7LZ3TMYgPGo,80694
|
3
3
|
ccxt/apex.py,sha256=TuOp4vnCczdRG__9thnb3RIidoVeUDZbOSGbusjJG78,82740
|
4
4
|
ccxt/ascendex.py,sha256=unk7MeeQkmgT2YxCXKXG81z2ylcS_r6a7IuvnxnlOT8,158696
|
@@ -214,7 +214,7 @@ ccxt/abstract/xt.py,sha256=n3eX1cItL_J0j8prOViV-C_tRwIFv_GO8JTvZZw8jv8,27837
|
|
214
214
|
ccxt/abstract/yobit.py,sha256=8ycfCO8ORFly9hc0Aa47sZyX4_ZKPXS9h9yJzI-uQ7Q,1339
|
215
215
|
ccxt/abstract/zaif.py,sha256=m15WHdl3gYy0GOXNZ8NEH8eE7sVh8c0T_ITNuU8vXeU,3935
|
216
216
|
ccxt/abstract/zonda.py,sha256=X-hCW0SdX3YKZWixDyW-O2211M58Rno8kKJ6quY7rw4,7183
|
217
|
-
ccxt/async_support/__init__.py,sha256=
|
217
|
+
ccxt/async_support/__init__.py,sha256=Rkgur-yasOkZCX_TR7zxUHwxSISVJGTJgaxdKCYGSOg,16254
|
218
218
|
ccxt/async_support/alpaca.py,sha256=oFpSnAjX-faRgTN4d5rwHa08WRaCkwiAbHGZ7JBe6Ww,81140
|
219
219
|
ccxt/async_support/apex.py,sha256=ouj8uyC4f8Ar3IowHxbrPTBp-g2ctheo5ir_YLsg-Gg,83228
|
220
220
|
ccxt/async_support/ascendex.py,sha256=Nrivs8jnl5lN2IYpGG_Z23QDqUOAqDd0C_0Nv10bnm8,159533
|
@@ -323,7 +323,7 @@ ccxt/async_support/yobit.py,sha256=FBI7ajvxprTYUqX8zosd7-LntDft8vIEjRTHng5ry8Y,5
|
|
323
323
|
ccxt/async_support/zaif.py,sha256=mh0PETLMTJV509zhT7jukddg6S7YhvwhCT7zqxC6YLA,31364
|
324
324
|
ccxt/async_support/zonda.py,sha256=7hmHotE5JBd8034d1ZbX3oIeWIpQFrQb8aK-dP3Btx0,85327
|
325
325
|
ccxt/async_support/base/__init__.py,sha256=aVYSsFi--b4InRs9zDN_wtCpj8odosAB726JdUHavrk,67
|
326
|
-
ccxt/async_support/base/exchange.py,sha256=
|
326
|
+
ccxt/async_support/base/exchange.py,sha256=YMd_vhLNV7Ay-PhgjeEmksr2-wUhQk6TSj_gsaJhLYg,121268
|
327
327
|
ccxt/async_support/base/throttler.py,sha256=tvDVcdRUVYi8fZRlEcnqtgzcgB_KMUMRs5Pu8tuU-tU,1847
|
328
328
|
ccxt/async_support/base/ws/__init__.py,sha256=uockzpLuwntKGZbs5EOWFe-Zg-k6Cj7GhNJLc_RX0so,1791
|
329
329
|
ccxt/async_support/base/ws/cache.py,sha256=xf2VOtfUwloxSlIQ39M1RGZHWQzyS9IGhB5NX6cDcAc,8370
|
@@ -334,11 +334,11 @@ ccxt/async_support/base/ws/order_book.py,sha256=uBUaIHhzMRykpmo4BCsdJ-t_HozS6Vxh
|
|
334
334
|
ccxt/async_support/base/ws/order_book_side.py,sha256=GhnGUt78pJ-AYL_Dq9produGjmBJLCI5FHIRdMz1O-g,6551
|
335
335
|
ccxt/base/__init__.py,sha256=eTx1OE3HJjspFUQjGm6LBhaQiMKJnXjkdP-JUXknyQ0,1320
|
336
336
|
ccxt/base/decimal_to_precision.py,sha256=3XI30u9YudHbTA438397u5rkdlXa3atxwZEfUus3C4k,6803
|
337
|
-
ccxt/base/errors.py,sha256=
|
338
|
-
ccxt/base/exchange.py,sha256=
|
337
|
+
ccxt/base/errors.py,sha256=OGhWNvNtRlJOzFx-n1x3ZjTnaPpfWH0Vc0xACS-MeDw,5012
|
338
|
+
ccxt/base/exchange.py,sha256=W1B4s4X8fIXF9lvAte_LmBb8FYHtFF0qATcJgBfXEYA,334124
|
339
339
|
ccxt/base/precise.py,sha256=koce64Yrp6vFbGijJtUt-QQ6XhJgeGTCksZ871FPp_A,8886
|
340
340
|
ccxt/base/types.py,sha256=Gvbogh9i7pPH7Z18xesYeDPribqqwq8uKpOv-YODFBs,11505
|
341
|
-
ccxt/pro/__init__.py,sha256=
|
341
|
+
ccxt/pro/__init__.py,sha256=ZUUG71tig_pg9iQqSMyQ1UPLLOS1R8UCXrB3wi5NjUI,11463
|
342
342
|
ccxt/pro/alpaca.py,sha256=REAEZxdv2pY8xjxBGCBca3nPKpIdleVqr-IVpuVmADg,27637
|
343
343
|
ccxt/pro/apex.py,sha256=FLBaLN2FESIh9gqHPVwf0IkkIHpxGHHUcFwgBGBEkrA,42018
|
344
344
|
ccxt/pro/ascendex.py,sha256=P0DnIMIA-BIGxyoEQBLGtjH-whRhkPbhe8gU2s5V238,37526
|
@@ -391,7 +391,7 @@ ccxt/pro/kucoin.py,sha256=4uZJdkTxlHgljCtHJanR9Ek_klGKeDP6AhSv6S7CzxQ,60775
|
|
391
391
|
ccxt/pro/kucoinfutures.py,sha256=H6OfCz-E0zympF-A_JyeiAbd-QxoOmF3GZa4w5evoIQ,56091
|
392
392
|
ccxt/pro/lbank.py,sha256=CyrosUibFTA_CwCamYoWtrOzg_scpR79GvO4p5wu7Tg,35582
|
393
393
|
ccxt/pro/luno.py,sha256=hlszbPJprTYP0WoR8cQM8sgtKTJcEVWG14KiDAw8TkY,12446
|
394
|
-
ccxt/pro/mexc.py,sha256=
|
394
|
+
ccxt/pro/mexc.py,sha256=o2vg38KzlFZJRjJj6V1Ji2B29_Ui10vTMt1FO6jnHS8,76909
|
395
395
|
ccxt/pro/modetrade.py,sha256=awijMxEA4TxU-im1IMwIlXg826VoxGTdZCA5ClcMgIY,51730
|
396
396
|
ccxt/pro/myokx.py,sha256=iSdyUUOmRA8QdJNJSn-DoLJb-fw88ReQxAs6nithKVQ,1237
|
397
397
|
ccxt/pro/ndax.py,sha256=3cTUYVycEVaw2a13pScrQgbDWYM_JQAxZJ2LIe1q9pw,22975
|
@@ -661,8 +661,8 @@ ccxt/test/tests_async.py,sha256=D5ZDYYW635E2LFEhJt7HfIjbFVCQl3WSBEFnR-QEQzM,9549
|
|
661
661
|
ccxt/test/tests_helpers.py,sha256=egM69A2ZFYeVF5hwC1Qt-c5DOeClY5bv4jowmceeFV8,9736
|
662
662
|
ccxt/test/tests_init.py,sha256=qM0-Gb0h0p6CANWTkyYZI7wl-iYOcrPur7aj_OKh7m0,1212
|
663
663
|
ccxt/test/tests_sync.py,sha256=Rr72cGmoKqbUIIEJJAGh2_QhBc4rIZlBxVtGCQVd4BE,94440
|
664
|
-
ccxt-4.
|
665
|
-
ccxt-4.
|
666
|
-
ccxt-4.
|
667
|
-
ccxt-4.
|
668
|
-
ccxt-4.
|
664
|
+
ccxt-4.5.0.dist-info/LICENSE.txt,sha256=EIb9221AhMHV7xF1_55STFdKTFsnJVJYkRpY2Lnvo5w,1068
|
665
|
+
ccxt-4.5.0.dist-info/METADATA,sha256=cQQwhMXPYJtbR5BruhWnarY_61hGnI1QF2qn71zLblg,132219
|
666
|
+
ccxt-4.5.0.dist-info/WHEEL,sha256=Kh9pAotZVRFj97E15yTA4iADqXdQfIVTHcNaZTjxeGM,110
|
667
|
+
ccxt-4.5.0.dist-info/top_level.txt,sha256=CkQDuCTDKNcImPV60t36G6MdYfxsAPNiSaEwifVoVMo,5
|
668
|
+
ccxt-4.5.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|