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/gateio.py
CHANGED
|
@@ -5,11 +5,12 @@
|
|
|
5
5
|
|
|
6
6
|
from ccxt.async_support.gate import gate
|
|
7
7
|
from ccxt.abstract.gateio import ImplicitAPI
|
|
8
|
+
from ccxt.base.types import Any
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
class gateio(gate, ImplicitAPI):
|
|
11
12
|
|
|
12
|
-
def describe(self):
|
|
13
|
+
def describe(self) -> Any:
|
|
13
14
|
return self.deep_extend(super(gateio, self).describe(), {
|
|
14
15
|
'id': 'gateio',
|
|
15
16
|
'alias': True,
|
ccxt/async_support/gemini.py
CHANGED
|
@@ -7,7 +7,7 @@ from ccxt.async_support.base.exchange import Exchange
|
|
|
7
7
|
from ccxt.abstract.gemini import ImplicitAPI
|
|
8
8
|
import asyncio
|
|
9
9
|
import hashlib
|
|
10
|
-
from ccxt.base.types import Balances, Currencies, Currency, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
|
|
10
|
+
from ccxt.base.types import Any, Balances, Currencies, Currency, DepositAddress, Int, Market, Num, Order, OrderBook, OrderSide, OrderType, Str, Strings, Ticker, Tickers, Trade, TradingFees, Transaction
|
|
11
11
|
from typing import List
|
|
12
12
|
from ccxt.base.errors import ExchangeError
|
|
13
13
|
from ccxt.base.errors import AuthenticationError
|
|
@@ -28,7 +28,7 @@ from ccxt.base.precise import Precise
|
|
|
28
28
|
|
|
29
29
|
class gemini(Exchange, ImplicitAPI):
|
|
30
30
|
|
|
31
|
-
def describe(self):
|
|
31
|
+
def describe(self) -> Any:
|
|
32
32
|
return self.deep_extend(super(gemini, self).describe(), {
|
|
33
33
|
'id': 'gemini',
|
|
34
34
|
'name': 'Gemini',
|
|
@@ -62,6 +62,7 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
62
62
|
'fetchCrossBorrowRates': False,
|
|
63
63
|
'fetchCurrencies': True,
|
|
64
64
|
'fetchDepositAddress': True,
|
|
65
|
+
'fetchDepositAddresses': False,
|
|
65
66
|
'fetchDepositAddressesByNetwork': True,
|
|
66
67
|
'fetchDepositsWithdrawals': True,
|
|
67
68
|
'fetchFundingHistory': False,
|
|
@@ -200,6 +201,7 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
200
201
|
'v1/account/create': 1,
|
|
201
202
|
'v1/account/list': 1,
|
|
202
203
|
'v1/heartbeat': 1,
|
|
204
|
+
'v1/roles': 1,
|
|
203
205
|
},
|
|
204
206
|
},
|
|
205
207
|
},
|
|
@@ -274,7 +276,7 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
274
276
|
'fetchMarketFromWebRetries': 10,
|
|
275
277
|
'fetchMarketsFromAPI': {
|
|
276
278
|
'fetchDetailsForAllSymbols': False,
|
|
277
|
-
'quoteCurrencies': ['USDT', 'GUSD', 'USD', 'DAI', 'EUR', 'GBP', 'SGD', 'BTC', 'ETH', 'LTC', 'BCH'],
|
|
279
|
+
'quoteCurrencies': ['USDT', 'GUSD', 'USD', 'DAI', 'EUR', 'GBP', 'SGD', 'BTC', 'ETH', 'LTC', 'BCH', 'SOL'],
|
|
278
280
|
},
|
|
279
281
|
'fetchMarkets': {
|
|
280
282
|
'webApiEnable': True, # fetches from WEB
|
|
@@ -309,6 +311,72 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
309
311
|
},
|
|
310
312
|
},
|
|
311
313
|
},
|
|
314
|
+
'features': {
|
|
315
|
+
'default': {
|
|
316
|
+
'sandbox': True,
|
|
317
|
+
'createOrder': {
|
|
318
|
+
'marginMode': False,
|
|
319
|
+
'triggerPrice': True,
|
|
320
|
+
'triggerPriceType': None,
|
|
321
|
+
'triggerDirection': False,
|
|
322
|
+
'stopLossPrice': False, # todo
|
|
323
|
+
'takeProfitPrice': False, # todo
|
|
324
|
+
'attachedStopLossTakeProfit': None,
|
|
325
|
+
'timeInForce': {
|
|
326
|
+
'IOC': True,
|
|
327
|
+
'FOK': True,
|
|
328
|
+
'PO': True,
|
|
329
|
+
'GTD': False,
|
|
330
|
+
},
|
|
331
|
+
'hedged': False,
|
|
332
|
+
'trailing': False,
|
|
333
|
+
'leverage': False,
|
|
334
|
+
'marketBuyByCost': True,
|
|
335
|
+
'marketBuyRequiresPrice': False,
|
|
336
|
+
'selfTradePrevention': False,
|
|
337
|
+
'iceberg': False,
|
|
338
|
+
},
|
|
339
|
+
'createOrders': None,
|
|
340
|
+
'fetchMyTrades': {
|
|
341
|
+
'marginMode': False,
|
|
342
|
+
'limit': 500,
|
|
343
|
+
'daysBack': None,
|
|
344
|
+
'untilDays': None,
|
|
345
|
+
'symbolRequired': True,
|
|
346
|
+
},
|
|
347
|
+
'fetchOrder': {
|
|
348
|
+
'marginMode': False,
|
|
349
|
+
'trigger': False,
|
|
350
|
+
'trailing': False,
|
|
351
|
+
'symbolRequired': False,
|
|
352
|
+
},
|
|
353
|
+
'fetchOpenOrders': {
|
|
354
|
+
'marginMode': False,
|
|
355
|
+
'limit': None,
|
|
356
|
+
'trigger': False,
|
|
357
|
+
'trailing': False,
|
|
358
|
+
'symbolRequired': False,
|
|
359
|
+
},
|
|
360
|
+
'fetchOrders': None,
|
|
361
|
+
'fetchClosedOrders': None, # todo: implement
|
|
362
|
+
'fetchOHLCV': {
|
|
363
|
+
'limit': None,
|
|
364
|
+
},
|
|
365
|
+
},
|
|
366
|
+
'spot': {
|
|
367
|
+
'extends': 'default',
|
|
368
|
+
},
|
|
369
|
+
'swap': {
|
|
370
|
+
'linear': {
|
|
371
|
+
'extends': 'default',
|
|
372
|
+
},
|
|
373
|
+
'inverse': None,
|
|
374
|
+
},
|
|
375
|
+
'future': {
|
|
376
|
+
'linear': None,
|
|
377
|
+
'inverse': None,
|
|
378
|
+
},
|
|
379
|
+
},
|
|
312
380
|
})
|
|
313
381
|
|
|
314
382
|
async def fetch_currencies(self, params={}) -> Currencies:
|
|
@@ -321,7 +389,7 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
321
389
|
|
|
322
390
|
async def fetch_currencies_from_web(self, params={}):
|
|
323
391
|
"""
|
|
324
|
-
|
|
392
|
+
@ignore
|
|
325
393
|
fetches all available currencies on an exchange
|
|
326
394
|
:param dict [params]: extra parameters specific to the endpoint
|
|
327
395
|
:returns dict: an associative dictionary of currencies
|
|
@@ -363,7 +431,6 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
363
431
|
networkCode = None
|
|
364
432
|
if networkId is not None:
|
|
365
433
|
networkCode = self.network_id_to_code(networkId)
|
|
366
|
-
if networkCode is not None:
|
|
367
434
|
networks[networkCode] = {
|
|
368
435
|
'info': currency,
|
|
369
436
|
'id': networkId,
|
|
@@ -384,7 +451,7 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
384
451
|
},
|
|
385
452
|
},
|
|
386
453
|
}
|
|
387
|
-
result[code] = {
|
|
454
|
+
result[code] = self.safe_currency_structure({
|
|
388
455
|
'info': currency,
|
|
389
456
|
'id': id,
|
|
390
457
|
'code': code,
|
|
@@ -406,13 +473,15 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
406
473
|
},
|
|
407
474
|
},
|
|
408
475
|
'networks': networks,
|
|
409
|
-
}
|
|
476
|
+
})
|
|
410
477
|
return result
|
|
411
478
|
|
|
412
479
|
async def fetch_markets(self, params={}) -> List[Market]:
|
|
413
480
|
"""
|
|
414
481
|
retrieves data on all markets for gemini
|
|
415
|
-
|
|
482
|
+
|
|
483
|
+
https://docs.gemini.com/rest-api/#symbols
|
|
484
|
+
|
|
416
485
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
417
486
|
:returns dict[]: an array of objects representing market data
|
|
418
487
|
"""
|
|
@@ -752,7 +821,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
752
821
|
async def fetch_order_book(self, symbol: str, limit: Int = None, params={}) -> OrderBook:
|
|
753
822
|
"""
|
|
754
823
|
fetches information on open orders with bid(buy) and ask(sell) prices, volumes and other data
|
|
755
|
-
|
|
824
|
+
|
|
825
|
+
https://docs.gemini.com/rest-api/#current-order-book
|
|
826
|
+
|
|
756
827
|
:param str symbol: unified symbol of the market to fetch the order book for
|
|
757
828
|
:param int [limit]: the maximum amount of order book entries to return
|
|
758
829
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
@@ -813,8 +884,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
813
884
|
return self.parse_ticker(response, market)
|
|
814
885
|
|
|
815
886
|
async def fetch_ticker_v1_and_v2(self, symbol: str, params={}):
|
|
816
|
-
|
|
817
|
-
|
|
887
|
+
tickerPromiseA = self.fetch_ticker_v1(symbol, params)
|
|
888
|
+
tickerPromiseB = self.fetch_ticker_v2(symbol, params)
|
|
889
|
+
tickerA, tickerB = await asyncio.gather(*[tickerPromiseA, tickerPromiseB])
|
|
818
890
|
return self.deep_extend(tickerA, {
|
|
819
891
|
'open': tickerB['open'],
|
|
820
892
|
'high': tickerB['high'],
|
|
@@ -828,8 +900,10 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
828
900
|
async def fetch_ticker(self, symbol: str, params={}) -> Ticker:
|
|
829
901
|
"""
|
|
830
902
|
fetches a price ticker, a statistical calculation with the information calculated over the past 24 hours for a specific market
|
|
831
|
-
|
|
832
|
-
|
|
903
|
+
|
|
904
|
+
https://docs.gemini.com/rest-api/#ticker
|
|
905
|
+
https://docs.gemini.com/rest-api/#ticker-v2
|
|
906
|
+
|
|
833
907
|
:param str symbol: unified symbol of the market to fetch the ticker for
|
|
834
908
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
835
909
|
:param dict [params.fetchTickerMethod]: 'fetchTickerV2', 'fetchTickerV1' or 'fetchTickerV1AndV2' - 'fetchTickerV1' for original ccxt.gemini.fetchTicker - 'fetchTickerV1AndV2' for 2 api calls to get the result of both fetchTicker methods - default = 'fetchTickerV1'
|
|
@@ -935,7 +1009,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
935
1009
|
async def fetch_tickers(self, symbols: Strings = None, params={}) -> Tickers:
|
|
936
1010
|
"""
|
|
937
1011
|
fetches price tickers for multiple markets, statistical information calculated over the past 24 hours for each market
|
|
938
|
-
|
|
1012
|
+
|
|
1013
|
+
https://docs.gemini.com/rest-api/#price-feed
|
|
1014
|
+
|
|
939
1015
|
:param str[]|None symbols: unified symbols of the markets to fetch the ticker for, all market tickers are returned if not assigned
|
|
940
1016
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
941
1017
|
:returns dict: a dictionary of `ticker structures <https://docs.ccxt.com/#/?id=ticker-structure>`
|
|
@@ -1024,7 +1100,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1024
1100
|
async def fetch_trades(self, symbol: str, since: Int = None, limit: Int = None, params={}) -> List[Trade]:
|
|
1025
1101
|
"""
|
|
1026
1102
|
get the list of most recent trades for a particular symbol
|
|
1027
|
-
|
|
1103
|
+
|
|
1104
|
+
https://docs.gemini.com/rest-api/#trade-history
|
|
1105
|
+
|
|
1028
1106
|
:param str symbol: unified symbol of the market to fetch trades for
|
|
1029
1107
|
:param int [since]: timestamp in ms of the earliest trade to fetch
|
|
1030
1108
|
:param int [limit]: the maximum amount of trades to fetch
|
|
@@ -1071,7 +1149,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1071
1149
|
async def fetch_trading_fees(self, params={}) -> TradingFees:
|
|
1072
1150
|
"""
|
|
1073
1151
|
fetch the trading fees for multiple markets
|
|
1074
|
-
|
|
1152
|
+
|
|
1153
|
+
https://docs.gemini.com/rest-api/#get-notional-volume
|
|
1154
|
+
|
|
1075
1155
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
1076
1156
|
:returns dict: a dictionary of `fee structures <https://docs.ccxt.com/#/?id=fee-structure>` indexed by market symbols
|
|
1077
1157
|
"""
|
|
@@ -1127,7 +1207,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1127
1207
|
async def fetch_balance(self, params={}) -> Balances:
|
|
1128
1208
|
"""
|
|
1129
1209
|
query for balance and get the amount of funds available for trading or funds locked in orders
|
|
1130
|
-
|
|
1210
|
+
|
|
1211
|
+
https://docs.gemini.com/rest-api/#get-available-balances
|
|
1212
|
+
|
|
1131
1213
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
1132
1214
|
:returns dict: a `balance structure <https://docs.ccxt.com/#/?id=balance-structure>`
|
|
1133
1215
|
"""
|
|
@@ -1284,7 +1366,6 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1284
1366
|
'postOnly': postOnly,
|
|
1285
1367
|
'side': side,
|
|
1286
1368
|
'price': price,
|
|
1287
|
-
'stopPrice': None,
|
|
1288
1369
|
'triggerPrice': None,
|
|
1289
1370
|
'average': average,
|
|
1290
1371
|
'cost': None,
|
|
@@ -1298,7 +1379,10 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1298
1379
|
async def fetch_order(self, id: str, symbol: Str = None, params={}):
|
|
1299
1380
|
"""
|
|
1300
1381
|
fetches information on an order made by the user
|
|
1301
|
-
|
|
1382
|
+
|
|
1383
|
+
https://docs.gemini.com/rest-api/#order-status
|
|
1384
|
+
|
|
1385
|
+
:param str id: order id
|
|
1302
1386
|
:param str symbol: unified symbol of the market the order was made in
|
|
1303
1387
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
1304
1388
|
:returns dict: An `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
|
@@ -1336,7 +1420,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1336
1420
|
async def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
|
|
1337
1421
|
"""
|
|
1338
1422
|
fetch all unfilled currently open orders
|
|
1339
|
-
|
|
1423
|
+
|
|
1424
|
+
https://docs.gemini.com/rest-api/#get-active-orders
|
|
1425
|
+
|
|
1340
1426
|
:param str symbol: unified market symbol
|
|
1341
1427
|
:param int [since]: the earliest time in ms to fetch open orders for
|
|
1342
1428
|
:param int [limit]: the maximum number of open orders structures to retrieve
|
|
@@ -1378,12 +1464,14 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1378
1464
|
async def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount: float, price: Num = None, params={}):
|
|
1379
1465
|
"""
|
|
1380
1466
|
create a trade order
|
|
1381
|
-
|
|
1467
|
+
|
|
1468
|
+
https://docs.gemini.com/rest-api/#new-order
|
|
1469
|
+
|
|
1382
1470
|
:param str symbol: unified symbol of the market to create an order in
|
|
1383
1471
|
:param str type: must be 'limit'
|
|
1384
1472
|
:param str side: 'buy' or 'sell'
|
|
1385
1473
|
:param float amount: how much of currency you want to trade in units of base currency
|
|
1386
|
-
:param float [price]: the price at which the order is to be
|
|
1474
|
+
:param float [price]: the price at which the order is to be fulfilled, in units of the quote currency, ignored in market orders
|
|
1387
1475
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
1388
1476
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
|
1389
1477
|
"""
|
|
@@ -1408,12 +1496,12 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1408
1496
|
}
|
|
1409
1497
|
type = self.safe_string(params, 'type', type)
|
|
1410
1498
|
params = self.omit(params, 'type')
|
|
1411
|
-
|
|
1412
|
-
params = self.omit(params, ['stop_price', 'stopPrice', 'type'])
|
|
1499
|
+
triggerPrice = self.safe_string_n(params, ['triggerPrice', 'stop_price', 'stopPrice'])
|
|
1500
|
+
params = self.omit(params, ['triggerPrice', 'stop_price', 'stopPrice', 'type'])
|
|
1413
1501
|
if type == 'stopLimit':
|
|
1414
|
-
raise ArgumentsRequired(self.id + ' createOrder() requires a
|
|
1415
|
-
if
|
|
1416
|
-
request['stop_price'] = self.price_to_precision(symbol,
|
|
1502
|
+
raise ArgumentsRequired(self.id + ' createOrder() requires a triggerPrice parameter or a stop_price parameter for ' + type + ' orders')
|
|
1503
|
+
if triggerPrice is not None:
|
|
1504
|
+
request['stop_price'] = self.price_to_precision(symbol, triggerPrice)
|
|
1417
1505
|
request['type'] = 'exchange stop limit'
|
|
1418
1506
|
else:
|
|
1419
1507
|
# No options can be applied to stop-limit orders at self time.
|
|
@@ -1463,7 +1551,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1463
1551
|
async def cancel_order(self, id: str, symbol: Str = None, params={}):
|
|
1464
1552
|
"""
|
|
1465
1553
|
cancels an open order
|
|
1466
|
-
|
|
1554
|
+
|
|
1555
|
+
https://docs.gemini.com/rest-api/#cancel-order
|
|
1556
|
+
|
|
1467
1557
|
:param str id: order id
|
|
1468
1558
|
:param str symbol: unified symbol of the market the order was made in
|
|
1469
1559
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
@@ -1503,7 +1593,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1503
1593
|
async def fetch_my_trades(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}):
|
|
1504
1594
|
"""
|
|
1505
1595
|
fetch all trades made by the user
|
|
1506
|
-
|
|
1596
|
+
|
|
1597
|
+
https://docs.gemini.com/rest-api/#get-past-trades
|
|
1598
|
+
|
|
1507
1599
|
:param str symbol: unified market symbol
|
|
1508
1600
|
:param int [since]: the earliest time in ms to fetch trades for
|
|
1509
1601
|
:param int [limit]: the maximum number of trades structures to retrieve
|
|
@@ -1524,10 +1616,12 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1524
1616
|
response = await self.privatePostV1Mytrades(self.extend(request, params))
|
|
1525
1617
|
return self.parse_trades(response, market, since, limit)
|
|
1526
1618
|
|
|
1527
|
-
async def withdraw(self, code: str, amount: float, address: str, tag=None, params={}):
|
|
1619
|
+
async def withdraw(self, code: str, amount: float, address: str, tag: Str = None, params={}) -> Transaction:
|
|
1528
1620
|
"""
|
|
1529
1621
|
make a withdrawal
|
|
1530
|
-
|
|
1622
|
+
|
|
1623
|
+
https://docs.gemini.com/rest-api/#withdraw-crypto-funds
|
|
1624
|
+
|
|
1531
1625
|
:param str code: unified currency code
|
|
1532
1626
|
:param float amount: the amount to withdraw
|
|
1533
1627
|
:param str address: the address to withdraw to
|
|
@@ -1582,7 +1676,9 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1582
1676
|
async def fetch_deposits_withdrawals(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Transaction]:
|
|
1583
1677
|
"""
|
|
1584
1678
|
fetch history of deposits and withdrawals
|
|
1585
|
-
|
|
1679
|
+
|
|
1680
|
+
https://docs.gemini.com/rest-api/#transfers
|
|
1681
|
+
|
|
1586
1682
|
:param str [code]: unified currency code for the currency of the deposit/withdrawals, default is None
|
|
1587
1683
|
:param int [since]: timestamp in ms of the earliest deposit/withdrawal, default is None
|
|
1588
1684
|
:param int [limit]: max number of deposit/withdrawals to return, default is None
|
|
@@ -1679,9 +1775,11 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1679
1775
|
'info': depositAddress,
|
|
1680
1776
|
}
|
|
1681
1777
|
|
|
1682
|
-
async def fetch_deposit_address(self, code: str, params={}):
|
|
1778
|
+
async def fetch_deposit_address(self, code: str, params={}) -> DepositAddress:
|
|
1683
1779
|
"""
|
|
1684
|
-
|
|
1780
|
+
|
|
1781
|
+
https://docs.gemini.com/rest-api/#get-deposit-addresses
|
|
1782
|
+
|
|
1685
1783
|
fetch the deposit address for a currency associated with self account
|
|
1686
1784
|
:param str code: unified currency code
|
|
1687
1785
|
:param dict [params]: extra parameters specific to the endpoint
|
|
@@ -1695,10 +1793,12 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1695
1793
|
networkGroup = self.index_by(self.safe_value(groupedByNetwork, networkCode), 'currency')
|
|
1696
1794
|
return self.safe_value(networkGroup, code)
|
|
1697
1795
|
|
|
1698
|
-
async def fetch_deposit_addresses_by_network(self, code: str, params={}):
|
|
1796
|
+
async def fetch_deposit_addresses_by_network(self, code: str, params={}) -> List[DepositAddress]:
|
|
1699
1797
|
"""
|
|
1700
1798
|
fetch a dictionary of addresses for a currency, indexed by network
|
|
1701
|
-
|
|
1799
|
+
|
|
1800
|
+
https://docs.gemini.com/rest-api/#get-deposit-addresses
|
|
1801
|
+
|
|
1702
1802
|
:param str code: unified currency code of the currency for the deposit address
|
|
1703
1803
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
1704
1804
|
:param str [params.network]: *required* The chain of currency
|
|
@@ -1773,10 +1873,12 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1773
1873
|
raise ExchangeError(feedback) # unknown message
|
|
1774
1874
|
return None
|
|
1775
1875
|
|
|
1776
|
-
async def create_deposit_address(self, code: str, params={}):
|
|
1876
|
+
async def create_deposit_address(self, code: str, params={}) -> DepositAddress:
|
|
1777
1877
|
"""
|
|
1778
1878
|
create a currency deposit address
|
|
1779
|
-
|
|
1879
|
+
|
|
1880
|
+
https://docs.gemini.com/rest-api/#new-deposit-address
|
|
1881
|
+
|
|
1780
1882
|
:param str code: unified currency code of the currency for the deposit address
|
|
1781
1883
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
|
1782
1884
|
:returns dict: an `address structure <https://docs.ccxt.com/#/?id=address-structure>`
|
|
@@ -1793,13 +1895,16 @@ class gemini(Exchange, ImplicitAPI):
|
|
|
1793
1895
|
'currency': code,
|
|
1794
1896
|
'address': address,
|
|
1795
1897
|
'tag': None,
|
|
1898
|
+
'network': None,
|
|
1796
1899
|
'info': response,
|
|
1797
1900
|
}
|
|
1798
1901
|
|
|
1799
1902
|
async def fetch_ohlcv(self, symbol: str, timeframe='1m', since: Int = None, limit: Int = None, params={}) -> List[list]:
|
|
1800
1903
|
"""
|
|
1801
1904
|
fetches historical candlestick data containing the open, high, low, and close price, and the volume of a market
|
|
1802
|
-
|
|
1905
|
+
|
|
1906
|
+
https://docs.gemini.com/rest-api/#candles
|
|
1907
|
+
|
|
1803
1908
|
:param str symbol: unified symbol of the market to fetch OHLCV data for
|
|
1804
1909
|
:param str timeframe: the length of time each candle represents
|
|
1805
1910
|
:param int [since]: timestamp in ms of the earliest candle to fetch
|