ccxt 4.2.77__py2.py3-none-any.whl → 4.4.49__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 +36 -14
- ccxt/abstract/alpaca.py +4 -0
- ccxt/abstract/bigone.py +1 -1
- ccxt/abstract/binance.py +112 -48
- ccxt/abstract/binancecoinm.py +112 -48
- ccxt/abstract/binanceus.py +147 -83
- ccxt/abstract/binanceusdm.py +112 -48
- ccxt/abstract/bingx.py +133 -78
- ccxt/abstract/bitbank.py +5 -0
- ccxt/abstract/bitfinex.py +136 -65
- ccxt/abstract/bitfinex1.py +69 -0
- ccxt/abstract/bitflyer.py +1 -0
- ccxt/abstract/bitget.py +8 -1
- ccxt/abstract/bitmart.py +13 -1
- ccxt/abstract/bitopro.py +1 -0
- ccxt/abstract/bitpanda.py +0 -12
- ccxt/abstract/bitrue.py +3 -3
- ccxt/abstract/bitstamp.py +26 -3
- ccxt/abstract/blofin.py +24 -0
- ccxt/abstract/btcbox.py +1 -0
- ccxt/abstract/bybit.py +29 -14
- ccxt/abstract/cex.py +28 -29
- ccxt/abstract/coinbase.py +6 -0
- ccxt/abstract/coinbaseadvanced.py +94 -0
- ccxt/abstract/{coinbasepro.py → coinbaseexchange.py} +1 -0
- ccxt/abstract/coinbaseinternational.py +1 -1
- ccxt/abstract/coincatch.py +94 -0
- ccxt/abstract/coinex.py +233 -123
- ccxt/abstract/coinmetro.py +1 -0
- ccxt/abstract/cryptocom.py +14 -0
- ccxt/abstract/defx.py +69 -0
- ccxt/abstract/deribit.py +1 -0
- ccxt/abstract/digifinex.py +1 -0
- ccxt/abstract/ellipx.py +25 -0
- ccxt/abstract/gate.py +20 -0
- ccxt/abstract/gateio.py +20 -0
- ccxt/abstract/gemini.py +1 -0
- ccxt/abstract/hashkey.py +67 -0
- ccxt/abstract/hyperliquid.py +1 -1
- ccxt/abstract/independentreserve.py +6 -0
- ccxt/abstract/kraken.py +4 -3
- ccxt/abstract/krakenfutures.py +4 -0
- ccxt/abstract/kucoin.py +24 -0
- ccxt/abstract/kucoinfutures.py +34 -0
- ccxt/abstract/luno.py +2 -0
- ccxt/abstract/mexc.py +4 -0
- ccxt/abstract/myokx.py +340 -0
- ccxt/abstract/oceanex.py +5 -0
- ccxt/abstract/okx.py +30 -0
- ccxt/abstract/onetrading.py +0 -12
- ccxt/abstract/oxfun.py +34 -0
- ccxt/abstract/paradex.py +40 -0
- ccxt/abstract/phemex.py +1 -0
- ccxt/abstract/upbit.py +4 -0
- ccxt/abstract/vertex.py +19 -0
- ccxt/abstract/whitebit.py +31 -1
- ccxt/abstract/woo.py +6 -2
- ccxt/abstract/woofipro.py +119 -0
- ccxt/abstract/xt.py +153 -0
- ccxt/abstract/zonda.py +6 -0
- ccxt/ace.py +164 -60
- ccxt/alpaca.py +727 -63
- ccxt/ascendex.py +395 -249
- ccxt/async_support/__init__.py +36 -14
- ccxt/async_support/ace.py +164 -60
- ccxt/async_support/alpaca.py +727 -63
- ccxt/async_support/ascendex.py +396 -249
- ccxt/async_support/base/exchange.py +531 -155
- ccxt/async_support/base/ws/aiohttp_client.py +28 -5
- ccxt/async_support/base/ws/cache.py +3 -2
- ccxt/async_support/base/ws/client.py +26 -5
- ccxt/async_support/base/ws/fast_client.py +4 -3
- ccxt/async_support/base/ws/functions.py +1 -1
- ccxt/async_support/base/ws/future.py +40 -31
- ccxt/async_support/base/ws/order_book_side.py +3 -0
- ccxt/async_support/bequant.py +1 -1
- ccxt/async_support/bigone.py +329 -202
- ccxt/async_support/binance.py +3030 -1087
- ccxt/async_support/binancecoinm.py +2 -1
- ccxt/async_support/binanceus.py +12 -1
- ccxt/async_support/binanceusdm.py +3 -1
- ccxt/async_support/bingx.py +3205 -937
- ccxt/async_support/bit2c.py +119 -38
- ccxt/async_support/bitbank.py +215 -76
- ccxt/async_support/bitbns.py +124 -53
- ccxt/async_support/bitfinex.py +3236 -1078
- ccxt/async_support/bitfinex1.py +1711 -0
- ccxt/async_support/bitflyer.py +238 -49
- ccxt/async_support/bitget.py +1525 -573
- ccxt/async_support/bithumb.py +199 -65
- ccxt/async_support/bitmart.py +1320 -435
- ccxt/async_support/bitmex.py +308 -111
- ccxt/async_support/bitopro.py +256 -96
- ccxt/async_support/bitrue.py +365 -233
- ccxt/async_support/bitso.py +201 -89
- ccxt/async_support/bitstamp.py +438 -269
- ccxt/async_support/bitteam.py +179 -73
- ccxt/async_support/bitvavo.py +180 -70
- ccxt/async_support/bl3p.py +92 -25
- ccxt/async_support/blockchaincom.py +193 -79
- ccxt/async_support/blofin.py +392 -148
- ccxt/async_support/btcalpha.py +161 -55
- ccxt/async_support/btcbox.py +250 -34
- ccxt/async_support/btcmarkets.py +232 -85
- ccxt/async_support/btcturk.py +159 -60
- ccxt/async_support/bybit.py +2231 -1193
- ccxt/async_support/cex.py +1409 -1329
- ccxt/async_support/coinbase.py +1454 -287
- ccxt/async_support/coinbaseadvanced.py +17 -0
- ccxt/async_support/{coinbasepro.py → coinbaseexchange.py} +233 -99
- ccxt/async_support/coinbaseinternational.py +428 -88
- ccxt/async_support/coincatch.py +5152 -0
- ccxt/async_support/coincheck.py +121 -38
- ccxt/async_support/coinex.py +4020 -3339
- ccxt/async_support/coinlist.py +273 -116
- ccxt/async_support/coinmate.py +204 -97
- ccxt/async_support/coinmetro.py +203 -110
- ccxt/async_support/coinone.py +142 -68
- ccxt/async_support/coinsph.py +223 -97
- ccxt/async_support/coinspot.py +137 -62
- ccxt/async_support/cryptocom.py +515 -185
- ccxt/async_support/currencycom.py +203 -85
- ccxt/async_support/defx.py +2066 -0
- ccxt/async_support/delta.py +404 -109
- ccxt/async_support/deribit.py +639 -323
- ccxt/async_support/digifinex.py +465 -233
- ccxt/async_support/ellipx.py +1887 -0
- ccxt/async_support/exmo.py +317 -128
- ccxt/async_support/gate.py +1472 -463
- ccxt/async_support/gemini.py +206 -84
- ccxt/async_support/hashkey.py +4164 -0
- ccxt/async_support/hitbtc.py +433 -178
- ccxt/async_support/hollaex.py +207 -83
- ccxt/async_support/htx.py +1095 -563
- ccxt/async_support/huobijp.py +178 -56
- ccxt/async_support/hyperliquid.py +1678 -292
- ccxt/async_support/idex.py +219 -95
- ccxt/async_support/independentreserve.py +300 -31
- ccxt/async_support/indodax.py +226 -62
- ccxt/async_support/kraken.py +871 -354
- ccxt/async_support/krakenfutures.py +324 -100
- ccxt/async_support/kucoin.py +917 -357
- ccxt/async_support/kucoinfutures.py +1004 -149
- ccxt/async_support/kuna.py +198 -107
- ccxt/async_support/latoken.py +199 -79
- ccxt/async_support/lbank.py +360 -113
- ccxt/async_support/luno.py +185 -62
- ccxt/async_support/lykke.py +168 -55
- ccxt/async_support/mercado.py +101 -29
- ccxt/async_support/mexc.py +995 -429
- ccxt/async_support/myokx.py +53 -0
- ccxt/async_support/ndax.py +234 -82
- ccxt/async_support/novadax.py +195 -75
- ccxt/async_support/oceanex.py +244 -59
- ccxt/async_support/okcoin.py +301 -165
- ccxt/async_support/okx.py +1776 -454
- ccxt/async_support/onetrading.py +198 -414
- ccxt/async_support/oxfun.py +2898 -0
- ccxt/async_support/p2b.py +142 -52
- ccxt/async_support/paradex.py +2085 -0
- ccxt/async_support/paymium.py +56 -32
- ccxt/async_support/phemex.py +572 -196
- ccxt/async_support/poloniex.py +218 -95
- ccxt/async_support/poloniexfutures.py +260 -92
- ccxt/async_support/probit.py +143 -110
- ccxt/async_support/timex.py +123 -70
- ccxt/async_support/tokocrypto.py +129 -93
- ccxt/async_support/tradeogre.py +39 -25
- ccxt/async_support/upbit.py +322 -113
- ccxt/async_support/vertex.py +2983 -0
- ccxt/async_support/wavesexchange.py +227 -173
- ccxt/async_support/wazirx.py +145 -65
- ccxt/async_support/whitebit.py +533 -138
- ccxt/async_support/woo.py +1137 -296
- ccxt/async_support/woofipro.py +2716 -0
- ccxt/async_support/xt.py +4628 -0
- ccxt/async_support/yobit.py +160 -92
- ccxt/async_support/zaif.py +80 -33
- ccxt/async_support/zonda.py +140 -69
- ccxt/base/errors.py +51 -20
- ccxt/base/exchange.py +1722 -480
- ccxt/base/precise.py +10 -0
- ccxt/base/types.py +223 -4
- ccxt/bequant.py +1 -1
- ccxt/bigone.py +329 -202
- ccxt/binance.py +3030 -1087
- ccxt/binancecoinm.py +2 -1
- ccxt/binanceus.py +12 -1
- ccxt/binanceusdm.py +3 -1
- ccxt/bingx.py +3205 -937
- ccxt/bit2c.py +119 -38
- ccxt/bitbank.py +215 -76
- ccxt/bitbns.py +124 -53
- ccxt/bitfinex.py +3235 -1078
- ccxt/bitfinex1.py +1710 -0
- ccxt/bitflyer.py +238 -49
- ccxt/bitget.py +1525 -573
- ccxt/bithumb.py +198 -65
- ccxt/bitmart.py +1320 -435
- ccxt/bitmex.py +308 -111
- ccxt/bitopro.py +256 -96
- ccxt/bitrue.py +365 -233
- ccxt/bitso.py +201 -89
- ccxt/bitstamp.py +438 -269
- ccxt/bitteam.py +179 -73
- ccxt/bitvavo.py +180 -70
- ccxt/bl3p.py +92 -25
- ccxt/blockchaincom.py +193 -79
- ccxt/blofin.py +392 -148
- ccxt/btcalpha.py +161 -55
- ccxt/btcbox.py +250 -34
- ccxt/btcmarkets.py +232 -85
- ccxt/btcturk.py +159 -60
- ccxt/bybit.py +2231 -1193
- ccxt/cex.py +1408 -1329
- ccxt/coinbase.py +1454 -287
- ccxt/coinbaseadvanced.py +17 -0
- ccxt/{coinbasepro.py → coinbaseexchange.py} +233 -99
- ccxt/coinbaseinternational.py +428 -88
- ccxt/coincatch.py +5152 -0
- ccxt/coincheck.py +121 -38
- ccxt/coinex.py +4020 -3339
- ccxt/coinlist.py +273 -116
- ccxt/coinmate.py +204 -97
- ccxt/coinmetro.py +203 -110
- ccxt/coinone.py +142 -68
- ccxt/coinsph.py +223 -97
- ccxt/coinspot.py +137 -62
- ccxt/cryptocom.py +515 -185
- ccxt/currencycom.py +203 -85
- ccxt/defx.py +2065 -0
- ccxt/delta.py +404 -109
- ccxt/deribit.py +639 -323
- ccxt/digifinex.py +465 -233
- ccxt/ellipx.py +1887 -0
- ccxt/exmo.py +317 -128
- ccxt/gate.py +1472 -463
- ccxt/gemini.py +206 -84
- ccxt/hashkey.py +4164 -0
- ccxt/hitbtc.py +433 -178
- ccxt/hollaex.py +207 -83
- ccxt/htx.py +1095 -563
- ccxt/huobijp.py +178 -56
- ccxt/hyperliquid.py +1677 -292
- ccxt/idex.py +219 -95
- ccxt/independentreserve.py +299 -31
- ccxt/indodax.py +226 -62
- ccxt/kraken.py +871 -354
- ccxt/krakenfutures.py +324 -100
- ccxt/kucoin.py +917 -357
- ccxt/kucoinfutures.py +1004 -149
- ccxt/kuna.py +198 -107
- ccxt/latoken.py +199 -79
- ccxt/lbank.py +360 -113
- ccxt/luno.py +185 -62
- ccxt/lykke.py +168 -55
- ccxt/mercado.py +101 -29
- ccxt/mexc.py +994 -429
- ccxt/myokx.py +53 -0
- ccxt/ndax.py +234 -82
- ccxt/novadax.py +195 -75
- ccxt/oceanex.py +244 -59
- ccxt/okcoin.py +301 -165
- ccxt/okx.py +1776 -454
- ccxt/onetrading.py +198 -414
- ccxt/oxfun.py +2897 -0
- ccxt/p2b.py +142 -52
- ccxt/paradex.py +2085 -0
- ccxt/paymium.py +56 -32
- ccxt/phemex.py +572 -196
- ccxt/poloniex.py +218 -95
- ccxt/poloniexfutures.py +260 -92
- ccxt/pro/__init__.py +29 -5
- ccxt/pro/alpaca.py +32 -17
- ccxt/pro/ascendex.py +62 -14
- ccxt/pro/bequant.py +4 -0
- ccxt/pro/binance.py +1596 -329
- ccxt/pro/binancecoinm.py +1 -0
- ccxt/pro/binanceus.py +2 -9
- ccxt/pro/binanceusdm.py +2 -0
- ccxt/pro/bingx.py +527 -134
- ccxt/pro/bitcoincom.py +4 -1
- ccxt/pro/bitfinex.py +731 -266
- ccxt/pro/bitfinex1.py +635 -0
- ccxt/pro/bitget.py +726 -357
- ccxt/pro/bithumb.py +380 -0
- ccxt/pro/bitmart.py +143 -39
- ccxt/pro/bitmex.py +199 -40
- ccxt/pro/bitopro.py +25 -13
- ccxt/pro/bitrue.py +31 -32
- ccxt/pro/bitstamp.py +7 -6
- ccxt/pro/bitvavo.py +203 -81
- ccxt/pro/blockchaincom.py +30 -17
- ccxt/pro/blofin.py +692 -0
- ccxt/pro/bybit.py +791 -82
- ccxt/pro/cex.py +99 -51
- ccxt/pro/coinbase.py +220 -30
- ccxt/{async_support/hitbtc3.py → pro/coinbaseadvanced.py} +5 -5
- ccxt/pro/{coinbasepro.py → coinbaseexchange.py} +19 -19
- ccxt/pro/coinbaseinternational.py +193 -30
- ccxt/pro/coincatch.py +1464 -0
- ccxt/pro/coincheck.py +11 -6
- ccxt/pro/coinex.py +965 -665
- ccxt/pro/coinone.py +17 -10
- ccxt/pro/cryptocom.py +446 -66
- ccxt/pro/currencycom.py +11 -10
- ccxt/pro/defx.py +832 -0
- ccxt/pro/deribit.py +167 -31
- ccxt/pro/exmo.py +252 -20
- ccxt/pro/gate.py +729 -64
- ccxt/pro/gemini.py +44 -26
- ccxt/pro/hashkey.py +802 -0
- ccxt/pro/hitbtc.py +208 -103
- ccxt/pro/hollaex.py +25 -9
- ccxt/pro/htx.py +83 -39
- ccxt/pro/huobijp.py +17 -16
- ccxt/pro/hyperliquid.py +502 -31
- ccxt/pro/idex.py +28 -13
- ccxt/pro/independentreserve.py +21 -16
- ccxt/pro/kraken.py +298 -51
- ccxt/pro/krakenfutures.py +166 -75
- ccxt/pro/kucoin.py +395 -77
- ccxt/pro/kucoinfutures.py +400 -99
- ccxt/pro/lbank.py +52 -31
- ccxt/pro/luno.py +12 -10
- ccxt/pro/mexc.py +400 -50
- ccxt/pro/myokx.py +28 -0
- ccxt/pro/ndax.py +25 -12
- ccxt/pro/okcoin.py +28 -9
- ccxt/pro/okx.py +935 -124
- ccxt/pro/onetrading.py +41 -24
- ccxt/pro/oxfun.py +1054 -0
- ccxt/pro/p2b.py +100 -24
- ccxt/pro/paradex.py +352 -0
- ccxt/pro/phemex.py +92 -33
- ccxt/pro/poloniex.py +128 -49
- ccxt/pro/poloniexfutures.py +53 -32
- ccxt/pro/probit.py +92 -85
- ccxt/pro/upbit.py +401 -8
- ccxt/pro/vertex.py +943 -0
- ccxt/pro/wazirx.py +46 -28
- ccxt/pro/whitebit.py +65 -12
- ccxt/pro/woo.py +437 -65
- ccxt/pro/woofipro.py +1271 -0
- ccxt/pro/xt.py +1067 -0
- ccxt/probit.py +143 -110
- ccxt/static_dependencies/__init__.py +1 -1
- ccxt/static_dependencies/lark/__init__.py +38 -0
- ccxt/static_dependencies/lark/__pyinstaller/__init__.py +6 -0
- ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +14 -0
- ccxt/static_dependencies/lark/ast_utils.py +59 -0
- ccxt/static_dependencies/lark/common.py +86 -0
- ccxt/static_dependencies/lark/exceptions.py +292 -0
- ccxt/static_dependencies/lark/grammar.py +130 -0
- ccxt/static_dependencies/lark/grammars/__init__.py +0 -0
- ccxt/static_dependencies/lark/indenter.py +143 -0
- ccxt/static_dependencies/lark/lark.py +658 -0
- ccxt/static_dependencies/lark/lexer.py +678 -0
- ccxt/static_dependencies/lark/load_grammar.py +1428 -0
- ccxt/static_dependencies/lark/parse_tree_builder.py +391 -0
- ccxt/static_dependencies/lark/parser_frontends.py +257 -0
- ccxt/static_dependencies/lark/parsers/__init__.py +0 -0
- ccxt/static_dependencies/lark/parsers/cyk.py +340 -0
- ccxt/static_dependencies/lark/parsers/earley.py +314 -0
- ccxt/static_dependencies/lark/parsers/earley_common.py +42 -0
- ccxt/static_dependencies/lark/parsers/earley_forest.py +801 -0
- ccxt/static_dependencies/lark/parsers/grammar_analysis.py +203 -0
- ccxt/static_dependencies/lark/parsers/lalr_analysis.py +332 -0
- ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +158 -0
- ccxt/static_dependencies/lark/parsers/lalr_parser.py +122 -0
- ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +110 -0
- ccxt/static_dependencies/lark/parsers/xearley.py +165 -0
- ccxt/static_dependencies/lark/py.typed +0 -0
- ccxt/static_dependencies/lark/reconstruct.py +107 -0
- ccxt/static_dependencies/lark/tools/__init__.py +70 -0
- ccxt/static_dependencies/lark/tools/nearley.py +202 -0
- ccxt/static_dependencies/lark/tools/serialize.py +32 -0
- ccxt/static_dependencies/lark/tools/standalone.py +196 -0
- ccxt/static_dependencies/lark/tree.py +267 -0
- ccxt/static_dependencies/lark/tree_matcher.py +186 -0
- ccxt/static_dependencies/lark/tree_templates.py +180 -0
- ccxt/static_dependencies/lark/utils.py +343 -0
- ccxt/static_dependencies/lark/visitors.py +596 -0
- ccxt/static_dependencies/marshmallow/__init__.py +81 -0
- ccxt/static_dependencies/marshmallow/base.py +65 -0
- ccxt/static_dependencies/marshmallow/class_registry.py +94 -0
- ccxt/static_dependencies/marshmallow/decorators.py +231 -0
- ccxt/static_dependencies/marshmallow/error_store.py +60 -0
- ccxt/static_dependencies/marshmallow/exceptions.py +71 -0
- ccxt/static_dependencies/marshmallow/fields.py +2114 -0
- ccxt/static_dependencies/marshmallow/orderedset.py +89 -0
- ccxt/static_dependencies/marshmallow/py.typed +0 -0
- ccxt/static_dependencies/marshmallow/schema.py +1228 -0
- ccxt/static_dependencies/marshmallow/types.py +12 -0
- ccxt/static_dependencies/marshmallow/utils.py +378 -0
- ccxt/static_dependencies/marshmallow/validate.py +678 -0
- ccxt/static_dependencies/marshmallow/warnings.py +2 -0
- ccxt/static_dependencies/marshmallow_dataclass/__init__.py +1047 -0
- ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +51 -0
- ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +45 -0
- ccxt/static_dependencies/marshmallow_dataclass/mypy.py +71 -0
- ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
- ccxt/static_dependencies/marshmallow_dataclass/typing.py +14 -0
- ccxt/static_dependencies/marshmallow_dataclass/union_field.py +82 -0
- ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +1 -0
- ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +193 -0
- ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
- ccxt/static_dependencies/starknet/__init__.py +0 -0
- ccxt/static_dependencies/starknet/cairo/__init__.py +0 -0
- ccxt/static_dependencies/starknet/cairo/data_types.py +123 -0
- ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py +0 -0
- ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +77 -0
- ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +46 -0
- ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +138 -0
- ccxt/static_dependencies/starknet/cairo/felt.py +64 -0
- ccxt/static_dependencies/starknet/cairo/type_parser.py +121 -0
- ccxt/static_dependencies/starknet/cairo/v1/__init__.py +0 -0
- ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +59 -0
- ccxt/static_dependencies/starknet/cairo/v2/__init__.py +0 -0
- ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +77 -0
- ccxt/static_dependencies/starknet/ccxt_utils.py +7 -0
- ccxt/static_dependencies/starknet/common.py +15 -0
- ccxt/static_dependencies/starknet/constants.py +39 -0
- ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
- ccxt/static_dependencies/starknet/hash/address.py +79 -0
- ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +111 -0
- ccxt/static_dependencies/starknet/hash/selector.py +16 -0
- ccxt/static_dependencies/starknet/hash/storage.py +12 -0
- ccxt/static_dependencies/starknet/hash/utils.py +78 -0
- ccxt/static_dependencies/starknet/models/__init__.py +0 -0
- ccxt/static_dependencies/starknet/models/typed_data.py +45 -0
- ccxt/static_dependencies/starknet/serialization/__init__.py +24 -0
- ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +40 -0
- ccxt/static_dependencies/starknet/serialization/_context.py +142 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +10 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +82 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +43 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +37 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +66 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +71 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +71 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +50 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +58 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +43 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +40 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +72 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +36 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +36 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +76 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +100 -0
- ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +32 -0
- ccxt/static_dependencies/starknet/serialization/errors.py +10 -0
- ccxt/static_dependencies/starknet/serialization/factory.py +229 -0
- ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +110 -0
- ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +59 -0
- ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
- ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +86 -0
- ccxt/static_dependencies/starknet/utils/iterable.py +13 -0
- ccxt/static_dependencies/starknet/utils/schema.py +13 -0
- ccxt/static_dependencies/starknet/utils/typed_data.py +182 -0
- ccxt/static_dependencies/starkware/__init__.py +0 -0
- ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
- ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +50 -0
- ccxt/static_dependencies/starkware/crypto/math_utils.py +78 -0
- ccxt/static_dependencies/starkware/crypto/signature.py +2344 -0
- ccxt/static_dependencies/starkware/crypto/utils.py +63 -0
- ccxt/static_dependencies/sympy/__init__.py +0 -0
- ccxt/static_dependencies/sympy/core/__init__.py +0 -0
- ccxt/static_dependencies/sympy/core/intfunc.py +35 -0
- ccxt/static_dependencies/sympy/external/__init__.py +0 -0
- ccxt/static_dependencies/sympy/external/gmpy.py +345 -0
- ccxt/static_dependencies/sympy/external/importtools.py +187 -0
- ccxt/static_dependencies/sympy/external/ntheory.py +637 -0
- ccxt/static_dependencies/sympy/external/pythonmpq.py +341 -0
- ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
- ccxt/static_dependencies/typing_inspect/typing_inspect.py +851 -0
- ccxt/test/{test_async.py → tests_async.py} +456 -391
- ccxt/test/tests_helpers.py +285 -0
- ccxt/test/tests_init.py +39 -0
- ccxt/test/{test_sync.py → tests_sync.py} +456 -393
- ccxt/timex.py +123 -70
- ccxt/tokocrypto.py +129 -93
- ccxt/tradeogre.py +39 -25
- ccxt/upbit.py +322 -113
- ccxt/vertex.py +2983 -0
- ccxt/wavesexchange.py +227 -173
- ccxt/wazirx.py +145 -65
- ccxt/whitebit.py +533 -138
- ccxt/woo.py +1137 -296
- ccxt/woofipro.py +2716 -0
- ccxt/xt.py +4627 -0
- ccxt/yobit.py +159 -92
- ccxt/zaif.py +80 -33
- ccxt/zonda.py +140 -69
- ccxt-4.4.49.dist-info/LICENSE.txt +21 -0
- ccxt-4.4.49.dist-info/METADATA +646 -0
- ccxt-4.4.49.dist-info/RECORD +669 -0
- {ccxt-4.2.77.dist-info → ccxt-4.4.49.dist-info}/WHEEL +1 -1
- ccxt/abstract/bitbay.py +0 -47
- ccxt/abstract/bitfinex2.py +0 -139
- ccxt/abstract/hitbtc3.py +0 -115
- ccxt/async_support/bitbay.py +0 -17
- ccxt/async_support/bitfinex2.py +0 -3496
- ccxt/async_support/flowbtc.py +0 -34
- ccxt/bitbay.py +0 -17
- ccxt/bitfinex2.py +0 -3496
- ccxt/flowbtc.py +0 -34
- ccxt/hitbtc3.py +0 -16
- ccxt/pro/bitfinex2.py +0 -1081
- ccxt/test/base/__init__.py +0 -28
- 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 -103
- 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 -32
- 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_margin_mode.py +0 -24
- ccxt/test/base/test_margin_modification.py +0 -35
- ccxt/test/base/test_market.py +0 -190
- ccxt/test/base/test_number.py +0 -411
- ccxt/test/base/test_ohlcv.py +0 -32
- 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 -63
- ccxt/test/base/test_position.py +0 -60
- ccxt/test/base/test_shared_methods.py +0 -345
- ccxt/test/base/test_status.py +0 -24
- ccxt/test/base/test_throttle.py +0 -126
- ccxt/test/base/test_ticker.py +0 -86
- 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-4.2.77.dist-info/METADATA +0 -626
- ccxt-4.2.77.dist-info/RECORD +0 -534
- {ccxt-4.2.77.dist-info → ccxt-4.4.49.dist-info}/top_level.txt +0 -0
ccxt/async_support/bitteam.py
CHANGED
@@ -5,17 +5,17 @@
|
|
5
5
|
|
6
6
|
from ccxt.async_support.base.exchange import Exchange
|
7
7
|
from ccxt.abstract.bitteam import ImplicitAPI
|
8
|
-
from ccxt.base.types import Balances, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
8
|
+
from ccxt.base.types import Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, Transaction
|
9
9
|
from typing import List
|
10
10
|
from ccxt.base.errors import ExchangeError
|
11
|
+
from ccxt.base.errors import AuthenticationError
|
11
12
|
from ccxt.base.errors import ArgumentsRequired
|
12
13
|
from ccxt.base.errors import BadRequest
|
13
14
|
from ccxt.base.errors import BadSymbol
|
14
15
|
from ccxt.base.errors import InsufficientFunds
|
15
16
|
from ccxt.base.errors import OrderNotFound
|
16
17
|
from ccxt.base.errors import ExchangeNotAvailable
|
17
|
-
from ccxt.base.
|
18
|
-
from ccxt.base.decimal_to_precision import DECIMAL_PLACES
|
18
|
+
from ccxt.base.decimal_to_precision import TICK_SIZE
|
19
19
|
from ccxt.base.precise import Precise
|
20
20
|
|
21
21
|
|
@@ -96,7 +96,11 @@ class bitteam(Exchange, ImplicitAPI):
|
|
96
96
|
'fetchOrders': True,
|
97
97
|
'fetchOrderTrades': False,
|
98
98
|
'fetchPosition': False,
|
99
|
+
'fetchPositionHistory': False,
|
100
|
+
'fetchPositionMode': False,
|
99
101
|
'fetchPositions': False,
|
102
|
+
'fetchPositionsForSymbol': False,
|
103
|
+
'fetchPositionsHistory': False,
|
100
104
|
'fetchPositionsRisk': False,
|
101
105
|
'fetchPremiumIndexOHLCV': False,
|
102
106
|
'fetchStatus': False,
|
@@ -133,7 +137,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
133
137
|
'1d': '1D',
|
134
138
|
},
|
135
139
|
'urls': {
|
136
|
-
'logo': 'https://github.com/
|
140
|
+
'logo': 'https://github.com/user-attachments/assets/b41b5e0d-98e5-4bd3-8a6e-aeb230a4a135',
|
137
141
|
'api': {
|
138
142
|
'history': 'https://history.bit.team',
|
139
143
|
'public': 'https://bit.team',
|
@@ -195,7 +199,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
195
199
|
'maker': self.parse_number('0.002'),
|
196
200
|
},
|
197
201
|
},
|
198
|
-
'precisionMode':
|
202
|
+
'precisionMode': TICK_SIZE,
|
199
203
|
# exchange-specific options
|
200
204
|
'options': {
|
201
205
|
'networksById': {
|
@@ -223,6 +227,79 @@ class bitteam(Exchange, ImplicitAPI):
|
|
223
227
|
'BUSD': True,
|
224
228
|
},
|
225
229
|
},
|
230
|
+
'features': {
|
231
|
+
'spot': {
|
232
|
+
'sandbox': False,
|
233
|
+
'createOrder': {
|
234
|
+
'marginMode': False,
|
235
|
+
'triggerPrice': False,
|
236
|
+
'triggerPriceType': None,
|
237
|
+
'triggerDirection': None,
|
238
|
+
'stopLossPrice': False,
|
239
|
+
'takeProfitPrice': False,
|
240
|
+
'attachedStopLossTakeProfit': None,
|
241
|
+
'timeInForce': {
|
242
|
+
'IOC': False,
|
243
|
+
'FOK': False,
|
244
|
+
'PO': False,
|
245
|
+
'GTD': False,
|
246
|
+
},
|
247
|
+
'hedged': False,
|
248
|
+
'trailing': False,
|
249
|
+
'leverage': False,
|
250
|
+
'marketBuyRequiresPrice': False,
|
251
|
+
'marketBuyByCost': False,
|
252
|
+
'selfTradePrevention': False,
|
253
|
+
'iceberg': False,
|
254
|
+
},
|
255
|
+
'createOrders': None,
|
256
|
+
'fetchMyTrades': {
|
257
|
+
'marginMode': False,
|
258
|
+
'limit': 100,
|
259
|
+
'daysBack': 100000,
|
260
|
+
'untilDays': 100000,
|
261
|
+
},
|
262
|
+
'fetchOrder': {
|
263
|
+
'marginMode': False,
|
264
|
+
'trigger': False,
|
265
|
+
'trailing': False,
|
266
|
+
},
|
267
|
+
'fetchOpenOrders': {
|
268
|
+
'marginMode': False,
|
269
|
+
'limit': 100,
|
270
|
+
'trigger': False,
|
271
|
+
'trailing': False,
|
272
|
+
},
|
273
|
+
'fetchOrders': {
|
274
|
+
'marginMode': True,
|
275
|
+
'limit': 100,
|
276
|
+
'daysBack': None,
|
277
|
+
'untilDays': None,
|
278
|
+
'trigger': False,
|
279
|
+
'trailing': False,
|
280
|
+
},
|
281
|
+
'fetchClosedOrders': {
|
282
|
+
'marginMode': False,
|
283
|
+
'limit': 100,
|
284
|
+
'daysBack': None,
|
285
|
+
'daysBackCanceled': None,
|
286
|
+
'untilDays': None,
|
287
|
+
'trigger': False,
|
288
|
+
'trailing': False,
|
289
|
+
},
|
290
|
+
'fetchOHLCV': {
|
291
|
+
'limit': 1000,
|
292
|
+
},
|
293
|
+
},
|
294
|
+
'swap': {
|
295
|
+
'linear': None,
|
296
|
+
'inverse': None,
|
297
|
+
},
|
298
|
+
'future': {
|
299
|
+
'linear': None,
|
300
|
+
'inverse': None,
|
301
|
+
},
|
302
|
+
},
|
226
303
|
'exceptions': {
|
227
304
|
'exact': {
|
228
305
|
'400002': BadSymbol, # {"ok":false,"code":400002,"message":"An order cannot be created on a deactivated pair"}
|
@@ -247,10 +324,12 @@ class bitteam(Exchange, ImplicitAPI):
|
|
247
324
|
},
|
248
325
|
})
|
249
326
|
|
250
|
-
async def fetch_markets(self, params={}):
|
327
|
+
async def fetch_markets(self, params={}) -> List[Market]:
|
251
328
|
"""
|
252
329
|
retrieves data on all markets for bitteam
|
253
|
-
|
330
|
+
|
331
|
+
https://bit.team/trade/api/documentation#/CCXT/getTradeApiCcxtPairs
|
332
|
+
|
254
333
|
:param dict [params]: extra parameters specific to the exchange api endpoint
|
255
334
|
:returns dict[]: an array of objects representing market data
|
256
335
|
"""
|
@@ -345,7 +424,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
345
424
|
markets = self.safe_value(result, 'pairs', [])
|
346
425
|
return self.parse_markets(markets)
|
347
426
|
|
348
|
-
def parse_market(self, market) -> Market:
|
427
|
+
def parse_market(self, market: dict) -> Market:
|
349
428
|
id = self.safe_string(market, 'name')
|
350
429
|
numericId = self.safe_integer(market, 'id')
|
351
430
|
parts = id.split('_')
|
@@ -354,8 +433,6 @@ class bitteam(Exchange, ImplicitAPI):
|
|
354
433
|
base = self.safe_currency_code(baseId)
|
355
434
|
quote = self.safe_currency_code(quoteId)
|
356
435
|
active = self.safe_value(market, 'active')
|
357
|
-
amountPrecision = self.safe_integer(market, 'baseStep')
|
358
|
-
pricePrecision = self.safe_integer(market, 'quoteStep')
|
359
436
|
timeStart = self.safe_string(market, 'timeStart')
|
360
437
|
created = self.parse8601(timeStart)
|
361
438
|
minCost = None
|
@@ -390,8 +467,8 @@ class bitteam(Exchange, ImplicitAPI):
|
|
390
467
|
'strike': None,
|
391
468
|
'optionType': None,
|
392
469
|
'precision': {
|
393
|
-
'amount':
|
394
|
-
'price':
|
470
|
+
'amount': self.parse_number(self.parse_precision(self.safe_string(market, 'baseStep'))),
|
471
|
+
'price': self.parse_number(self.parse_precision(self.safe_string(market, 'quoteStep'))),
|
395
472
|
},
|
396
473
|
'limits': {
|
397
474
|
'leverage': {
|
@@ -415,10 +492,12 @@ class bitteam(Exchange, ImplicitAPI):
|
|
415
492
|
'info': market,
|
416
493
|
})
|
417
494
|
|
418
|
-
async def fetch_currencies(self, params={}):
|
495
|
+
async def fetch_currencies(self, params={}) -> Currencies:
|
419
496
|
"""
|
420
497
|
fetches all available currencies on an exchange
|
421
|
-
|
498
|
+
|
499
|
+
https://bit.team/trade/api/documentation#/PUBLIC/getTradeApiCurrencies
|
500
|
+
|
422
501
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
423
502
|
:returns dict: an associative dictionary of currencies
|
424
503
|
"""
|
@@ -538,21 +617,21 @@ class bitteam(Exchange, ImplicitAPI):
|
|
538
617
|
# }
|
539
618
|
#
|
540
619
|
statusesResponse = self.index_by(statusesResponse, 'unified_cryptoasset_id')
|
541
|
-
result = {}
|
620
|
+
result: dict = {}
|
542
621
|
for i in range(0, len(currencies)):
|
543
622
|
currency = currencies[i]
|
544
623
|
id = self.safe_string(currency, 'symbol')
|
545
624
|
numericId = self.safe_integer(currency, 'id')
|
546
625
|
code = self.safe_currency_code(id)
|
547
626
|
active = self.safe_bool(currency, 'active', False)
|
548
|
-
precision = self.
|
627
|
+
precision = self.parse_number(self.parse_precision(self.safe_string(currency, 'precision')))
|
549
628
|
txLimits = self.safe_value(currency, 'txLimits', {})
|
550
629
|
minWithdraw = self.safe_string(txLimits, 'minWithdraw')
|
551
630
|
maxWithdraw = self.safe_string(txLimits, 'maxWithdraw')
|
552
631
|
minDeposit = self.safe_string(txLimits, 'minDeposit')
|
553
632
|
fee = None
|
554
633
|
withdrawCommissionFixed = self.safe_value(txLimits, 'withdrawCommissionFixed', {})
|
555
|
-
feesByNetworkId = {}
|
634
|
+
feesByNetworkId: dict = {}
|
556
635
|
blockChain = self.safe_string(currency, 'blockChain')
|
557
636
|
# if only one blockChain
|
558
637
|
if (blockChain is not None) and (blockChain != ''):
|
@@ -564,8 +643,8 @@ class bitteam(Exchange, ImplicitAPI):
|
|
564
643
|
deposit = self.safe_value(statuses, 'depositStatus')
|
565
644
|
withdraw = self.safe_value(statuses, 'withdrawStatus')
|
566
645
|
networkIds = list(feesByNetworkId.keys())
|
567
|
-
networks = {}
|
568
|
-
networkPrecision = self.
|
646
|
+
networks: dict = {}
|
647
|
+
networkPrecision = self.parse_number(self.parse_precision(self.safe_string(currency, 'decimals')))
|
569
648
|
for j in range(0, len(networkIds)):
|
570
649
|
networkId = networkIds[j]
|
571
650
|
networkCode = self.network_id_to_code(networkId, code)
|
@@ -636,7 +715,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
636
715
|
await self.load_markets()
|
637
716
|
market = self.market(symbol)
|
638
717
|
resolution = self.safe_string(self.timeframes, timeframe, timeframe)
|
639
|
-
request = {
|
718
|
+
request: dict = {
|
640
719
|
'pairName': market['id'],
|
641
720
|
'resolution': resolution,
|
642
721
|
}
|
@@ -669,7 +748,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
669
748
|
# }
|
670
749
|
#
|
671
750
|
result = self.safe_value(response, 'result', {})
|
672
|
-
data = self.
|
751
|
+
data = self.safe_list(result, 'data', [])
|
673
752
|
return self.parse_ohlcvs(data, market, timeframe, since, limit)
|
674
753
|
|
675
754
|
def parse_ohlcv(self, ohlcv, market: Market = None) -> list:
|
@@ -695,7 +774,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
695
774
|
async def fetch_order_book(self, symbol: str, limit: Int = None, params={}) -> OrderBook:
|
696
775
|
"""
|
697
776
|
fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
|
698
|
-
|
777
|
+
|
778
|
+
https://bit.team/trade/api/documentation#/CMC/getTradeApiCmcOrderbookPair
|
779
|
+
|
699
780
|
:param str symbol: unified symbol of the market to fetch the order book for
|
700
781
|
:param int [limit]: the maximum amount of order book entries to return(default 100, max 200)
|
701
782
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
@@ -703,7 +784,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
703
784
|
"""
|
704
785
|
await self.load_markets()
|
705
786
|
market = self.market(symbol)
|
706
|
-
request = {
|
787
|
+
request: dict = {
|
707
788
|
'pair': market['id'],
|
708
789
|
}
|
709
790
|
response = await self.publicGetTradeApiCmcOrderbookPair(self.extend(request, params))
|
@@ -741,7 +822,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
741
822
|
async def fetch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
742
823
|
"""
|
743
824
|
fetches information on multiple orders made by the user
|
744
|
-
|
825
|
+
|
826
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiCcxtOrdersofuser
|
827
|
+
|
745
828
|
:param str symbol: unified market symbol of the market orders were made in
|
746
829
|
:param int [since]: the earliest time in ms to fetch orders for
|
747
830
|
:param int [limit]: the maximum number of orde structures to retrieve(default 10)
|
@@ -751,7 +834,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
751
834
|
"""
|
752
835
|
await self.load_markets()
|
753
836
|
type = self.safe_string(params, 'type', 'all')
|
754
|
-
request = {
|
837
|
+
request: dict = {
|
755
838
|
'type': type,
|
756
839
|
}
|
757
840
|
market = None
|
@@ -844,20 +927,22 @@ class bitteam(Exchange, ImplicitAPI):
|
|
844
927
|
# }
|
845
928
|
#
|
846
929
|
result = self.safe_value(response, 'result', {})
|
847
|
-
orders = self.
|
930
|
+
orders = self.safe_list(result, 'orders', [])
|
848
931
|
return self.parse_orders(orders, market, since, limit)
|
849
932
|
|
850
933
|
async def fetch_order(self, id: str, symbol: Str = None, params={}) -> Order:
|
851
934
|
"""
|
852
935
|
fetches information on an order
|
853
|
-
|
936
|
+
|
937
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiCcxtOrderId
|
938
|
+
|
854
939
|
:param int|str id: order id
|
855
940
|
:param str symbol: not used by bitteam fetchOrder()
|
856
941
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
857
942
|
:returns dict: An `order structure <https://github.com/ccxt/ccxt/wiki/Manual#order-structure>`
|
858
943
|
"""
|
859
944
|
await self.load_markets()
|
860
|
-
request = {
|
945
|
+
request: dict = {
|
861
946
|
'id': id,
|
862
947
|
}
|
863
948
|
market = None
|
@@ -901,13 +986,15 @@ class bitteam(Exchange, ImplicitAPI):
|
|
901
986
|
# }
|
902
987
|
# }
|
903
988
|
#
|
904
|
-
result = self.
|
989
|
+
result = self.safe_dict(response, 'result')
|
905
990
|
return self.parse_order(result, market)
|
906
991
|
|
907
992
|
async def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
908
993
|
"""
|
909
994
|
fetch all unfilled currently open orders
|
910
|
-
|
995
|
+
|
996
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiCcxtOrdersofuser
|
997
|
+
|
911
998
|
:param str symbol: unified market symbol
|
912
999
|
:param int [since]: the earliest time in ms to fetch open orders for
|
913
1000
|
:param int [limit]: the maximum number of open order structures to retrieve(default 10)
|
@@ -915,7 +1002,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
915
1002
|
:returns Order[]: a list of `order structures <https://github.com/ccxt/ccxt/wiki/Manual#order-structure>`
|
916
1003
|
"""
|
917
1004
|
await self.load_markets()
|
918
|
-
request = {
|
1005
|
+
request: dict = {
|
919
1006
|
'type': 'active',
|
920
1007
|
}
|
921
1008
|
return await self.fetch_orders(symbol, since, limit, self.extend(request, params))
|
@@ -923,7 +1010,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
923
1010
|
async def fetch_closed_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
924
1011
|
"""
|
925
1012
|
fetches information on multiple closed orders made by the user
|
926
|
-
|
1013
|
+
|
1014
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiCcxtOrdersofuser
|
1015
|
+
|
927
1016
|
:param str symbol: unified market symbol of the market orders were made in
|
928
1017
|
:param int [since]: the earliest time in ms to fetch orders for
|
929
1018
|
:param int [limit]: the maximum number of closed order structures to retrieve(default 10)
|
@@ -931,7 +1020,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
931
1020
|
:returns Order[]: a list of `order structures <https://github.com/ccxt/ccxt/wiki/Manual#order-structure>`
|
932
1021
|
"""
|
933
1022
|
await self.load_markets()
|
934
|
-
request = {
|
1023
|
+
request: dict = {
|
935
1024
|
'type': 'closed',
|
936
1025
|
}
|
937
1026
|
return await self.fetch_orders(symbol, since, limit, self.extend(request, params))
|
@@ -939,7 +1028,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
939
1028
|
async def fetch_canceled_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
940
1029
|
"""
|
941
1030
|
fetches information on multiple canceled orders made by the user
|
942
|
-
|
1031
|
+
|
1032
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiCcxtOrdersofuser
|
1033
|
+
|
943
1034
|
:param str symbol: unified market symbol of the market orders were made in
|
944
1035
|
:param int [since]: the earliest time in ms to fetch orders for
|
945
1036
|
:param int [limit]: the maximum number of canceled order structures to retrieve(default 10)
|
@@ -947,7 +1038,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
947
1038
|
:returns dict: a list of `order structures <https://github.com/ccxt/ccxt/wiki/Manual#order-structure>`
|
948
1039
|
"""
|
949
1040
|
await self.load_markets()
|
950
|
-
request = {
|
1041
|
+
request: dict = {
|
951
1042
|
'type': 'cancelled',
|
952
1043
|
}
|
953
1044
|
return await self.fetch_orders(symbol, since, limit, self.extend(request, params))
|
@@ -955,18 +1046,20 @@ class bitteam(Exchange, ImplicitAPI):
|
|
955
1046
|
async def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
|
956
1047
|
"""
|
957
1048
|
create a trade order
|
958
|
-
|
1049
|
+
|
1050
|
+
https://bit.team/trade/api/documentation#/PRIVATE/postTradeApiCcxtOrdercreate
|
1051
|
+
|
959
1052
|
:param str symbol: unified symbol of the market to create an order in
|
960
1053
|
:param str type: 'market' or 'limit'
|
961
1054
|
:param str side: 'buy' or 'sell'
|
962
1055
|
:param float amount: how much of currency you want to trade in units of base currency
|
963
|
-
:param float [price]: the price at which the order is to be
|
1056
|
+
:param float [price]: the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
|
964
1057
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
965
1058
|
:returns dict: an `order structure <https://github.com/ccxt/ccxt/wiki/Manual#order-structure>`
|
966
1059
|
"""
|
967
1060
|
await self.load_markets()
|
968
1061
|
market = self.market(symbol)
|
969
|
-
request = {
|
1062
|
+
request: dict = {
|
970
1063
|
'pairId': str(market['numericId']),
|
971
1064
|
'type': type,
|
972
1065
|
'side': side,
|
@@ -1001,20 +1094,22 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1001
1094
|
# }
|
1002
1095
|
# }
|
1003
1096
|
#
|
1004
|
-
order = self.
|
1097
|
+
order = self.safe_dict(response, 'result', {})
|
1005
1098
|
return self.parse_order(order, market)
|
1006
1099
|
|
1007
1100
|
async def cancel_order(self, id: str, symbol: Str = None, params={}):
|
1008
1101
|
"""
|
1009
1102
|
cancels an open order
|
1010
|
-
|
1103
|
+
|
1104
|
+
https://bit.team/trade/api/documentation#/PRIVATE/postTradeApiCcxtCancelorder
|
1105
|
+
|
1011
1106
|
:param str id: order id
|
1012
1107
|
:param str symbol: not used by bitteam cancelOrder()
|
1013
1108
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
1014
1109
|
:returns dict: An `order structure <https://github.com/ccxt/ccxt/wiki/Manual#order-structure>`
|
1015
1110
|
"""
|
1016
1111
|
await self.load_markets()
|
1017
|
-
request = {
|
1112
|
+
request: dict = {
|
1018
1113
|
'id': id,
|
1019
1114
|
}
|
1020
1115
|
response = await self.privatePostTradeApiCcxtCancelorder(self.extend(request, params))
|
@@ -1026,20 +1121,22 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1026
1121
|
# }
|
1027
1122
|
# }
|
1028
1123
|
#
|
1029
|
-
result = self.
|
1124
|
+
result = self.safe_dict(response, 'result', {})
|
1030
1125
|
return self.parse_order(result)
|
1031
1126
|
|
1032
1127
|
async def cancel_all_orders(self, symbol: Str = None, params={}):
|
1033
1128
|
"""
|
1034
1129
|
cancel open orders of market
|
1035
|
-
|
1130
|
+
|
1131
|
+
https://bit.team/trade/api/documentation#/PRIVATE/postTradeApiCcxtCancelallorder
|
1132
|
+
|
1036
1133
|
:param str symbol: unified market symbol
|
1037
1134
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
1038
1135
|
:returns dict[]: a list of `order structures <https://github.com/ccxt/ccxt/wiki/Manual#order-structure>`
|
1039
1136
|
"""
|
1040
1137
|
await self.load_markets()
|
1041
1138
|
market = None
|
1042
|
-
request = {}
|
1139
|
+
request: dict = {}
|
1043
1140
|
if symbol is not None:
|
1044
1141
|
market = self.market(symbol)
|
1045
1142
|
request['pairId'] = str(market['numericId'])
|
@@ -1058,7 +1155,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1058
1155
|
orders = [result]
|
1059
1156
|
return self.parse_orders(orders, market)
|
1060
1157
|
|
1061
|
-
def parse_order(self, order, market: Market = None) -> Order:
|
1158
|
+
def parse_order(self, order: dict, market: Market = None) -> Order:
|
1062
1159
|
#
|
1063
1160
|
# fetchOrders
|
1064
1161
|
# {
|
@@ -1161,7 +1258,6 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1161
1258
|
side = self.safe_string(order, 'side')
|
1162
1259
|
feeRaw = self.safe_value(order, 'fee')
|
1163
1260
|
price = self.safe_string(order, 'price')
|
1164
|
-
stopPrice = self.safe_string(order, 'stopPrice')
|
1165
1261
|
amount = self.safe_string(order, 'quantity')
|
1166
1262
|
filled = self.safe_string(order, 'executed')
|
1167
1263
|
fee = None
|
@@ -1186,8 +1282,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1186
1282
|
'timeInForce': 'GTC',
|
1187
1283
|
'side': side,
|
1188
1284
|
'price': price,
|
1189
|
-
'
|
1190
|
-
'triggerPrice': stopPrice,
|
1285
|
+
'triggerPrice': self.safe_string(order, 'stopPrice'),
|
1191
1286
|
'average': None,
|
1192
1287
|
'amount': amount,
|
1193
1288
|
'cost': None,
|
@@ -1199,8 +1294,8 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1199
1294
|
'postOnly': False,
|
1200
1295
|
}, market)
|
1201
1296
|
|
1202
|
-
def parse_order_status(self, status):
|
1203
|
-
statuses = {
|
1297
|
+
def parse_order_status(self, status: Str):
|
1298
|
+
statuses: dict = {
|
1204
1299
|
'accepted': 'open',
|
1205
1300
|
'executed': 'closed',
|
1206
1301
|
'cancelled': 'canceled',
|
@@ -1213,7 +1308,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1213
1308
|
return self.safe_string(statuses, status, status)
|
1214
1309
|
|
1215
1310
|
def parse_order_type(self, status):
|
1216
|
-
statuses = {
|
1311
|
+
statuses: dict = {
|
1217
1312
|
'market': 'market',
|
1218
1313
|
'limit': 'limit',
|
1219
1314
|
}
|
@@ -1230,7 +1325,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1230
1325
|
async def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
|
1231
1326
|
"""
|
1232
1327
|
fetches price tickers for multiple markets, statistical calculations with the information calculated over the past 24 hours each market
|
1233
|
-
|
1328
|
+
|
1329
|
+
https://bit.team/trade/api/documentation#/CMC/getTradeApiCmcSummary
|
1330
|
+
|
1234
1331
|
:param str[]|None symbols: unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
1235
1332
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
1236
1333
|
:returns dict: a dictionary of `ticker structures <https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure>`
|
@@ -1280,14 +1377,16 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1280
1377
|
async def fetch_ticker(self, symbol: str, params={}) -> Ticker:
|
1281
1378
|
"""
|
1282
1379
|
fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
1283
|
-
|
1380
|
+
|
1381
|
+
https://bit.team/trade/api/documentation#/PUBLIC/getTradeApiPairName
|
1382
|
+
|
1284
1383
|
:param str symbol: unified symbol of the market to fetch the ticker for
|
1285
1384
|
:param dict [params]: extra parameters specific to the bitteam api endpoint
|
1286
1385
|
:returns dict: a `ticker structure <https://github.com/ccxt/ccxt/wiki/Manual#ticker-structure>`
|
1287
1386
|
"""
|
1288
1387
|
await self.load_markets()
|
1289
1388
|
market = self.market(symbol)
|
1290
|
-
request = {
|
1389
|
+
request: dict = {
|
1291
1390
|
'name': market['id'],
|
1292
1391
|
}
|
1293
1392
|
response = await self.publicGetTradeApiPairName(self.extend(request, params))
|
@@ -1475,10 +1574,10 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1475
1574
|
# }
|
1476
1575
|
#
|
1477
1576
|
result = self.safe_value(response, 'result', {})
|
1478
|
-
pair = self.
|
1577
|
+
pair = self.safe_dict(result, 'pair', {})
|
1479
1578
|
return self.parse_ticker(pair, market)
|
1480
1579
|
|
1481
|
-
def parse_ticker(self, ticker, market: Market = None) -> Ticker:
|
1580
|
+
def parse_ticker(self, ticker: dict, market: Market = None) -> Ticker:
|
1482
1581
|
#
|
1483
1582
|
# fetchTicker
|
1484
1583
|
# {
|
@@ -1607,7 +1706,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1607
1706
|
async def fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={}) -> List[Trade]:
|
1608
1707
|
"""
|
1609
1708
|
get the list of most recent trades for a particular symbol
|
1610
|
-
|
1709
|
+
|
1710
|
+
https://bit.team/trade/api/documentation#/CMC/getTradeApiCmcTradesPair
|
1711
|
+
|
1611
1712
|
:param str symbol: unified symbol of the market to fetch trades for
|
1612
1713
|
:param int [since]: timestamp in ms of the earliest trade to fetch
|
1613
1714
|
:param int [limit]: the maximum amount of trades to fetch
|
@@ -1616,7 +1717,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1616
1717
|
"""
|
1617
1718
|
await self.load_markets()
|
1618
1719
|
market = self.market(symbol)
|
1619
|
-
request = {
|
1720
|
+
request: dict = {
|
1620
1721
|
'pair': market['id'],
|
1621
1722
|
}
|
1622
1723
|
response = await self.publicGetTradeApiCmcTradesPair(self.extend(request, params))
|
@@ -1646,7 +1747,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1646
1747
|
async def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
1647
1748
|
"""
|
1648
1749
|
fetch all trades made by the user
|
1649
|
-
|
1750
|
+
|
1751
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiCcxtTradesofuser
|
1752
|
+
|
1650
1753
|
:param str symbol: unified market symbol
|
1651
1754
|
:param int [since]: the earliest time in ms to fetch trades for
|
1652
1755
|
:param int [limit]: the maximum number of trades structures to retrieve(default 10)
|
@@ -1654,7 +1757,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1654
1757
|
:returns Trade[]: a list of `trade structures <https://github.com/ccxt/ccxt/wiki/Manual#trade-structure>`
|
1655
1758
|
"""
|
1656
1759
|
await self.load_markets()
|
1657
|
-
request = {}
|
1760
|
+
request: dict = {}
|
1658
1761
|
market = None
|
1659
1762
|
if symbol is not None:
|
1660
1763
|
market = self.market(symbol)
|
@@ -1796,10 +1899,10 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1796
1899
|
# }
|
1797
1900
|
#
|
1798
1901
|
result = self.safe_value(response, 'result', {})
|
1799
|
-
trades = self.
|
1902
|
+
trades = self.safe_list(result, 'trades', [])
|
1800
1903
|
return self.parse_trades(trades, market, since, limit)
|
1801
1904
|
|
1802
|
-
def parse_trade(self, trade, market: Market = None) -> Trade:
|
1905
|
+
def parse_trade(self, trade: dict, market: Market = None) -> Trade:
|
1803
1906
|
#
|
1804
1907
|
# fetchTrades
|
1805
1908
|
# {
|
@@ -1884,7 +1987,6 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1884
1987
|
fee = {
|
1885
1988
|
'currency': self.safe_currency_code(feeCurrencyId),
|
1886
1989
|
'cost': feeCost,
|
1887
|
-
'rate': None,
|
1888
1990
|
}
|
1889
1991
|
intTs = self.parse_to_int(timestamp)
|
1890
1992
|
return self.safe_trade({
|
@@ -1906,7 +2008,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1906
2008
|
async def fetch_balance(self, params={}) -> Balances:
|
1907
2009
|
"""
|
1908
2010
|
query for balance and get the amount of funds available for trading or funds locked in orders
|
1909
|
-
|
2011
|
+
|
2012
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiCcxtBalance
|
2013
|
+
|
1910
2014
|
:param dict [params]: extra parameters specific to the betteam api endpoint
|
1911
2015
|
:returns dict: a `balance structure <https://github.com/ccxt/ccxt/wiki/Manual#balance-structure>`
|
1912
2016
|
"""
|
@@ -1957,7 +2061,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1957
2061
|
# }
|
1958
2062
|
#
|
1959
2063
|
timestamp = self.milliseconds()
|
1960
|
-
balance = {
|
2064
|
+
balance: dict = {
|
1961
2065
|
'info': response,
|
1962
2066
|
'timestamp': timestamp,
|
1963
2067
|
'datetime': self.iso8601(timestamp),
|
@@ -1982,7 +2086,9 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1982
2086
|
async def fetch_deposits_withdrawals(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
|
1983
2087
|
"""
|
1984
2088
|
fetch history of deposits and withdrawals from external wallets and between CoinList Pro trading account and CoinList wallet
|
1985
|
-
|
2089
|
+
|
2090
|
+
https://bit.team/trade/api/documentation#/PRIVATE/getTradeApiTransactionsofuser
|
2091
|
+
|
1986
2092
|
:param str [code]: unified currency code for the currency of the deposit/withdrawals
|
1987
2093
|
:param int [since]: timestamp in ms of the earliest deposit/withdrawal
|
1988
2094
|
:param int [limit]: max number of deposit/withdrawals to return(default 10)
|
@@ -1991,7 +2097,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
1991
2097
|
"""
|
1992
2098
|
await self.load_markets()
|
1993
2099
|
currency = None
|
1994
|
-
request = {}
|
2100
|
+
request: dict = {}
|
1995
2101
|
if code is not None:
|
1996
2102
|
currency = self.currency(code)
|
1997
2103
|
request['currency'] = currency['numericId']
|
@@ -2087,10 +2193,10 @@ class bitteam(Exchange, ImplicitAPI):
|
|
2087
2193
|
# }
|
2088
2194
|
#
|
2089
2195
|
result = self.safe_value(response, 'result', {})
|
2090
|
-
transactions = self.
|
2196
|
+
transactions = self.safe_list(result, 'transactions', [])
|
2091
2197
|
return self.parse_transactions(transactions, currency, since, limit)
|
2092
2198
|
|
2093
|
-
def parse_transaction(self, transaction, currency: Currency = None) -> Transaction:
|
2199
|
+
def parse_transaction(self, transaction: dict, currency: Currency = None) -> Transaction:
|
2094
2200
|
#
|
2095
2201
|
# {
|
2096
2202
|
# "id": 1329229,
|
@@ -2180,14 +2286,14 @@ class bitteam(Exchange, ImplicitAPI):
|
|
2180
2286
|
}
|
2181
2287
|
|
2182
2288
|
def parse_transaction_type(self, type):
|
2183
|
-
types = {
|
2289
|
+
types: dict = {
|
2184
2290
|
'deposit': 'deposit',
|
2185
2291
|
'withdraw': 'withdrawal',
|
2186
2292
|
}
|
2187
2293
|
return self.safe_string(types, type, type)
|
2188
2294
|
|
2189
|
-
def parse_transaction_status(self, status):
|
2190
|
-
statuses = {
|
2295
|
+
def parse_transaction_status(self, status: Str):
|
2296
|
+
statuses: dict = {
|
2191
2297
|
'approving': 'pending',
|
2192
2298
|
'success': 'ok',
|
2193
2299
|
}
|
@@ -2215,7 +2321,7 @@ class bitteam(Exchange, ImplicitAPI):
|
|
2215
2321
|
url += '?' + query
|
2216
2322
|
return {'url': url, 'method': method, 'body': body, 'headers': headers}
|
2217
2323
|
|
2218
|
-
def handle_errors(self, code, reason, url, method, headers, body, response, requestHeaders, requestBody):
|
2324
|
+
def handle_errors(self, code: int, reason: str, url: str, method: str, headers: dict, body: str, response, requestHeaders, requestBody):
|
2219
2325
|
if response is None:
|
2220
2326
|
return None
|
2221
2327
|
if code != 200:
|