ccxt 4.4.51__py2.py3-none-any.whl → 4.4.52__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 +1 -1
- ccxt/async_support/deribit.py +9 -2
- ccxt/base/exchange.py +22 -1
- ccxt/deribit.py +9 -2
- ccxt/pro/__init__.py +1 -1
- ccxt/test/tests_async.py +0 -1
- ccxt/test/tests_sync.py +0 -1
- {ccxt-4.4.51.dist-info → ccxt-4.4.52.dist-info}/METADATA +4 -4
- {ccxt-4.4.51.dist-info → ccxt-4.4.52.dist-info}/RECORD +14 -14
- {ccxt-4.4.51.dist-info → ccxt-4.4.52.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.4.51.dist-info → ccxt-4.4.52.dist-info}/WHEEL +0 -0
- {ccxt-4.4.51.dist-info → ccxt-4.4.52.dist-info}/top_level.txt +0 -0
ccxt/__init__.py
CHANGED
ccxt/async_support/__init__.py
CHANGED
ccxt/async_support/deribit.py
CHANGED
@@ -3071,9 +3071,12 @@ class deribit(Exchange, ImplicitAPI):
|
|
3071
3071
|
market = self.market(symbol)
|
3072
3072
|
paginate = False
|
3073
3073
|
paginate, params = self.handle_option_and_params(params, 'fetchFundingRateHistory', 'paginate')
|
3074
|
+
maxEntriesPerRequest = 744 # seems exchange returns max 744 items per request
|
3075
|
+
eachItemDuration = '1h'
|
3074
3076
|
if paginate:
|
3075
|
-
#
|
3076
|
-
return await self.fetch_paginated_call_deterministic('fetchFundingRateHistory', symbol, since, limit,
|
3077
|
+
# fix for: https://github.com/ccxt/ccxt/issues/25040
|
3078
|
+
return await self.fetch_paginated_call_deterministic('fetchFundingRateHistory', symbol, since, limit, eachItemDuration, self.extend(params, {'isDeribitPaginationCall': True}), maxEntriesPerRequest)
|
3079
|
+
duration = self.parse_timeframe(eachItemDuration) * 1000
|
3077
3080
|
time = self.milliseconds()
|
3078
3081
|
month = 30 * 24 * 60 * 60 * 1000
|
3079
3082
|
if since is None:
|
@@ -3090,6 +3093,10 @@ class deribit(Exchange, ImplicitAPI):
|
|
3090
3093
|
request['end_timestamp'] = until
|
3091
3094
|
else:
|
3092
3095
|
request['end_timestamp'] = time
|
3096
|
+
if 'isDeribitPaginationCall' in params:
|
3097
|
+
params = self.omit(params, 'isDeribitPaginationCall')
|
3098
|
+
maxUntil = self.sum(since, limit * duration)
|
3099
|
+
request['end_timestamp'] = min(request['end_timestamp'], maxUntil)
|
3093
3100
|
response = await self.publicGetGetFundingRateHistory(self.extend(request, params))
|
3094
3101
|
#
|
3095
3102
|
# {
|
ccxt/base/exchange.py
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
# -----------------------------------------------------------------------------
|
6
6
|
|
7
|
-
__version__ = '4.4.
|
7
|
+
__version__ = '4.4.52'
|
8
8
|
|
9
9
|
# -----------------------------------------------------------------------------
|
10
10
|
|
@@ -5728,6 +5728,27 @@ class Exchange(object):
|
|
5728
5728
|
symbol = None if (market is None) else market['symbol']
|
5729
5729
|
return self.filter_by_symbol_since_limit(sorted, symbol, since, limit)
|
5730
5730
|
|
5731
|
+
def handle_trigger_direction_and_params(self, params, exchangeSpecificKey: Str = None, allowEmpty: Bool = False):
|
5732
|
+
"""
|
5733
|
+
@ignore
|
5734
|
+
:returns [str, dict]: the trigger-direction value and omited params
|
5735
|
+
"""
|
5736
|
+
triggerDirection = self.safe_string(params, 'triggerDirection')
|
5737
|
+
exchangeSpecificDefined = (exchangeSpecificKey is not None) and (exchangeSpecificKey in params)
|
5738
|
+
if triggerDirection is not None:
|
5739
|
+
params = self.omit(params, 'triggerDirection')
|
5740
|
+
# raise exception if:
|
5741
|
+
# A) if provided value is not unified(support old "up/down" strings too)
|
5742
|
+
# B) if exchange specific "trigger direction key"(eg. "stopPriceSide") was not provided
|
5743
|
+
if not self.in_array(triggerDirection, ['ascending', 'descending', 'up', 'down', 'above', 'below']) and not exchangeSpecificDefined and not allowEmpty:
|
5744
|
+
raise ArgumentsRequired(self.id + ' createOrder() : trigger orders require params["triggerDirection"] to be either "ascending" or "descending"')
|
5745
|
+
# if old format was provided, overwrite to new
|
5746
|
+
if triggerDirection == 'up' or triggerDirection == 'above':
|
5747
|
+
triggerDirection = 'ascending'
|
5748
|
+
elif triggerDirection == 'down' or triggerDirection == 'below':
|
5749
|
+
triggerDirection = 'descending'
|
5750
|
+
return [triggerDirection, params]
|
5751
|
+
|
5731
5752
|
def handle_trigger_and_params(self, params):
|
5732
5753
|
isTrigger = self.safe_bool_2(params, 'trigger', 'stop')
|
5733
5754
|
if isTrigger:
|
ccxt/deribit.py
CHANGED
@@ -3071,9 +3071,12 @@ class deribit(Exchange, ImplicitAPI):
|
|
3071
3071
|
market = self.market(symbol)
|
3072
3072
|
paginate = False
|
3073
3073
|
paginate, params = self.handle_option_and_params(params, 'fetchFundingRateHistory', 'paginate')
|
3074
|
+
maxEntriesPerRequest = 744 # seems exchange returns max 744 items per request
|
3075
|
+
eachItemDuration = '1h'
|
3074
3076
|
if paginate:
|
3075
|
-
#
|
3076
|
-
return self.fetch_paginated_call_deterministic('fetchFundingRateHistory', symbol, since, limit,
|
3077
|
+
# fix for: https://github.com/ccxt/ccxt/issues/25040
|
3078
|
+
return self.fetch_paginated_call_deterministic('fetchFundingRateHistory', symbol, since, limit, eachItemDuration, self.extend(params, {'isDeribitPaginationCall': True}), maxEntriesPerRequest)
|
3079
|
+
duration = self.parse_timeframe(eachItemDuration) * 1000
|
3077
3080
|
time = self.milliseconds()
|
3078
3081
|
month = 30 * 24 * 60 * 60 * 1000
|
3079
3082
|
if since is None:
|
@@ -3090,6 +3093,10 @@ class deribit(Exchange, ImplicitAPI):
|
|
3090
3093
|
request['end_timestamp'] = until
|
3091
3094
|
else:
|
3092
3095
|
request['end_timestamp'] = time
|
3096
|
+
if 'isDeribitPaginationCall' in params:
|
3097
|
+
params = self.omit(params, 'isDeribitPaginationCall')
|
3098
|
+
maxUntil = self.sum(since, limit * duration)
|
3099
|
+
request['end_timestamp'] = min(request['end_timestamp'], maxUntil)
|
3093
3100
|
response = self.publicGetGetFundingRateHistory(self.extend(request, params))
|
3094
3101
|
#
|
3095
3102
|
# {
|
ccxt/pro/__init__.py
CHANGED
ccxt/test/tests_async.py
CHANGED
ccxt/test/tests_sync.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: ccxt
|
3
|
-
Version: 4.4.
|
3
|
+
Version: 4.4.52
|
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
|
@@ -278,13 +278,13 @@ console.log(version, Object.keys(exchanges));
|
|
278
278
|
|
279
279
|
All-in-one browser bundle (dependencies included), served from a CDN of your choice:
|
280
280
|
|
281
|
-
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.
|
282
|
-
* unpkg: https://unpkg.com/ccxt@4.4.
|
281
|
+
* jsDelivr: https://cdn.jsdelivr.net/npm/ccxt@4.4.52/dist/ccxt.browser.min.js
|
282
|
+
* unpkg: https://unpkg.com/ccxt@4.4.52/dist/ccxt.browser.min.js
|
283
283
|
|
284
284
|
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.
|
285
285
|
|
286
286
|
```HTML
|
287
|
-
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.
|
287
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ccxt@4.4.52/dist/ccxt.browser.min.js"></script>
|
288
288
|
```
|
289
289
|
|
290
290
|
Creates a global `ccxt` object:
|
@@ -1,4 +1,4 @@
|
|
1
|
-
ccxt/__init__.py,sha256=
|
1
|
+
ccxt/__init__.py,sha256=ILN_h9chrG9X6MyMcPrqrT5IK3uk1tWy2ezDbHQYeRg,16874
|
2
2
|
ccxt/ace.py,sha256=KPY_01yi7GOz4cTrWNDdsT6tSXp989CQZ6TsFZldBWg,44594
|
3
3
|
ccxt/alpaca.py,sha256=ms7D8xCQjNxmHm7zYEaCQmnb-MrFuunYDlI93r3jfD4,77875
|
4
4
|
ccxt/ascendex.py,sha256=C_SFpO1YMH7SfxeZovZipPyHieWrknOQamZ2fdVKRoo,155813
|
@@ -53,7 +53,7 @@ ccxt/cryptocom.py,sha256=XUqDnQmsHSdcj09Be0JkjqB4_uJy6-t-g-Pq5GbEYW4,140426
|
|
53
53
|
ccxt/currencycom.py,sha256=ejPOchlX42Itozx_sfvtUnb91RrzabcbyD9ZJ0NR9qU,89834
|
54
54
|
ccxt/defx.py,sha256=o6VbIe7DyoJqqWQWd89IgIoRrnNjSv4bxvIYcykZBEU,85008
|
55
55
|
ccxt/delta.py,sha256=HfjIddlj-lbSg1BzJdquekb5X2heW0fwwhmP_L4UYvg,154689
|
56
|
-
ccxt/deribit.py,sha256=
|
56
|
+
ccxt/deribit.py,sha256=Xzfjx2xHk48QnXYv7DYRH4RWI8KNgv5xFVG4yGmn_Qs,166494
|
57
57
|
ccxt/digifinex.py,sha256=oVzJEW5l1bL5IfMqIfwvXKli_Cal0SdKeDeuPBS5qjY,177146
|
58
58
|
ccxt/ellipx.py,sha256=F2VtDmI2cZjH6oheV-uZIP0lrJsp4ybaOTTO7OTuXO8,78809
|
59
59
|
ccxt/exmo.py,sha256=Si7NATsXgtmqUoW-B-Z1G1tZk-IZzEbHpRTeS19hYUk,120419
|
@@ -224,7 +224,7 @@ ccxt/abstract/xt.py,sha256=PwTBDqdI8Ka7i4EbwRwamii_LcaDmqu1_J96SefsbyA,27139
|
|
224
224
|
ccxt/abstract/yobit.py,sha256=8ycfCO8ORFly9hc0Aa47sZyX4_ZKPXS9h9yJzI-uQ7Q,1339
|
225
225
|
ccxt/abstract/zaif.py,sha256=m15WHdl3gYy0GOXNZ8NEH8eE7sVh8c0T_ITNuU8vXeU,3935
|
226
226
|
ccxt/abstract/zonda.py,sha256=X-hCW0SdX3YKZWixDyW-O2211M58Rno8kKJ6quY7rw4,7183
|
227
|
-
ccxt/async_support/__init__.py,sha256=
|
227
|
+
ccxt/async_support/__init__.py,sha256=1ZuGdL5oB7A83BRnYc5NsxGjI337i4xiharhBOHwH40,16717
|
228
228
|
ccxt/async_support/ace.py,sha256=Jg6ghypA8t_z0VIs9pH33zZt_BbAFHoPb9SvDnh9-14,44818
|
229
229
|
ccxt/async_support/alpaca.py,sha256=bvP1uMSXKAHfJqwvxYuZd6GnEm7pN7l8xkWXzzjheDQ,78321
|
230
230
|
ccxt/async_support/ascendex.py,sha256=0lRstZed7ObwXOH9nL13LA9_0YZTvuLAgAE8czwmR7c,156626
|
@@ -279,7 +279,7 @@ ccxt/async_support/cryptocom.py,sha256=wlZjsz1q6Wt7ozS66_qlvv0LGK4tQj3YZfXsXWM3w
|
|
279
279
|
ccxt/async_support/currencycom.py,sha256=2251kTmKHKYWiDQvU6ru065UwCidrq9k1cpEGL-Fk8s,90256
|
280
280
|
ccxt/async_support/defx.py,sha256=VVIO_LjIlwz__YjgYoFoV9VhsxIZAsCvSTIg8wS3g4Q,85510
|
281
281
|
ccxt/async_support/delta.py,sha256=vxnV2ix0Bu1yTxkO8w2lT_RMLDhQmWi6mUKz0OfEa0Q,155297
|
282
|
-
ccxt/async_support/deribit.py,sha256=
|
282
|
+
ccxt/async_support/deribit.py,sha256=M-K6ptxlDSSTkm54NHOrnIjKzHeTsuHU2BVRnpF8MVs,167276
|
283
283
|
ccxt/async_support/digifinex.py,sha256=PH-UhQUCWwJGUfU8G-wSuYDEPF_GLvDCgmogyJ-Go9E,178134
|
284
284
|
ccxt/async_support/ellipx.py,sha256=NdCzpE9ijNPeuae3WdWrRFWKiAJgmRTQCiz79v79iPE,79117
|
285
285
|
ccxt/async_support/exmo.py,sha256=lLNWpjIC0o7mjUjYCBB7ASBQHIlxZ9y8PzJjK4lHIjo,121105
|
@@ -338,7 +338,7 @@ ccxt/async_support/yobit.py,sha256=9utgh_VB4TxNT7VJMwnO4o7Y_d3ZyIsESuwU1-UMClI,5
|
|
338
338
|
ccxt/async_support/zaif.py,sha256=-5ikz0v4tDtaObdGpn-JXAI6ltkk-lOxF94kfqvICE8,31247
|
339
339
|
ccxt/async_support/zonda.py,sha256=whee7XGjoB_UyQNfQdACqGPMBxqqDilvnkPW7ph5Mg4,85210
|
340
340
|
ccxt/async_support/base/__init__.py,sha256=aVYSsFi--b4InRs9zDN_wtCpj8odosAB726JdUHavrk,67
|
341
|
-
ccxt/async_support/base/exchange.py,sha256=
|
341
|
+
ccxt/async_support/base/exchange.py,sha256=NVYqOZtVKmJAu7qJ5-sBZPh5jnJ23Nb8YgEl5tkC1ao,115829
|
342
342
|
ccxt/async_support/base/throttler.py,sha256=tvDVcdRUVYi8fZRlEcnqtgzcgB_KMUMRs5Pu8tuU-tU,1847
|
343
343
|
ccxt/async_support/base/ws/__init__.py,sha256=uockzpLuwntKGZbs5EOWFe-Zg-k6Cj7GhNJLc_RX0so,1791
|
344
344
|
ccxt/async_support/base/ws/aiohttp_client.py,sha256=Y5HxAVXyyYduj6b6SbbUZETlq3GrVMzrkW1r-TMgpb8,6329
|
@@ -352,10 +352,10 @@ ccxt/async_support/base/ws/order_book_side.py,sha256=GhnGUt78pJ-AYL_Dq9produGjmB
|
|
352
352
|
ccxt/base/__init__.py,sha256=eTx1OE3HJjspFUQjGm6LBhaQiMKJnXjkdP-JUXknyQ0,1320
|
353
353
|
ccxt/base/decimal_to_precision.py,sha256=fgWRBzRTtsf3r2INyS4f7WHlzgjB5YM1ekiwqD21aac,6634
|
354
354
|
ccxt/base/errors.py,sha256=MvCrL_sAM3de616T6RE0PSxiF2xV6Qqz5b1y1ghidbk,4888
|
355
|
-
ccxt/base/exchange.py,sha256=
|
355
|
+
ccxt/base/exchange.py,sha256=_QOlc75565k8XRpRzksIM4qaqimxY_hDFbu78qQh4UQ,316519
|
356
356
|
ccxt/base/precise.py,sha256=koce64Yrp6vFbGijJtUt-QQ6XhJgeGTCksZ871FPp_A,8886
|
357
357
|
ccxt/base/types.py,sha256=sWoDanT5JPRUEc4AOLuOmcqKSXpDXyeoSwMk5HQtXOs,10733
|
358
|
-
ccxt/pro/__init__.py,sha256=
|
358
|
+
ccxt/pro/__init__.py,sha256=hgIUo2aV1wShFUDfiTJ1Q2_-Bv9KcKHdQ2H5rIR0_sg,8124
|
359
359
|
ccxt/pro/alpaca.py,sha256=Imdm0wlioL9MMI7ytu0l-wrTIBzNGnHOf8h8Ux2XpJg,27611
|
360
360
|
ccxt/pro/ascendex.py,sha256=BJh0w31wjTIZJriDqWWC1NbEgiW7X4VboYC3g61c4w4,37500
|
361
361
|
ccxt/pro/bequant.py,sha256=33OEUWBi4D9-2w8CmkwN3aF1qS-AlLqX3pxrWwNbXPY,1552
|
@@ -658,12 +658,12 @@ ccxt/static_dependencies/toolz/curried/operator.py,sha256=ML92mknkAwzBl2NCm-4wer
|
|
658
658
|
ccxt/static_dependencies/typing_inspect/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
659
659
|
ccxt/static_dependencies/typing_inspect/typing_inspect.py,sha256=5gIWomLPfuDpgd3gX1GlnX0MuXM3VorR4j2W2qXORiQ,28269
|
660
660
|
ccxt/test/__init__.py,sha256=GKPbEcj0Rrz5HG-GUm-iY1IHhDYmlvcBXZAGk6-m2CI,141
|
661
|
-
ccxt/test/tests_async.py,sha256=
|
661
|
+
ccxt/test/tests_async.py,sha256=pC5j9S0td2prdnTQkPOYwH2ZJ0A4SzkaL7D3uK8Mce8,88290
|
662
662
|
ccxt/test/tests_helpers.py,sha256=egM69A2ZFYeVF5hwC1Qt-c5DOeClY5bv4jowmceeFV8,9736
|
663
663
|
ccxt/test/tests_init.py,sha256=GodMIrJue4KBHHqD4vSPZxokPWpxbZIuEp19UdxlFAg,1166
|
664
|
-
ccxt/test/tests_sync.py,sha256=
|
665
|
-
ccxt-4.4.
|
666
|
-
ccxt-4.4.
|
667
|
-
ccxt-4.4.
|
668
|
-
ccxt-4.4.
|
669
|
-
ccxt-4.4.
|
664
|
+
ccxt/test/tests_sync.py,sha256=M6Aj1eH7esDJxOMs3DlSICJz0ZoMs5u584-19MOueDY,87316
|
665
|
+
ccxt-4.4.52.dist-info/LICENSE.txt,sha256=EIb9221AhMHV7xF1_55STFdKTFsnJVJYkRpY2Lnvo5w,1068
|
666
|
+
ccxt-4.4.52.dist-info/METADATA,sha256=cpovEODG83yHXiM43Ftr-JYG3HVZTD2yV2mzsRxg5hU,117851
|
667
|
+
ccxt-4.4.52.dist-info/WHEEL,sha256=Kh9pAotZVRFj97E15yTA4iADqXdQfIVTHcNaZTjxeGM,110
|
668
|
+
ccxt-4.4.52.dist-info/top_level.txt,sha256=CkQDuCTDKNcImPV60t36G6MdYfxsAPNiSaEwifVoVMo,5
|
669
|
+
ccxt-4.4.52.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|