3

我尝试通过下面的代码做到这一点,但我得到了错误

import ccxt  # noqa: E402
import apiConfig

exchange = ccxt.binance({
    'apiKey': apiConfig.API_KEY,
    'secret': apiConfig.API_SECRET,
    'enableRateLimit': True,
})

symbol = 'RVN/USDT'

type = 'limit'  # or 'market', other types aren't unified yet
side = 'buy'
amount = 69  # your amount
price = 0.21  # your price
# overrides
params = {
    'stopPrice': 0.20,  # your stop price
    'type': 'stopLimit',
}
order = exchange.create_order(symbol, type, side, amount, price, params)

我收到此错误:ccxt.base.errors.BadRequest: binance {"code":-1106,"msg":"Parameter 'stopPrice' sent when not required."}

4

1 回答 1

2

在这种情况下,ccxt 文档不正确(Binance 的止损限制,可能适用于其他交易所)。

您需要将type参数设置为stop_loss_limittake_profit_limit(取决于是否price大于/小于stopPrice)。此外,params.type不会覆盖该type值。

type = 'stop_loss_limit'

params = {
    'stopPrice': 0.20,
}

Binance API ( docs )stopPrice仅在以下type情况之一接受参数:

  • STOP_LOSS
  • STOP_LOSS_LIMIT
  • 获利
  • TAKE_PROFIT_LIMIT

并且 ccxt(GitHub 源代码uppercaseType仅设置 from 函数参数type,并且不会覆盖 from 的值params

于 2021-04-12T13:40:05.057 回答