ccxt 4.1.88__py2.py3-none-any.whl → 4.1.90__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ccxt might be problematic. Click here for more details.
- ccxt/__init__.py +1 -1
- ccxt/abstract/phemex.py +1 -0
- ccxt/async_support/__init__.py +1 -1
- ccxt/async_support/base/exchange.py +3 -3
- ccxt/async_support/bigone.py +8 -1
- ccxt/async_support/binance.py +1 -1
- ccxt/async_support/bitforex.py +2 -0
- ccxt/async_support/bitget.py +9 -4
- ccxt/async_support/bitmex.py +2 -0
- ccxt/async_support/blockchaincom.py +0 -37
- ccxt/async_support/bybit.py +23 -14
- ccxt/async_support/coinex.py +12 -0
- ccxt/async_support/coinlist.py +2 -0
- ccxt/async_support/coinsph.py +2 -0
- ccxt/async_support/cryptocom.py +2 -0
- ccxt/async_support/gate.py +258 -11
- ccxt/async_support/htx.py +223 -207
- ccxt/async_support/kuna.py +2 -0
- ccxt/async_support/mexc.py +2 -0
- ccxt/async_support/okcoin.py +56 -16
- ccxt/async_support/phemex.py +151 -28
- ccxt/async_support/poloniex.py +23 -2
- ccxt/async_support/tokocrypto.py +25 -12
- ccxt/async_support/wazirx.py +2 -0
- ccxt/async_support/whitebit.py +2 -0
- ccxt/async_support/woo.py +38 -12
- ccxt/base/exchange.py +3 -3
- ccxt/bigone.py +8 -1
- ccxt/binance.py +1 -1
- ccxt/bitforex.py +2 -0
- ccxt/bitget.py +9 -4
- ccxt/bitmex.py +2 -0
- ccxt/blockchaincom.py +0 -37
- ccxt/bybit.py +23 -14
- ccxt/coinex.py +12 -0
- ccxt/coinlist.py +2 -0
- ccxt/coinsph.py +2 -0
- ccxt/cryptocom.py +2 -0
- ccxt/gate.py +258 -11
- ccxt/htx.py +223 -207
- ccxt/kuna.py +2 -0
- ccxt/mexc.py +2 -0
- ccxt/okcoin.py +56 -16
- ccxt/phemex.py +151 -28
- ccxt/poloniex.py +23 -2
- ccxt/pro/__init__.py +1 -1
- ccxt/pro/binance.py +6 -6
- ccxt/pro/poloniex.py +15 -11
- ccxt/tokocrypto.py +25 -12
- ccxt/wazirx.py +2 -0
- ccxt/whitebit.py +2 -0
- ccxt/woo.py +38 -12
- {ccxt-4.1.88.dist-info → ccxt-4.1.90.dist-info}/METADATA +5 -5
- {ccxt-4.1.88.dist-info → ccxt-4.1.90.dist-info}/RECORD +56 -56
- {ccxt-4.1.88.dist-info → ccxt-4.1.90.dist-info}/WHEEL +0 -0
- {ccxt-4.1.88.dist-info → ccxt-4.1.90.dist-info}/top_level.txt +0 -0
ccxt/async_support/wazirx.py
CHANGED
@@ -98,6 +98,8 @@ class wazirx(Exchange, ImplicitAPI):
|
|
98
98
|
'fetchTransfers': False,
|
99
99
|
'fetchWithdrawals': False,
|
100
100
|
'reduceMargin': False,
|
101
|
+
'repayCrossMargin': False,
|
102
|
+
'repayIsolatedMargin': False,
|
101
103
|
'setLeverage': False,
|
102
104
|
'setMargin': False,
|
103
105
|
'setMarginMode': False,
|
ccxt/async_support/whitebit.py
CHANGED
ccxt/async_support/woo.py
CHANGED
@@ -12,6 +12,7 @@ from ccxt.base.errors import ExchangeError
|
|
12
12
|
from ccxt.base.errors import ArgumentsRequired
|
13
13
|
from ccxt.base.errors import BadRequest
|
14
14
|
from ccxt.base.errors import InvalidOrder
|
15
|
+
from ccxt.base.errors import NotSupported
|
15
16
|
from ccxt.base.errors import RateLimitExceeded
|
16
17
|
from ccxt.base.errors import AuthenticationError
|
17
18
|
from ccxt.base.decimal_to_precision import TICK_SIZE
|
@@ -44,7 +45,10 @@ class woo(Exchange, ImplicitAPI):
|
|
44
45
|
'closeAllPositions': False,
|
45
46
|
'closePosition': False,
|
46
47
|
'createDepositAddress': False,
|
48
|
+
'createMarketBuyOrderWithCost': True,
|
47
49
|
'createMarketOrder': False,
|
50
|
+
'createMarketOrderWithCost': False,
|
51
|
+
'createMarketSellOrderWithCost': False,
|
48
52
|
'createOrder': True,
|
49
53
|
'createReduceOnlyOrder': True,
|
50
54
|
'createStopLimitOrder': False,
|
@@ -728,6 +732,22 @@ class woo(Exchange, ImplicitAPI):
|
|
728
732
|
}
|
729
733
|
return result
|
730
734
|
|
735
|
+
async def create_market_buy_order_with_cost(self, symbol: str, cost, params={}):
|
736
|
+
"""
|
737
|
+
create a market buy order by providing the symbol and cost
|
738
|
+
:see: https://docs.woo.org/#send-order
|
739
|
+
:param str symbol: unified symbol of the market to create an order in
|
740
|
+
:param float cost: how much you want to trade in units of the quote currency
|
741
|
+
:param dict [params]: extra parameters specific to the exchange API endpoint
|
742
|
+
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
743
|
+
"""
|
744
|
+
await self.load_markets()
|
745
|
+
market = self.market(symbol)
|
746
|
+
if not market['spot']:
|
747
|
+
raise NotSupported(self.id + ' createMarketBuyOrderWithCost() supports spot orders only')
|
748
|
+
params['createMarketBuyOrderRequiresPrice'] = False
|
749
|
+
return await self.create_order(symbol, 'market', 'buy', cost, None, params)
|
750
|
+
|
731
751
|
async def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, params={}):
|
732
752
|
"""
|
733
753
|
:see: https://docs.woo.org/#send-order
|
@@ -745,9 +765,11 @@ class woo(Exchange, ImplicitAPI):
|
|
745
765
|
:param dict [params.stopLoss]: *stopLoss object in params* containing the triggerPrice at which the attached stop loss order will be triggered(perpetual swap markets only)
|
746
766
|
:param float [params.stopLoss.triggerPrice]: stop loss trigger price
|
747
767
|
:param float [params.algoType]: 'STOP'or 'TRAILING_STOP' or 'OCO' or 'CLOSE_POSITION'
|
768
|
+
:param float [params.cost]: *spot market buy only* the quote quantity that can be used alternative for the amount
|
748
769
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
749
770
|
"""
|
750
771
|
reduceOnly = self.safe_value_2(params, 'reduceOnly', 'reduce_only')
|
772
|
+
params = self.omit(params, ['reduceOnly', 'reduce_only'])
|
751
773
|
orderType = type.upper()
|
752
774
|
await self.load_markets()
|
753
775
|
market = self.market(symbol)
|
@@ -784,20 +806,24 @@ class woo(Exchange, ImplicitAPI):
|
|
784
806
|
if isMarket and not isStop:
|
785
807
|
# for market buy it requires the amount of quote currency to spend
|
786
808
|
if market['spot'] and orderSide == 'BUY':
|
787
|
-
|
788
|
-
|
789
|
-
|
790
|
-
|
791
|
-
|
792
|
-
|
793
|
-
|
794
|
-
|
795
|
-
|
796
|
-
|
809
|
+
quoteAmount = None
|
810
|
+
createMarketBuyOrderRequiresPrice = True
|
811
|
+
createMarketBuyOrderRequiresPrice, params = self.handle_option_and_params(params, 'createOrder', 'createMarketBuyOrderRequiresPrice', True)
|
812
|
+
cost = self.safe_number_2(params, 'cost', 'order_amount')
|
813
|
+
params = self.omit(params, ['cost', 'order_amount'])
|
814
|
+
if cost is not None:
|
815
|
+
quoteAmount = self.cost_to_precision(symbol, cost)
|
816
|
+
elif createMarketBuyOrderRequiresPrice:
|
817
|
+
if price is None:
|
818
|
+
raise InvalidOrder(self.id + ' createOrder() requires the price argument for market buy orders to calculate the total cost to spend(amount * price), alternatively set the createMarketBuyOrderRequiresPrice option or param to False and pass the cost to spend(quote quantity) in the amount argument')
|
797
819
|
else:
|
798
|
-
|
820
|
+
amountString = self.number_to_string(amount)
|
821
|
+
priceString = self.number_to_string(price)
|
822
|
+
costRequest = Precise.string_mul(amountString, priceString)
|
823
|
+
quoteAmount = self.cost_to_precision(symbol, costRequest)
|
799
824
|
else:
|
800
|
-
|
825
|
+
quoteAmount = self.cost_to_precision(symbol, amount)
|
826
|
+
request['order_amount'] = quoteAmount
|
801
827
|
else:
|
802
828
|
request['order_quantity'] = self.amount_to_precision(symbol, amount)
|
803
829
|
elif algoType != 'POSITIONAL_TP_SL':
|
ccxt/base/exchange.py
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
# -----------------------------------------------------------------------------
|
6
6
|
|
7
|
-
__version__ = '4.1.
|
7
|
+
__version__ = '4.1.90'
|
8
8
|
|
9
9
|
# -----------------------------------------------------------------------------
|
10
10
|
|
@@ -3740,7 +3740,7 @@ class Exchange(object):
|
|
3740
3740
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
3741
3741
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
3742
3742
|
"""
|
3743
|
-
if self.
|
3743
|
+
if self.has['createMarketOrderWithCost'] or (self.has['createMarketBuyOrderWithCost'] and self.has['createMarketSellOrderWithCost']):
|
3744
3744
|
return self.create_order(symbol, 'market', side, cost, 1, params)
|
3745
3745
|
raise NotSupported(self.id + ' createMarketOrderWithCost() is not supported yet')
|
3746
3746
|
|
@@ -3752,7 +3752,7 @@ class Exchange(object):
|
|
3752
3752
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
3753
3753
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
3754
3754
|
"""
|
3755
|
-
if self.options['createMarketBuyOrderRequiresPrice'] or self.
|
3755
|
+
if self.options['createMarketBuyOrderRequiresPrice'] or self.has['createMarketBuyOrderWithCost']:
|
3756
3756
|
return self.create_order(symbol, 'market', 'buy', cost, 1, params)
|
3757
3757
|
raise NotSupported(self.id + ' createMarketBuyOrderWithCost() is not supported yet')
|
3758
3758
|
|
ccxt/bigone.py
CHANGED
@@ -14,6 +14,7 @@ from ccxt.base.errors import BadRequest
|
|
14
14
|
from ccxt.base.errors import BadSymbol
|
15
15
|
from ccxt.base.errors import InsufficientFunds
|
16
16
|
from ccxt.base.errors import InvalidOrder
|
17
|
+
from ccxt.base.errors import NotSupported
|
17
18
|
from ccxt.base.errors import RateLimitExceeded
|
18
19
|
from ccxt.base.errors import AuthenticationError
|
19
20
|
from ccxt.base.decimal_to_precision import TICK_SIZE
|
@@ -39,6 +40,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
39
40
|
'cancelAllOrders': True,
|
40
41
|
'cancelOrder': True,
|
41
42
|
'createMarketBuyOrderWithCost': True,
|
43
|
+
'createMarketOrderWithCost': False,
|
42
44
|
'createMarketSellOrderWithCost': False,
|
43
45
|
'createOrder': True,
|
44
46
|
'createPostOnlyOrder': True,
|
@@ -1108,13 +1110,17 @@ class bigone(Exchange, ImplicitAPI):
|
|
1108
1110
|
|
1109
1111
|
def create_market_buy_order_with_cost(self, symbol: str, cost, params={}):
|
1110
1112
|
"""
|
1111
|
-
:see: https://open.big.one/docs/spot_orders.html#create-order
|
1112
1113
|
create a market buy order by providing the symbol and cost
|
1114
|
+
:see: https://open.big.one/docs/spot_orders.html#create-order
|
1113
1115
|
:param str symbol: unified symbol of the market to create an order in
|
1114
1116
|
:param float cost: how much you want to trade in units of the quote currency
|
1115
1117
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1116
1118
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1117
1119
|
"""
|
1120
|
+
self.load_markets()
|
1121
|
+
market = self.market(symbol)
|
1122
|
+
if not market['spot']:
|
1123
|
+
raise NotSupported(self.id + ' createMarketBuyOrderWithCost() supports spot orders only')
|
1118
1124
|
params['createMarketBuyOrderRequiresPrice'] = False
|
1119
1125
|
return self.create_order(symbol, 'market', 'buy', cost, None, params)
|
1120
1126
|
|
@@ -1131,6 +1137,7 @@ class bigone(Exchange, ImplicitAPI):
|
|
1131
1137
|
:param float [params.triggerPrice]: the price at which a trigger order is triggered at
|
1132
1138
|
:param bool [params.postOnly]: if True, the order will only be posted to the order book and not executed immediately
|
1133
1139
|
:param str [params.timeInForce]: "GTC", "IOC", or "PO"
|
1140
|
+
:param float [params.cost]: *spot market buy only* the quote quantity that can be used alternative for the amount
|
1134
1141
|
*
|
1135
1142
|
* EXCHANGE SPECIFIC PARAMETERS
|
1136
1143
|
:param str operator: *stop order only* GTE or LTE(default)
|
ccxt/binance.py
CHANGED
@@ -60,7 +60,7 @@ class binance(Exchange, ImplicitAPI):
|
|
60
60
|
'cancelOrder': True,
|
61
61
|
'cancelOrders': True, # contract only
|
62
62
|
'closeAllPositions': False,
|
63
|
-
'closePosition': False,
|
63
|
+
'closePosition': False, # exchange specific closePosition parameter for binance createOrder is not synonymous with how CCXT uses closePositions
|
64
64
|
'createDepositAddress': False,
|
65
65
|
'createOrder': True,
|
66
66
|
'createOrders': True,
|
ccxt/bitforex.py
CHANGED
@@ -84,6 +84,8 @@ class bitforex(Exchange, ImplicitAPI):
|
|
84
84
|
'fetchWithdrawal': False,
|
85
85
|
'fetchWithdrawals': False,
|
86
86
|
'reduceMargin': False,
|
87
|
+
'repayCrossMargin': False,
|
88
|
+
'repayIsolatedMargin': False,
|
87
89
|
'setLeverage': False,
|
88
90
|
'setMargin': False,
|
89
91
|
'setMarginMode': False,
|
ccxt/bitget.py
CHANGED
@@ -3718,17 +3718,22 @@ class bitget(Exchange, ImplicitAPI):
|
|
3718
3718
|
if feeCostString is not None:
|
3719
3719
|
# swap
|
3720
3720
|
fee = {
|
3721
|
-
'cost': feeCostString,
|
3721
|
+
'cost': self.parse_number(Precise.string_abs(feeCostString)),
|
3722
3722
|
'currency': market['settle'],
|
3723
3723
|
}
|
3724
3724
|
feeDetail = self.safe_value(order, 'feeDetail')
|
3725
3725
|
if feeDetail is not None:
|
3726
3726
|
parsedFeeDetail = json.loads(feeDetail)
|
3727
3727
|
feeValues = list(parsedFeeDetail.values())
|
3728
|
-
|
3728
|
+
feeObject = None
|
3729
|
+
for i in range(0, len(feeValues)):
|
3730
|
+
feeValue = feeValues[i]
|
3731
|
+
if self.safe_value(feeValue, 'feeCoinCode') is not None:
|
3732
|
+
feeObject = feeValue
|
3733
|
+
break
|
3729
3734
|
fee = {
|
3730
|
-
'cost': self.safe_string(
|
3731
|
-
'currency': self.safe_currency_code(self.safe_string(
|
3735
|
+
'cost': self.parse_number(Precise.string_abs(self.safe_string(feeObject, 'totalFee'))),
|
3736
|
+
'currency': self.safe_currency_code(self.safe_string(feeObject, 'feeCoinCode')),
|
3732
3737
|
}
|
3733
3738
|
postOnly = None
|
3734
3739
|
timeInForce = self.safe_string_upper(order, 'force')
|
ccxt/bitmex.py
CHANGED
ccxt/blockchaincom.py
CHANGED
@@ -857,43 +857,6 @@ class blockchaincom(Exchange, ImplicitAPI):
|
|
857
857
|
'fee': fee,
|
858
858
|
}
|
859
859
|
|
860
|
-
def fetch_withdrawal_whitelist(self, params={}):
|
861
|
-
"""
|
862
|
-
fetch the list of withdrawal addresses on the whitelist
|
863
|
-
:param dict [params]: extra parameters specific to the exchange API endpoint
|
864
|
-
:returns dict: dictionary with keys beneficiaryId, name, currency
|
865
|
-
"""
|
866
|
-
self.load_markets()
|
867
|
-
response = self.privateGetWhitelist()
|
868
|
-
result = []
|
869
|
-
for i in range(0, len(response)):
|
870
|
-
entry = response[i]
|
871
|
-
result.append({
|
872
|
-
'beneficiaryId': self.safe_string(entry, 'whitelistId'),
|
873
|
-
'name': self.safe_string(entry, 'name'),
|
874
|
-
'currency': self.safe_string(entry, 'currency'),
|
875
|
-
'info': entry,
|
876
|
-
})
|
877
|
-
return result
|
878
|
-
|
879
|
-
def fetch_withdrawal_whitelist_by_currency(self, code: str, params={}):
|
880
|
-
self.load_markets()
|
881
|
-
currency = self.currency(code)
|
882
|
-
request = {
|
883
|
-
'currency': currency['id'],
|
884
|
-
}
|
885
|
-
response = self.privateGetWhitelistCurrency(self.extend(request, params))
|
886
|
-
result = []
|
887
|
-
for i in range(0, len(response)):
|
888
|
-
entry = response[i]
|
889
|
-
result.append({
|
890
|
-
'beneficiaryId': self.safe_string(entry, 'whitelistId'),
|
891
|
-
'name': self.safe_string(entry, 'name'),
|
892
|
-
'currency': self.safe_string(entry, 'currency'),
|
893
|
-
'info': entry,
|
894
|
-
})
|
895
|
-
return result
|
896
|
-
|
897
860
|
def withdraw(self, code: str, amount, address, tag=None, params={}):
|
898
861
|
"""
|
899
862
|
make a withdrawal
|
ccxt/bybit.py
CHANGED
@@ -959,6 +959,7 @@ class bybit(Exchange, ImplicitAPI):
|
|
959
959
|
},
|
960
960
|
'precisionMode': TICK_SIZE,
|
961
961
|
'options': {
|
962
|
+
'fetchMarkets': ['spot', 'linear', 'inverse', 'option'],
|
962
963
|
'enableUnifiedMargin': None,
|
963
964
|
'enableUnifiedAccount': None,
|
964
965
|
'createMarketBuyOrderRequiresPrice': True,
|
@@ -1425,21 +1426,29 @@ class bybit(Exchange, ImplicitAPI):
|
|
1425
1426
|
"""
|
1426
1427
|
if self.options['adjustForTimeDifference']:
|
1427
1428
|
self.load_time_difference()
|
1428
|
-
promisesUnresolved = [
|
1429
|
-
|
1430
|
-
|
1431
|
-
|
1432
|
-
|
1433
|
-
|
1434
|
-
|
1435
|
-
|
1429
|
+
promisesUnresolved = []
|
1430
|
+
fetchMarkets = self.safe_value(self.options, 'fetchMarkets', ['spot', 'linear', 'inverse'])
|
1431
|
+
for i in range(0, len(fetchMarkets)):
|
1432
|
+
marketType = fetchMarkets[i]
|
1433
|
+
if marketType == 'spot':
|
1434
|
+
promisesUnresolved.append(self.fetch_spot_markets(params))
|
1435
|
+
elif marketType == 'linear':
|
1436
|
+
promisesUnresolved.append(self.fetch_future_markets({'category': 'linear'}))
|
1437
|
+
elif marketType == 'inverse':
|
1438
|
+
promisesUnresolved.append(self.fetch_future_markets({'category': 'inverse'}))
|
1439
|
+
elif marketType == 'option':
|
1440
|
+
promisesUnresolved.append(self.fetch_option_markets({'baseCoin': 'BTC'}))
|
1441
|
+
promisesUnresolved.append(self.fetch_option_markets({'baseCoin': 'ETH'}))
|
1442
|
+
promisesUnresolved.append(self.fetch_option_markets({'baseCoin': 'SOL'}))
|
1443
|
+
else:
|
1444
|
+
raise ExchangeError(self.id + ' fetchMarkets() self.options fetchMarkets "' + marketType + '" is not a supported market type')
|
1436
1445
|
promises = promisesUnresolved
|
1437
|
-
spotMarkets = promises[
|
1438
|
-
linearMarkets = promises[
|
1439
|
-
inverseMarkets = promises[
|
1440
|
-
btcOptionMarkets = promises[
|
1441
|
-
ethOptionMarkets = promises[
|
1442
|
-
solOptionMarkets = promises[
|
1446
|
+
spotMarkets = self.safe_value(promises, 0, [])
|
1447
|
+
linearMarkets = self.safe_value(promises, 1, [])
|
1448
|
+
inverseMarkets = self.safe_value(promises, 2, [])
|
1449
|
+
btcOptionMarkets = self.safe_value(promises, 3, [])
|
1450
|
+
ethOptionMarkets = self.safe_value(promises, 4, [])
|
1451
|
+
solOptionMarkets = self.safe_value(promises, 5, [])
|
1443
1452
|
futureMarkets = self.array_concat(linearMarkets, inverseMarkets)
|
1444
1453
|
optionMarkets = self.array_concat(btcOptionMarkets, ethOptionMarkets)
|
1445
1454
|
optionMarkets = self.array_concat(optionMarkets, solOptionMarkets)
|
ccxt/coinex.py
CHANGED
@@ -58,6 +58,8 @@ class coinex(Exchange, ImplicitAPI):
|
|
58
58
|
'cancelOrders': True,
|
59
59
|
'createDepositAddress': True,
|
60
60
|
'createMarketBuyOrderWithCost': True,
|
61
|
+
'createMarketOrderWithCost': False,
|
62
|
+
'createMarketSellOrderWithCost': False,
|
61
63
|
'createOrder': True,
|
62
64
|
'createOrders': True,
|
63
65
|
'createReduceOnlyOrder': True,
|
@@ -1866,11 +1868,16 @@ class coinex(Exchange, ImplicitAPI):
|
|
1866
1868
|
def create_market_buy_order_with_cost(self, symbol: str, cost, params={}):
|
1867
1869
|
"""
|
1868
1870
|
create a market buy order by providing the symbol and cost
|
1871
|
+
:see: https://viabtc.github.io/coinex_api_en_doc/spot/#docsspot003_trade003_market_order
|
1869
1872
|
:param str symbol: unified symbol of the market to create an order in
|
1870
1873
|
:param float cost: how much you want to trade in units of the quote currency
|
1871
1874
|
:param dict [params]: extra parameters specific to the exchange API endpoint
|
1872
1875
|
:returns dict: an `order structure <https://docs.ccxt.com/#/?id=order-structure>`
|
1873
1876
|
"""
|
1877
|
+
self.load_markets()
|
1878
|
+
market = self.market(symbol)
|
1879
|
+
if not market['spot']:
|
1880
|
+
raise NotSupported(self.id + ' createMarketBuyOrderWithCost() supports spot orders only')
|
1874
1881
|
params['createMarketBuyOrderRequiresPrice'] = False
|
1875
1882
|
return self.create_order(symbol, 'market', 'buy', cost, None, params)
|
1876
1883
|
|
@@ -1992,6 +1999,11 @@ class coinex(Exchange, ImplicitAPI):
|
|
1992
1999
|
def create_order(self, symbol: str, type: OrderType, side: OrderSide, amount, price=None, params={}):
|
1993
2000
|
"""
|
1994
2001
|
create a trade order
|
2002
|
+
:see: https://viabtc.github.io/coinex_api_en_doc/spot/#docsspot003_trade001_limit_order
|
2003
|
+
:see: https://viabtc.github.io/coinex_api_en_doc/spot/#docsspot003_trade003_market_order
|
2004
|
+
:see: https://viabtc.github.io/coinex_api_en_doc/spot/#docsspot003_trade004_IOC_order
|
2005
|
+
:see: https://viabtc.github.io/coinex_api_en_doc/spot/#docsspot003_trade005_stop_limit_order
|
2006
|
+
:see: https://viabtc.github.io/coinex_api_en_doc/spot/#docsspot003_trade006_stop_market_order
|
1995
2007
|
:see: https://viabtc.github.io/coinex_api_en_doc/futures/#docsfutures001_http017_put_limit
|
1996
2008
|
:see: https://viabtc.github.io/coinex_api_en_doc/futures/#docsfutures001_http018_put_market
|
1997
2009
|
:see: https://viabtc.github.io/coinex_api_en_doc/futures/#docsfutures001_http019_put_limit_stop
|
ccxt/coinlist.py
CHANGED
@@ -122,6 +122,8 @@ class coinlist(Exchange, ImplicitAPI):
|
|
122
122
|
'fetchWithdrawals': False,
|
123
123
|
'fetchWithdrawalWhitelist': False,
|
124
124
|
'reduceMargin': False,
|
125
|
+
'repayCrossMargin': False,
|
126
|
+
'repayIsolatedMargin': False,
|
125
127
|
'setLeverage': False,
|
126
128
|
'setMargin': False,
|
127
129
|
'setMarginMode': False,
|
ccxt/coinsph.py
CHANGED
@@ -127,6 +127,8 @@ class coinsph(Exchange, ImplicitAPI):
|
|
127
127
|
'fetchWithdrawals': True,
|
128
128
|
'fetchWithdrawalWhitelist': False,
|
129
129
|
'reduceMargin': False,
|
130
|
+
'repayCrossMargin': False,
|
131
|
+
'repayIsolatedMargin': False,
|
130
132
|
'setLeverage': False,
|
131
133
|
'setMargin': False,
|
132
134
|
'setMarginMode': False,
|
ccxt/cryptocom.py
CHANGED
@@ -111,6 +111,8 @@ class cryptocom(Exchange, ImplicitAPI):
|
|
111
111
|
'fetchVolatilityHistory': False,
|
112
112
|
'fetchWithdrawals': True,
|
113
113
|
'reduceMargin': False,
|
114
|
+
'repayCrossMargin': False,
|
115
|
+
'repayIsolatedMargin': False,
|
114
116
|
'setLeverage': False,
|
115
117
|
'setMarginMode': False,
|
116
118
|
'setPositionMode': False,
|