2

Kucoin Futures API documentation for placing a limit order ( https://docs.kucoin.com/futures/#place-an-order ) has a param called "size" with type Integer. The description is given as "Order size. Must be a positive number".

A limit order to buy "CELRUSDTM" with param size = 1 results in an order placed to buy 10 CELR. A limit order to buy "ETHUSDTM" with param size = 1 results in an order placed to buy .01 ETH.

What does "size" actually refer to?

For reference, I'm using a python library called kucoin-futures-python-sdk (https://github.com/Kucoin/kucoin-futures-python-sdk/blob/main/kucoin_futures/trade/trade.py) and the class method is called create_limit_order

Here's the python to call this method to place the orders:

def limit_order(symbol, side, lever, size, price):
    # place a limit buy order
    order_id = client.create_limit_order(symbol, side, lever, size, price)

limit_order('ETHUSDTM', 'buy', '1', '1', '1000')
limit_order('CELRUSDTM', 'buy', '1', '2', '.01')

(Although Kucoin documentation requests "size" param as an integer, the python library takes size as a string, which is why I'm submitting it as a string in the examples above. I've thought about whether size is proportional to the price, but that also doesn't add up. 0.01 ETH at $1000 = $10, whereas 10 CELR at .01 = $1)

claireablani
  • 7,804
  • 5
  • 16
  • 19

1 Answers1

2

The same documentation explains:

SIZE

The size must be no less than the lotSize for the contract and no larger than the maxOrderQty. It should be a multiple number of lotSize, or the system will report an error when you place the order. Size indicates the amount of contract to buy or sell. Size is the number or lot size of the contract. Eg. the lot size of XBTUSDTM is 0.001 Bitcoin, the lot size of XBTUSDM is 1 USD.

The applicable lotSize is returned when requesting the order info of the contract:

HTTP Request

GET /api/v1/contracts/{symbol}

Example

GET /api/v1/contracts/XBTUSDM

PARAMETERS

Param Type Description
symbol String Path Parameter. Symbol of the contract

The response looks like this:

  {
    "code": "200000",
    "data": {
      "symbol": "XBTUSDM", //Ticker symbol of the contract
      "lotSize": 1,   //Minimum lot size
      // [...]
    }
  }
trincot
  • 317,000
  • 35
  • 244
  • 286
  • 1
    thank you, i just got an explanation of this in kucoin's help telegram, but your answer was a lot more detailed – claireablani Feb 06 '22 at 10:18
  • I called "/contracts/active" and all symbols return with lotSize=1 any idea why that would be? – claireablani Feb 06 '22 at 11:34
  • okay so my best guess now is that to get the .001 number given in the XBTUSDTM example, you have to refer to the param called "multiplier". All of the "lotSize" params return as 1. – claireablani Feb 06 '22 at 11:50
  • According to the documentation, at least for `XBTUSDTM` the lotSize is 0.001. If you find the contrary, you have spotted an inconsistency with the documentation, and should contact KuCoin representatives. – trincot Feb 06 '22 at 12:03