ccxt 4.4.57__py2.py3-none-any.whl → 4.4.59__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 -3
- ccxt/abstract/xt.py +1 -0
- ccxt/ace.py +2 -2
- ccxt/alpaca.py +4 -4
- ccxt/ascendex.py +5 -3
- ccxt/async_support/__init__.py +1 -3
- ccxt/async_support/ace.py +2 -2
- ccxt/async_support/alpaca.py +4 -4
- ccxt/async_support/ascendex.py +5 -3
- ccxt/async_support/base/exchange.py +1 -1
- ccxt/async_support/bequant.py +2 -1
- ccxt/async_support/bigone.py +5 -5
- ccxt/async_support/binance.py +22 -6
- ccxt/async_support/binancecoinm.py +2 -1
- ccxt/async_support/binanceus.py +2 -1
- ccxt/async_support/binanceusdm.py +2 -1
- ccxt/async_support/bingx.py +3 -3
- ccxt/async_support/bit2c.py +9 -9
- ccxt/async_support/bitbank.py +2 -2
- ccxt/async_support/bitbns.py +2 -2
- ccxt/async_support/bitcoincom.py +2 -1
- ccxt/async_support/bitfinex.py +2 -2
- ccxt/async_support/bitfinex1.py +2 -2
- ccxt/async_support/bitflyer.py +2 -2
- ccxt/async_support/bitget.py +8 -3
- ccxt/async_support/bithumb.py +2 -2
- ccxt/async_support/bitmart.py +150 -89
- ccxt/async_support/bitmex.py +2 -2
- ccxt/async_support/bitopro.py +2 -2
- ccxt/async_support/bitpanda.py +2 -1
- ccxt/async_support/bitrue.py +3 -3
- ccxt/async_support/bitso.py +2 -2
- ccxt/async_support/bitstamp.py +2 -2
- ccxt/async_support/bitteam.py +2 -2
- ccxt/async_support/bitvavo.py +3 -3
- ccxt/async_support/bl3p.py +2 -2
- ccxt/async_support/blockchaincom.py +2 -2
- ccxt/async_support/blofin.py +3 -4
- ccxt/async_support/btcalpha.py +2 -2
- ccxt/async_support/btcbox.py +2 -2
- ccxt/async_support/btcmarkets.py +3 -3
- ccxt/async_support/btcturk.py +2 -2
- ccxt/async_support/bybit.py +17 -6
- ccxt/async_support/cex.py +3 -3
- ccxt/async_support/coinbase.py +12 -5
- ccxt/async_support/coinbaseadvanced.py +2 -1
- ccxt/async_support/coinbaseexchange.py +3 -3
- ccxt/async_support/coinbaseinternational.py +3 -4
- ccxt/async_support/coincatch.py +3 -3
- ccxt/async_support/coincheck.py +2 -2
- ccxt/async_support/coinex.py +3 -3
- ccxt/async_support/coinlist.py +3 -3
- ccxt/async_support/coinmate.py +2 -2
- ccxt/async_support/coinmetro.py +2 -2
- ccxt/async_support/coinone.py +2 -2
- ccxt/async_support/coinsph.py +3 -3
- ccxt/async_support/coinspot.py +2 -2
- ccxt/async_support/cryptocom.py +2 -2
- ccxt/async_support/currencycom.py +3 -3
- ccxt/async_support/defx.py +3 -3
- ccxt/async_support/delta.py +3 -3
- ccxt/async_support/deribit.py +3 -3
- ccxt/async_support/digifinex.py +3 -3
- ccxt/async_support/ellipx.py +1 -1
- ccxt/async_support/exmo.py +2 -2
- ccxt/async_support/fmfwio.py +2 -1
- ccxt/async_support/gate.py +3 -3
- ccxt/async_support/gateio.py +2 -1
- ccxt/async_support/gemini.py +2 -2
- ccxt/async_support/hashkey.py +2 -2
- ccxt/async_support/hitbtc.py +3 -3
- ccxt/async_support/hollaex.py +2 -2
- ccxt/async_support/htx.py +3 -3
- ccxt/async_support/huobi.py +2 -1
- ccxt/async_support/huobijp.py +3 -3
- ccxt/async_support/hyperliquid.py +91 -6
- ccxt/async_support/idex.py +3 -3
- ccxt/async_support/independentreserve.py +2 -2
- ccxt/async_support/indodax.py +3 -3
- ccxt/async_support/kraken.py +3 -3
- ccxt/async_support/krakenfutures.py +2 -2
- ccxt/async_support/kucoin.py +3 -3
- ccxt/async_support/kucoinfutures.py +3 -3
- ccxt/async_support/kuna.py +3 -3
- ccxt/async_support/latoken.py +3 -3
- ccxt/async_support/lbank.py +3 -3
- ccxt/async_support/luno.py +2 -2
- ccxt/async_support/mercado.py +2 -2
- ccxt/async_support/mexc.py +3 -3
- ccxt/async_support/myokx.py +2 -1
- ccxt/async_support/ndax.py +2 -2
- ccxt/async_support/novadax.py +3 -3
- ccxt/async_support/oceanex.py +3 -3
- ccxt/async_support/okcoin.py +3 -3
- ccxt/async_support/okx.py +3 -4
- ccxt/async_support/onetrading.py +3 -3
- ccxt/async_support/oxfun.py +2 -2
- ccxt/async_support/p2b.py +2 -2
- ccxt/async_support/paradex.py +3 -3
- ccxt/async_support/paymium.py +2 -2
- ccxt/async_support/phemex.py +2 -2
- ccxt/async_support/poloniex.py +3 -3
- ccxt/async_support/poloniexfutures.py +3 -3
- ccxt/async_support/probit.py +3 -3
- ccxt/async_support/timex.py +15 -5
- ccxt/async_support/tokocrypto.py +3 -3
- ccxt/async_support/tradeogre.py +2 -2
- ccxt/async_support/upbit.py +2 -2
- ccxt/async_support/vertex.py +5 -5
- ccxt/async_support/wavesexchange.py +2 -3
- ccxt/async_support/whitebit.py +5 -4
- ccxt/async_support/woo.py +3 -4
- ccxt/async_support/woofipro.py +3 -4
- ccxt/async_support/xt.py +57 -4
- ccxt/async_support/yobit.py +2 -2
- ccxt/async_support/zaif.py +2 -2
- ccxt/async_support/zonda.py +2 -2
- ccxt/base/exchange.py +5 -4
- ccxt/bequant.py +2 -1
- ccxt/bigone.py +5 -5
- ccxt/binance.py +22 -6
- ccxt/binancecoinm.py +2 -1
- ccxt/binanceus.py +2 -1
- ccxt/binanceusdm.py +2 -1
- ccxt/bingx.py +3 -3
- ccxt/bit2c.py +9 -9
- ccxt/bitbank.py +2 -2
- ccxt/bitbns.py +2 -2
- ccxt/bitcoincom.py +2 -1
- ccxt/bitfinex.py +2 -2
- ccxt/bitfinex1.py +2 -2
- ccxt/bitflyer.py +2 -2
- ccxt/bitget.py +8 -3
- ccxt/bithumb.py +2 -2
- ccxt/bitmart.py +150 -89
- ccxt/bitmex.py +2 -2
- ccxt/bitopro.py +2 -2
- ccxt/bitpanda.py +2 -1
- ccxt/bitrue.py +3 -3
- ccxt/bitso.py +2 -2
- ccxt/bitstamp.py +2 -2
- ccxt/bitteam.py +2 -2
- ccxt/bitvavo.py +3 -3
- ccxt/bl3p.py +2 -2
- ccxt/blockchaincom.py +2 -2
- ccxt/blofin.py +3 -4
- ccxt/btcalpha.py +2 -2
- ccxt/btcbox.py +2 -2
- ccxt/btcmarkets.py +3 -3
- ccxt/btcturk.py +2 -2
- ccxt/bybit.py +17 -6
- ccxt/cex.py +3 -3
- ccxt/coinbase.py +12 -5
- ccxt/coinbaseadvanced.py +2 -1
- ccxt/coinbaseexchange.py +3 -3
- ccxt/coinbaseinternational.py +3 -4
- ccxt/coincatch.py +3 -3
- ccxt/coincheck.py +2 -2
- ccxt/coinex.py +3 -3
- ccxt/coinlist.py +3 -3
- ccxt/coinmate.py +2 -2
- ccxt/coinmetro.py +2 -2
- ccxt/coinone.py +2 -2
- ccxt/coinsph.py +3 -3
- ccxt/coinspot.py +2 -2
- ccxt/cryptocom.py +2 -2
- ccxt/currencycom.py +3 -3
- ccxt/defx.py +3 -3
- ccxt/delta.py +3 -3
- ccxt/deribit.py +3 -3
- ccxt/digifinex.py +3 -3
- ccxt/ellipx.py +1 -1
- ccxt/exmo.py +2 -2
- ccxt/fmfwio.py +2 -1
- ccxt/gate.py +3 -3
- ccxt/gateio.py +2 -1
- ccxt/gemini.py +2 -2
- ccxt/hashkey.py +2 -2
- ccxt/hitbtc.py +3 -3
- ccxt/hollaex.py +2 -2
- ccxt/htx.py +3 -3
- ccxt/huobi.py +2 -1
- ccxt/huobijp.py +3 -3
- ccxt/hyperliquid.py +91 -6
- ccxt/idex.py +3 -3
- ccxt/independentreserve.py +2 -2
- ccxt/indodax.py +3 -3
- ccxt/kraken.py +3 -3
- ccxt/krakenfutures.py +2 -2
- ccxt/kucoin.py +3 -3
- ccxt/kucoinfutures.py +3 -3
- ccxt/kuna.py +3 -3
- ccxt/latoken.py +3 -3
- ccxt/lbank.py +3 -3
- ccxt/luno.py +2 -2
- ccxt/mercado.py +2 -2
- ccxt/mexc.py +3 -3
- ccxt/myokx.py +2 -1
- ccxt/ndax.py +2 -2
- ccxt/novadax.py +3 -3
- ccxt/oceanex.py +3 -3
- ccxt/okcoin.py +3 -3
- ccxt/okx.py +3 -4
- ccxt/onetrading.py +3 -3
- ccxt/oxfun.py +2 -2
- ccxt/p2b.py +2 -2
- ccxt/paradex.py +3 -3
- ccxt/paymium.py +2 -2
- ccxt/phemex.py +2 -2
- ccxt/poloniex.py +3 -3
- ccxt/poloniexfutures.py +3 -3
- ccxt/pro/__init__.py +1 -3
- ccxt/pro/alpaca.py +2 -2
- ccxt/pro/ascendex.py +2 -2
- ccxt/pro/bequant.py +2 -1
- ccxt/pro/binance.py +2 -3
- ccxt/pro/binancecoinm.py +2 -1
- ccxt/pro/binanceus.py +3 -2
- ccxt/pro/binanceusdm.py +2 -1
- ccxt/pro/bingx.py +2 -2
- ccxt/pro/bitcoincom.py +2 -1
- ccxt/pro/bitfinex.py +2 -2
- ccxt/pro/bitfinex1.py +2 -2
- ccxt/pro/bitget.py +2 -3
- ccxt/pro/bithumb.py +2 -2
- ccxt/pro/bitmart.py +2 -2
- ccxt/pro/bitmex.py +2 -2
- ccxt/pro/bitopro.py +2 -2
- ccxt/pro/bitpanda.py +2 -1
- ccxt/pro/bitrue.py +2 -2
- ccxt/pro/bitstamp.py +2 -2
- ccxt/pro/bitvavo.py +2 -2
- ccxt/pro/blockchaincom.py +2 -2
- ccxt/pro/blofin.py +1 -1
- ccxt/pro/bybit.py +6 -4
- ccxt/pro/cex.py +2 -2
- ccxt/pro/coinbase.py +2 -2
- ccxt/pro/coinbaseadvanced.py +2 -1
- ccxt/pro/coinbaseexchange.py +2 -2
- ccxt/pro/coinbaseinternational.py +2 -2
- ccxt/pro/coincatch.py +2 -3
- ccxt/pro/coincheck.py +2 -2
- ccxt/pro/coinex.py +2 -2
- ccxt/pro/coinone.py +2 -2
- ccxt/pro/cryptocom.py +2 -3
- ccxt/pro/currencycom.py +2 -2
- ccxt/pro/defx.py +2 -3
- ccxt/pro/deribit.py +2 -2
- ccxt/pro/exmo.py +2 -2
- ccxt/pro/gate.py +2 -3
- ccxt/pro/gateio.py +2 -1
- ccxt/pro/gemini.py +2 -2
- ccxt/pro/hashkey.py +2 -2
- ccxt/pro/hitbtc.py +2 -2
- ccxt/pro/hollaex.py +2 -2
- ccxt/pro/htx.py +2 -2
- ccxt/pro/huobi.py +2 -1
- ccxt/pro/huobijp.py +2 -2
- ccxt/pro/hyperliquid.py +2 -3
- ccxt/pro/idex.py +2 -2
- ccxt/pro/independentreserve.py +2 -2
- ccxt/pro/kraken.py +2 -2
- ccxt/pro/krakenfutures.py +2 -2
- ccxt/pro/kucoin.py +2 -3
- ccxt/pro/kucoinfutures.py +2 -3
- ccxt/pro/lbank.py +2 -2
- ccxt/pro/luno.py +2 -2
- ccxt/pro/mexc.py +5 -3
- ccxt/pro/myokx.py +2 -1
- ccxt/pro/ndax.py +2 -2
- ccxt/pro/okcoin.py +2 -2
- ccxt/pro/okx.py +2 -3
- ccxt/pro/onetrading.py +2 -2
- ccxt/pro/oxfun.py +2 -2
- ccxt/pro/p2b.py +2 -2
- ccxt/pro/paradex.py +2 -2
- ccxt/pro/phemex.py +2 -2
- ccxt/pro/poloniex.py +2 -2
- ccxt/pro/poloniexfutures.py +2 -2
- ccxt/pro/probit.py +2 -2
- ccxt/pro/upbit.py +2 -2
- ccxt/pro/vertex.py +2 -2
- ccxt/pro/wazirx.py +2 -2
- ccxt/pro/whitebit.py +2 -2
- ccxt/pro/woo.py +2 -2
- ccxt/pro/woofipro.py +2 -2
- ccxt/pro/xt.py +2 -2
- ccxt/probit.py +3 -3
- ccxt/test/tests_init.py +2 -2
- ccxt/timex.py +15 -5
- ccxt/tokocrypto.py +3 -3
- ccxt/tradeogre.py +2 -2
- ccxt/upbit.py +2 -2
- ccxt/vertex.py +5 -5
- ccxt/wavesexchange.py +2 -3
- ccxt/whitebit.py +5 -4
- ccxt/woo.py +3 -4
- ccxt/woofipro.py +3 -4
- ccxt/xt.py +57 -4
- ccxt/yobit.py +2 -2
- ccxt/zaif.py +2 -2
- ccxt/zonda.py +2 -2
- {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/METADATA +30 -33
- {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/RECORD +307 -310
- ccxt/abstract/wazirx.py +0 -30
- ccxt/async_support/wazirx.py +0 -1336
- ccxt/wazirx.py +0 -1336
- {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/WHEEL +0 -0
- {ccxt-4.4.57.dist-info → ccxt-4.4.59.dist-info}/top_level.txt +0 -0
ccxt/__init__.py
CHANGED
@@ -22,7 +22,7 @@
|
|
22
22
|
|
23
23
|
# ----------------------------------------------------------------------------
|
24
24
|
|
25
|
-
__version__ = '4.4.
|
25
|
+
__version__ = '4.4.59'
|
26
26
|
|
27
27
|
# ----------------------------------------------------------------------------
|
28
28
|
|
@@ -186,7 +186,6 @@ from ccxt.tradeogre import tradeogre # noqa: F4
|
|
186
186
|
from ccxt.upbit import upbit # noqa: F401
|
187
187
|
from ccxt.vertex import vertex # noqa: F401
|
188
188
|
from ccxt.wavesexchange import wavesexchange # noqa: F401
|
189
|
-
from ccxt.wazirx import wazirx # noqa: F401
|
190
189
|
from ccxt.whitebit import whitebit # noqa: F401
|
191
190
|
from ccxt.woo import woo # noqa: F401
|
192
191
|
from ccxt.woofipro import woofipro # noqa: F401
|
@@ -299,7 +298,6 @@ exchanges = [
|
|
299
298
|
'upbit',
|
300
299
|
'vertex',
|
301
300
|
'wavesexchange',
|
302
|
-
'wazirx',
|
303
301
|
'whitebit',
|
304
302
|
'woo',
|
305
303
|
'woofipro',
|
ccxt/abstract/xt.py
CHANGED
@@ -109,6 +109,7 @@ class ImplicitAPI:
|
|
109
109
|
private_linear_post_future_user_v1_position_margin = privateLinearPostFutureUserV1PositionMargin = Entry('future/user/v1/position/margin', ['private', 'linear'], 'POST', {'cost': 1})
|
110
110
|
private_linear_post_future_user_v1_user_collection_add = privateLinearPostFutureUserV1UserCollectionAdd = Entry('future/user/v1/user/collection/add', ['private', 'linear'], 'POST', {'cost': 1})
|
111
111
|
private_linear_post_future_user_v1_user_collection_cancel = privateLinearPostFutureUserV1UserCollectionCancel = Entry('future/user/v1/user/collection/cancel', ['private', 'linear'], 'POST', {'cost': 1})
|
112
|
+
private_linear_post_future_user_v1_position_change_type = privateLinearPostFutureUserV1PositionChangeType = Entry('future/user/v1/position/change-type', ['private', 'linear'], 'POST', {'cost': 1})
|
112
113
|
private_inverse_get_future_trade_v1_entrust_plan_detail = privateInverseGetFutureTradeV1EntrustPlanDetail = Entry('future/trade/v1/entrust/plan-detail', ['private', 'inverse'], 'GET', {'cost': 1})
|
113
114
|
private_inverse_get_future_trade_v1_entrust_plan_list = privateInverseGetFutureTradeV1EntrustPlanList = Entry('future/trade/v1/entrust/plan-list', ['private', 'inverse'], 'GET', {'cost': 1})
|
114
115
|
private_inverse_get_future_trade_v1_entrust_plan_list_history = privateInverseGetFutureTradeV1EntrustPlanListHistory = Entry('future/trade/v1/entrust/plan-list-history', ['private', 'inverse'], 'GET', {'cost': 1})
|
ccxt/ace.py
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
from ccxt.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.ace import ImplicitAPI
|
8
|
-
from ccxt.base.types import Balances, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
|
8
|
+
from ccxt.base.types import Any, Balances, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
|
9
9
|
from typing import List
|
10
10
|
from ccxt.base.errors import AuthenticationError
|
11
11
|
from ccxt.base.errors import ArgumentsRequired
|
@@ -18,7 +18,7 @@ from ccxt.base.precise import Precise
|
|
18
18
|
|
19
19
|
class ace(Exchange, ImplicitAPI):
|
20
20
|
|
21
|
-
def describe(self):
|
21
|
+
def describe(self) -> Any:
|
22
22
|
return self.deep_extend(super(ace, self).describe(), {
|
23
23
|
'id': 'ace',
|
24
24
|
'name': 'ACE',
|
ccxt/alpaca.py
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
from ccxt.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.alpaca import ImplicitAPI
|
8
|
-
from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
8
|
+
from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
9
9
|
from typing import List
|
10
10
|
from ccxt.base.errors import ExchangeError
|
11
11
|
from ccxt.base.errors import PermissionDenied
|
@@ -22,7 +22,7 @@ from ccxt.base.precise import Precise
|
|
22
22
|
|
23
23
|
class alpaca(Exchange, ImplicitAPI):
|
24
24
|
|
25
|
-
def describe(self):
|
25
|
+
def describe(self) -> Any:
|
26
26
|
return self.deep_extend(super(alpaca, self).describe(), {
|
27
27
|
'id': 'alpaca',
|
28
28
|
'name': 'Alpaca',
|
@@ -378,7 +378,7 @@ class alpaca(Exchange, ImplicitAPI):
|
|
378
378
|
},
|
379
379
|
})
|
380
380
|
|
381
|
-
def fetch_time(self, params={}):
|
381
|
+
def fetch_time(self, params={}) -> Int:
|
382
382
|
"""
|
383
383
|
fetches the current integer timestamp in milliseconds from the exchange server
|
384
384
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -991,7 +991,7 @@ class alpaca(Exchange, ImplicitAPI):
|
|
991
991
|
}
|
992
992
|
triggerPrice = self.safe_string_n(params, ['triggerPrice', 'stop_price'])
|
993
993
|
if triggerPrice is not None:
|
994
|
-
newType
|
994
|
+
newType: str
|
995
995
|
if type.find('limit') >= 0:
|
996
996
|
newType = 'stop_limit'
|
997
997
|
else:
|
ccxt/ascendex.py
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
from ccxt.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.ascendex import ImplicitAPI
|
8
8
|
import hashlib
|
9
|
-
from ccxt.base.types import Account, Balances, Currencies, Currency, DepositAddress, Int, Leverage, Leverages, LeverageTier, LeverageTiers, MarginMode, MarginModes, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFees, Transaction, TransferEntry
|
9
|
+
from ccxt.base.types import Account, Any, Balances, Currencies, Currency, DepositAddress, Int, Leverage, Leverages, LeverageTier, LeverageTiers, MarginMode, MarginModes, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFees, Transaction, TransferEntry
|
10
10
|
from typing import List
|
11
11
|
from ccxt.base.errors import ExchangeError
|
12
12
|
from ccxt.base.errors import AuthenticationError
|
@@ -24,7 +24,7 @@ from ccxt.base.precise import Precise
|
|
24
24
|
|
25
25
|
class ascendex(Exchange, ImplicitAPI):
|
26
26
|
|
27
|
-
def describe(self):
|
27
|
+
def describe(self) -> Any:
|
28
28
|
return self.deep_extend(super(ascendex, self).describe(), {
|
29
29
|
'id': 'ascendex',
|
30
30
|
'name': 'AscendEX',
|
@@ -365,6 +365,7 @@ class ascendex(Exchange, ImplicitAPI):
|
|
365
365
|
'untilDays': 100000,
|
366
366
|
'trigger': False,
|
367
367
|
'trailing': False,
|
368
|
+
'symbolRequired': False,
|
368
369
|
},
|
369
370
|
},
|
370
371
|
'forDerivatives': {
|
@@ -388,6 +389,7 @@ class ascendex(Exchange, ImplicitAPI):
|
|
388
389
|
'untilDays': None,
|
389
390
|
'trigger': False,
|
390
391
|
'trailing': False,
|
392
|
+
'symbolRequired': False,
|
391
393
|
},
|
392
394
|
},
|
393
395
|
'swap': {
|
@@ -781,7 +783,7 @@ class ascendex(Exchange, ImplicitAPI):
|
|
781
783
|
})
|
782
784
|
return result
|
783
785
|
|
784
|
-
def fetch_time(self, params={}):
|
786
|
+
def fetch_time(self, params={}) -> Int:
|
785
787
|
"""
|
786
788
|
fetches the current integer timestamp in milliseconds from the ascendex server
|
787
789
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
ccxt/async_support/__init__.py
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
# -----------------------------------------------------------------------------
|
6
6
|
|
7
|
-
__version__ = '4.4.
|
7
|
+
__version__ = '4.4.59'
|
8
8
|
|
9
9
|
# -----------------------------------------------------------------------------
|
10
10
|
|
@@ -166,7 +166,6 @@ from ccxt.async_support.tradeogre import tradeogre
|
|
166
166
|
from ccxt.async_support.upbit import upbit # noqa: F401
|
167
167
|
from ccxt.async_support.vertex import vertex # noqa: F401
|
168
168
|
from ccxt.async_support.wavesexchange import wavesexchange # noqa: F401
|
169
|
-
from ccxt.async_support.wazirx import wazirx # noqa: F401
|
170
169
|
from ccxt.async_support.whitebit import whitebit # noqa: F401
|
171
170
|
from ccxt.async_support.woo import woo # noqa: F401
|
172
171
|
from ccxt.async_support.woofipro import woofipro # noqa: F401
|
@@ -279,7 +278,6 @@ exchanges = [
|
|
279
278
|
'upbit',
|
280
279
|
'vertex',
|
281
280
|
'wavesexchange',
|
282
|
-
'wazirx',
|
283
281
|
'whitebit',
|
284
282
|
'woo',
|
285
283
|
'woofipro',
|
ccxt/async_support/ace.py
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.ace import ImplicitAPI
|
8
|
-
from ccxt.base.types import Balances, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
|
8
|
+
from ccxt.base.types import Any, Balances, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
|
9
9
|
from typing import List
|
10
10
|
from ccxt.base.errors import AuthenticationError
|
11
11
|
from ccxt.base.errors import ArgumentsRequired
|
@@ -18,7 +18,7 @@ from ccxt.base.precise import Precise
|
|
18
18
|
|
19
19
|
class ace(Exchange, ImplicitAPI):
|
20
20
|
|
21
|
-
def describe(self):
|
21
|
+
def describe(self) -> Any:
|
22
22
|
return self.deep_extend(super(ace, self).describe(), {
|
23
23
|
'id': 'ace',
|
24
24
|
'name': 'ACE',
|
ccxt/async_support/alpaca.py
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.alpaca import ImplicitAPI
|
8
|
-
from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
8
|
+
from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
9
9
|
from typing import List
|
10
10
|
from ccxt.base.errors import ExchangeError
|
11
11
|
from ccxt.base.errors import PermissionDenied
|
@@ -22,7 +22,7 @@ from ccxt.base.precise import Precise
|
|
22
22
|
|
23
23
|
class alpaca(Exchange, ImplicitAPI):
|
24
24
|
|
25
|
-
def describe(self):
|
25
|
+
def describe(self) -> Any:
|
26
26
|
return self.deep_extend(super(alpaca, self).describe(), {
|
27
27
|
'id': 'alpaca',
|
28
28
|
'name': 'Alpaca',
|
@@ -378,7 +378,7 @@ class alpaca(Exchange, ImplicitAPI):
|
|
378
378
|
},
|
379
379
|
})
|
380
380
|
|
381
|
-
async def fetch_time(self, params={}):
|
381
|
+
async def fetch_time(self, params={}) -> Int:
|
382
382
|
"""
|
383
383
|
fetches the current integer timestamp in milliseconds from the exchange server
|
384
384
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -991,7 +991,7 @@ class alpaca(Exchange, ImplicitAPI):
|
|
991
991
|
}
|
992
992
|
triggerPrice = self.safe_string_n(params, ['triggerPrice', 'stop_price'])
|
993
993
|
if triggerPrice is not None:
|
994
|
-
newType
|
994
|
+
newType: str
|
995
995
|
if type.find('limit') >= 0:
|
996
996
|
newType = 'stop_limit'
|
997
997
|
else:
|
ccxt/async_support/ascendex.py
CHANGED
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
|
|
7
7
|
from ccxt.abstract.ascendex import ImplicitAPI
|
8
8
|
import asyncio
|
9
9
|
import hashlib
|
10
|
-
from ccxt.base.types import Account, Balances, Currencies, Currency, DepositAddress, Int, Leverage, Leverages, LeverageTier, LeverageTiers, MarginMode, MarginModes, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFees, Transaction, TransferEntry
|
10
|
+
from ccxt.base.types import Account, Any, Balances, Currencies, Currency, DepositAddress, Int, Leverage, Leverages, LeverageTier, LeverageTiers, MarginMode, MarginModes, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFees, Transaction, TransferEntry
|
11
11
|
from typing import List
|
12
12
|
from ccxt.base.errors import ExchangeError
|
13
13
|
from ccxt.base.errors import AuthenticationError
|
@@ -25,7 +25,7 @@ from ccxt.base.precise import Precise
|
|
25
25
|
|
26
26
|
class ascendex(Exchange, ImplicitAPI):
|
27
27
|
|
28
|
-
def describe(self):
|
28
|
+
def describe(self) -> Any:
|
29
29
|
return self.deep_extend(super(ascendex, self).describe(), {
|
30
30
|
'id': 'ascendex',
|
31
31
|
'name': 'AscendEX',
|
@@ -366,6 +366,7 @@ class ascendex(Exchange, ImplicitAPI):
|
|
366
366
|
'untilDays': 100000,
|
367
367
|
'trigger': False,
|
368
368
|
'trailing': False,
|
369
|
+
'symbolRequired': False,
|
369
370
|
},
|
370
371
|
},
|
371
372
|
'forDerivatives': {
|
@@ -389,6 +390,7 @@ class ascendex(Exchange, ImplicitAPI):
|
|
389
390
|
'untilDays': None,
|
390
391
|
'trigger': False,
|
391
392
|
'trailing': False,
|
393
|
+
'symbolRequired': False,
|
392
394
|
},
|
393
395
|
},
|
394
396
|
'swap': {
|
@@ -782,7 +784,7 @@ class ascendex(Exchange, ImplicitAPI):
|
|
782
784
|
})
|
783
785
|
return result
|
784
786
|
|
785
|
-
async def fetch_time(self, params={}):
|
787
|
+
async def fetch_time(self, params={}) -> Int:
|
786
788
|
"""
|
787
789
|
fetches the current integer timestamp in milliseconds from the ascendex server
|
788
790
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
ccxt/async_support/bequant.py
CHANGED
@@ -5,11 +5,12 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.hitbtc import hitbtc
|
7
7
|
from ccxt.abstract.bequant import ImplicitAPI
|
8
|
+
from ccxt.base.types import Any
|
8
9
|
|
9
10
|
|
10
11
|
class bequant(hitbtc, ImplicitAPI):
|
11
12
|
|
12
|
-
def describe(self):
|
13
|
+
def describe(self) -> Any:
|
13
14
|
return self.deep_extend(super(bequant, self).describe(), {
|
14
15
|
'id': 'bequant',
|
15
16
|
'name': 'Bequant',
|
ccxt/async_support/bigone.py
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.bigone import ImplicitAPI
|
8
8
|
import asyncio
|
9
|
-
from ccxt.base.types import Balances, Bool, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry
|
9
|
+
from ccxt.base.types import Any, Balances, Bool, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction, TransferEntry
|
10
10
|
from typing import List
|
11
11
|
from ccxt.base.errors import ExchangeError
|
12
12
|
from ccxt.base.errors import AuthenticationError
|
@@ -24,7 +24,7 @@ from ccxt.base.precise import Precise
|
|
24
24
|
|
25
25
|
class bigone(Exchange, ImplicitAPI):
|
26
26
|
|
27
|
-
def describe(self):
|
27
|
+
def describe(self) -> Any:
|
28
28
|
return self.deep_extend(super(bigone, self).describe(), {
|
29
29
|
'id': 'bigone',
|
30
30
|
'name': 'BigONE',
|
@@ -965,7 +965,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
965
965
|
tickers = self.parse_tickers(data, symbols)
|
966
966
|
return self.filter_by_array_tickers(tickers, 'symbol', symbols)
|
967
967
|
|
968
|
-
async def fetch_time(self, params={}):
|
968
|
+
async def fetch_time(self, params={}) -> Int:
|
969
969
|
"""
|
970
970
|
fetches the current integer timestamp in milliseconds from the exchange server
|
971
971
|
|
@@ -1163,8 +1163,8 @@ class bigone(Exchange, ImplicitAPI):
|
|
1163
1163
|
'cost': None,
|
1164
1164
|
'info': trade,
|
1165
1165
|
}
|
1166
|
-
makerCurrencyCode
|
1167
|
-
takerCurrencyCode
|
1166
|
+
makerCurrencyCode: str
|
1167
|
+
takerCurrencyCode: str
|
1168
1168
|
if takerOrMaker is not None:
|
1169
1169
|
if side == 'buy':
|
1170
1170
|
if takerOrMaker == 'maker':
|
ccxt/async_support/binance.py
CHANGED
@@ -8,7 +8,7 @@ from ccxt.abstract.binance import ImplicitAPI
|
|
8
8
|
import asyncio
|
9
9
|
import hashlib
|
10
10
|
import json
|
11
|
-
from ccxt.base.types import Balances, BorrowInterest, Conversion, CrossBorrowRate, Currencies, Currency, DepositAddress, Greeks, Int, IsolatedBorrowRate, IsolatedBorrowRates, LedgerEntry, Leverage, Leverages, LeverageTier, LeverageTiers, LongShortRatio, MarginMode, MarginModes, MarginModification, Market, Num, Option, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, TradingFees, Transaction, MarketInterface, TransferEntry
|
11
|
+
from ccxt.base.types import Any, Balances, BorrowInterest, Conversion, CrossBorrowRate, Currencies, Currency, DepositAddress, Greeks, Int, IsolatedBorrowRate, IsolatedBorrowRates, LedgerEntry, Leverage, Leverages, LeverageTier, LeverageTiers, LongShortRatio, MarginMode, MarginModes, MarginModification, Market, Num, Option, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, TradingFees, Transaction, MarketInterface, TransferEntry
|
12
12
|
from typing import List
|
13
13
|
from ccxt.base.errors import ExchangeError
|
14
14
|
from ccxt.base.errors import AuthenticationError
|
@@ -40,7 +40,7 @@ from ccxt.base.precise import Precise
|
|
40
40
|
|
41
41
|
class binance(Exchange, ImplicitAPI):
|
42
42
|
|
43
|
-
def describe(self):
|
43
|
+
def describe(self) -> Any:
|
44
44
|
return self.deep_extend(super(binance, self).describe(), {
|
45
45
|
'id': 'binance',
|
46
46
|
'name': 'Binance',
|
@@ -1585,6 +1585,7 @@ class binance(Exchange, ImplicitAPI):
|
|
1585
1585
|
'legalMoneyCurrenciesById': {
|
1586
1586
|
'BUSD': 'USD',
|
1587
1587
|
},
|
1588
|
+
'defaultWithdrawPrecision': 0.00000001,
|
1588
1589
|
},
|
1589
1590
|
'features': {
|
1590
1591
|
'spot': {
|
@@ -1635,6 +1636,7 @@ class binance(Exchange, ImplicitAPI):
|
|
1635
1636
|
'limit': None,
|
1636
1637
|
'trigger': False,
|
1637
1638
|
'trailing': False,
|
1639
|
+
'symbolRequired': False,
|
1638
1640
|
},
|
1639
1641
|
'fetchOrders': {
|
1640
1642
|
'marginMode': True,
|
@@ -2937,7 +2939,7 @@ class binance(Exchange, ImplicitAPI):
|
|
2937
2939
|
def nonce(self):
|
2938
2940
|
return self.milliseconds() - self.options['timeDifference']
|
2939
2941
|
|
2940
|
-
async def fetch_time(self, params={}):
|
2942
|
+
async def fetch_time(self, params={}) -> Int:
|
2941
2943
|
"""
|
2942
2944
|
fetches the current integer timestamp in milliseconds from the exchange server
|
2943
2945
|
|
@@ -3097,6 +3099,7 @@ class binance(Exchange, ImplicitAPI):
|
|
3097
3099
|
id = self.safe_string(entry, 'coin')
|
3098
3100
|
name = self.safe_string(entry, 'name')
|
3099
3101
|
code = self.safe_currency_code(id)
|
3102
|
+
isFiat = self.safe_bool(entry, 'isLegalMoney')
|
3100
3103
|
minPrecision = None
|
3101
3104
|
isWithdrawEnabled = True
|
3102
3105
|
isDepositEnabled = True
|
@@ -3108,6 +3111,7 @@ class binance(Exchange, ImplicitAPI):
|
|
3108
3111
|
networkItem = networkList[j]
|
3109
3112
|
network = self.safe_string(networkItem, 'network')
|
3110
3113
|
networkCode = self.network_id_to_code(network)
|
3114
|
+
isETF = (network == 'ETF') # e.g. BTCUP, ETHDOWN
|
3111
3115
|
# name = self.safe_string(networkItem, 'name')
|
3112
3116
|
withdrawFee = self.safe_number(networkItem, 'withdrawFee')
|
3113
3117
|
depositEnable = self.safe_bool(networkItem, 'depositEnable')
|
@@ -3118,11 +3122,22 @@ class binance(Exchange, ImplicitAPI):
|
|
3118
3122
|
isDefault = self.safe_bool(networkItem, 'isDefault')
|
3119
3123
|
if isDefault or (fee is None):
|
3120
3124
|
fee = withdrawFee
|
3125
|
+
# todo: default networks in "setMarkets" overload
|
3126
|
+
# if isDefault:
|
3127
|
+
# self.options['defaultNetworkCodesForCurrencies'][code] = networkCode
|
3128
|
+
# }
|
3121
3129
|
precisionTick = self.safe_string(networkItem, 'withdrawIntegerMultiple')
|
3122
|
-
|
3123
|
-
#
|
3130
|
+
withdrawPrecision = precisionTick
|
3131
|
+
# avoid zero values, which are mostly from fiat or leveraged tokens or some abandoned coins : https://github.com/ccxt/ccxt/pull/14902#issuecomment-1271636731
|
3124
3132
|
if not Precise.string_eq(precisionTick, '0'):
|
3125
3133
|
minPrecision = precisionTick if (minPrecision is None) else Precise.string_min(minPrecision, precisionTick)
|
3134
|
+
else:
|
3135
|
+
if not isFiat and not isETF:
|
3136
|
+
# non-fiat and non-ETF currency, there are many cases when precision is set to zero(probably bug, we've reported to binance already)
|
3137
|
+
# in such cases, we can set default precision of 8(which is in UI for such coins)
|
3138
|
+
withdrawPrecision = self.omit_zero(self.safe_string(networkItem, 'withdrawInternalMin'))
|
3139
|
+
if withdrawPrecision is None:
|
3140
|
+
withdrawPrecision = self.safe_string(self.options, 'defaultWithdrawPrecision')
|
3126
3141
|
networks[networkCode] = {
|
3127
3142
|
'info': networkItem,
|
3128
3143
|
'id': network,
|
@@ -3131,7 +3146,7 @@ class binance(Exchange, ImplicitAPI):
|
|
3131
3146
|
'deposit': depositEnable,
|
3132
3147
|
'withdraw': withdrawEnable,
|
3133
3148
|
'fee': withdrawFee,
|
3134
|
-
'precision': self.parse_number(
|
3149
|
+
'precision': self.parse_number(withdrawPrecision),
|
3135
3150
|
'limits': {
|
3136
3151
|
'withdraw': {
|
3137
3152
|
'min': self.safe_number(networkItem, 'withdrawMin'),
|
@@ -3160,6 +3175,7 @@ class binance(Exchange, ImplicitAPI):
|
|
3160
3175
|
'id': id,
|
3161
3176
|
'name': name,
|
3162
3177
|
'code': code,
|
3178
|
+
'type': 'fiat' if isFiat else 'crypto',
|
3163
3179
|
'precision': self.parse_number(minPrecision),
|
3164
3180
|
'info': entry,
|
3165
3181
|
'active': active,
|
@@ -5,11 +5,12 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.binance import binance
|
7
7
|
from ccxt.abstract.binancecoinm import ImplicitAPI
|
8
|
+
from ccxt.base.types import Any
|
8
9
|
|
9
10
|
|
10
11
|
class binancecoinm(binance, ImplicitAPI):
|
11
12
|
|
12
|
-
def describe(self):
|
13
|
+
def describe(self) -> Any:
|
13
14
|
return self.deep_extend(super(binancecoinm, self).describe(), {
|
14
15
|
'id': 'binancecoinm',
|
15
16
|
'name': 'Binance COIN-M',
|
ccxt/async_support/binanceus.py
CHANGED
@@ -5,11 +5,12 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.binance import binance
|
7
7
|
from ccxt.abstract.binanceus import ImplicitAPI
|
8
|
+
from ccxt.base.types import Any
|
8
9
|
|
9
10
|
|
10
11
|
class binanceus(binance, ImplicitAPI):
|
11
12
|
|
12
|
-
def describe(self):
|
13
|
+
def describe(self) -> Any:
|
13
14
|
return self.deep_extend(super(binanceus, self).describe(), {
|
14
15
|
'id': 'binanceus',
|
15
16
|
'name': 'Binance US',
|
@@ -5,12 +5,13 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.binance import binance
|
7
7
|
from ccxt.abstract.binanceusdm import ImplicitAPI
|
8
|
+
from ccxt.base.types import Any
|
8
9
|
from ccxt.base.errors import InvalidOrder
|
9
10
|
|
10
11
|
|
11
12
|
class binanceusdm(binance, ImplicitAPI):
|
12
13
|
|
13
|
-
def describe(self):
|
14
|
+
def describe(self) -> Any:
|
14
15
|
return self.deep_extend(super(binanceusdm, self).describe(), {
|
15
16
|
'id': 'binanceusdm',
|
16
17
|
'name': 'Binance USDⓈ-M',
|
ccxt/async_support/bingx.py
CHANGED
@@ -8,7 +8,7 @@ from ccxt.abstract.bingx import ImplicitAPI
|
|
8
8
|
import asyncio
|
9
9
|
import hashlib
|
10
10
|
import numbers
|
11
|
-
from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Int, Leverage, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, Transaction, TransferEntry
|
11
|
+
from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, Leverage, MarginMode, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Position, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFeeInterface, Transaction, TransferEntry
|
12
12
|
from typing import List
|
13
13
|
from ccxt.base.errors import ExchangeError
|
14
14
|
from ccxt.base.errors import AuthenticationError
|
@@ -29,7 +29,7 @@ from ccxt.base.precise import Precise
|
|
29
29
|
|
30
30
|
class bingx(Exchange, ImplicitAPI):
|
31
31
|
|
32
|
-
def describe(self):
|
32
|
+
def describe(self) -> Any:
|
33
33
|
return self.deep_extend(super(bingx, self).describe(), {
|
34
34
|
'id': 'bingx',
|
35
35
|
'name': 'BingX',
|
@@ -681,7 +681,7 @@ class bingx(Exchange, ImplicitAPI):
|
|
681
681
|
},
|
682
682
|
})
|
683
683
|
|
684
|
-
async def fetch_time(self, params={}):
|
684
|
+
async def fetch_time(self, params={}) -> Int:
|
685
685
|
"""
|
686
686
|
fetches the current integer timestamp in milliseconds from the bingx server
|
687
687
|
|
ccxt/async_support/bit2c.py
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.bit2c import ImplicitAPI
|
8
8
|
import hashlib
|
9
|
-
from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees
|
9
|
+
from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees
|
10
10
|
from typing import List
|
11
11
|
from ccxt.base.errors import ExchangeError
|
12
12
|
from ccxt.base.errors import AuthenticationError
|
@@ -21,7 +21,7 @@ from ccxt.base.precise import Precise
|
|
21
21
|
|
22
22
|
class bit2c(Exchange, ImplicitAPI):
|
23
23
|
|
24
|
-
def describe(self):
|
24
|
+
def describe(self) -> Any:
|
25
25
|
return self.deep_extend(super(bit2c, self).describe(), {
|
26
26
|
'id': 'bit2c',
|
27
27
|
'name': 'Bit2C',
|
@@ -630,7 +630,7 @@ class bit2c(Exchange, ImplicitAPI):
|
|
630
630
|
# 0 = New
|
631
631
|
# 1 = Open
|
632
632
|
# 5 = Completed
|
633
|
-
status
|
633
|
+
status: str
|
634
634
|
if isNewOrder:
|
635
635
|
tempStatus = self.safe_integer(orderUnified, 'status_type')
|
636
636
|
if tempStatus == 0 or tempStatus == 1:
|
@@ -795,13 +795,13 @@ class bit2c(Exchange, ImplicitAPI):
|
|
795
795
|
# "isMaker": True,
|
796
796
|
# }
|
797
797
|
#
|
798
|
-
timestamp
|
799
|
-
id
|
798
|
+
timestamp: Int
|
799
|
+
id: Str
|
800
800
|
price = None
|
801
801
|
amount = None
|
802
802
|
orderId = None
|
803
803
|
fee = None
|
804
|
-
side
|
804
|
+
side: str
|
805
805
|
makerOrTaker = None
|
806
806
|
reference = self.safe_string(trade, 'reference')
|
807
807
|
if reference is not None:
|
@@ -817,10 +817,10 @@ class bit2c(Exchange, ImplicitAPI):
|
|
817
817
|
isMaker = self.safe_value(trade, 'isMaker')
|
818
818
|
makerOrTaker = 'maker' if isMaker else 'taker'
|
819
819
|
orderId = reference_parts[2] if isMaker else reference_parts[1]
|
820
|
-
|
821
|
-
if
|
820
|
+
action = self.safe_integer(trade, 'action')
|
821
|
+
if action == 0:
|
822
822
|
side = 'buy'
|
823
|
-
|
823
|
+
else:
|
824
824
|
side = 'sell'
|
825
825
|
feeCost = self.safe_string(trade, 'feeAmount')
|
826
826
|
if feeCost is not None:
|
ccxt/async_support/bitbank.py
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.bitbank import ImplicitAPI
|
8
8
|
import hashlib
|
9
|
-
from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees, Transaction
|
9
|
+
from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Ticker, Trade, TradingFees, Transaction
|
10
10
|
from typing import List
|
11
11
|
from ccxt.base.errors import ExchangeError
|
12
12
|
from ccxt.base.errors import AuthenticationError
|
@@ -20,7 +20,7 @@ from ccxt.base.decimal_to_precision import TICK_SIZE
|
|
20
20
|
|
21
21
|
class bitbank(Exchange, ImplicitAPI):
|
22
22
|
|
23
|
-
def describe(self):
|
23
|
+
def describe(self) -> Any:
|
24
24
|
return self.deep_extend(super(bitbank, self).describe(), {
|
25
25
|
'id': 'bitbank',
|
26
26
|
'name': 'bitbank',
|
ccxt/async_support/bitbns.py
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.bitbns import ImplicitAPI
|
8
8
|
import hashlib
|
9
|
-
from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
9
|
+
from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
10
10
|
from typing import List
|
11
11
|
from ccxt.base.errors import ExchangeError
|
12
12
|
from ccxt.base.errors import ArgumentsRequired
|
@@ -20,7 +20,7 @@ from ccxt.base.precise import Precise
|
|
20
20
|
|
21
21
|
class bitbns(Exchange, ImplicitAPI):
|
22
22
|
|
23
|
-
def describe(self):
|
23
|
+
def describe(self) -> Any:
|
24
24
|
return self.deep_extend(super(bitbns, self).describe(), {
|
25
25
|
'id': 'bitbns',
|
26
26
|
'name': 'Bitbns',
|
ccxt/async_support/bitcoincom.py
CHANGED
@@ -5,11 +5,12 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.fmfwio import fmfwio
|
7
7
|
from ccxt.abstract.bitcoincom import ImplicitAPI
|
8
|
+
from ccxt.base.types import Any
|
8
9
|
|
9
10
|
|
10
11
|
class bitcoincom(fmfwio, ImplicitAPI):
|
11
12
|
|
12
|
-
def describe(self):
|
13
|
+
def describe(self) -> Any:
|
13
14
|
return self.deep_extend(super(bitcoincom, self).describe(), {
|
14
15
|
'id': 'bitcoincom',
|
15
16
|
'name': 'Bitcoin.com',
|
ccxt/async_support/bitfinex.py
CHANGED
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
|
|
7
7
|
from ccxt.abstract.bitfinex import ImplicitAPI
|
8
8
|
import asyncio
|
9
9
|
import hashlib
|
10
|
-
from ccxt.base.types import Balances, Currencies, Currency, DepositAddress, Int, LedgerEntry, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFees, Transaction, TransferEntry
|
10
|
+
from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, LedgerEntry, MarginModification, Market, Num, Order, OrderBook, OrderRequest, OrderSide, OrderType, Str, Strings, Ticker, Tickers, FundingRate, FundingRates, Trade, TradingFees, Transaction, TransferEntry
|
11
11
|
from typing import List
|
12
12
|
from ccxt.base.errors import ExchangeError
|
13
13
|
from ccxt.base.errors import AuthenticationError
|
@@ -32,7 +32,7 @@ from ccxt.base.precise import Precise
|
|
32
32
|
|
33
33
|
class bitfinex(Exchange, ImplicitAPI):
|
34
34
|
|
35
|
-
def describe(self):
|
35
|
+
def describe(self) -> Any:
|
36
36
|
return self.deep_extend(super(bitfinex, self).describe(), {
|
37
37
|
'id': 'bitfinex',
|
38
38
|
'name': 'Bitfinex',
|
ccxt/async_support/bitfinex1.py
CHANGED
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
|
|
7
7
|
from ccxt.abstract.bitfinex1 import ImplicitAPI
|
8
8
|
import asyncio
|
9
9
|
import hashlib
|
10
|
-
from ccxt.base.types import Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry
|
10
|
+
from ccxt.base.types import Any, Balances, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction, TransferEntry
|
11
11
|
from typing import List
|
12
12
|
from ccxt.base.errors import ExchangeError
|
13
13
|
from ccxt.base.errors import AuthenticationError
|
@@ -30,7 +30,7 @@ from ccxt.base.precise import Precise
|
|
30
30
|
|
31
31
|
class bitfinex1(Exchange, ImplicitAPI):
|
32
32
|
|
33
|
-
def describe(self):
|
33
|
+
def describe(self) -> Any:
|
34
34
|
return self.deep_extend(super(bitfinex1, self).describe(), {
|
35
35
|
'id': 'bitfinex1',
|
36
36
|
'name': 'Bitfinex',
|