WEEX
WEEX(现货):WEEX现货交易,通过WEEX现货V3 REST接口(api-spot.weex.com)接入。API KEY需要同时配置Access Key、Secret Key和Passphrase。只交易现货,永续合约请使用Futures_WEEX。
Futures_WEEX(期货):WEEX USDT本位永续合约,通过WEEX合约V3 REST接口(api-contract.weex.com)接入,没有交割合约。API KEY需要同时配置Access Key、Secret Key和Passphrase。支持交易所原生的止盈、止损条件单。
名称与配置
exchange.GetName() | 类型 | 别名 |
|---|---|---|
WEEX | 现货 | 唯客 |
Futures_WEEX | 期货 | WEEX期货 |
| 配置项 | 必填 | |
| - | - | |
| Access Key | 是 | |
| Secret Key | 是 | |
| Passphrase | 是 |
交易对与合约代码
全部交易所对象
交易对示例:BTC_USDT、ETH_USDT
WEEX(现货)
交易对写作BTC_USDT,对应WEEX的原生代码BTCUSDT。带合约后缀的品种会报错。
Futures_WEEX(期货)
交易对写作BTC_USDT,对应WEEX的原生代码BTCUSDT;可交易的合约以exchange.GetMarkets()为准。
| 合约代码 | 说明 |
|---|---|
swap | 永续合约。 |
WEEX没有交割合约,其它合约代码会报错。下单数量单位为基础币(交易所不支持按张下单,exchange.GetMarkets()中CtVal为1)。
函数支持差异
WEEX(现货)
不支持(调用时报错并返回空值):exchange.ModifyOrder、exchange.CreateConditionOrder、exchange.ModifyConditionOrder、exchange.CancelConditionOrder、exchange.GetConditionOrder、exchange.GetConditionOrders、exchange.GetHistoryConditionOrders。
以回退方式支持:
exchange.GetRecords:原生周期为1分钟、5分钟、15分钟、30分钟、1小时、2小时、4小时、6小时、8小时、12小时、1天、1周;其它周期由托管者合成。
Futures_WEEX(期货)
不支持(调用时报错并返回空值):exchange.ModifyOrder。
以回退方式支持:
exchange.GetRecords:原生周期为1分钟、5分钟、15分钟、30分钟、1小时、4小时、12小时、1天、1周;其它周期由托管者合成。
保证金、账户与模拟盘
Futures_WEEX(期货)
保证金模式:没有切换全仓/逐仓的IO指令,保证金模式按交易所账户中该合约的设置。exchange.SetMarginLevel()先查询该合约当前的保证金模式:逐仓时同时设置多、空两侧杠杆,全仓时设置全仓杠杆。
持仓模式:每张订单都带持仓方向positionSide,由下单方向推出:开多、平多为LONG,开空、平空为SHORT;也可以在附加参数中显式传positionSide。条件单同样带持仓方向。
注意事项
WEEX(现货)
- 市价买单的数量为计价币金额:WEEX现货接口不支持按金额下市价单,连接器按当前卖盘(最多200档)把金额折算成基础币数量(按数量步长向下取整)后下单,实际成交金额可能与传入的金额略有差异。卖盘不够花完这笔金额、或折算后的数量小于最小下单量时报错,不会少买。在附加参数中显式传
quantity时直接使用该数量。查询订单时市价买单的Amount是交易所记录的基础币数量。 - 不支持只做Maker(post-only)订单,限价单的有效方式只有GTC、IOC、FOK。
exchange.GetHistoryOrders()只能按交易对查询(交易所的历史订单接口按交易对查询):不传symbol时查询当前交易对,传空字符串时报错。交易所只能回溯约90天,since早于90天前时按90天前查询。
Futures_WEEX(期货)
- 条件单只支持止盈、止损单,不支持OCO(需要分成止盈、止损两张条件单下单)。
exchange.ModifyConditionOrder()调用交易所的改条件单接口原地修改,订单号不变,只能修改未触发的止盈、止损条件单。可改的是触发价和委托价:取condition中对应条件类型的TpTriggerPrice/TpOrderPrice或SlTriggerPrice/SlOrderPrice,委托价为-1(或不大于0)时改为触发后市价执行。交易所不支持修改数量和买卖方向:传入的数量或方向与原单不同时报错并返回空值,不会忽略。触发价类型沿用原单(标记价格或最新成交价),也可以在附加参数中传triggerPriceType(CONTRACT_PRICE或MARK_PRICE)。修改后止盈还是止损由交易所按新触发价判定,可能与ConditionType不同,以exchange.GetConditionOrder()查询结果为准。- 交易所没有按编号查询条件单的接口,
exchange.GetConditionOrder()先查活动条件单,再在最近20000条历史条件单中查找,找不到时报错。 exchange.GetHistoryOrders()、exchange.GetHistoryConditionOrders()只能回溯约90天,since早于90天前时按90天前查询。exchange.GetFundings()的Rate是下一次结算的预测资金费率,Time是下一次结算时间;支持批量查询(不传品种,或传范围如USDT.swap)。exchange.GetTickers()中没有盘口数据的合约(交易所的盘口行情里没有这一行,例如休市的合约),Buy、Sell为0。- 订单与条件单的
Offset按买卖方向与持仓方向推出:卖出+多仓方向(平多)、买入+空仓方向(平空)为平仓,其余为开仓。双向持仓下交易所给平仓条件单返回的reduceOnly也是false,不作为开平依据;只有持仓方向为单向(BOTH)或缺省时才按reduceOnly/closePosition判断。