ccxt 4.3.24__py2.py3-none-any.whl → 4.3.28__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.

Potentially problematic release.


This version of ccxt might be problematic. Click here for more details.

ccxt/phemex.py CHANGED
@@ -2168,7 +2168,7 @@ class phemex(Exchange, ImplicitAPI):
2168
2168
  if feeCost is not None:
2169
2169
  fee = {
2170
2170
  'cost': feeCost,
2171
- 'currency': None,
2171
+ 'currency': self.safe_currency_code(self.safe_string(order, 'feeCurrency')),
2172
2172
  }
2173
2173
  timeInForce = self.parse_time_in_force(self.safe_string(order, 'timeInForce'))
2174
2174
  stopPrice = self.parse_number(self.omit_zero(self.from_ep(self.safe_string(order, 'stopPxEp'))))
@@ -2313,6 +2313,7 @@ class phemex(Exchange, ImplicitAPI):
2313
2313
  clientOrderId = None
2314
2314
  marketId = self.safe_string(order, 'symbol')
2315
2315
  symbol = self.safe_symbol(marketId, market)
2316
+ market = self.safe_market(marketId, market)
2316
2317
  status = self.parse_order_status(self.safe_string(order, 'ordStatus'))
2317
2318
  side = self.parse_order_side(self.safe_string_lower(order, 'side'))
2318
2319
  type = self.parse_order_type(self.safe_string(order, 'orderType'))
@@ -2338,6 +2339,19 @@ class phemex(Exchange, ImplicitAPI):
2338
2339
  reduceOnly = True
2339
2340
  takeProfit = self.safe_string(order, 'takeProfitRp')
2340
2341
  stopLoss = self.safe_string(order, 'stopLossRp')
2342
+ feeValue = self.omit_zero(self.safe_string(order, 'execFeeRv'))
2343
+ ptFeeRv = self.omit_zero(self.safe_string(order, 'ptFeeRv'))
2344
+ fee = None
2345
+ if feeValue is not None:
2346
+ fee = {
2347
+ 'cost': feeValue,
2348
+ 'currency': market['quote'],
2349
+ }
2350
+ elif ptFeeRv is not None:
2351
+ fee = {
2352
+ 'cost': ptFeeRv,
2353
+ 'currency': 'PT',
2354
+ }
2341
2355
  return self.safe_order({
2342
2356
  'info': order,
2343
2357
  'id': id,
@@ -2362,7 +2376,7 @@ class phemex(Exchange, ImplicitAPI):
2362
2376
  'cost': cost,
2363
2377
  'average': None,
2364
2378
  'status': status,
2365
- 'fee': None,
2379
+ 'fee': fee,
2366
2380
  'trades': None,
2367
2381
  })
2368
2382
 
ccxt/pro/__init__.py CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  # ----------------------------------------------------------------------------
6
6
 
7
- __version__ = '4.3.24'
7
+ __version__ = '4.3.28'
8
8
 
9
9
  # ----------------------------------------------------------------------------
10
10
 
ccxt/pro/binance.py CHANGED
@@ -1951,7 +1951,7 @@ class binance(ccxt.async_support.binance):
1951
1951
  orders = self.parse_orders(result)
1952
1952
  client.resolve(orders, messageHash)
1953
1953
 
1954
- async def edit_order_ws(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}) -> Order:
1954
+ async def edit_order_ws(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: Num = None, price: Num = None, params={}) -> Order:
1955
1955
  """
1956
1956
  edit a trade order
1957
1957
  :see: https://binance-docs.github.io/apidocs/websocket_api/en/#cancel-and-replace-order-trade
ccxt/pro/coinbase.py CHANGED
@@ -235,13 +235,17 @@ class coinbase(ccxt.async_support.coinbase):
235
235
  #
236
236
  channel = self.safe_string(message, 'channel')
237
237
  events = self.safe_value(message, 'events', [])
238
+ datetime = self.safe_string(message, 'timestamp')
239
+ timestamp = self.parse8601(datetime)
238
240
  newTickers = []
239
241
  for i in range(0, len(events)):
240
242
  tickersObj = events[i]
241
- tickers = self.safe_value(tickersObj, 'tickers', [])
243
+ tickers = self.safe_list(tickersObj, 'tickers', [])
242
244
  for j in range(0, len(tickers)):
243
245
  ticker = tickers[j]
244
246
  result = self.parse_ws_ticker(ticker)
247
+ result['timestamp'] = timestamp
248
+ result['datetime'] = datetime
245
249
  symbol = result['symbol']
246
250
  self.tickers[symbol] = result
247
251
  wsMarketId = self.safe_string(ticker, 'product_id')
ccxt/pro/cryptocom.py CHANGED
@@ -103,13 +103,16 @@ class cryptocom(ccxt.async_support.cryptocom):
103
103
  if topicParams is None:
104
104
  params['params'] = {}
105
105
  bookSubscriptionType = None
106
- bookSubscriptionType, params = self.handle_option_and_params_2(params, 'watchOrderBook', 'watchOrderBookForSymbols', 'bookSubscriptionType', 'SNAPSHOT_AND_UPDATE')
107
- if bookSubscriptionType is not None:
108
- params['params']['bookSubscriptionType'] = bookSubscriptionType
106
+ bookSubscriptionType2 = None
107
+ bookSubscriptionType, params = self.handle_option_and_params(params, 'watchOrderBook', 'bookSubscriptionType', 'SNAPSHOT_AND_UPDATE')
108
+ bookSubscriptionType2, params = self.handle_option_and_params(params, 'watchOrderBookForSymbols', 'bookSubscriptionType', bookSubscriptionType)
109
+ params['params']['bookSubscriptionType'] = bookSubscriptionType2
109
110
  bookUpdateFrequency = None
110
- bookUpdateFrequency, params = self.handle_option_and_params_2(params, 'watchOrderBook', 'watchOrderBookForSymbols', 'bookUpdateFrequency')
111
- if bookUpdateFrequency is not None:
112
- params['params']['bookSubscriptionType'] = bookSubscriptionType
111
+ bookUpdateFrequency2 = None
112
+ bookUpdateFrequency, params = self.handle_option_and_params(params, 'watchOrderBook', 'bookUpdateFrequency')
113
+ bookUpdateFrequency2, params = self.handle_option_and_params(params, 'watchOrderBookForSymbols', 'bookUpdateFrequency', bookUpdateFrequency)
114
+ if bookUpdateFrequency2 is not None:
115
+ params['params']['bookSubscriptionType'] = bookUpdateFrequency2
113
116
  for i in range(0, len(symbols)):
114
117
  symbol = symbols[i]
115
118
  market = self.market(symbol)
ccxt/pro/kraken.py CHANGED
@@ -141,7 +141,7 @@ class kraken(ccxt.async_support.kraken):
141
141
  url = self.urls['api']['ws']['private']
142
142
  requestId = self.request_id()
143
143
  messageHash = requestId
144
- request = {
144
+ request: dict = {
145
145
  'event': 'addOrder',
146
146
  'token': token,
147
147
  'reqid': requestId,
@@ -150,7 +150,7 @@ class kraken(ccxt.async_support.kraken):
150
150
  'pair': market['wsId'],
151
151
  'volume': self.amount_to_precision(symbol, amount),
152
152
  }
153
- request, params = self.orderRequest('createOrderWs', symbol, type, request, price, params)
153
+ request, params = self.orderRequest('createOrderWs', symbol, type, request, amount, price, params)
154
154
  return await self.watch(url, messageHash, self.extend(request, params), messageHash)
155
155
 
156
156
  def handle_create_edit_order(self, client, message):
@@ -177,7 +177,7 @@ class kraken(ccxt.async_support.kraken):
177
177
  messageHash = self.safe_value(message, 'reqid')
178
178
  client.resolve(order, messageHash)
179
179
 
180
- async def edit_order_ws(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}) -> Order:
180
+ async def edit_order_ws(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: Num = None, price: Num = None, params={}) -> Order:
181
181
  """
