ccxt 4.2.30__py2.py3-none-any.whl → 4.2.34__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/__init__.py +1 -1
- ccxt/abstract/coinbase.py +10 -0
- ccxt/abstract/okx.py +12 -1
- ccxt/ace.py +4 -3
- ccxt/alpaca.py +1 -1
- ccxt/ascendex.py +6 -6
- ccxt/async_support/__init__.py +1 -1
- ccxt/async_support/ace.py +4 -3
- ccxt/async_support/alpaca.py +1 -1
- ccxt/async_support/ascendex.py +6 -6
- ccxt/async_support/base/exchange.py +62 -39
- ccxt/async_support/bigone.py +25 -5
- ccxt/async_support/binance.py +17 -16
- ccxt/async_support/bingx.py +10 -9
- ccxt/async_support/bit2c.py +13 -1
- ccxt/async_support/bitbank.py +2 -2
- ccxt/async_support/bitbns.py +1 -1
- ccxt/async_support/bitfinex.py +5 -5
- ccxt/async_support/bitfinex2.py +386 -40
- ccxt/async_support/bitflyer.py +5 -5
- ccxt/async_support/bitforex.py +4 -1
- ccxt/async_support/bitget.py +11 -11
- ccxt/async_support/bithumb.py +2 -2
- ccxt/async_support/bitmart.py +9 -9
- ccxt/async_support/bitmex.py +3 -3
- ccxt/async_support/bitopro.py +2 -2
- ccxt/async_support/bitrue.py +8 -8
- ccxt/async_support/bitso.py +4 -4
- ccxt/async_support/bitstamp.py +2 -2
- ccxt/async_support/bitteam.py +1 -1
- ccxt/async_support/bitvavo.py +3 -3
- ccxt/async_support/bl3p.py +1 -1
- ccxt/async_support/blockchaincom.py +3 -3
- ccxt/async_support/btcalpha.py +1 -1
- ccxt/async_support/btcbox.py +1 -1
- ccxt/async_support/btcmarkets.py +2 -2
- ccxt/async_support/btcturk.py +1 -1
- ccxt/async_support/bybit.py +9 -9
- ccxt/async_support/cex.py +1 -1
- ccxt/async_support/coinbase.py +16 -6
- ccxt/async_support/coinbasepro.py +2 -2
- ccxt/async_support/coincheck.py +1 -1
- ccxt/async_support/coinex.py +9 -9
- ccxt/async_support/coinlist.py +4 -4
- ccxt/async_support/coinmate.py +2 -2
- ccxt/async_support/coinmetro.py +2 -2
- ccxt/async_support/coinone.py +1 -1
- ccxt/async_support/coinsph.py +2 -2
- ccxt/async_support/coinspot.py +1 -1
- ccxt/async_support/cryptocom.py +14 -14
- ccxt/async_support/currencycom.py +1 -1
- ccxt/async_support/delta.py +2 -2
- ccxt/async_support/deribit.py +5 -4
- ccxt/async_support/digifinex.py +6 -6
- ccxt/async_support/exmo.py +2 -2
- ccxt/async_support/gate.py +41 -37
- ccxt/async_support/gemini.py +2 -2
- ccxt/async_support/hitbtc.py +5 -5
- ccxt/async_support/hollaex.py +2 -2
- ccxt/async_support/htx.py +11 -11
- ccxt/async_support/huobijp.py +4 -4
- ccxt/async_support/idex.py +2 -2
- ccxt/async_support/independentreserve.py +2 -2
- ccxt/async_support/indodax.py +2 -2
- ccxt/async_support/kraken.py +45 -5
- ccxt/async_support/krakenfutures.py +8 -5
- ccxt/async_support/kucoin.py +8 -8
- ccxt/async_support/kucoinfutures.py +4 -4
- ccxt/async_support/kuna.py +2 -2
- ccxt/async_support/latoken.py +3 -3
- ccxt/async_support/lbank.py +5 -4
- ccxt/async_support/luno.py +1 -1
- ccxt/async_support/lykke.py +2 -2
- ccxt/async_support/mercado.py +2 -2
- ccxt/async_support/mexc.py +7 -6
- ccxt/async_support/ndax.py +2 -2
- ccxt/async_support/novadax.py +4 -4
- ccxt/async_support/oceanex.py +1 -1
- ccxt/async_support/okcoin.py +5 -5
- ccxt/async_support/okx.py +26 -12
- ccxt/async_support/onetrading.py +2 -2
- ccxt/async_support/p2b.py +1 -1
- ccxt/async_support/paymium.py +3 -3
- ccxt/async_support/phemex.py +13 -13
- ccxt/async_support/poloniex.py +4 -4
- ccxt/async_support/poloniexfutures.py +4 -1
- ccxt/async_support/probit.py +5 -5
- ccxt/async_support/timex.py +2 -2
- ccxt/async_support/tokocrypto.py +4 -4
- ccxt/async_support/upbit.py +2 -2
- ccxt/async_support/wavesexchange.py +4 -3
- ccxt/async_support/wazirx.py +1 -1
- ccxt/async_support/whitebit.py +6 -6
- ccxt/async_support/woo.py +6 -6
- ccxt/async_support/yobit.py +41 -2
- ccxt/async_support/zaif.py +2 -2
- ccxt/async_support/zonda.py +4 -4
- ccxt/base/exchange.py +77 -44
- ccxt/base/types.py +10 -0
- ccxt/bigone.py +25 -5
- ccxt/binance.py +17 -16
- ccxt/bingx.py +10 -9
- ccxt/bit2c.py +13 -1
- ccxt/bitbank.py +2 -2
- ccxt/bitbns.py +1 -1
- ccxt/bitfinex.py +5 -5
- ccxt/bitfinex2.py +386 -40
- ccxt/bitflyer.py +5 -5
- ccxt/bitforex.py +4 -1
- ccxt/bitget.py +11 -11
- ccxt/bithumb.py +2 -2
- ccxt/bitmart.py +9 -9
- ccxt/bitmex.py +3 -3
- ccxt/bitopro.py +2 -2
- ccxt/bitrue.py +8 -8
- ccxt/bitso.py +4 -4
- ccxt/bitstamp.py +2 -2
- ccxt/bitteam.py +1 -1
- ccxt/bitvavo.py +3 -3
- ccxt/bl3p.py +1 -1
- ccxt/blockchaincom.py +3 -3
- ccxt/btcalpha.py +1 -1
- ccxt/btcbox.py +1 -1
- ccxt/btcmarkets.py +2 -2
- ccxt/btcturk.py +1 -1
- ccxt/bybit.py +9 -9
- ccxt/cex.py +1 -1
- ccxt/coinbase.py +16 -6
- ccxt/coinbasepro.py +2 -2
- ccxt/coincheck.py +1 -1
- ccxt/coinex.py +9 -9
- ccxt/coinlist.py +4 -4
- ccxt/coinmate.py +2 -2
- ccxt/coinmetro.py +2 -2
- ccxt/coinone.py +1 -1
- ccxt/coinsph.py +2 -2
- ccxt/coinspot.py +1 -1
- ccxt/cryptocom.py +14 -14
- ccxt/currencycom.py +1 -1
- ccxt/delta.py +2 -2
- ccxt/deribit.py +5 -4
- ccxt/digifinex.py +6 -6
- ccxt/exmo.py +2 -2
- ccxt/gate.py +41 -37
- ccxt/gemini.py +2 -2
- ccxt/hitbtc.py +5 -5
- ccxt/hollaex.py +2 -2
- ccxt/htx.py +11 -11
- ccxt/huobijp.py +4 -4
- ccxt/idex.py +2 -2
- ccxt/independentreserve.py +2 -2
- ccxt/indodax.py +2 -2
- ccxt/kraken.py +45 -5
- ccxt/krakenfutures.py +8 -5
- ccxt/kucoin.py +8 -8
- ccxt/kucoinfutures.py +4 -4
- ccxt/kuna.py +2 -2
- ccxt/latoken.py +3 -3
- ccxt/lbank.py +5 -4
- ccxt/luno.py +1 -1
- ccxt/lykke.py +2 -2
- ccxt/mercado.py +2 -2
- ccxt/mexc.py +7 -6
- ccxt/ndax.py +2 -2
- ccxt/novadax.py +4 -4
- ccxt/oceanex.py +1 -1
- ccxt/okcoin.py +5 -5
- ccxt/okx.py +26 -12
- ccxt/onetrading.py +2 -2
- ccxt/p2b.py +1 -1
- ccxt/paymium.py +3 -3
- ccxt/phemex.py +13 -13
- ccxt/poloniex.py +4 -4
- ccxt/poloniexfutures.py +4 -1
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/alpaca.py +8 -4
- ccxt/pro/ascendex.py +1 -2
- ccxt/pro/binance.py +14 -10
- ccxt/pro/bingx.py +1 -1
- ccxt/pro/bitfinex.py +21 -22
- ccxt/pro/bitfinex2.py +13 -15
- ccxt/pro/bitget.py +3 -1
- ccxt/pro/bitmart.py +3 -7
- ccxt/pro/bitmex.py +4 -6
- ccxt/pro/bitopro.py +2 -4
- ccxt/pro/bitrue.py +1 -1
- ccxt/pro/bitstamp.py +2 -3
- ccxt/pro/bitvavo.py +10 -5
- ccxt/pro/blockchaincom.py +22 -22
- ccxt/pro/bybit.py +5 -5
- ccxt/pro/cex.py +7 -7
- ccxt/pro/coinbase.py +3 -2
- ccxt/pro/coinbasepro.py +1 -1
- ccxt/pro/coinex.py +15 -13
- ccxt/pro/currencycom.py +5 -6
- ccxt/pro/deribit.py +4 -4
- ccxt/pro/exmo.py +15 -13
- ccxt/pro/gate.py +1 -1
- ccxt/pro/gemini.py +4 -2
- ccxt/pro/hitbtc.py +10 -9
- ccxt/pro/hollaex.py +2 -2
- ccxt/pro/htx.py +6 -6
- ccxt/pro/huobijp.py +3 -4
- ccxt/pro/idex.py +1 -1
- ccxt/pro/independentreserve.py +14 -13
- ccxt/pro/kraken.py +10 -14
- ccxt/pro/krakenfutures.py +10 -6
- ccxt/pro/kucoin.py +10 -10
- ccxt/pro/kucoinfutures.py +11 -10
- ccxt/pro/lbank.py +10 -10
- ccxt/pro/luno.py +12 -14
- ccxt/pro/mexc.py +3 -2
- ccxt/pro/ndax.py +7 -11
- ccxt/pro/okcoin.py +7 -10
- ccxt/pro/okx.py +6 -9
- ccxt/pro/onetrading.py +16 -15
- ccxt/pro/p2b.py +5 -3
- ccxt/pro/phemex.py +16 -11
- ccxt/pro/poloniex.py +6 -4
- ccxt/pro/poloniexfutures.py +13 -9
- ccxt/pro/probit.py +15 -12
- ccxt/pro/upbit.py +8 -8
- ccxt/pro/wazirx.py +6 -3
- ccxt/pro/woo.py +9 -7
- ccxt/probit.py +5 -5
- ccxt/test/base/test_order_book.py +7 -7
- ccxt/test/base/test_shared_methods.py +1 -1
- ccxt/test/test_async.py +86 -36
- ccxt/test/test_sync.py +86 -36
- ccxt/timex.py +2 -2
- ccxt/tokocrypto.py +4 -4
- ccxt/upbit.py +2 -2
- ccxt/wavesexchange.py +4 -3
- ccxt/wazirx.py +1 -1
- ccxt/whitebit.py +6 -6
- ccxt/woo.py +6 -6
- ccxt/yobit.py +41 -2
- ccxt/zaif.py +2 -2
- ccxt/zonda.py +4 -4
- {ccxt-4.2.30.dist-info → ccxt-4.2.34.dist-info}/METADATA +10 -10
- ccxt-4.2.34.dist-info/RECORD +438 -0
- ccxt-4.2.30.dist-info/RECORD +0 -438
- {ccxt-4.2.30.dist-info → ccxt-4.2.34.dist-info}/WHEEL +0 -0
- {ccxt-4.2.30.dist-info → ccxt-4.2.34.dist-info}/top_level.txt +0 -0
ccxt/base/exchange.py
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
# -----------------------------------------------------------------------------
|
6
6
|
|
7
|
-
__version__ = '4.2.
|
7
|
+
__version__ = '4.2.34'
|
8
8
|
|
9
9
|
# -----------------------------------------------------------------------------
|
10
10
|
|
@@ -1969,7 +1969,7 @@ class Exchange(object):
|
|
1969
1969
|
result.append(messageHash)
|
1970
1970
|
return result
|
1971
1971
|
|
1972
|
-
def filter_by_limit(self, array: List[object], limit: Int = None, key: IndexType = 'timestamp'):
|
1972
|
+
def filter_by_limit(self, array: List[object], limit: Int = None, key: IndexType = 'timestamp', fromStart: bool = False):
|
1973
1973
|
if self.valueIsDefined(limit):
|
1974
1974
|
arrayLength = len(array)
|
1975
1975
|
if arrayLength > 0:
|
@@ -1979,7 +1979,12 @@ class Exchange(object):
|
|
1979
1979
|
last = array[arrayLength - 1][key]
|
1980
1980
|
if first is not None and last is not None:
|
1981
1981
|
ascending = first <= last # True if array is sorted in ascending order based on 'timestamp'
|
1982
|
-
|
1982
|
+
if fromStart:
|
1983
|
+
if limit > arrayLength:
|
1984
|
+
limit = arrayLength
|
1985
|
+
array = self.arraySlice(array, 0, limit) if ascending else self.arraySlice(array, -limit)
|
1986
|
+
else:
|
1987
|
+
array = self.arraySlice(array, -limit) if ascending else self.arraySlice(array, 0, limit)
|
1983
1988
|
return array
|
1984
1989
|
|
1985
1990
|
def filter_by_since_limit(self, array: List[object], since: Int = None, limit: Int = None, key: IndexType = 'timestamp', tail=False):
|
@@ -1995,7 +2000,10 @@ class Exchange(object):
|
|
1995
2000
|
result.append(entry)
|
1996
2001
|
if tail and limit is not None:
|
1997
2002
|
return self.arraySlice(result, -limit)
|
1998
|
-
|
2003
|
+
# if the user provided a 'since' argument
|
2004
|
+
# we want to limit the result starting from the 'since'
|
2005
|
+
shouldFilterFromStart = not tail and sinceIsDefined
|
2006
|
+
return self.filter_by_limit(result, limit, key, shouldFilterFromStart)
|
1999
2007
|
|
2000
2008
|
def filter_by_value_since_limit(self, array: List[object], field: IndexType, value=None, since: Int = None, limit: Int = None, key='timestamp', tail=False):
|
2001
2009
|
valueIsDefined = self.valueIsDefined(value)
|
@@ -2016,7 +2024,7 @@ class Exchange(object):
|
|
2016
2024
|
result.append(entry)
|
2017
2025
|
if tail and limit is not None:
|
2018
2026
|
return self.arraySlice(result, -limit)
|
2019
|
-
return self.filter_by_limit(result, limit, key)
|
2027
|
+
return self.filter_by_limit(result, limit, key, sinceIsDefined)
|
2020
2028
|
|
2021
2029
|
def set_sandbox_mode(self, enabled):
|
2022
2030
|
if enabled:
|
@@ -2165,18 +2173,30 @@ class Exchange(object):
|
|
2165
2173
|
def fetch_funding_rates(self, symbols: List[str] = None, params={}):
|
2166
2174
|
raise NotSupported(self.id + ' fetchFundingRates() is not supported yet')
|
2167
2175
|
|
2168
|
-
def transfer(self, code: str, amount, fromAccount, toAccount, params={}):
|
2176
|
+
def transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={}):
|
2169
2177
|
raise NotSupported(self.id + ' transfer() is not supported yet')
|
2170
2178
|
|
2171
|
-
def withdraw(self, code: str, amount, address, tag=None, params={}):
|
2179
|
+
def withdraw(self, code: str, amount: float, address: str, tag=None, params={}):
|
2172
2180
|
raise NotSupported(self.id + ' withdraw() is not supported yet')
|
2173
2181
|
|
2174
2182
|
def create_deposit_address(self, code: str, params={}):
|
2175
2183
|
raise NotSupported(self.id + ' createDepositAddress() is not supported yet')
|
2176
2184
|
|
2177
|
-
def set_leverage(self, leverage, symbol: str = None, params={}):
|
2185
|
+
def set_leverage(self, leverage: Int, symbol: str = None, params={}):
|
2178
2186
|
raise NotSupported(self.id + ' setLeverage() is not supported yet')
|
2179
2187
|
|
2188
|
+
def fetch_open_interest_history(self, symbol: str, timeframe='1h', since: Int = None, limit: Int = None, params={}):
|
2189
|
+
raise NotSupported(self.id + ' fetchOpenInterestHistory() is not supported yet')
|
2190
|
+
|
2191
|
+
def fetch_open_interest(self, symbol: str, params={}):
|
2192
|
+
raise NotSupported(self.id + ' fetchOpenInterest() is not supported yet')
|
2193
|
+
|
2194
|
+
def sign_in(self, params={}):
|
2195
|
+
raise NotSupported(self.id + ' signIn() is not supported yet')
|
2196
|
+
|
2197
|
+
def fetch_payment_methods(self, params={}):
|
2198
|
+
raise NotSupported(self.id + ' fetchPaymentMethods() is not supported yet')
|
2199
|
+
|
2180
2200
|
def parse_to_int(self, number):
|
2181
2201
|
# Solve Common intmisuse ex: int((since / str(1000)))
|
2182
2202
|
# using a number which is not valid in ts
|
@@ -2973,10 +2993,10 @@ class Exchange(object):
|
|
2973
2993
|
def repay_isolated_margin(self, symbol: str, code: str, amount, params={}):
|
2974
2994
|
raise NotSupported(self.id + ' repayIsolatedMargin is not support yet')
|
2975
2995
|
|
2976
|
-
def borrow_cross_margin(self, code: str, amount, params={}):
|
2996
|
+
def borrow_cross_margin(self, code: str, amount: float, params={}):
|
2977
2997
|
raise NotSupported(self.id + ' borrowCrossMargin is not support yet')
|
2978
2998
|
|
2979
|
-
def borrow_isolated_margin(self, symbol: str, code: str, amount, params={}):
|
2999
|
+
def borrow_isolated_margin(self, symbol: str, code: str, amount: float, params={}):
|
2980
3000
|
raise NotSupported(self.id + ' borrowIsolatedMargin is not support yet')
|
2981
3001
|
|
2982
3002
|
def borrow_margin(self, code: str, amount, symbol: Str = None, params={}):
|
@@ -3500,16 +3520,16 @@ class Exchange(object):
|
|
3500
3520
|
result = self.convert_trading_view_to_ohlcv(ohlcvs)
|
3501
3521
|
return self.parse_ohlcvs(result, market, timeframe, since, limit)
|
3502
3522
|
|
3503
|
-
def edit_limit_buy_order(self, id, symbol, amount, price=None, params={}):
|
3523
|
+
def edit_limit_buy_order(self, id, symbol, amount: float, price: float = None, params={}):
|
3504
3524
|
return self.edit_limit_order(id, symbol, 'buy', amount, price, params)
|
3505
3525
|
|
3506
|
-
def edit_limit_sell_order(self, id, symbol, amount, price=None, params={}):
|
3526
|
+
def edit_limit_sell_order(self, id, symbol, amount: float, price: float = None, params={}):
|
3507
3527
|
return self.edit_limit_order(id, symbol, 'sell', amount, price, params)
|
3508
3528
|
|
3509
|
-
def edit_limit_order(self, id, symbol, side, amount, price=None, params={}):
|
3529
|
+
def edit_limit_order(self, id, symbol, side, amount: float, price: float = None, params={}):
|
3510
3530
|
return self.edit_order(id, symbol, 'limit', side, amount, price, params)
|
3511
3531
|
|
3512
|
-
def edit_order(self, id: str, symbol, type, side, amount=None, price=None, params={}):
|
3532
|
+
def edit_order(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: float = None, price: float = None, params={}):
|
3513
3533
|
self.cancelOrder(id, symbol)
|
3514
3534
|
return self.create_order(symbol, type, side, amount, price, params)
|
3515
3535
|
|
@@ -3550,6 +3570,15 @@ class Exchange(object):
|
|
3550
3570
|
def fetch_bids_asks(self, symbols: List[str] = None, params={}):
|
3551
3571
|
raise NotSupported(self.id + ' fetchBidsAsks() is not supported yet')
|
3552
3572
|
|
3573
|
+
def fetch_borrow_interest(self, code: str = None, symbol: str = None, since: Int = None, limit: Int = None, params={}):
|
3574
|
+
raise NotSupported(self.id + ' fetchBorrowInterest() is not supported yet')
|
3575
|
+
|
3576
|
+
def fetch_ledger(self, code: str = None, since: Int = None, limit: Int = None, params={}):
|
3577
|
+
raise NotSupported(self.id + ' fetchLedger() is not supported yet')
|
3578
|
+
|
3579
|
+
def fetch_ledger_entry(self, id: str, code: str = None, params={}):
|
3580
|
+
raise NotSupported(self.id + ' fetchLedgerEntry() is not supported yet')
|
3581
|
+
|
3553
3582
|
def parse_bid_ask(self, bidask, priceKey: IndexType = 0, amountKey: IndexType = 1, countOrIdKey: IndexType = 2):
|
3554
3583
|
price = self.safe_number(bidask, priceKey)
|
3555
3584
|
amount = self.safe_number(bidask, amountKey)
|
@@ -3799,6 +3828,8 @@ class Exchange(object):
|
|
3799
3828
|
return self.handle_option_and_params(params, methodName, 'marginMode', defaultValue)
|
3800
3829
|
|
3801
3830
|
def throw_exactly_matched_exception(self, exact, string, message):
|
3831
|
+
if string is None:
|
3832
|
+
return
|
3802
3833
|
if string in exact:
|
3803
3834
|
raise exact[string](message)
|
3804
3835
|
|
@@ -3866,7 +3897,7 @@ class Exchange(object):
|
|
3866
3897
|
def fetch_unified_order(self, order, params={}):
|
3867
3898
|
return self.fetch_order(self.safe_value(order, 'id'), self.safe_value(order, 'symbol'), params)
|
3868
3899
|
|
3869
|
-
def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, params={}):
|
3900
|
+
def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, params={}):
|
3870
3901
|
raise NotSupported(self.id + ' createOrder() is not supported yet')
|
3871
3902
|
|
3872
3903
|
def create_trailing_amount_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, trailingAmount=None, trailingTriggerPrice=None, params={}):
|
@@ -3913,7 +3944,7 @@ class Exchange(object):
|
|
3913
3944
|
return self.create_order(symbol, type, side, amount, price, params)
|
3914
3945
|
raise NotSupported(self.id + ' createTrailingPercentOrder() is not supported yet')
|
3915
3946
|
|
3916
|
-
def create_market_order_with_cost(self, symbol: str, side: OrderSide, cost, params={}):
|
3947
|
+
def create_market_order_with_cost(self, symbol: str, side: OrderSide, cost: float, params={}):
|
3917
3948
|
"""
|
3918
3949
|
create a market order by providing the symbol, side and cost
|
3919
3950
|
:param str symbol: unified symbol of the market to create an order in
|
@@ -3926,7 +3957,7 @@ class Exchange(object):
|
|
3926
3957
|
return self.create_order(symbol, 'market', side, cost, 1, params)
|
3927
3958
|
raise NotSupported(self.id + ' createMarketOrderWithCost() is not supported yet')
|
3928
3959
|
|
3929
|
-
def create_market_buy_order_with_cost(self, symbol: str, cost, params={}):
|
3960
|
+
def create_market_buy_order_with_cost(self, symbol: str, cost: float, params={}):
|
3930
3961
|
"""
|
3931
3962
|
create a market buy order by providing the symbol and cost
|
3932
3963
|
:param str symbol: unified symbol of the market to create an order in
|
@@ -3938,7 +3969,7 @@ class Exchange(object):
|
|
3938
3969
|
return self.create_order(symbol, 'market', 'buy', cost, 1, params)
|
3939
3970
|
raise NotSupported(self.id + ' createMarketBuyOrderWithCost() is not supported yet')
|
3940
3971
|
|
3941
|
-
def create_market_sell_order_with_cost(self, symbol: str, cost, params={}):
|
3972
|
+
def create_market_sell_order_with_cost(self, symbol: str, cost: float, params={}):
|
3942
3973
|
"""
|
3943
3974
|
create a market sell order by providing the symbol and cost
|
3944
3975
|
:param str symbol: unified symbol of the market to create an order in
|
@@ -3969,7 +4000,7 @@ class Exchange(object):
|
|
3969
4000
|
return self.create_order(symbol, type, side, amount, price, params)
|
3970
4001
|
raise NotSupported(self.id + ' createTriggerOrder() is not supported yet')
|
3971
4002
|
|
3972
|
-
def create_stop_loss_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, stopLossPrice=None, params={}):
|
4003
|
+
def create_stop_loss_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, stopLossPrice: float = None, params={}):
|
3973
4004
|
"""
|
3974
4005
|
create a trigger stop loss order(type 2)
|
3975
4006
|
:param str symbol: unified symbol of the market to create an order in
|
@@ -3988,7 +4019,7 @@ class Exchange(object):
|
|
3988
4019
|
return self.create_order(symbol, type, side, amount, price, params)
|
3989
4020
|
raise NotSupported(self.id + ' createStopLossOrder() is not supported yet')
|
3990
4021
|
|
3991
|
-
def create_take_profit_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, takeProfitPrice=None, params={}):
|
4022
|
+
def create_take_profit_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, takeProfitPrice: float = None, params={}):
|
3992
4023
|
"""
|
3993
4024
|
create a trigger take profit order(type 2)
|
3994
4025
|
:param str symbol: unified symbol of the market to create an order in
|
@@ -4007,7 +4038,7 @@ class Exchange(object):
|
|
4007
4038
|
return self.create_order(symbol, type, side, amount, price, params)
|
4008
4039
|
raise NotSupported(self.id + ' createTakeProfitOrder() is not supported yet')
|
4009
4040
|
|
4010
|
-
def create_order_with_take_profit_and_stop_loss(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, takeProfit=None, stopLoss=None, params={}):
|
4041
|
+
def create_order_with_take_profit_and_stop_loss(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, takeProfit: float = None, stopLoss: float = None, params={}):
|
4011
4042
|
"""
|
4012
4043
|
create an order with a stop loss or take profit attached(type 3)
|
4013
4044
|
:param str symbol: unified symbol of the market to create an order in
|
@@ -4161,21 +4192,18 @@ class Exchange(object):
|
|
4161
4192
|
"""
|
4162
4193
|
raise NotSupported(self.id + ' fetchDepositsWithdrawals() is not supported yet')
|
4163
4194
|
|
4164
|
-
def fetch_deposits(self,
|
4195
|
+
def fetch_deposits(self, symbol: str = None, since: Int = None, limit: Int = None, params={}):
|
4165
4196
|
raise NotSupported(self.id + ' fetchDeposits() is not supported yet')
|
4166
4197
|
|
4198
|
+
def fetch_withdrawals(self, symbol: str = None, since: Int = None, limit: Int = None, params={}):
|
4199
|
+
raise NotSupported(self.id + ' fetchWithdrawals() is not supported yet')
|
4200
|
+
|
4167
4201
|
def fetch_deposits_ws(self, code: str = None, since: Int = None, limit: Int = None, params={}):
|
4168
4202
|
raise NotSupported(self.id + ' fetchDepositsWs() is not supported yet')
|
4169
4203
|
|
4170
|
-
def fetch_withdrawals(self, code: str = None, since: Int = None, limit: Int = None, params={}):
|
4171
|
-
raise NotSupported(self.id + ' fetchWithdrawals() is not supported yet')
|
4172
|
-
|
4173
4204
|
def fetch_withdrawals_ws(self, code: str = None, since: Int = None, limit: Int = None, params={}):
|
4174
4205
|
raise NotSupported(self.id + ' fetchWithdrawalsWs() is not supported yet')
|
4175
4206
|
|
4176
|
-
def fetch_open_interest(self, symbol: str, params={}):
|
4177
|
-
raise NotSupported(self.id + ' fetchOpenInterest() is not supported yet')
|
4178
|
-
|
4179
4207
|
def fetch_funding_rate_history(self, symbol: str = None, since: Int = None, limit: Int = None, params={}):
|
4180
4208
|
raise NotSupported(self.id + ' fetchFundingRateHistory() is not supported yet')
|
4181
4209
|
|
@@ -4248,7 +4276,7 @@ class Exchange(object):
|
|
4248
4276
|
raise NotSupported(self.id + ' createExpiredOptionMarket() is not supported yet')
|
4249
4277
|
|
4250
4278
|
def handle_withdraw_tag_and_params(self, tag, params):
|
4251
|
-
if isinstance(tag, dict):
|
4279
|
+
if (tag is not None) and (isinstance(tag, dict)):
|
4252
4280
|
params = self.extend(tag, params)
|
4253
4281
|
tag = None
|
4254
4282
|
if tag is None:
|
@@ -4257,22 +4285,22 @@ class Exchange(object):
|
|
4257
4285
|
params = self.omit(params, 'tag')
|
4258
4286
|
return [tag, params]
|
4259
4287
|
|
4260
|
-
def create_limit_order(self, symbol: str, side: OrderSide, amount, price, params={}):
|
4288
|
+
def create_limit_order(self, symbol: str, side: OrderSide, amount: float, price: float, params={}):
|
4261
4289
|
return self.create_order(symbol, 'limit', side, amount, price, params)
|
4262
4290
|
|
4263
|
-
def create_market_order(self, symbol: str, side: OrderSide, amount, price=None, params={}):
|
4291
|
+
def create_market_order(self, symbol: str, side: OrderSide, amount: float, price: float = None, params={}):
|
4264
4292
|
return self.create_order(symbol, 'market', side, amount, price, params)
|
4265
4293
|
|
4266
|
-
def create_limit_buy_order(self, symbol: str, amount, price, params={}):
|
4294
|
+
def create_limit_buy_order(self, symbol: str, amount: float, price: float, params={}):
|
4267
4295
|
return self.create_order(symbol, 'limit', 'buy', amount, price, params)
|
4268
4296
|
|
4269
|
-
def create_limit_sell_order(self, symbol: str, amount, price, params={}):
|
4297
|
+
def create_limit_sell_order(self, symbol: str, amount: float, price: float, params={}):
|
4270
4298
|
return self.create_order(symbol, 'limit', 'sell', amount, price, params)
|
4271
4299
|
|
4272
|
-
def create_market_buy_order(self, symbol: str, amount, params={}):
|
4300
|
+
def create_market_buy_order(self, symbol: str, amount: float, params={}):
|
4273
4301
|
return self.create_order(symbol, 'market', 'buy', amount, None, params)
|
4274
4302
|
|
4275
|
-
def create_market_sell_order(self, symbol: str, amount, params={}):
|
4303
|
+
def create_market_sell_order(self, symbol: str, amount: float, params={}):
|
4276
4304
|
return self.create_order(symbol, 'market', 'sell', amount, None, params)
|
4277
4305
|
|
4278
4306
|
def cost_to_precision(self, symbol: str, cost):
|
@@ -4366,19 +4394,19 @@ class Exchange(object):
|
|
4366
4394
|
else:
|
4367
4395
|
raise NotSupported(self.id + ' fetchMarketLeverageTiers() is not supported yet')
|
4368
4396
|
|
4369
|
-
def create_post_only_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price, params={}):
|
4397
|
+
def create_post_only_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, params={}):
|
4370
4398
|
if not self.has['createPostOnlyOrder']:
|
4371
4399
|
raise NotSupported(self.id + 'createPostOnlyOrder() is not supported yet')
|
4372
4400
|
query = self.extend(params, {'postOnly': True})
|
4373
4401
|
return self.create_order(symbol, type, side, amount, price, query)
|
4374
4402
|
|
4375
|
-
def create_reduce_only_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price, params={}):
|
4403
|
+
def create_reduce_only_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, params={}):
|
4376
4404
|
if not self.has['createReduceOnlyOrder']:
|
4377
4405
|
raise NotSupported(self.id + 'createReduceOnlyOrder() is not supported yet')
|
4378
4406
|
query = self.extend(params, {'reduceOnly': True})
|
4379
4407
|
return self.create_order(symbol, type, side, amount, price, query)
|
4380
4408
|
|
4381
|
-
def create_stop_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, stopPrice=None, params={}):
|
4409
|
+
def create_stop_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, stopPrice: float = None, params={}):
|
4382
4410
|
if not self.has['createStopOrder']:
|
4383
4411
|
raise NotSupported(self.id + ' createStopOrder() is not supported yet')
|
4384
4412
|
if stopPrice is None:
|
@@ -4386,13 +4414,13 @@ class Exchange(object):
|
|
4386
4414
|
query = self.extend(params, {'stopPrice': stopPrice})
|
4387
4415
|
return self.create_order(symbol, type, side, amount, price, query)
|
4388
4416
|
|
4389
|
-
def create_stop_limit_order(self, symbol: str, side: OrderSide, amount, price, stopPrice, params={}):
|
4417
|
+
def create_stop_limit_order(self, symbol: str, side: OrderSide, amount: float, price: float, stopPrice: float, params={}):
|
4390
4418
|
if not self.has['createStopLimitOrder']:
|
4391
4419
|
raise NotSupported(self.id + ' createStopLimitOrder() is not supported yet')
|
4392
4420
|
query = self.extend(params, {'stopPrice': stopPrice})
|
4393
4421
|
return self.create_order(symbol, 'limit', side, amount, price, query)
|
4394
4422
|
|
4395
|
-
def create_stop_market_order(self, symbol: str, side: OrderSide, amount, stopPrice, params={}):
|
4423
|
+
def create_stop_market_order(self, symbol: str, side: OrderSide, amount: float, stopPrice: float, params={}):
|
4396
4424
|
if not self.has['createStopMarketOrder']:
|
4397
4425
|
raise NotSupported(self.id + ' createStopMarketOrder() is not supported yet')
|
4398
4426
|
query = self.extend(params, {'stopPrice': stopPrice})
|
@@ -4908,7 +4936,8 @@ class Exchange(object):
|
|
4908
4936
|
response = getattr(self, method)(symbol, None, maxEntriesPerRequest, params)
|
4909
4937
|
responseLength = len(response)
|
4910
4938
|
if self.verbose:
|
4911
|
-
|
4939
|
+
backwardMessage = 'Dynamic pagination call ' + calls + ' method ' + method + ' response length ' + responseLength + ' timestamp ' + paginationTimestamp
|
4940
|
+
self.log(backwardMessage)
|
4912
4941
|
if responseLength == 0:
|
4913
4942
|
break
|
4914
4943
|
errors = 0
|
@@ -4922,7 +4951,8 @@ class Exchange(object):
|
|
4922
4951
|
response = getattr(self, method)(symbol, paginationTimestamp, maxEntriesPerRequest, params)
|
4923
4952
|
responseLength = len(response)
|
4924
4953
|
if self.verbose:
|
4925
|
-
|
4954
|
+
forwardMessage = 'Dynamic pagination call ' + calls + ' method ' + method + ' response length ' + responseLength + ' timestamp ' + paginationTimestamp
|
4955
|
+
self.log(forwardMessage)
|
4926
4956
|
if responseLength == 0:
|
4927
4957
|
break
|
4928
4958
|
errors = 0
|
@@ -4954,6 +4984,7 @@ class Exchange(object):
|
|
4954
4984
|
errors += 1
|
4955
4985
|
if errors > maxRetries:
|
4956
4986
|
raise e
|
4987
|
+
return None
|
4957
4988
|
|
4958
4989
|
def fetch_paginated_call_deterministic(self, method: str, symbol: str = None, since: Int = None, limit: Int = None, timeframe: str = None, params={}, maxEntriesPerRequest=None):
|
4959
4990
|
maxCalls = None
|
@@ -5008,7 +5039,8 @@ class Exchange(object):
|
|
5008
5039
|
errors = 0
|
5009
5040
|
responseLength = len(response)
|
5010
5041
|
if self.verbose:
|
5011
|
-
|
5042
|
+
cursorMessage = 'Cursor pagination call ' + i + 1 + ' method ' + method + ' response length ' + responseLength + ' cursor ' + cursorValue
|
5043
|
+
self.log(cursorMessage)
|
5012
5044
|
if responseLength == 0:
|
5013
5045
|
break
|
5014
5046
|
result = self.array_concat(result, response)
|
@@ -5044,7 +5076,8 @@ class Exchange(object):
|
|
5044
5076
|
errors = 0
|
5045
5077
|
responseLength = len(response)
|
5046
5078
|
if self.verbose:
|
5047
|
-
|
5079
|
+
incrementalMessage = 'Incremental pagination call ' + i + 1 + ' method ' + method + ' response length ' + responseLength
|
5080
|
+
self.log(incrementalMessage)
|
5048
5081
|
if responseLength == 0:
|
5049
5082
|
break
|
5050
5083
|
result = self.array_concat(result, response)
|
ccxt/base/types.py
CHANGED
@@ -210,6 +210,16 @@ class Transaction(TypedDict):
|
|
210
210
|
comment: Str
|
211
211
|
internal: Bool
|
212
212
|
|
213
|
+
class TransferEntry(TypedDict):
|
214
|
+
info: Dict[str, any]
|
215
|
+
id: Str
|
216
|
+
timestamp: Int
|
217
|
+
datetime: Str
|
218
|
+
currency: Str
|
219
|
+
amount: Num
|
220
|
+
fromAccount: Str
|
221
|
+
toAccount: Str
|
222
|
+
status: Str
|
213
223
|
|
214
224
|
class Ticker(TypedDict):
|
215
225
|
info: Dict[str, Any]
|
ccxt/bigone.py
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
from ccxt.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.bigone import ImplicitAPI
|
8
|
-
from ccxt.base.types import Balances, Currency, Int, Market, Order, OrderBook, OrderSide, OrderType, Str, Bool, Strings, Ticker, Tickers, Trade, Transaction
|
8
|
+
from ccxt.base.types import Balances, Currency, Int, Market, Order, TransferEntry, OrderBook, OrderSide, OrderType, Str, Bool, 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
|
@@ -521,6 +521,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
521
521
|
def fetch_markets(self, params={}):
|
522
522
|
"""
|
523
523
|
retrieves data on all markets for bigone
|
524
|
+
:see: https://open.big.one/docs/spot_asset_pair.html
|
524
525
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
525
526
|
:returns dict[]: an array of objects representing market data
|
526
527
|
"""
|
@@ -779,6 +780,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
779
780
|
def fetch_ticker(self, symbol: str, params={}) -> Ticker:
|
780
781
|
"""
|
781
782
|
fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
783
|
+
:see: https://open.big.one/docs/spot_tickers.html
|
782
784
|
:param str symbol: unified symbol of the market to fetch the ticker for
|
783
785
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
784
786
|
:returns dict: a `ticker structure <https://docs.ccxt.com/#/?id=ticker-structure>`
|
@@ -817,6 +819,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
817
819
|
def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
|
818
820
|
"""
|
819
821
|
fetches price tickers for multiple markets, statistical information calculated over the past 24 hours for each market
|
822
|
+
:see: https://open.big.one/docs/spot_tickers.html
|
820
823
|
:param str[] [symbols]: unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
821
824
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
822
825
|
:returns dict: a dictionary of `ticker structures <https://docs.ccxt.com/#/?id=ticker-structure>`
|
@@ -898,6 +901,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
898
901
|
def fetch_time(self, params={}):
|
899
902
|
"""
|
900
903
|
fetches the current integer timestamp in milliseconds from the exchange server
|
904
|
+
:see: https://open.big.one/docs/spot_ping.html
|
901
905
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
902
906
|
:returns int: the current integer timestamp in milliseconds from the exchange server
|
903
907
|
"""
|
@@ -916,6 +920,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
916
920
|
def fetch_order_book(self, symbol: str, limit: Int = None, params={}) -> OrderBook:
|
917
921
|
"""
|
918
922
|
fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
|
923
|
+
:see: https://open.big.one/docs/contract_misc.html#get-orderbook-snapshot
|
919
924
|
:param str symbol: unified symbol of the market to fetch the order book for
|
920
925
|
:param int [limit]: the maximum amount of order book entries to return
|
921
926
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -1130,6 +1135,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1130
1135
|
def fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={}) -> List[Trade]:
|
1131
1136
|
"""
|
1132
1137
|
get the list of most recent trades for a particular symbol
|
1138
|
+
:see: https://open.big.one/docs/spot_asset_pair_trade.html
|
1133
1139
|
:param str symbol: unified symbol of the market to fetch trades for
|
1134
1140
|
:param int [since]: timestamp in ms of the earliest trade to fetch
|
1135
1141
|
:param int [limit]: the maximum amount of trades to fetch
|
@@ -1191,6 +1197,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1191
1197
|
def fetch_ohlcv(self, symbol: str, timeframe='1m', since: Int = None, limit: Int = None, params={}) -> List[list]:
|
1192
1198
|
"""
|
1193
1199
|
fetches historical candlestick data containing the open, high, low, and close price, and the volume of a market
|
1200
|
+
:see: https://open.big.one/docs/spot_asset_pair_candle.html
|
1194
1201
|
:param str symbol: unified symbol of the market to fetch OHLCV data for
|
1195
1202
|
:param str timeframe: the length of time each candle represents
|
1196
1203
|
:param int [since]: timestamp in ms of the earliest candle to fetch
|
@@ -1261,6 +1268,8 @@ class bigone(Exchange, ImplicitAPI):
|
|
1261
1268
|
def fetch_balance(self, params={}) -> Balances:
|
1262
1269
|
"""
|
1263
1270
|
query for balance and get the amount of funds available for trading or funds locked in orders
|
1271
|
+
:see: https://open.big.one/docs/fund_accounts.html
|
1272
|
+
:see: https://open.big.one/docs/spot_accounts.html
|
1264
1273
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1265
1274
|
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
|
1266
1275
|
"""
|
@@ -1380,7 +1389,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1380
1389
|
params['createMarketBuyOrderRequiresPrice'] = False
|
1381
1390
|
return self.create_order(symbol, 'market', 'buy', cost, None, params)
|
1382
1391
|
|
1383
|
-
def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, params={}):
|
1392
|
+
def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: float = None, params={}):
|
1384
1393
|
"""
|
1385
1394
|
create a trade order
|
1386
1395
|
:see: https://open.big.one/docs/spot_orders.html#create-order
|
@@ -1477,6 +1486,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1477
1486
|
def cancel_order(self, id: str, symbol: Str = None, params={}):
|
1478
1487
|
"""
|
1479
1488
|
cancels an open order
|
1489
|
+
:see: https://open.big.one/docs/spot_orders.html#cancel-order
|
1480
1490
|
:param str id: order id
|
1481
1491
|
:param str symbol: Not used by bigone cancelOrder()
|
1482
1492
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -1503,6 +1513,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1503
1513
|
def cancel_all_orders(self, symbol: Str = None, params={}):
|
1504
1514
|
"""
|
1505
1515
|
cancel all open orders
|
1516
|
+
:see: https://open.big.one/docs/spot_orders.html#cancel-all-orders
|
1506
1517
|
:param str symbol: unified market symbol, only orders in the market of self symbol are cancelled when symbol is not None
|
1507
1518
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1508
1519
|
:returns dict[]: a list of `order structures <https://docs.ccxt.com/#/?id=order-structure>`
|
@@ -1530,6 +1541,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1530
1541
|
def fetch_order(self, id: str, symbol: Str = None, params={}):
|
1531
1542
|
"""
|
1532
1543
|
fetches information on an order made by the user
|
1544
|
+
:see: https://open.big.one/docs/spot_orders.html#get-one-order
|
1533
1545
|
:param str symbol: not used by bigone fetchOrder
|
1534
1546
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1535
1547
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
@@ -1543,6 +1555,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1543
1555
|
def fetch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
1544
1556
|
"""
|
1545
1557
|
fetches information on multiple orders made by the user
|
1558
|
+
:see: https://open.big.one/docs/spot_orders.html#get-user-orders-in-one-asset-pair
|
1546
1559
|
:param str symbol: unified market symbol of the market orders were made in
|
1547
1560
|
:param int [since]: the earliest time in ms to fetch orders for
|
1548
1561
|
:param int [limit]: the maximum number of order structures to retrieve
|
@@ -1589,6 +1602,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1589
1602
|
def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
1590
1603
|
"""
|
1591
1604
|
fetch all trades made by the user
|
1605
|
+
:see: https://open.big.one/docs/spot_trade.html#trades-of-user
|
1592
1606
|
:param str symbol: unified market symbol
|
1593
1607
|
:param int [since]: the earliest time in ms to fetch trades for
|
1594
1608
|
:param int [limit]: the maximum number of trades structures to retrieve
|
@@ -1654,6 +1668,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1654
1668
|
def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
1655
1669
|
"""
|
1656
1670
|
fetch all unfilled currently open orders
|
1671
|
+
:see: https://open.big.one/docs/spot_orders.html#get-user-orders-in-one-asset-pair
|
1657
1672
|
:param str symbol: unified market symbol
|
1658
1673
|
:param int [since]: the earliest time in ms to fetch open orders for
|
1659
1674
|
:param int [limit]: the maximum number of open orders structures to retrieve
|
@@ -1668,6 +1683,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1668
1683
|
def fetch_closed_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
1669
1684
|
"""
|
1670
1685
|
fetches information on multiple closed orders made by the user
|
1686
|
+
:see: https://open.big.one/docs/spot_orders.html#get-user-orders-in-one-asset-pair
|
1671
1687
|
:param str symbol: unified market symbol of the market orders were made in
|
1672
1688
|
:param int [since]: the earliest time in ms to fetch orders for
|
1673
1689
|
:param int [limit]: the maximum number of order structures to retrieve
|
@@ -1714,6 +1730,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1714
1730
|
def fetch_deposit_address(self, code: str, params={}):
|
1715
1731
|
"""
|
1716
1732
|
fetch the deposit address for a currency associated with self account
|
1733
|
+
:see: https://open.big.one/docs/spot_deposit.html#get-deposite-address-of-one-asset-of-user
|
1717
1734
|
:param str code: unified currency code
|
1718
1735
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1719
1736
|
:returns dict: an `address structure <https://docs.ccxt.com/#/?id=address-structure>`
|
@@ -1861,6 +1878,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1861
1878
|
def fetch_deposits(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
|
1862
1879
|
"""
|
1863
1880
|
fetch all deposits made to an account
|
1881
|
+
:see: https://open.big.one/docs/spot_deposit.html#deposit-of-user
|
1864
1882
|
:param str code: unified currency code
|
1865
1883
|
:param int [since]: the earliest time in ms to fetch deposits for
|
1866
1884
|
:param int [limit]: the maximum number of deposits structures to retrieve
|
@@ -1908,6 +1926,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1908
1926
|
def fetch_withdrawals(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
|
1909
1927
|
"""
|
1910
1928
|
fetch all withdrawals made from an account
|
1929
|
+
:see: https://open.big.one/docs/spot_withdrawal.html#get-withdrawals-of-user
|
1911
1930
|
:param str code: unified currency code
|
1912
1931
|
:param int [since]: the earliest time in ms to fetch withdrawals for
|
1913
1932
|
:param int [limit]: the maximum number of withdrawals structures to retrieve
|
@@ -1952,7 +1971,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1952
1971
|
withdrawals = self.safe_value(response, 'data', [])
|
1953
1972
|
return self.parse_transactions(withdrawals, currency, since, limit)
|
1954
1973
|
|
1955
|
-
def transfer(self, code: str, amount, fromAccount, toAccount, params={}):
|
1974
|
+
def transfer(self, code: str, amount: float, fromAccount, toAccount, params={}) -> TransferEntry:
|
1956
1975
|
"""
|
1957
1976
|
transfer currency internally between wallets on the same account
|
1958
1977
|
:see: https://open.big.one/docs/spot_transfer.html#transfer-of-user
|
@@ -2008,7 +2027,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
2008
2027
|
'id': None,
|
2009
2028
|
'timestamp': None,
|
2010
2029
|
'datetime': None,
|
2011
|
-
'currency':
|
2030
|
+
'currency': None,
|
2012
2031
|
'amount': None,
|
2013
2032
|
'fromAccount': None,
|
2014
2033
|
'toAccount': None,
|
@@ -2021,9 +2040,10 @@ class bigone(Exchange, ImplicitAPI):
|
|
2021
2040
|
}
|
2022
2041
|
return self.safe_string(statuses, status, 'failed')
|
2023
2042
|
|
2024
|
-
def withdraw(self, code: str, amount, address, tag=None, params={}):
|
2043
|
+
def withdraw(self, code: str, amount: float, address, tag=None, params={}):
|
2025
2044
|
"""
|
2026
2045
|
make a withdrawal
|
2046
|
+
:see: https://open.big.one/docs/spot_withdrawal.html#create-withdrawal-of-user
|
2027
2047
|
:param str code: unified currency code
|
2028
2048
|
:param float amount: the amount to withdraw
|
2029
2049
|
:param str address: the address to withdraw to
|