ccxt 4.4.29__py2.py3-none-any.whl → 4.4.31__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/abstract/alpaca.py +1 -0
- ccxt/abstract/binance.py +9 -0
- ccxt/abstract/binancecoinm.py +9 -0
- ccxt/abstract/binanceus.py +9 -0
- ccxt/abstract/binanceusdm.py +9 -0
- ccxt/ace.py +36 -12
- ccxt/alpaca.py +113 -28
- ccxt/ascendex.py +65 -30
- ccxt/async_support/__init__.py +1 -1
- ccxt/async_support/ace.py +36 -12
- ccxt/async_support/alpaca.py +113 -28
- ccxt/async_support/ascendex.py +65 -30
- ccxt/async_support/base/exchange.py +3 -3
- ccxt/async_support/bigone.py +71 -27
- ccxt/async_support/binance.py +564 -323
- ccxt/async_support/bingx.py +208 -108
- ccxt/async_support/bit2c.py +34 -12
- ccxt/async_support/bitbank.py +42 -14
- ccxt/async_support/bitbns.py +29 -21
- ccxt/async_support/bitfinex.py +77 -33
- ccxt/async_support/bitfinex2.py +116 -44
- ccxt/async_support/bitflyer.py +54 -18
- ccxt/async_support/bitget.py +277 -145
- ccxt/async_support/bithumb.py +39 -14
- ccxt/async_support/bitmart.py +198 -132
- ccxt/async_support/bitmex.py +90 -30
- ccxt/async_support/bitopro.py +66 -22
- ccxt/async_support/bitrue.py +109 -57
- ccxt/async_support/bitso.py +55 -19
- ccxt/async_support/bitstamp.py +84 -36
- ccxt/async_support/bitteam.py +51 -17
- ccxt/async_support/bitvavo.py +57 -19
- ccxt/async_support/bl3p.py +26 -10
- ccxt/async_support/blockchaincom.py +63 -21
- ccxt/async_support/blofin.py +95 -38
- ccxt/async_support/btcalpha.py +48 -16
- ccxt/async_support/btcbox.py +27 -9
- ccxt/async_support/btcmarkets.py +57 -19
- ccxt/async_support/btcturk.py +36 -12
- ccxt/async_support/bybit.py +251 -95
- ccxt/async_support/cex.py +65 -22
- ccxt/async_support/coinbase.py +138 -56
- ccxt/async_support/coinbaseexchange.py +76 -28
- ccxt/async_support/coinbaseinternational.py +75 -27
- ccxt/async_support/coincatch.py +191 -97
- ccxt/async_support/coincheck.py +33 -11
- ccxt/async_support/coinex.py +212 -101
- ccxt/async_support/coinlist.py +87 -30
- ccxt/async_support/coinmate.py +55 -24
- ccxt/async_support/coinmetro.py +52 -18
- ccxt/async_support/coinone.py +27 -10
- ccxt/async_support/coinsph.py +73 -27
- ccxt/async_support/coinspot.py +25 -9
- ccxt/async_support/cryptocom.py +103 -38
- ccxt/async_support/currencycom.py +70 -23
- ccxt/async_support/delta.py +90 -30
- ccxt/async_support/deribit.py +138 -53
- ccxt/async_support/digifinex.py +114 -51
- ccxt/async_support/exmo.py +104 -45
- ccxt/async_support/gate.py +298 -155
- ccxt/async_support/gemini.py +57 -20
- ccxt/async_support/hashkey.py +151 -66
- ccxt/async_support/hitbtc.py +156 -73
- ccxt/async_support/hollaex.py +76 -25
- ccxt/async_support/htx.py +297 -240
- ccxt/async_support/huobijp.py +1 -0
- ccxt/async_support/hyperliquid.py +203 -42
- ccxt/async_support/idex.py +73 -24
- ccxt/async_support/independentreserve.py +12 -5
- ccxt/async_support/indodax.py +53 -16
- ccxt/async_support/kraken.py +107 -35
- ccxt/async_support/krakenfutures.py +88 -34
- ccxt/async_support/kucoin.py +211 -109
- ccxt/async_support/kucoinfutures.py +119 -42
- ccxt/async_support/kuna.py +80 -39
- ccxt/async_support/latoken.py +70 -33
- ccxt/async_support/lbank.py +90 -39
- ccxt/async_support/luno.py +54 -19
- ccxt/async_support/lykke.py +54 -19
- ccxt/async_support/mercado.py +1 -0
- ccxt/async_support/mexc.py +226 -108
- ccxt/async_support/ndax.py +58 -19
- ccxt/async_support/novadax.py +67 -22
- ccxt/async_support/oceanex.py +58 -19
- ccxt/async_support/okcoin.py +81 -38
- ccxt/async_support/okx.py +270 -109
- ccxt/async_support/onetrading.py +3 -1
- ccxt/async_support/oxfun.py +95 -36
- ccxt/async_support/p2b.py +49 -23
- ccxt/async_support/paradex.py +75 -27
- ccxt/async_support/paymium.py +31 -11
- ccxt/async_support/phemex.py +91 -41
- ccxt/async_support/poloniex.py +80 -30
- ccxt/async_support/poloniexfutures.py +72 -30
- ccxt/async_support/probit.py +64 -22
- ccxt/async_support/timex.py +58 -19
- ccxt/async_support/tokocrypto.py +63 -22
- ccxt/async_support/tradeogre.py +7 -2
- ccxt/async_support/upbit.py +72 -25
- ccxt/async_support/vertex.py +74 -28
- ccxt/async_support/wavesexchange.py +29 -8
- ccxt/async_support/wazirx.py +51 -17
- ccxt/async_support/whitebit.py +105 -41
- ccxt/async_support/woo.py +162 -65
- ccxt/async_support/woofipro.py +118 -49
- ccxt/async_support/xt.py +150 -73
- ccxt/async_support/yobit.py +49 -16
- ccxt/async_support/zaif.py +30 -10
- ccxt/async_support/zonda.py +46 -16
- ccxt/base/exchange.py +34 -34
- ccxt/base/types.py +1 -0
- ccxt/bigone.py +71 -27
- ccxt/binance.py +564 -323
- ccxt/bingx.py +208 -108
- ccxt/bit2c.py +34 -12
- ccxt/bitbank.py +42 -14
- ccxt/bitbns.py +29 -21
- ccxt/bitfinex.py +77 -33
- ccxt/bitfinex2.py +116 -44
- ccxt/bitflyer.py +54 -18
- ccxt/bitget.py +277 -145
- ccxt/bithumb.py +39 -14
- ccxt/bitmart.py +198 -132
- ccxt/bitmex.py +90 -30
- ccxt/bitopro.py +66 -22
- ccxt/bitrue.py +109 -57
- ccxt/bitso.py +55 -19
- ccxt/bitstamp.py +84 -36
- ccxt/bitteam.py +51 -17
- ccxt/bitvavo.py +57 -19
- ccxt/bl3p.py +26 -10
- ccxt/blockchaincom.py +63 -21
- ccxt/blofin.py +95 -38
- ccxt/btcalpha.py +48 -16
- ccxt/btcbox.py +27 -9
- ccxt/btcmarkets.py +57 -19
- ccxt/btcturk.py +36 -12
- ccxt/bybit.py +251 -95
- ccxt/cex.py +65 -22
- ccxt/coinbase.py +138 -56
- ccxt/coinbaseexchange.py +76 -28
- ccxt/coinbaseinternational.py +75 -27
- ccxt/coincatch.py +191 -97
- ccxt/coincheck.py +33 -11
- ccxt/coinex.py +212 -101
- ccxt/coinlist.py +87 -30
- ccxt/coinmate.py +55 -24
- ccxt/coinmetro.py +52 -18
- ccxt/coinone.py +27 -10
- ccxt/coinsph.py +73 -27
- ccxt/coinspot.py +25 -9
- ccxt/cryptocom.py +103 -38
- ccxt/currencycom.py +70 -23
- ccxt/delta.py +90 -30
- ccxt/deribit.py +138 -53
- ccxt/digifinex.py +114 -51
- ccxt/exmo.py +104 -45
- ccxt/gate.py +298 -155
- ccxt/gemini.py +57 -20
- ccxt/hashkey.py +151 -66
- ccxt/hitbtc.py +156 -73
- ccxt/hollaex.py +76 -25
- ccxt/htx.py +297 -240
- ccxt/huobijp.py +1 -0
- ccxt/hyperliquid.py +203 -42
- ccxt/idex.py +73 -24
- ccxt/independentreserve.py +12 -5
- ccxt/indodax.py +53 -16
- ccxt/kraken.py +107 -35
- ccxt/krakenfutures.py +88 -34
- ccxt/kucoin.py +211 -109
- ccxt/kucoinfutures.py +119 -42
- ccxt/kuna.py +80 -39
- ccxt/latoken.py +70 -33
- ccxt/lbank.py +90 -39
- ccxt/luno.py +54 -19
- ccxt/lykke.py +54 -19
- ccxt/mercado.py +1 -0
- ccxt/mexc.py +226 -108
- ccxt/ndax.py +58 -19
- ccxt/novadax.py +67 -22
- ccxt/oceanex.py +58 -19
- ccxt/okcoin.py +81 -38
- ccxt/okx.py +270 -109
- ccxt/onetrading.py +3 -1
- ccxt/oxfun.py +95 -36
- ccxt/p2b.py +49 -23
- ccxt/paradex.py +75 -27
- ccxt/paymium.py +31 -11
- ccxt/phemex.py +91 -41
- ccxt/poloniex.py +80 -30
- ccxt/poloniexfutures.py +72 -30
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/alpaca.py +15 -5
- ccxt/pro/ascendex.py +18 -6
- ccxt/pro/binance.py +200 -119
- ccxt/pro/bingx.py +44 -24
- ccxt/pro/bitfinex.py +13 -5
- ccxt/pro/bitget.py +75 -36
- ccxt/pro/bithumb.py +12 -4
- ccxt/pro/bitmart.py +44 -20
- ccxt/pro/bitmex.py +42 -14
- ccxt/pro/bitopro.py +15 -5
- ccxt/pro/bitrue.py +7 -3
- ccxt/pro/bitvavo.py +51 -17
- ccxt/pro/blockchaincom.py +18 -6
- ccxt/pro/blofin.py +38 -13
- ccxt/pro/bybit.py +100 -42
- ccxt/pro/cex.py +48 -16
- ccxt/pro/coinbase.py +32 -12
- ccxt/pro/coinbaseexchange.py +1 -1
- ccxt/pro/coinbaseinternational.py +34 -14
- ccxt/pro/coincatch.py +54 -19
- ccxt/pro/coincheck.py +6 -2
- ccxt/pro/coinex.py +40 -20
- ccxt/pro/coinone.py +9 -3
- ccxt/pro/cryptocom.py +70 -26
- ccxt/pro/deribit.py +36 -12
- ccxt/pro/exmo.py +10 -4
- ccxt/pro/gate.py +64 -30
- ccxt/pro/gemini.py +21 -7
- ccxt/pro/hashkey.py +26 -8
- ccxt/pro/hitbtc.py +61 -37
- ccxt/pro/hollaex.py +15 -5
- ccxt/pro/htx.py +39 -21
- ccxt/pro/hyperliquid.py +41 -14
- ccxt/pro/kraken.py +49 -17
- ccxt/pro/krakenfutures.py +47 -24
- ccxt/pro/kucoin.py +60 -31
- ccxt/pro/kucoinfutures.py +41 -19
- ccxt/pro/lbank.py +27 -9
- ccxt/pro/luno.py +3 -1
- ccxt/pro/mexc.py +35 -17
- ccxt/pro/ndax.py +12 -4
- ccxt/pro/okcoin.py +18 -6
- ccxt/pro/okx.py +76 -28
- ccxt/pro/onetrading.py +21 -7
- ccxt/pro/oxfun.py +54 -20
- ccxt/pro/p2b.py +23 -11
- ccxt/pro/paradex.py +12 -4
- ccxt/pro/phemex.py +31 -19
- ccxt/pro/poloniex.py +50 -22
- ccxt/pro/poloniexfutures.py +17 -7
- ccxt/pro/probit.py +18 -6
- ccxt/pro/upbit.py +25 -9
- ccxt/pro/vertex.py +20 -6
- ccxt/pro/wazirx.py +21 -7
- ccxt/pro/whitebit.py +25 -9
- ccxt/pro/woo.py +32 -12
- ccxt/pro/woofipro.py +35 -13
- ccxt/pro/xt.py +46 -26
- ccxt/probit.py +64 -22
- ccxt/test/tests_helpers.py +2 -2
- ccxt/timex.py +58 -19
- ccxt/tokocrypto.py +63 -22
- ccxt/tradeogre.py +7 -2
- ccxt/upbit.py +72 -25
- ccxt/vertex.py +74 -28
- ccxt/wavesexchange.py +29 -8
- ccxt/wazirx.py +51 -17
- ccxt/whitebit.py +105 -41
- ccxt/woo.py +162 -65
- ccxt/woofipro.py +118 -49
- ccxt/xt.py +150 -73
- ccxt/yobit.py +49 -16
- ccxt/zaif.py +30 -10
- ccxt/zonda.py +46 -16
- {ccxt-4.4.29.dist-info → ccxt-4.4.31.dist-info}/METADATA +5 -5
- {ccxt-4.4.29.dist-info → ccxt-4.4.31.dist-info}/RECORD +273 -273
- {ccxt-4.4.29.dist-info → ccxt-4.4.31.dist-info}/LICENSE.txt +0 -0
- {ccxt-4.4.29.dist-info → ccxt-4.4.31.dist-info}/WHEEL +0 -0
- {ccxt-4.4.29.dist-info → ccxt-4.4.31.dist-info}/top_level.txt +0 -0
ccxt/async_support/bitfinex.py
CHANGED
@@ -418,9 +418,11 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
418
418
|
|
419
419
|
async def fetch_transaction_fees(self, codes: Strings = None, params={}):
|
420
420
|
"""
|
421
|
-
|
421
|
+
@deprecated
|
422
422
|
please use fetchDepositWithdrawFees instead
|
423
|
-
|
423
|
+
|
424
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-fees
|
425
|
+
|
424
426
|
:param str[]|None codes: list of unified currency codes
|
425
427
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
426
428
|
:returns dict[]: a list of `fees structures <https://docs.ccxt.com/#/?id=fee-structure>`
|
@@ -435,7 +437,7 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
435
437
|
# }
|
436
438
|
# }
|
437
439
|
#
|
438
|
-
fees = self.
|
440
|
+
fees = self.safe_dict(response, 'withdraw', {})
|
439
441
|
ids = list(fees.keys())
|
440
442
|
for i in range(0, len(ids)):
|
441
443
|
id = ids[i]
|
@@ -452,7 +454,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
452
454
|
async def fetch_deposit_withdraw_fees(self, codes: Strings = None, params={}):
|
453
455
|
"""
|
454
456
|
fetch deposit and withdraw fees
|
455
|
-
|
457
|
+
|
458
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-fees
|
459
|
+
|
456
460
|
:param str[]|None codes: list of unified currency codes
|
457
461
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
458
462
|
:returns dict[]: a list of `fees structures <https://docs.ccxt.com/#/?id=fee-structure>`
|
@@ -490,7 +494,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
490
494
|
async def fetch_trading_fees(self, params={}) -> TradingFees:
|
491
495
|
"""
|
492
496
|
fetch the trading fees for multiple markets
|
493
|
-
|
497
|
+
|
498
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-summary
|
499
|
+
|
494
500
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
495
501
|
:returns dict: a dictionary of `fee structures <https://docs.ccxt.com/#/?id=fee-structure>` indexed by market symbols
|
496
502
|
"""
|
@@ -536,7 +542,7 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
536
542
|
# }
|
537
543
|
#
|
538
544
|
result: dict = {}
|
539
|
-
fiat = self.
|
545
|
+
fiat = self.safe_dict(self.options, 'fiat', {})
|
540
546
|
makerFee = self.safe_number(response, 'maker_fee')
|
541
547
|
takerFee = self.safe_number(response, 'taker_fee')
|
542
548
|
makerFee2Fiat = self.safe_number(response, 'maker_fee_2fiat')
|
@@ -567,8 +573,10 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
567
573
|
async def fetch_markets(self, params={}) -> List[Market]:
|
568
574
|
"""
|
569
575
|
retrieves data on all markets for bitfinex
|
570
|
-
|
571
|
-
|
576
|
+
|
577
|
+
https://docs.bitfinex.com/v1/reference/rest-public-symbols
|
578
|
+
https://docs.bitfinex.com/v1/reference/rest-public-symbol-details
|
579
|
+
|
572
580
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
573
581
|
:returns dict[]: an array of objects representing market data
|
574
582
|
"""
|
@@ -625,7 +633,7 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
625
633
|
'settleId': None,
|
626
634
|
'type': type,
|
627
635
|
'spot': (type == 'spot'),
|
628
|
-
'margin': self.
|
636
|
+
'margin': self.safe_bool(market, 'margin'),
|
629
637
|
'swap': (type == 'swap'),
|
630
638
|
'future': False,
|
631
639
|
'option': False,
|
@@ -687,12 +695,14 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
687
695
|
async def fetch_balance(self, params={}) -> Balances:
|
688
696
|
"""
|
689
697
|
query for balance and get the amount of funds available for trading or funds locked in orders
|
690
|
-
|
698
|
+
|
699
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-wallet-balances
|
700
|
+
|
691
701
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
692
702
|
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
|
693
703
|
"""
|
694
704
|
await self.load_markets()
|
695
|
-
accountsByType = self.
|
705
|
+
accountsByType = self.safe_dict(self.options, 'accountsByType', {})
|
696
706
|
requestedType = self.safe_string(params, 'type', 'exchange')
|
697
707
|
accountType = self.safe_string(accountsByType, requestedType, requestedType)
|
698
708
|
if accountType is None:
|
@@ -739,7 +749,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
739
749
|
async def transfer(self, code: str, amount: float, fromAccount: str, toAccount: str, params={}) -> TransferEntry:
|
740
750
|
"""
|
741
751
|
transfer currency internally between wallets on the same account
|
742
|
-
|
752
|
+
|
753
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-transfer-between-wallets
|
754
|
+
|
743
755
|
:param str code: unified currency code
|
744
756
|
:param float amount: amount to transfer
|
745
757
|
:param str fromAccount: account to transfer from
|
@@ -750,7 +762,7 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
750
762
|
# transferring between derivatives wallet and regular wallet is not documented in their API
|
751
763
|
# however we support it in CCXT(from just looking at web inspector)
|
752
764
|
await self.load_markets()
|
753
|
-
accountsByType = self.
|
765
|
+
accountsByType = self.safe_dict(self.options, 'accountsByType', {})
|
754
766
|
fromId = self.safe_string(accountsByType, fromAccount, fromAccount)
|
755
767
|
toId = self.safe_string(accountsByType, toAccount, toAccount)
|
756
768
|
currency = self.currency(code)
|
@@ -820,7 +832,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
820
832
|
async def fetch_order_book(self, symbol: str, limit: Int = None, params={}) -> OrderBook:
|
821
833
|
"""
|
822
834
|
fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
|
823
|
-
|
835
|
+
|
836
|
+
https://docs.bitfinex.com/v1/reference/rest-public-orderbook
|
837
|
+
|
824
838
|
:param str symbol: unified symbol of the market to fetch the order book for
|
825
839
|
:param int [limit]: the maximum amount of order book entries to return
|
826
840
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -857,7 +871,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
857
871
|
async def fetch_ticker(self, symbol: str, params={}) -> Ticker:
|
858
872
|
"""
|
859
873
|
fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
860
|
-
|
874
|
+
|
875
|
+
https://docs.bitfinex.com/v1/reference/rest-public-ticker
|
876
|
+
|
861
877
|
:param str symbol: unified symbol of the market to fetch the ticker for
|
862
878
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
863
879
|
:returns dict: a `ticker structure <https://docs.ccxt.com/#/?id=ticker-structure>`
|
@@ -995,7 +1011,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
995
1011
|
async def fetch_trades(self, symbol: str, since: Int = None, limit: Int = 50, params={}) -> List[Trade]:
|
996
1012
|
"""
|
997
1013
|
get the list of most recent trades for a particular symbol
|
998
|
-
|
1014
|
+
|
1015
|
+
https://docs.bitfinex.com/v1/reference/rest-public-trades
|
1016
|
+
|
999
1017
|
:param str symbol: unified symbol of the market to fetch trades for
|
1000
1018
|
:param int [since]: timestamp in ms of the earliest trade to fetch
|
1001
1019
|
:param int [limit]: the maximum amount of trades to fetch
|
@@ -1028,7 +1046,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1028
1046
|
async def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
1029
1047
|
"""
|
1030
1048
|
fetch all trades made by the user
|
1031
|
-
|
1049
|
+
|
1050
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-past-trades
|
1051
|
+
|
1032
1052
|
:param str symbol: unified market symbol
|
1033
1053
|
:param int [since]: the earliest time in ms to fetch trades for
|
1034
1054
|
:param int [limit]: the maximum number of trades structures to retrieve
|
@@ -1052,7 +1072,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1052
1072
|
async def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
|
1053
1073
|
"""
|
1054
1074
|
create a trade order
|
1055
|
-
|
1075
|
+
|
1076
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-new-order
|
1077
|
+
|
1056
1078
|
:param str symbol: unified symbol of the market to create an order in
|
1057
1079
|
:param str type: 'market' or 'limit'
|
1058
1080
|
:param str side: 'buy' or 'sell'
|
@@ -1109,7 +1131,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1109
1131
|
async def cancel_order(self, id: str, symbol: Str = None, params={}):
|
1110
1132
|
"""
|
1111
1133
|
cancels an open order
|
1112
|
-
|
1134
|
+
|
1135
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-cancel-order
|
1136
|
+
|
1113
1137
|
:param str id: order id
|
1114
1138
|
:param str symbol: not used by bitfinex cancelOrder()
|
1115
1139
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -1150,7 +1174,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1150
1174
|
async def cancel_all_orders(self, symbol: Str = None, params={}):
|
1151
1175
|
"""
|
1152
1176
|
cancel all open orders
|
1153
|
-
|
1177
|
+
|
1178
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-cancel-all-orders
|
1179
|
+
|
1154
1180
|
:param str symbol: not used by bitfinex cancelAllOrders
|
1155
1181
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1156
1182
|
:returns dict: response from exchange
|
@@ -1191,8 +1217,8 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1191
1217
|
# }
|
1192
1218
|
#
|
1193
1219
|
side = self.safe_string(order, 'side')
|
1194
|
-
open = self.
|
1195
|
-
canceled = self.
|
1220
|
+
open = self.safe_bool(order, 'is_live')
|
1221
|
+
canceled = self.safe_bool(order, 'is_cancelled')
|
1196
1222
|
status = None
|
1197
1223
|
if open:
|
1198
1224
|
status = 'open'
|
@@ -1237,7 +1263,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1237
1263
|
async def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
1238
1264
|
"""
|
1239
1265
|
fetch all unfilled currently open orders
|
1240
|
-
|
1266
|
+
|
1267
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-active-orders
|
1268
|
+
|
1241
1269
|
:param str symbol: unified market symbol
|
1242
1270
|
:param int [since]: the earliest time in ms to fetch open orders for
|
1243
1271
|
:param int [limit]: the maximum number of open orders structures to retrieve
|
@@ -1257,7 +1285,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1257
1285
|
async def fetch_closed_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
1258
1286
|
"""
|
1259
1287
|
fetches information on multiple closed orders made by the user
|
1260
|
-
|
1288
|
+
|
1289
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-orders-history
|
1290
|
+
|
1261
1291
|
:param str symbol: unified market symbol of the market orders were made in
|
1262
1292
|
:param int [since]: the earliest time in ms to fetch orders for
|
1263
1293
|
:param int [limit]: the maximum number of order structures to retrieve
|
@@ -1279,7 +1309,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1279
1309
|
async def fetch_order(self, id: str, symbol: Str = None, params={}):
|
1280
1310
|
"""
|
1281
1311
|
fetches information on an order made by the user
|
1282
|
-
|
1312
|
+
|
1313
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-order-status
|
1314
|
+
|
1283
1315
|
:param str id: the order id
|
1284
1316
|
:param str symbol: not used by bitfinex fetchOrder
|
1285
1317
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
@@ -1315,7 +1347,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1315
1347
|
async def fetch_ohlcv(self, symbol: str, timeframe='1m', since: Int = None, limit: Int = None, params={}) -> List[list]:
|
1316
1348
|
"""
|
1317
1349
|
fetches historical candlestick data containing the open, high, low, and close price, and the volume of a market
|
1318
|
-
|
1350
|
+
|
1351
|
+
https://docs.bitfinex.com/reference/rest-public-candles#aggregate-funding-currency-candles
|
1352
|
+
|
1319
1353
|
:param str symbol: unified symbol of the market to fetch OHLCV data for
|
1320
1354
|
:param str timeframe: the length of time each candle represents
|
1321
1355
|
:param int [since]: timestamp in ms of the earliest candle to fetch
|
@@ -1357,7 +1391,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1357
1391
|
async def create_deposit_address(self, code: str, params={}):
|
1358
1392
|
"""
|
1359
1393
|
create a currency deposit address
|
1360
|
-
|
1394
|
+
|
1395
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-deposit
|
1396
|
+
|
1361
1397
|
:param str code: unified currency code of the currency for the deposit address
|
1362
1398
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1363
1399
|
:returns dict: an `address structure <https://docs.ccxt.com/#/?id=address-structure>`
|
@@ -1371,7 +1407,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1371
1407
|
async def fetch_deposit_address(self, code: str, params={}) -> DepositAddress:
|
1372
1408
|
"""
|
1373
1409
|
fetch the deposit address for a currency associated with self account
|
1374
|
-
|
1410
|
+
|
1411
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-deposit
|
1412
|
+
|
1375
1413
|
:param str code: unified currency code
|
1376
1414
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1377
1415
|
:returns dict: an `address structure <https://docs.ccxt.com/#/?id=address-structure>`
|
@@ -1402,7 +1440,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1402
1440
|
async def fetch_deposits_withdrawals(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
|
1403
1441
|
"""
|
1404
1442
|
fetch history of deposits and withdrawals
|
1405
|
-
|
1443
|
+
|
1444
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-deposit-withdrawal-history
|
1445
|
+
|
1406
1446
|
:param str code: unified currency code for the currency of the deposit/withdrawals
|
1407
1447
|
:param int [since]: timestamp in ms of the earliest deposit/withdrawal, default is None
|
1408
1448
|
:param int [limit]: max number of deposit/withdrawals to return, default is None
|
@@ -1532,7 +1572,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1532
1572
|
async def withdraw(self, code: str, amount: float, address: str, tag=None, params={}) -> Transaction:
|
1533
1573
|
"""
|
1534
1574
|
make a withdrawal
|
1535
|
-
|
1575
|
+
|
1576
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-withdrawal
|
1577
|
+
|
1536
1578
|
:param str code: unified currency code
|
1537
1579
|
:param float amount: the amount to withdraw
|
1538
1580
|
:param str address: the address to withdraw to
|
@@ -1564,7 +1606,7 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1564
1606
|
# }
|
1565
1607
|
# ]
|
1566
1608
|
#
|
1567
|
-
response = self.
|
1609
|
+
response = self.safe_dict(responses, 0, {})
|
1568
1610
|
id = self.safe_integer(response, 'withdrawal_id')
|
1569
1611
|
message = self.safe_string(response, 'message')
|
1570
1612
|
errorMessage = self.find_broadly_matched_key(self.exceptions['broad'], message)
|
@@ -1578,7 +1620,9 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1578
1620
|
async def fetch_positions(self, symbols: Strings = None, params={}):
|
1579
1621
|
"""
|
1580
1622
|
fetch all open positions
|
1581
|
-
|
1623
|
+
|
1624
|
+
https://docs.bitfinex.com/v1/reference/rest-auth-active-positions
|
1625
|
+
|
1582
1626
|
:param str[]|None symbols: list of unified market symbols
|
1583
1627
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1584
1628
|
:returns dict[]: a list of `position structure <https://docs.ccxt.com/#/?id=position-structure>`
|
@@ -1647,7 +1691,7 @@ class bitfinex(Exchange, ImplicitAPI):
|
|
1647
1691
|
else:
|
1648
1692
|
# json response with error, i.e:
|
1649
1693
|
# [{"status":"error","message":"Momentary balance check. Please wait few seconds and try the transfer again."}]
|
1650
|
-
responseObject = self.
|
1694
|
+
responseObject = self.safe_dict(response, 0, {})
|
1651
1695
|
status = self.safe_string(responseObject, 'status', '')
|
1652
1696
|
if status == 'error':
|
1653
1697
|
throwError = True
|