ccxt-ir 4.3.46.0.2__py2.py3-none-any.whl → 4.5.0__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 +39 -35
- ccxt/abantether.py +9 -9
- ccxt/abstract/alpaca.py +4 -0
- ccxt/abstract/apex.py +31 -0
- ccxt/abstract/bigone.py +1 -1
- ccxt/abstract/binance.py +106 -48
- ccxt/abstract/binancecoinm.py +106 -48
- ccxt/abstract/binanceus.py +141 -83
- ccxt/abstract/binanceusdm.py +106 -48
- ccxt/abstract/bingx.py +50 -1
- ccxt/abstract/bitbank.py +5 -0
- ccxt/abstract/bitfinex.py +136 -65
- ccxt/abstract/bitflyer.py +1 -0
- ccxt/abstract/bitget.py +67 -0
- ccxt/abstract/bitmart.py +19 -1
- ccxt/abstract/bitopro.py +1 -0
- ccxt/abstract/bitrue.py +68 -68
- ccxt/abstract/bitstamp.py +1 -0
- ccxt/abstract/blofin.py +30 -0
- ccxt/abstract/btcbox.py +2 -0
- ccxt/abstract/bybit.py +28 -13
- ccxt/abstract/cex.py +28 -29
- ccxt/abstract/coinbaseexchange.py +1 -0
- ccxt/abstract/coinbaseinternational.py +1 -1
- ccxt/abstract/cryptocom.py +16 -0
- ccxt/abstract/cryptomus.py +20 -0
- ccxt/abstract/defx.py +69 -0
- ccxt/abstract/deribit.py +1 -0
- ccxt/abstract/derive.py +117 -0
- ccxt/abstract/digifinex.py +1 -0
- ccxt/abstract/ellipx.py +25 -0
- ccxt/abstract/foxbit.py +26 -0
- ccxt/abstract/gate.py +19 -0
- ccxt/abstract/gateio.py +19 -0
- ccxt/abstract/gemini.py +1 -0
- ccxt/abstract/hibachi.py +26 -0
- ccxt/abstract/hyperliquid.py +1 -1
- ccxt/abstract/independentreserve.py +6 -0
- ccxt/abstract/kraken.py +1 -0
- ccxt/abstract/krakenfutures.py +4 -0
- ccxt/abstract/kucoin.py +10 -0
- ccxt/abstract/kucoinfutures.py +18 -0
- ccxt/abstract/lbank.py +2 -1
- ccxt/abstract/luno.py +1 -0
- ccxt/abstract/mexc.py +2 -0
- ccxt/abstract/modetrade.py +119 -0
- ccxt/abstract/myokx.py +349 -0
- ccxt/abstract/oceanex.py +5 -0
- ccxt/abstract/okx.py +25 -0
- ccxt/abstract/okxus.py +349 -0
- ccxt/abstract/onetrading.py +0 -12
- ccxt/abstract/paradex.py +23 -0
- ccxt/abstract/phemex.py +2 -0
- ccxt/abstract/poloniex.py +36 -0
- ccxt/abstract/tradeogre.py +3 -1
- ccxt/abstract/upbit.py +51 -34
- ccxt/abstract/whitebit.py +16 -0
- ccxt/abstract/woo.py +64 -6
- ccxt/abstract/xt.py +10 -5
- ccxt/afratether.py +7 -7
- ccxt/alpaca.py +828 -51
- ccxt/apex.py +1875 -0
- ccxt/arzinja.py +7 -7
- ccxt/arzplus.py +9 -9
- ccxt/ascendex.py +501 -306
- ccxt/async_support/__init__.py +39 -35
- ccxt/async_support/abantether.py +10 -10
- ccxt/async_support/afratether.py +9 -9
- ccxt/async_support/alpaca.py +828 -51
- ccxt/async_support/apex.py +1875 -0
- ccxt/async_support/arzinja.py +10 -10
- ccxt/async_support/arzplus.py +12 -12
- ccxt/async_support/ascendex.py +502 -306
- ccxt/async_support/base/exchange.py +303 -89
- ccxt/async_support/base/ws/cache.py +9 -3
- ccxt/async_support/base/ws/client.py +173 -38
- ccxt/async_support/base/ws/future.py +25 -37
- ccxt/async_support/bequant.py +5 -3
- ccxt/async_support/bigone.py +279 -144
- ccxt/async_support/binance.py +2347 -1158
- ccxt/async_support/binancecoinm.py +9 -3
- ccxt/async_support/binanceus.py +17 -3
- ccxt/async_support/binanceusdm.py +9 -4
- ccxt/async_support/bingx.py +2962 -920
- ccxt/async_support/bit2c.py +147 -27
- ccxt/async_support/bitbank.py +151 -23
- ccxt/async_support/bitbns.py +104 -30
- ccxt/async_support/bitfinex.py +3291 -1113
- ccxt/async_support/bitflyer.py +202 -27
- ccxt/async_support/bitget.py +3683 -1538
- ccxt/async_support/bithumb.py +195 -38
- ccxt/async_support/bitimen.py +12 -12
- ccxt/async_support/bitir.py +38 -38
- ccxt/async_support/bitmart.py +1288 -350
- ccxt/async_support/bitmex.py +260 -75
- ccxt/async_support/bitopro.py +262 -62
- ccxt/async_support/bitpin.py +17 -16
- ccxt/async_support/bitrue.py +459 -290
- ccxt/async_support/bitso.py +199 -54
- ccxt/async_support/bitstamp.py +230 -96
- ccxt/async_support/bitteam.py +167 -25
- ccxt/async_support/{huobijp.py → bittrade.py} +158 -30
- ccxt/async_support/bitvavo.py +213 -49
- ccxt/async_support/blockchaincom.py +160 -46
- ccxt/async_support/blofin.py +502 -120
- ccxt/async_support/btcalpha.py +169 -31
- ccxt/async_support/btcbox.py +292 -23
- ccxt/async_support/btcmarkets.py +211 -58
- ccxt/async_support/btcturk.py +161 -38
- ccxt/async_support/bybit.py +1775 -1030
- ccxt/async_support/cex.py +1440 -1303
- ccxt/async_support/coinbase.py +724 -212
- ccxt/async_support/coinbaseadvanced.py +2 -1
- ccxt/async_support/coinbaseexchange.py +388 -89
- ccxt/async_support/coinbaseinternational.py +412 -57
- ccxt/async_support/coincatch.py +177 -78
- ccxt/async_support/coincheck.py +135 -19
- ccxt/async_support/coinex.py +606 -232
- ccxt/async_support/coinmate.py +189 -63
- ccxt/async_support/coinmetro.py +195 -54
- ccxt/async_support/coinone.py +158 -51
- ccxt/async_support/coinsph.py +336 -61
- ccxt/async_support/coinspot.py +151 -52
- ccxt/async_support/cryptocom.py +661 -111
- ccxt/async_support/cryptomus.py +1137 -0
- ccxt/async_support/defx.py +2071 -0
- ccxt/async_support/delta.py +299 -99
- ccxt/async_support/deribit.py +348 -126
- ccxt/async_support/derive.py +2572 -0
- ccxt/async_support/digifinex.py +430 -214
- ccxt/async_support/ellipx.py +2029 -0
- ccxt/async_support/eterex.py +10 -10
- ccxt/async_support/excoino.py +31 -31
- ccxt/async_support/exir.py +14 -14
- ccxt/async_support/exmo.py +344 -131
- ccxt/async_support/exnovin.py +10 -10
- ccxt/async_support/farhadexchange.py +12 -12
- ccxt/async_support/fmfwio.py +2 -1
- ccxt/async_support/foxbit.py +1935 -0
- ccxt/async_support/gate.py +1351 -529
- ccxt/async_support/gateio.py +2 -1
- ccxt/async_support/gemini.py +144 -39
- ccxt/async_support/hashkey.py +152 -109
- ccxt/async_support/hibachi.py +2080 -0
- ccxt/async_support/hitbtc.py +395 -167
- ccxt/async_support/hitobit.py +12 -12
- ccxt/async_support/hollaex.py +307 -119
- ccxt/async_support/htx.py +851 -383
- ccxt/async_support/huobi.py +2 -1
- ccxt/async_support/hyperliquid.py +1848 -536
- ccxt/async_support/independentreserve.py +288 -15
- ccxt/async_support/indodax.py +190 -33
- ccxt/async_support/jibitex.py +12 -12
- ccxt/async_support/kraken.py +795 -351
- ccxt/async_support/krakenfutures.py +214 -62
- ccxt/async_support/kucoin.py +715 -396
- ccxt/async_support/kucoinfutures.py +652 -89
- ccxt/async_support/latoken.py +217 -113
- ccxt/async_support/lbank.py +425 -97
- ccxt/async_support/luno.py +382 -35
- ccxt/async_support/mercado.py +113 -6
- ccxt/async_support/mexc.py +874 -437
- ccxt/async_support/modetrade.py +2818 -0
- ccxt/async_support/myokx.py +54 -0
- ccxt/async_support/ndax.py +221 -64
- ccxt/async_support/nobitex.py +31 -37
- ccxt/async_support/novadax.py +190 -34
- ccxt/async_support/oceanex.py +217 -28
- ccxt/async_support/okcoin.py +253 -145
- ccxt/async_support/okexchange.py +11 -11
- ccxt/async_support/okx.py +1088 -351
- ccxt/async_support/okxus.py +54 -0
- ccxt/async_support/ompfinex.py +25 -24
- ccxt/async_support/onetrading.py +213 -392
- ccxt/async_support/oxfun.py +245 -166
- ccxt/async_support/p2b.py +151 -29
- ccxt/async_support/paradex.py +562 -49
- ccxt/async_support/paymium.py +82 -19
- ccxt/async_support/phemex.py +713 -172
- ccxt/async_support/poloniex.py +1602 -283
- ccxt/async_support/probit.py +224 -95
- ccxt/async_support/ramzinex.py +30 -27
- ccxt/async_support/sarmayex.py +9 -9
- ccxt/async_support/sarrafex.py +13 -13
- ccxt/async_support/tabdeal.py +14 -13
- ccxt/async_support/tetherland.py +9 -9
- ccxt/async_support/timex.py +210 -51
- ccxt/async_support/tokocrypto.py +167 -47
- ccxt/async_support/tradeogre.py +266 -31
- ccxt/async_support/twox.py +9 -9
- ccxt/async_support/ubitex.py +12 -12
- ccxt/async_support/upbit.py +568 -165
- ccxt/async_support/vertex.py +160 -32
- ccxt/async_support/wallex.py +12 -12
- ccxt/async_support/wavesexchange.py +165 -30
- ccxt/async_support/whitebit.py +975 -127
- ccxt/async_support/woo.py +1918 -1016
- ccxt/async_support/woofipro.py +433 -141
- ccxt/async_support/xt.py +649 -193
- ccxt/async_support/yobit.py +195 -70
- ccxt/async_support/zaif.py +91 -15
- ccxt/async_support/zonda.py +151 -36
- ccxt/base/decimal_to_precision.py +14 -10
- ccxt/base/errors.py +49 -18
- ccxt/base/exchange.py +1556 -450
- ccxt/base/precise.py +10 -0
- ccxt/base/types.py +114 -6
- ccxt/bequant.py +5 -3
- ccxt/bigone.py +279 -144
- ccxt/binance.py +2347 -1158
- ccxt/binancecoinm.py +9 -3
- ccxt/binanceus.py +17 -3
- ccxt/binanceusdm.py +9 -4
- ccxt/bingx.py +2962 -920
- ccxt/bit2c.py +147 -27
- ccxt/bitbank.py +151 -23
- ccxt/bitbns.py +104 -30
- ccxt/bitfinex.py +3290 -1113
- ccxt/bitflyer.py +202 -27
- ccxt/bitget.py +3683 -1538
- ccxt/bithumb.py +194 -38
- ccxt/bitimen.py +9 -9
- ccxt/bitir.py +35 -35
- ccxt/bitmart.py +1288 -350
- ccxt/bitmex.py +260 -75
- ccxt/bitopro.py +262 -62
- ccxt/bitpin.py +15 -14
- ccxt/bitrue.py +459 -290
- ccxt/bitso.py +199 -54
- ccxt/bitstamp.py +230 -96
- ccxt/bitteam.py +167 -25
- ccxt/{huobijp.py → bittrade.py} +158 -30
- ccxt/bitvavo.py +213 -49
- ccxt/blockchaincom.py +160 -46
- ccxt/blofin.py +502 -120
- ccxt/btcalpha.py +169 -31
- ccxt/btcbox.py +291 -23
- ccxt/btcmarkets.py +211 -58
- ccxt/btcturk.py +161 -38
- ccxt/bybit.py +1775 -1030
- ccxt/cex.py +1439 -1303
- ccxt/coinbase.py +724 -212
- ccxt/coinbaseadvanced.py +2 -1
- ccxt/coinbaseexchange.py +388 -89
- ccxt/coinbaseinternational.py +412 -57
- ccxt/coincatch.py +177 -78
- ccxt/coincheck.py +135 -19
- ccxt/coinex.py +606 -232
- ccxt/coinmate.py +189 -63
- ccxt/coinmetro.py +194 -54
- ccxt/coinone.py +158 -51
- ccxt/coinsph.py +336 -61
- ccxt/coinspot.py +151 -52
- ccxt/cryptocom.py +661 -111
- ccxt/cryptomus.py +1137 -0
- ccxt/defx.py +2070 -0
- ccxt/delta.py +299 -99
- ccxt/deribit.py +348 -126
- ccxt/derive.py +2571 -0
- ccxt/digifinex.py +430 -214
- ccxt/ellipx.py +2029 -0
- ccxt/eterex.py +7 -7
- ccxt/excoino.py +29 -29
- ccxt/exir.py +11 -11
- ccxt/exmo.py +343 -131
- ccxt/exnovin.py +8 -8
- ccxt/farhadexchange.py +10 -10
- ccxt/fmfwio.py +2 -1
- ccxt/foxbit.py +1935 -0
- ccxt/gate.py +1351 -529
- ccxt/gateio.py +2 -1
- ccxt/gemini.py +144 -39
- ccxt/hashkey.py +152 -109
- ccxt/hibachi.py +2079 -0
- ccxt/hitbtc.py +395 -167
- ccxt/hitobit.py +9 -9
- ccxt/hollaex.py +307 -119
- ccxt/htx.py +851 -383
- ccxt/huobi.py +2 -1
- ccxt/hyperliquid.py +1848 -536
- ccxt/independentreserve.py +287 -15
- ccxt/indodax.py +190 -33
- ccxt/jibitex.py +9 -9
- ccxt/kraken.py +794 -351
- ccxt/krakenfutures.py +214 -62
- ccxt/kucoin.py +715 -396
- ccxt/kucoinfutures.py +652 -89
- ccxt/latoken.py +217 -113
- ccxt/lbank.py +425 -97
- ccxt/luno.py +382 -35
- ccxt/mercado.py +113 -6
- ccxt/mexc.py +873 -437
- ccxt/modetrade.py +2818 -0
- ccxt/myokx.py +54 -0
- ccxt/ndax.py +221 -64
- ccxt/nobitex.py +29 -35
- ccxt/novadax.py +190 -34
- ccxt/oceanex.py +217 -28
- ccxt/okcoin.py +253 -145
- ccxt/okexchange.py +9 -9
- ccxt/okx.py +1088 -351
- ccxt/okxus.py +54 -0
- ccxt/ompfinex.py +22 -21
- ccxt/onetrading.py +213 -392
- ccxt/oxfun.py +245 -166
- ccxt/p2b.py +151 -29
- ccxt/paradex.py +562 -49
- ccxt/paymium.py +82 -19
- ccxt/phemex.py +712 -172
- ccxt/poloniex.py +1601 -283
- ccxt/pro/__init__.py +76 -17
- ccxt/pro/alpaca.py +21 -6
- ccxt/pro/apex.py +984 -0
- ccxt/pro/ascendex.py +58 -10
- ccxt/pro/bequant.py +6 -1
- ccxt/pro/binance.py +728 -156
- ccxt/pro/binancecoinm.py +6 -2
- ccxt/pro/binanceus.py +8 -4
- ccxt/pro/binanceusdm.py +7 -2
- ccxt/pro/bingx.py +333 -142
- ccxt/pro/bitfinex.py +727 -262
- ccxt/pro/bitget.py +570 -79
- ccxt/pro/bithumb.py +20 -6
- ccxt/pro/bitmart.py +216 -87
- ccxt/pro/bitmex.py +47 -9
- ccxt/pro/bitopro.py +26 -14
- ccxt/pro/bitrue.py +22 -22
- ccxt/pro/bitstamp.py +54 -21
- ccxt/pro/{huobijp.py → bittrade.py} +7 -6
- ccxt/pro/bitvavo.py +191 -67
- ccxt/pro/blockchaincom.py +21 -8
- ccxt/pro/blofin.py +9 -1
- ccxt/pro/bybit.py +632 -245
- ccxt/pro/cex.py +59 -24
- ccxt/pro/coinbase.py +102 -73
- ccxt/pro/coinbaseadvanced.py +2 -1
- ccxt/pro/coinbaseexchange.py +8 -8
- ccxt/pro/coinbaseinternational.py +181 -25
- ccxt/pro/coincatch.py +6 -7
- ccxt/pro/coincheck.py +11 -6
- ccxt/pro/coinex.py +967 -665
- ccxt/pro/coinone.py +16 -9
- ccxt/pro/cryptocom.py +448 -45
- ccxt/pro/defx.py +831 -0
- ccxt/pro/deribit.py +150 -14
- ccxt/pro/derive.py +704 -0
- ccxt/pro/exmo.py +239 -6
- ccxt/pro/gate.py +623 -65
- ccxt/pro/gateio.py +2 -1
- ccxt/pro/gemini.py +27 -11
- ccxt/pro/hashkey.py +2 -2
- ccxt/pro/hitbtc.py +196 -91
- ccxt/pro/hollaex.py +23 -7
- ccxt/pro/htx.py +51 -14
- ccxt/pro/huobi.py +2 -1
- ccxt/pro/hyperliquid.py +591 -27
- ccxt/pro/independentreserve.py +9 -6
- ccxt/pro/kraken.py +640 -320
- ccxt/pro/krakenfutures.py +62 -35
- ccxt/pro/kucoin.py +267 -46
- ccxt/pro/kucoinfutures.py +165 -21
- ccxt/pro/lbank.py +102 -21
- ccxt/pro/luno.py +12 -8
- ccxt/pro/mexc.py +877 -111
- ccxt/pro/modetrade.py +1271 -0
- ccxt/pro/myokx.py +38 -0
- ccxt/pro/ndax.py +15 -2
- ccxt/pro/okcoin.py +23 -4
- ccxt/pro/okx.py +573 -98
- ccxt/pro/okxus.py +38 -0
- ccxt/pro/onetrading.py +30 -13
- ccxt/pro/oxfun.py +131 -27
- ccxt/pro/p2b.py +88 -22
- ccxt/pro/paradex.py +3 -3
- ccxt/pro/phemex.py +75 -21
- ccxt/pro/poloniex.py +124 -41
- ccxt/pro/probit.py +87 -80
- ccxt/pro/tradeogre.py +272 -0
- ccxt/pro/upbit.py +152 -12
- ccxt/pro/vertex.py +8 -3
- ccxt/pro/whitebit.py +58 -5
- ccxt/pro/woo.py +228 -37
- ccxt/pro/woofipro.py +106 -18
- ccxt/pro/xt.py +111 -5
- ccxt/probit.py +224 -95
- ccxt/protobuf/__init__.py +0 -0
- ccxt/protobuf/mexc/PrivateAccountV3Api_pb2.py +37 -0
- ccxt/protobuf/mexc/PrivateDealsV3Api_pb2.py +37 -0
- ccxt/protobuf/mexc/PrivateOrdersV3Api_pb2.py +37 -0
- ccxt/protobuf/mexc/PublicAggreBookTickerV3Api_pb2.py +37 -0
- ccxt/protobuf/mexc/PublicAggreDealsV3Api_pb2.py +39 -0
- ccxt/protobuf/mexc/PublicAggreDepthsV3Api_pb2.py +39 -0
- ccxt/protobuf/mexc/PublicBookTickerBatchV3Api_pb2.py +38 -0
- ccxt/protobuf/mexc/PublicBookTickerV3Api_pb2.py +37 -0
- ccxt/protobuf/mexc/PublicDealsV3Api_pb2.py +39 -0
- ccxt/protobuf/mexc/PublicIncreaseDepthsBatchV3Api_pb2.py +38 -0
- ccxt/protobuf/mexc/PublicIncreaseDepthsV3Api_pb2.py +39 -0
- ccxt/protobuf/mexc/PublicLimitDepthsV3Api_pb2.py +39 -0
- ccxt/protobuf/mexc/PublicMiniTickerV3Api_pb2.py +37 -0
- ccxt/protobuf/mexc/PublicMiniTickersV3Api_pb2.py +38 -0
- ccxt/protobuf/mexc/PublicSpotKlineV3Api_pb2.py +37 -0
- ccxt/protobuf/mexc/PushDataV3ApiWrapper_pb2.py +52 -0
- ccxt/protobuf/mexc/__init__.py +0 -0
- ccxt/ramzinex.py +28 -25
- ccxt/sarmayex.py +7 -7
- ccxt/sarrafex.py +10 -10
- ccxt/static_dependencies/__init__.py +1 -1
- ccxt/static_dependencies/lark/py.typed +0 -0
- ccxt/static_dependencies/marshmallow/py.typed +0 -0
- ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
- ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
- ccxt/tabdeal.py +12 -11
- ccxt/test/tests_async.py +261 -57
- ccxt/test/tests_helpers.py +1 -3
- ccxt/test/tests_init.py +4 -3
- ccxt/test/tests_sync.py +261 -57
- ccxt/tetherland.py +7 -7
- ccxt/timex.py +210 -51
- ccxt/tokocrypto.py +167 -47
- ccxt/tradeogre.py +266 -31
- ccxt/twox.py +7 -7
- ccxt/ubitex.py +9 -9
- ccxt/upbit.py +568 -165
- ccxt/vertex.py +160 -32
- ccxt/wallex.py +9 -9
- ccxt/wavesexchange.py +165 -30
- ccxt/whitebit.py +975 -127
- ccxt/woo.py +1917 -1016
- ccxt/woofipro.py +432 -141
- ccxt/xt.py +649 -193
- ccxt/yobit.py +194 -70
- ccxt/zaif.py +91 -15
- ccxt/zonda.py +151 -36
- {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info}/METADATA +225 -73
- ccxt_ir-4.5.0.dist-info/RECORD +743 -0
- {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info}/WHEEL +1 -1
- ccxt/abstract/ace.py +0 -15
- ccxt/abstract/bitbay.py +0 -53
- ccxt/abstract/bitcoincom.py +0 -115
- ccxt/abstract/bitfinex2.py +0 -139
- ccxt/abstract/bitpanda.py +0 -35
- ccxt/abstract/bl3p.py +0 -19
- ccxt/abstract/coinlist.py +0 -54
- ccxt/abstract/currencycom.py +0 -68
- ccxt/abstract/hitbtc3.py +0 -115
- ccxt/abstract/idex.py +0 -26
- ccxt/abstract/kuna.py +0 -182
- ccxt/abstract/lykke.py +0 -29
- ccxt/abstract/poloniexfutures.py +0 -48
- ccxt/abstract/wazirx.py +0 -30
- ccxt/ace.py +0 -1012
- ccxt/async_support/ace.py +0 -1012
- ccxt/async_support/base/ws/aiohttp_client.py +0 -125
- ccxt/async_support/base/ws/fast_client.py +0 -96
- ccxt/async_support/bitbay.py +0 -17
- ccxt/async_support/bitcoincom.py +0 -17
- ccxt/async_support/bitfinex2.py +0 -3552
- ccxt/async_support/bitpanda.py +0 -16
- ccxt/async_support/bl3p.py +0 -485
- ccxt/async_support/coinlist.py +0 -2243
- ccxt/async_support/currencycom.py +0 -1950
- ccxt/async_support/hitbtc3.py +0 -16
- ccxt/async_support/idex.py +0 -1766
- ccxt/async_support/kuna.py +0 -1841
- ccxt/async_support/lykke.py +0 -1270
- ccxt/async_support/poloniexfutures.py +0 -1717
- ccxt/async_support/wazirx.py +0 -1224
- ccxt/bitbay.py +0 -17
- ccxt/bitcoincom.py +0 -17
- ccxt/bitfinex2.py +0 -3552
- ccxt/bitpanda.py +0 -16
- ccxt/bl3p.py +0 -485
- ccxt/coinlist.py +0 -2243
- ccxt/currencycom.py +0 -1950
- ccxt/hitbtc3.py +0 -16
- ccxt/idex.py +0 -1766
- ccxt/kuna.py +0 -1841
- ccxt/lykke.py +0 -1270
- ccxt/poloniexfutures.py +0 -1717
- ccxt/pro/bitcoincom.py +0 -34
- ccxt/pro/bitfinex2.py +0 -1083
- ccxt/pro/bitpanda.py +0 -15
- ccxt/pro/currencycom.py +0 -536
- ccxt/pro/idex.py +0 -672
- ccxt/pro/poloniexfutures.py +0 -990
- ccxt/pro/wazirx.py +0 -749
- ccxt/test/base/__init__.py +0 -29
- ccxt/test/base/test_account.py +0 -26
- ccxt/test/base/test_balance.py +0 -56
- ccxt/test/base/test_borrow_interest.py +0 -35
- ccxt/test/base/test_borrow_rate.py +0 -32
- ccxt/test/base/test_calculate_fee.py +0 -51
- ccxt/test/base/test_crypto.py +0 -127
- ccxt/test/base/test_currency.py +0 -76
- ccxt/test/base/test_datetime.py +0 -109
- ccxt/test/base/test_decimal_to_precision.py +0 -392
- ccxt/test/base/test_deep_extend.py +0 -68
- ccxt/test/base/test_deposit_withdrawal.py +0 -50
- ccxt/test/base/test_exchange_datetime_functions.py +0 -76
- ccxt/test/base/test_funding_rate_history.py +0 -29
- ccxt/test/base/test_last_price.py +0 -31
- ccxt/test/base/test_ledger_entry.py +0 -45
- ccxt/test/base/test_ledger_item.py +0 -48
- ccxt/test/base/test_leverage_tier.py +0 -33
- ccxt/test/base/test_liquidation.py +0 -50
- ccxt/test/base/test_margin_mode.py +0 -24
- ccxt/test/base/test_margin_modification.py +0 -35
- ccxt/test/base/test_market.py +0 -193
- ccxt/test/base/test_number.py +0 -411
- ccxt/test/base/test_ohlcv.py +0 -33
- ccxt/test/base/test_open_interest.py +0 -32
- ccxt/test/base/test_order.py +0 -64
- ccxt/test/base/test_order_book.py +0 -69
- ccxt/test/base/test_position.py +0 -60
- ccxt/test/base/test_shared_methods.py +0 -353
- ccxt/test/base/test_status.py +0 -24
- ccxt/test/base/test_throttle.py +0 -126
- ccxt/test/base/test_ticker.py +0 -92
- ccxt/test/base/test_trade.py +0 -47
- ccxt/test/base/test_trading_fee.py +0 -26
- ccxt/test/base/test_transaction.py +0 -39
- ccxt/test/test_async.py +0 -1649
- ccxt/test/test_sync.py +0 -1648
- ccxt/wazirx.py +0 -1224
- ccxt_ir-4.3.46.0.2.dist-info/RECORD +0 -772
- /ccxt/abstract/{huobijp.py → bittrade.py} +0 -0
- {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info/licenses}/LICENSE.txt +0 -0
- {ccxt_ir-4.3.46.0.2.dist-info → ccxt_ir-4.5.0.dist-info}/top_level.txt +0 -0
ccxt/async_support/coinspot.py
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
|
7
7
|
from ccxt.abstract.coinspot import ImplicitAPI
|
|
8
8
|
import hashlib
|
|
9
|
-
from ccxt.base.types import Balances, Int, Market, Num, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
|
|
9
|
+
from ccxt.base.types import Any, Balances, Int, Market, Num, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade
|
|
10
10
|
from typing import List
|
|
11
11
|
from ccxt.base.errors import ExchangeError
|
|
12
12
|
from ccxt.base.errors import ArgumentsRequired
|
|
@@ -16,7 +16,7 @@ from ccxt.base.precise import Precise
|
|
|
16
16
|
|
|
17
17
|
class coinspot(Exchange, ImplicitAPI):
|
|
18
18
|
|
|
19
|
-
def describe(self):
|
|
19
|
+
def describe(self) -> Any:
|
|
20
20
|
return self.deep_extend(super(coinspot, self).describe(), {
|
|
21
21
|
'id': 'coinspot',
|
|
22
22
|
'name': 'CoinSpot',
|
|
@@ -31,33 +31,61 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
31
31
|
'future': False,
|
|
32
32
|
'option': False,
|
|
33
33
|
'addMargin': False,
|
|
34
|
+
'borrowCrossMargin': False,
|
|
35
|
+
'borrowIsolatedMargin': False,
|
|
36
|
+
'borrowMargin': False,
|
|
34
37
|
'cancelOrder': True,
|
|
35
38
|
'closeAllPositions': False,
|
|
36
39
|
'closePosition': False,
|
|
37
40
|
'createMarketOrder': False,
|
|
38
41
|
'createOrder': True,
|
|
42
|
+
'createOrderWithTakeProfitAndStopLoss': False,
|
|
43
|
+
'createOrderWithTakeProfitAndStopLossWs': False,
|
|
44
|
+
'createPostOnlyOrder': False,
|
|
39
45
|
'createReduceOnlyOrder': False,
|
|
40
46
|
'createStopLimitOrder': False,
|
|
41
47
|
'createStopMarketOrder': False,
|
|
42
48
|
'createStopOrder': False,
|
|
43
49
|
'fetchBalance': True,
|
|
50
|
+
'fetchBorrowInterest': False,
|
|
51
|
+
'fetchBorrowRate': False,
|
|
44
52
|
'fetchBorrowRateHistories': False,
|
|
45
53
|
'fetchBorrowRateHistory': False,
|
|
54
|
+
'fetchBorrowRates': False,
|
|
55
|
+
'fetchBorrowRatesPerSymbol': False,
|
|
46
56
|
'fetchCrossBorrowRate': False,
|
|
47
57
|
'fetchCrossBorrowRates': False,
|
|
48
58
|
'fetchFundingHistory': False,
|
|
59
|
+
'fetchFundingInterval': False,
|
|
60
|
+
'fetchFundingIntervals': False,
|
|
49
61
|
'fetchFundingRate': False,
|
|
50
62
|
'fetchFundingRateHistory': False,
|
|
51
63
|
'fetchFundingRates': False,
|
|
64
|
+
'fetchGreeks': False,
|
|
52
65
|
'fetchIndexOHLCV': False,
|
|
53
66
|
'fetchIsolatedBorrowRate': False,
|
|
54
67
|
'fetchIsolatedBorrowRates': False,
|
|
68
|
+
'fetchIsolatedPositions': False,
|
|
55
69
|
'fetchLeverage': False,
|
|
70
|
+
'fetchLeverages': False,
|
|
56
71
|
'fetchLeverageTiers': False,
|
|
72
|
+
'fetchLiquidations': False,
|
|
73
|
+
'fetchLongShortRatio': False,
|
|
74
|
+
'fetchLongShortRatioHistory': False,
|
|
75
|
+
'fetchMarginAdjustmentHistory': False,
|
|
57
76
|
'fetchMarginMode': False,
|
|
77
|
+
'fetchMarginModes': False,
|
|
78
|
+
'fetchMarketLeverageTiers': False,
|
|
58
79
|
'fetchMarkOHLCV': False,
|
|
80
|
+
'fetchMarkPrices': False,
|
|
81
|
+
'fetchMyLiquidations': False,
|
|
82
|
+
'fetchMySettlementHistory': False,
|
|
59
83
|
'fetchMyTrades': True,
|
|
84
|
+
'fetchOpenInterest': False,
|
|
60
85
|
'fetchOpenInterestHistory': False,
|
|
86
|
+
'fetchOpenInterests': False,
|
|
87
|
+
'fetchOption': False,
|
|
88
|
+
'fetchOptionChain': False,
|
|
61
89
|
'fetchOrderBook': True,
|
|
62
90
|
'fetchPosition': False,
|
|
63
91
|
'fetchPositionHistory': False,
|
|
@@ -67,13 +95,19 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
67
95
|
'fetchPositionsHistory': False,
|
|
68
96
|
'fetchPositionsRisk': False,
|
|
69
97
|
'fetchPremiumIndexOHLCV': False,
|
|
98
|
+
'fetchSettlementHistory': False,
|
|
70
99
|
'fetchTicker': True,
|
|
71
100
|
'fetchTickers': True,
|
|
72
101
|
'fetchTrades': True,
|
|
73
102
|
'fetchTradingFee': False,
|
|
74
103
|
'fetchTradingFees': False,
|
|
104
|
+
'fetchVolatilityHistory': False,
|
|
75
105
|
'reduceMargin': False,
|
|
106
|
+
'repayCrossMargin': False,
|
|
107
|
+
'repayIsolatedMargin': False,
|
|
108
|
+
'repayMargin': False,
|
|
76
109
|
'setLeverage': False,
|
|
110
|
+
'setMargin': False,
|
|
77
111
|
'setMarginMode': False,
|
|
78
112
|
'setPositionMode': False,
|
|
79
113
|
'ws': False,
|
|
@@ -144,6 +178,54 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
144
178
|
'options': {
|
|
145
179
|
'fetchBalance': 'private_post_my_balances',
|
|
146
180
|
},
|
|
181
|
+
'features': {
|
|
182
|
+
'spot': {
|
|
183
|
+
'sandbox': False,
|
|
184
|
+
'createOrder': {
|
|
185
|
+
'marginMode': False,
|
|
186
|
+
'triggerPrice': False,
|
|
187
|
+
'triggerPriceType': None,
|
|
188
|
+
'triggerDirection': False,
|
|
189
|
+
'stopLossPrice': False,
|
|
190
|
+
'takeProfitPrice': False,
|
|
191
|
+
'attachedStopLossTakeProfit': None,
|
|
192
|
+
'timeInForce': {
|
|
193
|
+
'IOC': False,
|
|
194
|
+
'FOK': False,
|
|
195
|
+
'PO': False,
|
|
196
|
+
'GTD': False,
|
|
197
|
+
},
|
|
198
|
+
'hedged': False,
|
|
199
|
+
'trailing': False,
|
|
200
|
+
'leverage': False,
|
|
201
|
+
'marketBuyByCost': False,
|
|
202
|
+
'marketBuyRequiresPrice': False,
|
|
203
|
+
'selfTradePrevention': False,
|
|
204
|
+
'iceberg': False,
|
|
205
|
+
},
|
|
206
|
+
'createOrders': None,
|
|
207
|
+
'fetchMyTrades': {
|
|
208
|
+
'marginMode': False,
|
|
209
|
+
'limit': None,
|
|
210
|
+
'daysBack': 100000,
|
|
211
|
+
'untilDays': 100000, # todo implement
|
|
212
|
+
'symbolRequired': False,
|
|
213
|
+
},
|
|
214
|
+
'fetchOrder': None,
|
|
215
|
+
'fetchOpenOrders': None, # todo implement
|
|
216
|
+
'fetchOrders': None,
|
|
217
|
+
'fetchClosedOrders': None, # todo implement
|
|
218
|
+
'fetchOHLCV': None,
|
|
219
|
+
},
|
|
220
|
+
'swap': {
|
|
221
|
+
'linear': None,
|
|
222
|
+
'inverse': None,
|
|
223
|
+
},
|
|
224
|
+
'future': {
|
|
225
|
+
'linear': None,
|
|
226
|
+
'inverse': None,
|
|
227
|
+
},
|
|
228
|
+
},
|
|
147
229
|
'precisionMode': TICK_SIZE,
|
|
148
230
|
})
|
|
149
231
|
|
|
@@ -174,7 +256,9 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
174
256
|
async def fetch_balance(self, params={}) -> Balances:
|
|
175
257
|
"""
|
|
176
258
|
query for balance and get the amount of funds available for trading or funds locked in orders
|
|
177
|
-
|
|
259
|
+
|
|
260
|
+
https://www.coinspot.com.au/api#listmybalance
|
|
261
|
+
|
|
178
262
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
179
263
|
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
|
|
180
264
|
"""
|
|
@@ -202,7 +286,9 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
202
286
|
async def fetch_order_book(self, symbol: str, limit: Int = None, params={}) -> OrderBook:
|
|
203
287
|
"""
|
|
204
288
|
fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
|
|
205
|
-
|
|
289
|
+
|
|
290
|
+
https://www.coinspot.com.au/api#listopenorders
|
|
291
|
+
|
|
206
292
|
:param str symbol: unified symbol of the market to fetch the order book for
|
|
207
293
|
:param int [limit]: the maximum amount of order book entries to return
|
|
208
294
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
@@ -254,7 +340,9 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
254
340
|
async def fetch_ticker(self, symbol: str, params={}) -> Ticker:
|
|
255
341
|
"""
|
|
256
342
|
fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
257
|
-
|
|
343
|
+
|
|
344
|
+
https://www.coinspot.com.au/api#latestprices
|
|
345
|
+
|
|
258
346
|
:param str symbol: unified symbol of the market to fetch the ticker for
|
|
259
347
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
260
348
|
:returns dict: a `ticker structure <https://docs.ccxt.com/#/?id=ticker-structure>`
|
|
@@ -264,7 +352,7 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
264
352
|
response = await self.publicGetLatest(params)
|
|
265
353
|
id = market['id']
|
|
266
354
|
id = id.lower()
|
|
267
|
-
prices = self.
|
|
355
|
+
prices = self.safe_dict(response, 'prices', {})
|
|
268
356
|
#
|
|
269
357
|
# {
|
|
270
358
|
# "status":"ok",
|
|
@@ -283,7 +371,9 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
283
371
|
async def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
|
|
284
372
|
"""
|
|
285
373
|
fetches price tickers for multiple markets, statistical information calculated over the past 24 hours for each market
|
|
286
|
-
|
|
374
|
+
|
|
375
|
+
https://www.coinspot.com.au/api#latestprices
|
|
376
|
+
|
|
287
377
|
:param str[]|None symbols: unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
|
288
378
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
289
379
|
:returns dict: a dictionary of `ticker structures <https://docs.ccxt.com/#/?id=ticker-structure>`
|
|
@@ -293,22 +383,22 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
293
383
|
#
|
|
294
384
|
# {
|
|
295
385
|
# "status": "ok",
|
|
296
|
-
# "prices":
|
|
297
|
-
#
|
|
298
|
-
#
|
|
299
|
-
#
|
|
300
|
-
#
|
|
301
|
-
#
|
|
302
|
-
#
|
|
303
|
-
#
|
|
304
|
-
#
|
|
305
|
-
#
|
|
386
|
+
# "prices": {
|
|
387
|
+
# "btc": {
|
|
388
|
+
# "bid": "25050",
|
|
389
|
+
# "ask": "25370",
|
|
390
|
+
# "last": "25234"
|
|
391
|
+
# },
|
|
392
|
+
# "ltc": {
|
|
393
|
+
# "bid": "79.39192993",
|
|
394
|
+
# "ask": "87.98",
|
|
395
|
+
# "last": "87.95"
|
|
396
|
+
# }
|
|
306
397
|
# }
|
|
307
|
-
# }
|
|
308
398
|
# }
|
|
309
399
|
#
|
|
310
400
|
result: dict = {}
|
|
311
|
-
prices = self.
|
|
401
|
+
prices = self.safe_dict(response, 'prices', {})
|
|
312
402
|
ids = list(prices.keys())
|
|
313
403
|
for i in range(0, len(ids)):
|
|
314
404
|
id = ids[i]
|
|
@@ -322,7 +412,9 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
322
412
|
async def fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={}) -> List[Trade]:
|
|
323
413
|
"""
|
|
324
414
|
get the list of most recent trades for a particular symbol
|
|
325
|
-
|
|
415
|
+
|
|
416
|
+
https://www.coinspot.com.au/api#orderhistory
|
|
417
|
+
|
|
326
418
|
:param str symbol: unified symbol of the market to fetch trades for
|
|
327
419
|
:param int [since]: timestamp in ms of the earliest trade to fetch
|
|
328
420
|
:param int [limit]: the maximum amount of trades to fetch
|
|
@@ -349,7 +441,9 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
349
441
|
async def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
|
350
442
|
"""
|
|
351
443
|
fetch all trades made by the user
|
|
352
|
-
|
|
444
|
+
|
|
445
|
+
https://www.coinspot.com.au/api#rotransaction
|
|
446
|
+
|
|
353
447
|
:param str symbol: unified market symbol
|
|
354
448
|
:param int [since]: the earliest time in ms to fetch trades for
|
|
355
449
|
:param int [limit]: the maximum number of trades structures to retrieve
|
|
@@ -365,35 +459,35 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
365
459
|
request['startdate'] = self.yyyymmdd(since)
|
|
366
460
|
response = await self.privatePostRoMyTransactions(self.extend(request, params))
|
|
367
461
|
# {
|
|
368
|
-
#
|
|
369
|
-
#
|
|
370
|
-
#
|
|
371
|
-
#
|
|
372
|
-
#
|
|
373
|
-
#
|
|
374
|
-
#
|
|
375
|
-
#
|
|
376
|
-
#
|
|
377
|
-
#
|
|
378
|
-
#
|
|
379
|
-
#
|
|
380
|
-
#
|
|
381
|
-
#
|
|
382
|
-
#
|
|
383
|
-
#
|
|
384
|
-
#
|
|
385
|
-
#
|
|
386
|
-
#
|
|
387
|
-
#
|
|
388
|
-
#
|
|
389
|
-
#
|
|
390
|
-
#
|
|
391
|
-
#
|
|
462
|
+
# "status": "ok",
|
|
463
|
+
# "buyorders": [
|
|
464
|
+
# {
|
|
465
|
+
# "otc": False,
|
|
466
|
+
# "market": "ALGO/AUD",
|
|
467
|
+
# "amount": 386.95197925,
|
|
468
|
+
# "created": "2022-10-20T09:56:44.502Z",
|
|
469
|
+
# "audfeeExGst": 1.80018002,
|
|
470
|
+
# "audGst": 0.180018,
|
|
471
|
+
# "audtotal": 200
|
|
472
|
+
# },
|
|
473
|
+
# ],
|
|
474
|
+
# "sellorders": [
|
|
475
|
+
# {
|
|
476
|
+
# "otc": False,
|
|
477
|
+
# "market": "SOLO/ALGO",
|
|
478
|
+
# "amount": 154.52345614,
|
|
479
|
+
# "total": 115.78858204658796,
|
|
480
|
+
# "created": "2022-04-16T09:36:43.698Z",
|
|
481
|
+
# "audfeeExGst": 1.08995731,
|
|
482
|
+
# "audGst": 0.10899573,
|
|
483
|
+
# "audtotal": 118.7
|
|
484
|
+
# },
|
|
485
|
+
# ]
|
|
392
486
|
# }
|
|
393
|
-
buyTrades = self.
|
|
487
|
+
buyTrades = self.safe_list(response, 'buyorders', [])
|
|
394
488
|
for i in range(0, len(buyTrades)):
|
|
395
489
|
buyTrades[i]['side'] = 'buy'
|
|
396
|
-
sellTrades = self.
|
|
490
|
+
sellTrades = self.safe_list(response, 'sellorders', [])
|
|
397
491
|
for i in range(0, len(sellTrades)):
|
|
398
492
|
sellTrades[i]['side'] = 'sell'
|
|
399
493
|
trades = self.array_concat(buyTrades, sellTrades)
|
|
@@ -470,12 +564,14 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
470
564
|
async def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
|
|
471
565
|
"""
|
|
472
566
|
create a trade order
|
|
473
|
-
|
|
567
|
+
|
|
568
|
+
https://www.coinspot.com.au/api#placebuyorder
|
|
569
|
+
|
|
474
570
|
:param str symbol: unified symbol of the market to create an order in
|
|
475
571
|
:param str type: must be 'limit'
|
|
476
572
|
:param str side: 'buy' or 'sell'
|
|
477
573
|
:param float amount: how much of currency you want to trade in units of base currency
|
|
478
|
-
:param float [price]: the price at which the order is to be
|
|
574
|
+
:param float [price]: the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
|
|
479
575
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
480
576
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
|
481
577
|
"""
|
|
@@ -489,13 +585,16 @@ class coinspot(Exchange, ImplicitAPI):
|
|
|
489
585
|
'amount': amount,
|
|
490
586
|
'rate': price,
|
|
491
587
|
}
|
|
492
|
-
|
|
588
|
+
response = await getattr(self, method)(self.extend(request, params))
|
|
589
|
+
return self.parse_order(response)
|
|
493
590
|
|
|
494
591
|
async def cancel_order(self, id: str, symbol: Str = None, params={}):
|
|
495
592
|
"""
|
|
496
593
|
cancels an open order
|
|
497
|
-
|
|
498
|
-
|
|
594
|
+
|
|
595
|
+
https://www.coinspot.com.au/api#cancelbuyorder
|
|
596
|
+
https://www.coinspot.com.au/api#cancelsellorder
|
|
597
|
+
|
|
499
598
|
:param str id: order id
|
|
500
599
|
:param str symbol: not used by coinspot cancelOrder()
|
|
501
600
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|