182
182
  edit a trade order
183
183
  :see: https://docs.kraken.com/websockets/#message-editOrder
@@ -196,15 +196,16 @@ class kraken(ccxt.async_support.kraken):
196
196
  url = self.urls['api']['ws']['private']
197
197
  requestId = self.request_id()
198
198
  messageHash = requestId
199
- request = {
199
+ request: dict = {
200
200
  'event': 'editOrder',
201
201
  'token': token,
202
202
  'reqid': requestId,
203
203
  'orderid': id,
204
204
  'pair': market['wsId'],
205
- 'volume': self.amount_to_precision(symbol, amount),
206
205
  }
207
- request, params = self.orderRequest('editOrderWs', symbol, type, request, price, params)
206
+ if amount is not None:
207
+ request['volume'] = self.amount_to_precision(symbol, amount)
208
+ request, params = self.orderRequest('editOrderWs', symbol, type, request, amount, price, params)
208
209
  return await self.watch(url, messageHash, self.extend(request, params), messageHash)
209
210
 
210
211
  async def cancel_orders_ws(self, ids: List[str], symbol: Str = None, params={}):
ccxt/pro/okx.py CHANGED
@@ -1336,7 +1336,7 @@ class okx(ccxt.async_support.okx):
1336
1336
  first = self.safe_dict(orders, 0, {})
1337
1337
  client.resolve(first, messageHash)
1338
1338
 
1339
- async def edit_order_ws(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}) -> Order:
1339
+ async def edit_order_ws(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: Num = None, price: Num = None, params={}) -> Order:
1340
1340
  """
1341
1341
  edit a trade order
1342
1342
  :see: https://www.okx.com/docs-v5/en/#order-book-trading-trade-ws-amend-order
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ccxt
3
- Version: 4.3.24
3
+ Version: 4.3.28
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
@@ -264,13 +264,13 @@ console.log(version, Object.keys(exchanges));
264
264
 
265
265
  All-in-one browser bundle (dependencies included), served from a CDN of your choice:
266
266
 
267
- * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.24/dist/ccxt.browser.js
268
- * unpkg: https://unpkg.com/ccxt@4.3.24/dist/ccxt.browser.js
267
+ * jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.3.28/dist/ccxt.browser.js
268
+ * unpkg: https://unpkg.com/ccxt@4.3.28/dist/ccxt.browser.js
269
269
 
270
270
  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.
271
271
 
272
272
  ```HTML
273
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.24/dist/ccxt.browser.js"></script>
273
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.3.28/dist/ccxt.browser.js"></script>
274
274
  ```
275
275
 
276
276
  Creates a global `ccxt` object:
@@ -1,14 +1,14 @@
1
- ccxt/__init__.py,sha256=B1EFn-tKO_K29PcG0QEnfrDIY1jVqOL-3lliEvXsWx0,15950
1
+ ccxt/__init__.py,sha256=y9ibHoknr34vyvCrhDBH-r14mG_nf8qe0VS_YRQiEbw,15950
2
2
  ccxt/ace.py,sha256=IAbVQ73OhU5xdTLO6dtedqa3bSuZ63Me55Se1zotYUY,41656
3
3
  ccxt/alpaca.py,sha256=NadHil-XkNFteqE7GwzIhKCCRjQ7m0xBQBCUlKxS6Sc,47215
4
- ccxt/ascendex.py,sha256=UjGRc4PgSi9ZNFl8greVZZZMTQxjEQRF8yF5SSUqeJM,151471
4
+ ccxt/ascendex.py,sha256=ZlHotewbbcpvMJfqBoAD1UqWo-xTw3qBJO5wfX5z6hs,151487
5
5
  ccxt/bequant.py,sha256=RBiAmaTbL35DgiV3Hl6uchLUd78V0z1T9riTlNsrpdc,1174
6
6
  ccxt/bigone.py,sha256=XyWou4LP3aF9QoA8tro4DfAmDNDwcIRp_L3J7pTNICc,92209
7
7
  ccxt/binance.py,sha256=IojU3Tkcp9qPaaoYYcbpnZ2Mu8SmA6mS-R7KMOghJus,617548
8
8
  ccxt/binancecoinm.py,sha256=pncdw6Xw2X1Po-vEvAB4nL37scoS_axGAVxetPy1YQs,1645
9
9
  ccxt/binanceus.py,sha256=hdcT4OnadcdFFFjF3GtM0nWv90jqojqwdVS3xWGuW40,9163
10
10
  ccxt/binanceusdm.py,sha256=KPQGlCalQ0eGlPCs2tSanOxaP8O0zFRQjGntA16Yprw,2480
11
- ccxt/bingx.py,sha256=gQqCS6VQXYx8eGwYATJgBOxcBSaxXrSLu2uAz6SxOHM,184833
11
+ ccxt/bingx.py,sha256=3pm-A5kbgmShKYAxPWNe6oermixpZHM7-Di7m_JiKFM,186172
12
12
  ccxt/bit2c.py,sha256=cuqPGkIRA7k0nDLLkL2wFjQLi7SJPiO_IMw6kAckIHM,36907
13
13
  ccxt/bitbank.py,sha256=DcA2I_e1tLJyIeLqcDiFsfLuDJxFDUFfcQery4gn1lc,41845
14
14
  ccxt/bitbay.py,sha256=xAIjzGRDVGwoy-Gygd99H0YN4wiaz_0lR0Z14oxaaxc,478
@@ -17,9 +17,9 @@ ccxt/bitcoincom.py,sha256=PyWIl4nC4jp5Uba2lI1At0N_hhNyWD0DoZC_MSyL_s4,502
17
17
  ccxt/bitfinex.py,sha256=vxAmPp9rZKPLb1k8hkWjdv8r8lMx9WmdL5uRs-rZIgY,72278
18
18
  ccxt/bitfinex2.py,sha256=vM8zqvKqufDCcgXjNlUTrJf069f_-ZgLA6kdGFdlhuI,158515
19
19
  ccxt/bitflyer.py,sha256=xY72j19f0YM8CnU0UN_Kv-RteE1NdtMvs_kMxBimCVA,41397
20
- ccxt/bitget.py,sha256=0wBHCxNAniZ1SlxrYz9PiTK4FjvmXSFtGy1tAAyGLZk,422517
20
+ ccxt/bitget.py,sha256=4eCSkzz-DuRoBIXdm3aeuevJksBWa4t9I4qDGxbIWa4,422574
21
21
  ccxt/bithumb.py,sha256=JPlhrlnPGyvSztPiNVHSDIx5fjVoHvPGsD8vx1yFfF8,45534
22
- ccxt/bitmart.py,sha256=kM0SaiFm7LMGSSh-9iHSyexet0t7C9gLnKFfyORscEU,199137
22
+ ccxt/bitmart.py,sha256=v_HgD8hwiandqWHbTkvgpJTbfc4IMpHEKYhvGewsbWI,201529
23
23
  ccxt/bitmex.py,sha256=PxRDGNFOToB2fFulw0Z3XEklLhFmKF_rRfx8LpDtgoo,126584
24
24
  ccxt/bitopro.py,sha256=Ph0uhgzUJzNKji_bIs9SxbY72U7Fu-6QWr2i6WMKB7M,68522
25
25
  ccxt/bitpanda.py,sha256=aiwPkx9lKbVzt4ggoYdq_mIbMGtg5ZtGl2yRHO5xyz8,471
@@ -35,14 +35,14 @@ ccxt/btcalpha.py,sha256=gr0o6e__HMwRLaaiLpuMCEHuow4ipjwa5vCY80bgR6w,36701
35
35
  ccxt/btcbox.py,sha256=M-aOkxcyv6N3-32u1gfCWAo9_tO98mY9Z6pqNQprtYw,23492
36
36
  ccxt/btcmarkets.py,sha256=hz5nGYJUku1EjoCFGlq3Wfas-H9nInG4gKYw6kPyU74,51484
37
37
  ccxt/btcturk.py,sha256=9RFC0mCWjW_jW8Hgz5cuwb1gaeLf469FOXae4p_KQJM,36657
38
- ccxt/bybit.py,sha256=OCRuZpug2qrIFy97l_7xSAxRa0y8Vua1lamHxSo6IwE,412519
38
+ ccxt/bybit.py,sha256=-vuoIx5NvDwpfLxHzf87S9X19JrkpJvTIK0OG77-JzA,412519
39
39
  ccxt/cex.py,sha256=_EDbKQQiIKS5UVztu1wrQq-WQPJxa3GnLelfOkd6O2k,69930
40
- ccxt/coinbase.py,sha256=IQu7NvSQ80m5cUlfkbHhywTdwO2n7YRXeuToXbGlYG0,212311
40
+ ccxt/coinbase.py,sha256=cU-5zjrlYCX_QdH7j8EGRL2xSkZxsrtD1czXvNJY7lU,212324
41
41
  ccxt/coinbaseadvanced.py,sha256=d5g6nRx-NCcCwZDdtp8FsI2D-pRjSvnAP9ISSKY_nCQ,538
42
42
  ccxt/coinbaseexchange.py,sha256=FeSNMY_lAzYAs3X9QmDCMSHScdyUW-nLv78AoMIPK78,78704
43
43
  ccxt/coinbaseinternational.py,sha256=wieWUwsLsBYAgNpvnnrKseqAE7aOw__apSP6MQK9u9E,87240
44
44
  ccxt/coincheck.py,sha256=jg8KHt_XUMPlbG1BYUiSHu9-DDBWdnQwV15P9IzKqbY,35664
45
- ccxt/coinex.py,sha256=zce54mXGtgS1bqSrt-3IRSZdFHRtflIoqIX8dl2SaXc,259870
45
+ ccxt/coinex.py,sha256=wHFmRYPgMVEeW1ez8wbmAPhq9wgv0gudF7-M36CohDA,258819
46
46
  ccxt/coinlist.py,sha256=EU4jtqWALdcLG5X3m2q4xPbQ3-h5-H63Eeb_R3wW-5s,103140
47
47
  ccxt/coinmate.py,sha256=EsXu0mcAkVFwg2VOg47qr6g95a3bDPN2I9AuFQxgkQg,45946
48
48
  ccxt/coinmetro.py,sha256=tZjLAz5XufybO3BU3QGXMrLzinoY4UBhn0JIyXivnys,80700
@@ -69,8 +69,8 @@ ccxt/hyperliquid.py,sha256=11PVum5F0DV7y2n23KFbFSvInB2F7YYr0QTWfI-MHN0,100695
69
69
  ccxt/idex.py,sha256=yU8HDWBpXS3GREJFdYdGXcp18vj9RAB1E0R4BoXbWVQ,72998
70
70
  ccxt/independentreserve.py,sha256=iobtHiT8KlD1-mDJeoZCzPEPteSZz512mxgnrTnsECo,32175
71
71
  ccxt/indodax.py,sha256=ulvlP7-xpQWXrBfvRn-GWMoOXr_4MBBMrkTDDgM4fbQ,51921
72
- ccxt/kraken.py,sha256=YKMTpaILyYw5kLQkKMH9pl9nB0ek_5NSE0ew5-cUOVQ,125472
73
- ccxt/krakenfutures.py,sha256=S1WRrAtZ_tibYH50N0yb4y4pe12g3yNruLaH0ZWuWw4,116835
72
+ ccxt/kraken.py,sha256=dQfatDpJQ7jfMd6lHbpvI509HrYOsREg-Pxtq-fFeAY,128194
73
+ ccxt/krakenfutures.py,sha256=LRG3FXlYbjnEVi5KUESy9OBPDevTGvnWEWPAtvX0CVU,116855
74
74
  ccxt/kucoin.py,sha256=0YqwMhzxBt_cmOgZj_JPJ5tOF7QrFJXzyvBrheJiuT4,217796
75
75
  ccxt/kucoinfutures.py,sha256=x5m2yqC5ZEIaKCBmM8alKJ7tk2r9nzpMC-PcpfadnRo,124327
76
76
  ccxt/kuna.py,sha256=Q1FuK9RvZmEYN87G3bHsVhcUcclMApuFVDNv5njyaRU,95991
@@ -88,7 +88,7 @@ ccxt/okx.py,sha256=C-RC8I5teheFdZ54ny3hC9zmjcYRmkpClrQQ1kgQ07s,377057
88
88
  ccxt/onetrading.py,sha256=MdzNJW9ViYhpx4S5cmoVu9SCX1nD3oZYfVfnPkhhfwE,88113
89
89
  ccxt/p2b.py,sha256=FYxL36KwtaLIIQ793frJEtqtHyzm39hNK0mJEzAAH0U,54213
90
90
  ccxt/paymium.py,sha256=kuMPTXyqU98kMpKeiSMicD51bSwprXHU0WrgLlAsxGY,24244
91
- ccxt/phemex.py,sha256=l2Ebx9I5uH7lX1yHnG6rtt27ndK2jMCJQWpExG9o_RQ,221696
91
+ ccxt/phemex.py,sha256=larOaYnUVb2xx2i4ayQh9BMFYqsFIYWaWg9s-hP3jm8,222247
92
92
  ccxt/poloniex.py,sha256=WfJ93JWxt5BiIidD2aiC09GSZI-EFhwdeBbJYZ47v1E,101991
93
93
  ccxt/poloniexfutures.py,sha256=3bxdkVWbe_T6r4IvekvM6x-Hd7cSng5SDaDjgPZSk8k,77799
94
94
  ccxt/probit.py,sha256=x6Y3MeRLwRZE02l7zxHbIucwU6pqYciWc05QXdZgxg8,75678
@@ -123,9 +123,9 @@ ccxt/abstract/bitcoincom.py,sha256=OTBtNu3DQeAqAC_Lbi0NePUs-ZQQllcLrVDI2G04nwQ,1
123
123
  ccxt/abstract/bitfinex.py,sha256=OLUXdJEycyN_qrBhPuTTOVlwu3jkqVWenoTmS-W3bOE,7605
124
124
  ccxt/abstract/bitfinex2.py,sha256=82sdkbjDb6D2JePGAa2yYwApDwdeF9Tvlo-hWB2ZUBs,19194
125
125
  ccxt/abstract/bitflyer.py,sha256=3ngG1GJJCNMzYMWoNXCEEgLxmTl7eRf7_JU4M0P2rqo,3576
126
- ccxt/abstract/bitget.py,sha256=TxCeMdFtDvfOtuwe3j4dnDlefjBDhZs4tyDSI0NPpSQ,90336
126
+ ccxt/abstract/bitget.py,sha256=3xGAFBJkaFWD3WvaGtb0rE0zBO9b0QkIysMJRDZDxNQ,90491
127
127
  ccxt/abstract/bithumb.py,sha256=GR7QJ6CwTBne59SaGRVj9Rdz_zecG-8imRWX7oe6MoQ,3443
128
- ccxt/abstract/bitmart.py,sha256=oZG8LLYf1XOBBRl5xT9fTnUDdUUHEIZjSGZ5BsQ-Ih4,14031
128
+ ccxt/abstract/bitmart.py,sha256=wJlSj1eh_Qp9duxPS5StlhAC-SH97-HxMvHEf3lYO_4,14167
129
129
  ccxt/abstract/bitmex.py,sha256=v15OP-vSO_eotD6KVf1BgKrbPxCPl2eXXYIuzWF1dl4,10774
130
130
  ccxt/abstract/bitopro.py,sha256=KCWuN9bc4W2fWIbWL_OboHc5DtbCjXXLnd23gYl9r3s,3295
131
131
  ccxt/abstract/bitpanda.py,sha256=TtJq4d44lrutV8wcK0lX4v0EfQ72ly6fxR-zB7-FSuI,3859
@@ -210,17 +210,17 @@ ccxt/abstract/woofipro.py,sha256=El50vWGAV-4QPIDhgSnd4egfvk246NB6vTC-8h722vs,160
210
210
  ccxt/abstract/yobit.py,sha256=8ycfCO8ORFly9hc0Aa47sZyX4_ZKPXS9h9yJzI-uQ7Q,1339
211
211
  ccxt/abstract/zaif.py,sha256=m15WHdl3gYy0GOXNZ8NEH8eE7sVh8c0T_ITNuU8vXeU,3935
212
212
  ccxt/abstract/zonda.py,sha256=aSfewvRojzmuymX6QbOnDR8v9VFqWTULMHX9Y7kKD1M,5820
213
- ccxt/async_support/__init__.py,sha256=t_VwyA3nEUTkoaRHt7HUyUv8NmHmqiIHEChunLqt2Dg,15723
213
+ ccxt/async_support/__init__.py,sha256=j8EPzBLj1ajFe2SWl97Qb1Cpz5IrDQhdt03vR-2qcVU,15723
214
214
  ccxt/async_support/ace.py,sha256=xVxaTocpMapAIl4ApPApw69Rd-RDuU0_vleJnVt_qhI,41880
215
215
  ccxt/async_support/alpaca.py,sha256=rjD8PdQr1B5e9hvaoTQBKVtWwHLs04e6_-gooXl4eEE,47427
216
- ccxt/async_support/ascendex.py,sha256=w4GaR3Xm9fkIAdXostTsu0Pnw9VkRrT6ar57gU9HSHw,152259
216
+ ccxt/async_support/ascendex.py,sha256=cYw-zMHB5QuadbI2fNBI_ywe8emGKsBgI8pdyQZp8Os,152275
217
217
  ccxt/async_support/bequant.py,sha256=1hTwHovo1bW1XTIc8ZKjvJ-Xg6LfmpGdzT7TepykaVM,1188
218
218
  ccxt/async_support/bigone.py,sha256=_uNS1hUzXNxkVJ227FHU1N0BeojYws-Fs0qNXpm4T_w,92663
219
219
  ccxt/async_support/binance.py,sha256=sgPD5mSPMpsM2Gwp-Y-s3wyUGcgYtafJxJhTxwdQ8Fs,620258
220
220
  ccxt/async_support/binancecoinm.py,sha256=IY3RLZptQA2nmZaUYRGfTa5ZY4VMWBpFYfwHc8zTHw0,1683
221
221
  ccxt/async_support/binanceus.py,sha256=c-K3Tk7LaRJjmYdCx8vBOqsx01uXrtvt0PC2ekBiD0g,9177
222
222
  ccxt/async_support/binanceusdm.py,sha256=-1r4A4tmV2pCiLGO80hzq7MIIj4MTzOD7buZGv6JauA,2518
223
- ccxt/async_support/bingx.py,sha256=jrrnzvir-KfdvwPNA5ptXX7bsFEeAPhS-gdd2aMc8ZA,185869
223
+ ccxt/async_support/bingx.py,sha256=tmuaoG5nQ_VcEJuF-KKxhn-ZgYFn9h0sovoTbeOAbnY,187208
224
224
  ccxt/async_support/bit2c.py,sha256=doMZLyPCUF4KPe-P3-MlXNxTr2GD7EAkmXqI7zM3frY,37119
225
225
  ccxt/async_support/bitbank.py,sha256=Vu3C5eHq9SndHeX_plwLdSSPFmrwpVVvUKSg7AI-c9A,42105
226
226
  ccxt/async_support/bitbay.py,sha256=jcaEXi2IhYTva8ezO_SfJhwxEZk7HST4J3NaxD16BQA,492
@@ -229,9 +229,9 @@ ccxt/async_support/bitcoincom.py,sha256=RiqwhK3RfxQ_PXTa860fphDCvwA8dalL-_rXlK85
229
229
  ccxt/async_support/bitfinex.py,sha256=oS5QBr6YaR5PKR2Lca0S8mEkz_mBczGfMuAIUKQ6kKU,72718
230
230
  ccxt/async_support/bitfinex2.py,sha256=aXWqz-Ub3HMd-eHyrAZEAV8FYkOX9ej-uBLG30Byn2E,159249
231
231
  ccxt/async_support/bitflyer.py,sha256=KNOVDnBONry4JUJiyPKXQvP_OkxKTluly7ZdtCl-_M0,41705
232
- ccxt/async_support/bitget.py,sha256=DAm7jv8jQfQHB4JLnIL9-8T9FEjedXcvjLeTy_1q_jQ,424141
232
+ ccxt/async_support/bitget.py,sha256=PKjF_ZNOMXWS7e4n-YvhRL7OPNZjtMi7hhS70_7Idcw,424198
233
233
  ccxt/async_support/bithumb.py,sha256=gasefOqFJX0Aav2PWMILHS1kr1lcHhJf3OdKaXuVF6M,45764
234
- ccxt/async_support/bitmart.py,sha256=wKlX--oFHZI8rWzdrR8jeYvg4dWfuARfSZ67yO9JgFc,200057
234
+ ccxt/async_support/bitmart.py,sha256=pkJ8TwEqjFOaOH6noIsUIXMxZGIEd-NNVsrRzXsW5JE,202467
235
235
  ccxt/async_support/bitmex.py,sha256=tnw76bg38oOvz-luU-c7K4A75MwSsfwJs9VrzRW5OHs,127162
236
236
  ccxt/async_support/bitopro.py,sha256=kIorVevTcOvIqfsCn0z-QXscJjIDcG3qq9_WzC6C_ks,68926
237
237
  ccxt/async_support/bitpanda.py,sha256=2k3URBWrpnh2xHa7JiYenI7_4MW5UeOPGzetlmRkR4U,485
@@ -247,14 +247,14 @@ ccxt/async_support/btcalpha.py,sha256=U51IdY13evFeA9q6tdT-Br83yPJ5quVgF_EHho_fDM
247
247
  ccxt/async_support/btcbox.py,sha256=byG2YtL1rhzH5_vuDaKCLinCQxOppRwvgqZRQYEZCxM,23686
248
248
  ccxt/async_support/btcmarkets.py,sha256=vQQN9ITp68EYWjY8UiXFNDvL9gXUhNIZjlfZ3i7PkbA,51834
249
249
  ccxt/async_support/btcturk.py,sha256=EMrvQcRRGtO9Hu3StUvalUiaTgueI7UM86IYS0Dgj6I,36875
250
- ccxt/async_support/bybit.py,sha256=4wjZKMH6UthYB1qIeA0gAcoaHk71fEnQii8xPIM3-VI,414323
250
+ ccxt/async_support/bybit.py,sha256=np47KUeHRvsiono4aLzjIY8srsO2YHSq5lzuKbisOCk,414323
251
251
  ccxt/async_support/cex.py,sha256=MMVgApSlmqtfnEJHdsL4WXd7_5uFri-F0QjSWOsyoEU,70280
252
- ccxt/async_support/coinbase.py,sha256=7I2rxiBGKwnC6aZ2DMajH5FEarhesMGRWK-Xhn3kL8g,213417
252
+ ccxt/async_support/coinbase.py,sha256=R2oPuXrhq06tSVX0Dq0e3pRGnaLmIuec8OrwvuSLmwI,213430
253
253
  ccxt/async_support/coinbaseadvanced.py,sha256=Kupwnuxiu_qTjwCNV2asacoDUNFQvcaHNAznUJPhdQs,552
254
254
  ccxt/async_support/coinbaseexchange.py,sha256=3wEfbKBAVn9JkOfukopSRPhM8unRA6BQLqvm5c2VLBE,79210
255
255
  ccxt/async_support/coinbaseinternational.py,sha256=fuU-h5UpO_nVs1j8KA7oGsQlP0kQefuPycZrc8ph6OQ,87794
256
256
  ccxt/async_support/coincheck.py,sha256=ThRQX8E3NZrGc9Z__UIb7p0AtHgnq_DBhe9GzE9SlaQ,35870
257
- ccxt/async_support/coinex.py,sha256=g_RcySMlUqdpONcOnzJgTOt3JpvMkhGVCYu2OfiHdks,261152
257
+ ccxt/async_support/coinex.py,sha256=PzKHNgqRR6_d97suRqOJh3_JalhWSBk4HdQRazle-6k,260095
258
258
  ccxt/async_support/coinlist.py,sha256=MKLhRyaw0DHkpRfR-Vj9NS0SwCpYUx8nOxZJ26swIMY,103628
259
259
  ccxt/async_support/coinmate.py,sha256=lc8p0aQXu-oSf2whiqvm0QoBhDVx9wf50CcFeucdXcY,46212
260
260
  ccxt/async_support/coinmetro.py,sha256=NLqNdcJ_zXcNqaxqkrloL9PqnogbQ6OzA5e_Gl4ACtk,81020
@@ -281,8 +281,8 @@ ccxt/async_support/hyperliquid.py,sha256=-DmuoRQd5mlkIAxZWbEp7ReWpR0N6e9Tdgdj0bL
281
281
  ccxt/async_support/idex.py,sha256=etgzMUryt3ssiJDmrNWh4Hmo_xP61V-TX1uShRWjXiU,73474
282
282
  ccxt/async_support/independentreserve.py,sha256=8UTpFWJtrfZTeMhRfNK8mGiOu0-p-JCbK13G6spPueY,32435
283
283
  ccxt/async_support/indodax.py,sha256=Duu0r6PCzPlQLNqj2v2smCh6xE65S9LpP7wwQWa5ygM,52229
284
- ccxt/async_support/kraken.py,sha256=_yQEd3_OjqQBDdElH-XTPkLVe6P2tCVt0kl2BjlVnKU,126074
285
- ccxt/async_support/krakenfutures.py,sha256=LwIy5nZe5urJ7Yrb5_KSKtk0giBBUnQl20KlgGKXwLg,117323
284
+ ccxt/async_support/kraken.py,sha256=6rHDgOa8EBfU1Uelit73ekfrOqPObxWoMBcqQBk-rpc,128832
285
+ ccxt/async_support/krakenfutures.py,sha256=IAXHOgB-puM4-R_2x9Yzqwh3bMXJay4Sno5EFopaEo8,117343
286
286
  ccxt/async_support/kucoin.py,sha256=-7kAVv2ghUIBXL6QLWmuZUsgCdq2wW6cHGSFMFGDyMA,218868
287
287
  ccxt/async_support/kucoinfutures.py,sha256=3gdO1HK5avmyseAXEEiufyNifvJAUpW75mUQNYhlmzQ,124965
288
288
  ccxt/async_support/kuna.py,sha256=jcgPCS4_wHsWbBni6yuj6iMa641AYsiZr8ZBNGoxCe8,96407
@@ -300,7 +300,7 @@ ccxt/async_support/okx.py,sha256=smCT2Harj61L4dxsra9SFA70IJydH4EbOgSbjCabevg,378
300
300
  ccxt/async_support/onetrading.py,sha256=Px7iH4HjaGmAVMNjLwZdD8RJwspUleMdABCGQvmoNbA,88565
301
301
  ccxt/async_support/p2b.py,sha256=KrNc3sLbHQCxbgShyqWytuQVaQfKa42Q6_HcUYNUaKI,54455
302
302
  ccxt/async_support/paymium.py,sha256=_YfQn6Xwy0k9VMVOqmDGCfI8FhN_WKmyE7Eo9jR5u9I,24432
303
- ccxt/async_support/phemex.py,sha256=vKKPTW-ONIn3OKm3p0tT1QK07a28-aFv6kFhGqPKyUw,222508
303
+ ccxt/async_support/phemex.py,sha256=L8OyXY8Htq7dJo1rf_NUZz0xKTECBPdEU0fI1Ul49TM,223059
304
304
  ccxt/async_support/poloniex.py,sha256=tGl5AoEd2P0K0Af6twI2uwcNV81WDe2PCN4VAPkb3nQ,102539
305
305
  ccxt/async_support/poloniexfutures.py,sha256=VL4oNy3YJXw-UsiixEsU7wzw4JTpICXu6GdFdpcAKrw,78185
306
306
  ccxt/async_support/probit.py,sha256=xoDPbTB7_gntlKacTzFXFezCIIJpzoWP7CUaiIvu6co,76070
@@ -317,7 +317,7 @@ ccxt/async_support/yobit.py,sha256=kvMIVVjf8XxE7cKt51iHtqH7zgmFKc5ZVhk1dKDtlxE,5
317
317
  ccxt/async_support/zaif.py,sha256=lzrmIYPlNJquYkK-fq9DjqS8EfiAtofXnPcTMf3XOMM,28161
318
318
  ccxt/async_support/zonda.py,sha256=bS_Oq8FVjbLxnxFVVg-_5ZlNS0CH9QxSUVKL91IR9rc,80912
319
319
  ccxt/async_support/base/__init__.py,sha256=aVYSsFi--b4InRs9zDN_wtCpj8odosAB726JdUHavrk,67
320
- ccxt/async_support/base/exchange.py,sha256=IYH0t15nRLoVoENRTCmxOy8ClaroISPnRV0RVIvDyH0,108717
320
+ ccxt/async_support/base/exchange.py,sha256=JaGgzaPYCHzjahWALnl4iy2czADd-km049kI0g6ZL24,108722
321
321
  ccxt/async_support/base/throttler.py,sha256=tvDVcdRUVYi8fZRlEcnqtgzcgB_KMUMRs5Pu8tuU-tU,1847
322
322
  ccxt/async_support/base/ws/__init__.py,sha256=uockzpLuwntKGZbs5EOWFe-Zg-k6Cj7GhNJLc_RX0so,1791
323
323
  ccxt/async_support/base/ws/aiohttp_client.py,sha256=Ed1765emEde2Hj8Ys6f5EjS54ZI1wQ0qIhd04eB7yhU,5751
@@ -331,14 +331,14 @@ ccxt/async_support/base/ws/order_book_side.py,sha256=Pxrq22nCODckJ6G1OXkYEmUunIu
331
331
  ccxt/base/__init__.py,sha256=eTx1OE3HJjspFUQjGm6LBhaQiMKJnXjkdP-JUXknyQ0,1320
332
332
  ccxt/base/decimal_to_precision.py,sha256=fgWRBzRTtsf3r2INyS4f7WHlzgjB5YM1ekiwqD21aac,6634
333
333
  ccxt/base/errors.py,sha256=FGdyULeNCNcl52gA_CNhe2dZmat9GJGkTdlIyDXAF_A,4213
334
- ccxt/base/exchange.py,sha256=aKmetWxqjo5la1OpqiQnmh6dkTiopP5U_HBg2IVaCTI,278253
334
+ ccxt/base/exchange.py,sha256=tHGwC33roPlkxTU8WCz0RKtm1M5ZuZKXmFqzSPaxpEg,278296
335
335
  ccxt/base/precise.py,sha256=_xfu54sV0vWNnOfGTKRFykeuWP8mn4K1m9lk1tcllX4,8565
336
336
  ccxt/base/types.py,sha256=3hBdiD2EO7W-pwmBrDeDYMEdFGcnT0QqQZa3l8ywTVM,9027
337
- ccxt/pro/__init__.py,sha256=sVg8AyzgbmwugQlnDh4ZA6H-NzqxchL4yuWNT9cx4aI,7107
337
+ ccxt/pro/__init__.py,sha256=Ku1y6DwmywpXdM720CxghiCikboIrw5U82YAuxyKeq8,7107
338
338
  ccxt/pro/alpaca.py,sha256=7ePyWli0949ti5UheIn553xmnFpedrNc2W5CKauSZio,27167
339
339
  ccxt/pro/ascendex.py,sha256=fCM3EujSfJvtvffqI56UAstTtwjXFIocwukm15cF8rE,35432
340
340
  ccxt/pro/bequant.py,sha256=5zbsP8BHQTUZ8ZNL6uaACxDbUClgkOV4SYfXT_LfQVg,1351
341
- ccxt/pro/binance.py,sha256=--6tQbf691v6GlA8V-c95i50N85GVTM4G8KmKT1p-tY,152488
341
+ ccxt/pro/binance.py,sha256=-zjHYSngMVc3OwFssFFNEq7oSXr6uAX3RQZ15MbLUxQ,152493
342
342
  ccxt/pro/binancecoinm.py,sha256=s_evAyeT23VqscMRuSjrCK2CSaNsP-oc8A8noSuaLwQ,976
343
343
  ccxt/pro/binanceus.py,sha256=mpvmzc7kK3cGShM5EOvadOvwlj1xWsWzX9fIapuq2eQ,2321
344
344
  ccxt/pro/binanceusdm.py,sha256=S0eT662O2ReplsihWk42nhJWqw1XsODpeDQa9eFVVt8,1357
@@ -358,13 +358,13 @@ ccxt/pro/bitvavo.py,sha256=ueyEkwp1KLedmh0fTjHLV2M_yiOWPPfr-bTR9N6hXsw,56145
358
358
  ccxt/pro/blockchaincom.py,sha256=Uv1ijvxvFGrqFPH6iifCk5AgQYTDsXUa5n0ktpusVjM,29560
359
359
  ccxt/pro/bybit.py,sha256=FWN3ixxNYBIlHBkfD5wg5kaJ_lxLppvTDySvCvyOebI,85098
360
360
  ccxt/pro/cex.py,sha256=psU0k-icE931Z_wpkr16IdSZ2iDUwLnqJz3KUmQ5Xls,58380
361
- ccxt/pro/coinbase.py,sha256=j1iI52eNa-qya7Q7BZCpd1SAJQZc4LEGu25DIu0LMwo,29324
361
+ ccxt/pro/coinbase.py,sha256=wrClkP6VMpxEtAG7RRaJNqLSHK8dqpu5KtsJACrzSiU,29520
362
362
  ccxt/pro/coinbaseexchange.py,sha256=vhW-SIPSaSidXkQk1WDAU1-0Vj1S9kRJl6U-5CnyPcQ,38975
363
363
  ccxt/pro/coinbaseinternational.py,sha256=4LMDA9RJhwT2T55kyryGCJBrdRgh_XBVYlJjXGS_AMc,25794
364
364
  ccxt/pro/coincheck.py,sha256=MKAPHJeVifQaCKPla-7RY86TIWyDGe4nvjRhNmi617w,7789
365
365
  ccxt/pro/coinex.py,sha256=LVgahnm6laz2e0oQP4C8ki3mLcx5Eh-uz989BFquozM,45042
366
366
  ccxt/pro/coinone.py,sha256=d0s11hTNFVFZiBD3jWWu6iRseyVsHR6dO-njqqZ2WyU,15652
367
- ccxt/pro/cryptocom.py,sha256=c2se33IL7L9Y0F6RIKF3NZH0FeKCkUmrBJBe2U_YJ3U,42643
367
+ ccxt/pro/cryptocom.py,sha256=oHF9Bxe3a5yT8thg7JuIN-47YFAGKYKEQKGoByfFMgA,42910
368
368
  ccxt/pro/currencycom.py,sha256=U3H_inb0V39LYRwlKdVXTeA_akiG1437jZZ-dsejX0k,22355
369
369
  ccxt/pro/deribit.py,sha256=IutkVY1AzcTszpbbhNV1dLF3DUr3zGXxyHhWQVJ96m0,41035
370
370
  ccxt/pro/exmo.py,sha256=gLCAObkmAyL_4BTRnftfDTejsW3-isi18ppKIipidyo,24527
@@ -379,7 +379,7 @@ ccxt/pro/huobijp.py,sha256=fcC66ECLwrR9LN_AYZZltoE_w9EltT5DcXimPOHKJk0,23174
379
379
  ccxt/pro/hyperliquid.py,sha256=V6ev_19ttD0jmlaejvJwTl429_K1eyt0O3mUusQcrgk,20791
380
380
  ccxt/pro/idex.py,sha256=MJWG56eMN8rAE4Tmz-WxXDDO2KacfY7eFSoCwL15DnQ,28282
381
381
  ccxt/pro/independentreserve.py,sha256=39qWY0BpNoOfTpunMA9gwBePU8Ney6SO_zVuDy4uWLM,11179
382
- ccxt/pro/kraken.py,sha256=e4VgjQXUAJaWaCQf2r2PG8qBYjriDYhil-Enx8VTs5E,60764
382
+ ccxt/pro/kraken.py,sha256=Ckkm4clOLM2K-2p_CvRFZARSATgkvt7tqqQl_CosLdg,60837
383
383
  ccxt/pro/krakenfutures.py,sha256=QTeLsAXmM3CxLbDI6ktESj8LYQYhJISsB95Za1nFzh8,63917
384
384
  ccxt/pro/kucoin.py,sha256=wxUoyXjTV0iU5X4C2EdWRFFTzljICccpRJq4b9MWmmg,50705
385
385
  ccxt/pro/kucoinfutures.py,sha256=2aro_LzQFD-U3Bb5C0V1q7nv7WUG4-kKhS7xQIGz9Wk,50026
@@ -388,7 +388,7 @@ ccxt/pro/luno.py,sha256=2Y-8IQrrmwX8Y1lLWVDtrFjZD3t3qtMZJQ_JjNwj65s,12348
388
388
  ccxt/pro/mexc.py,sha256=caL4b1Q1YEJsKKQG5mmscqacYfkbyUuN0xin00eYPoc,43183
389
389
  ccxt/pro/ndax.py,sha256=Yrdy4UxjrDwO7gNMmSy09Wj6kHnRx1n0DTWmfirMEj8,22643
390
390
  ccxt/pro/okcoin.py,sha256=F38UBVjH2O7v6-XZMr5eJytnyBLp-0Uzx8q4qle_gXs,30385
391
- ccxt/pro/okx.py,sha256=7Kg0OihXhuCn2B0YF-B5otHX3rXnqKkXOoCqgduhl0w,72786
391
+ ccxt/pro/okx.py,sha256=kG28xgrUX3yLo16TCPpqsH_8Fj-AMtmbnw7gAYIOqQE,72791
392
392
  ccxt/pro/onetrading.py,sha256=9-WTi6ZNjsG7TJ6CA6pGpnm_6Jg2gg21ny4GZypjr6s,54634
393
393
  ccxt/pro/p2b.py,sha256=lO8mTtBCOU1yHQnmOQAI3USn67tsZd4nTGHDqFd4qEE,17877
394
394
  ccxt/pro/phemex.py,sha256=lD4r2KQdpkgeXGors3jtEMxoaxpEF0tl6MYXZ99GSYg,61032
@@ -534,7 +534,7 @@ ccxt/test/base/test_ticker.py,sha256=cMTIMb1oySNORUCmqI5ZzMswlEyCF6gJMah3vfvo8wQ
534
534
  ccxt/test/base/test_trade.py,sha256=PMtmB8V38dpaP-eb8h488xYMlR6D69yCOhsA1RuWrUA,2336
535
535
  ccxt/test/base/test_trading_fee.py,sha256=2aDCNJtqBkTC_AieO0l1HYGq5hz5qkWlkWb9Nv_fcwk,1066
536
536
  ccxt/test/base/test_transaction.py,sha256=BTbB4UHHXkrvYgwbrhh867nVRlevmIkIrz1W_odlQJI,1434
537
- ccxt-4.3.24.dist-info/METADATA,sha256=bv863nPYUVx5JlZGAu--tTGwa4QRxDiJZm-TEQqWsW0,112795
538
- ccxt-4.3.24.dist-info/WHEEL,sha256=P2T-6epvtXQ2cBOE_U1K4_noqlJFN3tj15djMgEu4NM,110
539
- ccxt-4.3.24.dist-info/top_level.txt,sha256=CkQDuCTDKNcImPV60t36G6MdYfxsAPNiSaEwifVoVMo,5
540
- ccxt-4.3.24.dist-info/RECORD,,
537
+ ccxt-4.3.28.dist-info/METADATA,sha256=wib-wi2ZDcZbxemrk91XeBJKEOO5Z076g1WgOrhqBCE,112795
538
+ ccxt-4.3.28.dist-info/WHEEL,sha256=P2T-6epvtXQ2cBOE_U1K4_noqlJFN3tj15djMgEu4NM,110
539
+ ccxt-4.3.28.dist-info/top_level.txt,sha256=CkQDuCTDKNcImPV60t36G6MdYfxsAPNiSaEwifVoVMo,5
540
+ ccxt-4.3.28.dist-info/RECORD,,
File without changes