库币
KuCoin(现货):KuCoin现货交易,默认连接api.kucoin.com。使用KuCoin的API Key接入,需要Access Key、Secret Key与创建API Key时设置的Passphrase。账户余额只读取交易账户(trade),资金账户中的资产需要先划转到交易账户。杠杆下单没有单独的账户切换指令,在下单附加参数中传KuCoin的tradeType等字段(原样并入请求)。
Futures_KuCoin(期货):KuCoin合约:USDT、USDC保证金永续合约,币本位永续与交割合约,默认连接api-futures.kucoin.com。使用KuCoin的API Key接入,需要Access Key、Secret Key与创建API Key时设置的Passphrase。
名称与配置
exchange.GetName() | 类型 | 别名 |
|---|---|---|
KuCoin | 现货 | — |
Futures_KuCoin | 期货 | KuCoin期货、KuCoin Futures |
✓ 表示该交易所对象有这个配置项。
| 配置项 | KuCoin | Futures_KuCoin | 必填 | 说明 |
|---|---|---|---|---|
| Access Key | ✓ | ✓ | 是 | — |
| Secret Key | ✓ | ✓ | 是 | — |
| Password | ✓ | 是 | 创建API Key时设置的Passphrase。 | |
| Passphrase | ✓ | 是 | — |
交易对与合约代码
KuCoin(现货)
交易对示例:BTC_USDT、ETH_BTC
交易对写作BASE_QUOTE,对应KuCoin的BASE-QUOTE交易对,大小写不敏感;带.swap等合约后缀的品种代码会报错(合约请使用Futures_KuCoin交易所对象)。
Futures_KuCoin(期货)
交易对示例:BTC_USDT、BTC_USDC、BTC_USD
计价币决定合约类型:BTC_USDT、BTC_USDC为USDT、USDC保证金合约,BTC_USD为币本位合约;计价币只能是USDT、USDC、USD。KuCoin合约把BTC写作XBT,交易对写BTC_USDT或XBT_USDT都可以,返回的品种代码统一用BTC。
| 合约代码 | 说明 |
|---|---|
swap | 永续合约。 |
quarter | 该交易对最近到期的交割合约(币本位)。 |
next_quarter | 该交易对第二近到期的交割合约(币本位)。 |
quarter、next_quarter按交易所合约列表中的到期时间排序选取。
原生合约代码示例:XBTMZ26
更远期的交割合约使用KuCoin的原生合约代码(全大写、带数字),例如交易对BTC_USD、合约代码XBTMZ26;exchange.GetMarkets中第三个及以后到期的交割合约也以原生代码为合约代码。
专属IO指令
KuCoin(现货)
没有专属指令,通用指令见exchange.IO。
Futures_KuCoin(期货)
| 指令 | 参数 | 说明 | 返回值 |
|---|---|---|---|
cross | bool[, symbol] | 全仓(true)/逐仓(false),向交易所切换当前合约(或指定合约)的保证金模式,并作为之后所有订单的保证金模式。 | 成功也返回空值,需要确认时调用后读取GetLastError()。 |
通用指令api、base、currency见exchange.IO。
函数支持差异
KuCoin(现货)
不支持(调用时报错并返回空值):exchange.ModifyConditionOrder。
以回退方式支持:
exchange.GetRecords:原生周期为1分钟、3分钟、5分钟、15分钟、30分钟、1小时、2小时、4小时、6小时、8小时、12小时、1天、1周;其它周期由托管者合成。
Futures_KuCoin(期货)
不支持(调用时报错并返回空值):exchange.ModifyOrder、exchange.ModifyConditionOrder。
以回退方式支持:
exchange.GetRecords:原生周期为1分钟、5分钟、15分钟、30分钟、1小时、2小时、4小时、8小时、12小时、1天、1周;其它周期由托管者合成。
保证金、账户与模拟盘
Futures_KuCoin(期货)
保证金模式:用exchange.IO("cross", bool)切换全仓/逐仓(默认全仓)。交易所的保证金模式按合约设置,但交易所对象只记住最后一次切换的模式并随所有订单带上;KuCoin要求订单的保证金模式与该合约的当前设置一致,切换了A合约后再给保证金模式不同的B合约下单会被交易所拒绝。
持仓模式:按单向持仓下单(不带持仓方向参数),平仓单以只减仓(reduceOnly)方式提交。
账户:KuCoin合约没有设置杠杆的接口,exchange.SetMarginLevel()只在本地记下每个合约的杠杆,下单时随订单发送(未设置时为10倍)。全仓模式下交易所按该合约在交易所的杠杆设置计算,不按订单里的杠杆。exchange.GetAccount()、exchange.GetAssets()按结算币查询账户:USDT、USDC合约查对应计价币的账户,币本位合约查标的币(如BTC)的账户;不指定品种时依次查询全部结算币的账户。
注意事项
KuCoin(现货)
- 市价买单的下单量是要花费的计价币金额(KuCoin的
funds),市价卖单是交易币数量;触发后以市价成交的条件买单同样如此。 - 限价单支持
tif的ioc、fok与只做Maker(postOnly)。 exchange.ModifyOrder()改单后KuCoin会换新订单号,返回的是新订单ID,原订单ID作废。exchange.GetHistoryOrders()、exchange.GetHistoryConditionOrders()必须有交易对(不传时使用当前交易对),传空串报错。- 条件单只支持止盈、止损单,不支持OCO(KuCoin没有OCO接口);不支持修改条件单,需要先撤销再重新创建。条件单与普通订单分属两个订单空间,撤销、查询条件单使用条件单函数。
Futures_KuCoin(期货)
- 下单量为合约张数,必须是正整数;每张对应的数量见
exchange.GetMarkets()的CtVal:USDT、USDC合约为若干交易币,币本位合约一张为1美元。 exchange.GetHistoryOrders()、exchange.GetHistoryConditionOrders()必须指定具体合约(不传时使用当前合约),传空串或范围报错。- 限价单支持
tif的IOC与只做Maker(postOnly),不支持FOK;市价单不支持这些选项,传入时报错。 - 条件单只支持止盈、止损单,不支持OCO(KuCoin合约没有OCO接口);条件单以最新成交价触发。