输入/搜索内容
内置函数
结构体
内置变量与常量
通用约定
交易所
能力矩阵
中心化交易所
AscendEx
Backpack
BigONE
币安
Bitfinex
bitFlyer
Bitget
Bithumb
Bitstamp
Bybit
Coincheck
Coinone
CoinW
Crypto.com
DeepCoin
Deribit
DigiFinex
Gate
Gemini
HashKey
HitBTC
火币
Korbit
Kraken
库币
LBank
MEXC
OKX
Poloniex
Upbit
WEEX
WOO X
Zaif
去中心化交易所
预测市场
证券与期货
链上与自定义接入

WOO(现货):WOO X现货交易,通过WOO X的REST接口(api.woox.io)接入,支持交易所原生的止盈、止损与OCO条件单。API KEY需要同时配置Access Key、Secret Key和Application Id。账户可以用exchange.IO("trade_margin")、exchange.IO("trade_normal")在杠杆模式与纯现货模式之间切换;永续合约请使用Futures_WOO。

Futures_WOO(期货):WOO X永续合约,通过WOO X的REST接口(api.woox.io)接入,没有交割合约;支持交易所原生的止盈、止损与OCO条件单。API KEY需要同时配置Access Key、Secret Key和Application Id(三项必须同时填写)。

名称与配置
exchange.GetName()类型别名
WOO现货WOOX
Futures_WOO期货WOO X期货

✓ 表示该交易所对象有这个配置项。

配置项WOOFutures_WOO必填说明
Access Key✓✓是—
Secret Key✓✓是—
Application Id✓是WOO X API管理页面中API KEY对应的Application ID,用于核对账户余额应答属于本账户,必须填写。
Application Id✓是WOO X API管理页面中API KEY对应的Application ID,用于核对账户应答属于本账户,必须填写。

交易对与合约代码
WOO(现货)

交易对示例:BTC_USDT、ETH_USDT

交易对写作BTC_USDT,对应WOO X的原生代码SPOT_BTC_USDT。本交易所对象只交易现货,带合约后缀的品种(如BTC_USDT.swap)会报错,永续合约请使用Futures_WOO。

Futures_WOO(期货)

交易对示例:BTC_USDT

交易对写作BTC_USDT,对应WOO X的原生代码PERP_BTC_USDT。

合约代码说明
swap永续合约。

WOO X只有永续合约,其它合约代码会报错。下单数量单位为基础币(exchange.GetMarkets()中CtVal为1)。

专属IO指令
WOO(现货)
指令参数说明
trade_margin—账户切换为杠杆模式(MARGIN),向交易所发出设置请求(POST /v1/client/account_mode),交易所确认后返回true。是账户级设置。
trade_normal—账户切换为纯现货模式(PURE_SPOT),向交易所发出设置请求,交易所确认后返回true。是账户级设置。
apimethod, path[, params[, raw]]直接调用WOO X接口,path可以写完整URL。(详见表下)

表中长说明的其余部分:

  • api:按路径中的/v1/、/v3/选用对应的签名规则:GET参数编入查询串,其它方法v1编成表单、v3编成JSON请求体。路径含/public/时默认不签名,其它默认签名,签名参数可以显式指定;不签名的请求同样按传入的HTTP方法发送。raw不是请求体而是参数表(JSON对象),非空时整体替换params并照常参与签名,v3接口的JSON请求体保留其中的对象、数组、数字和布尔值。现货与期货的这条指令行为相同。返回:交易所的完整应答(v1、v3接口都不拆data);应答success不为true时报错。

通用指令base、currency见exchange.IO。

Futures_WOO(期货)
指令参数说明
crossbool全仓(true)/逐仓(false),只修改本地设置,不发请求,之后的下单、条件单和exchange.SetMarginLevel()随请求带上;默认全仓。
dualbool双向(true)/单向(false)持仓,向交易所发出设置请求(POST /v1/client/position_mode),成功后连接器按双向持仓下单(普通单和条件单都带持仓方向)。
apimethod, path[, params[, raw]]直接调用WOO X接口,path可以写完整URL。(详见表下)

表中长说明的其余部分:

  • api:按路径中的/v1/、/v3/选用对应的签名规则:GET参数编入查询串,其它方法v1编成表单、v3编成JSON请求体。路径含/public/时默认不签名,其它默认签名,签名参数可以显式指定;不签名的请求同样按传入的HTTP方法发送。raw不是请求体而是参数表(JSON对象),非空时整体替换params并照常参与签名,v3接口的JSON请求体保留其中的对象、数组、数字和布尔值。现货与期货的这条指令行为相同。返回:交易所的完整应答(v1、v3接口都不拆data);应答success不为true时报错。

通用指令base、currency见exchange.IO。

函数支持差异
全部交易所对象

不支持(调用时报错并返回空值):exchange.GetTickers。

WOO(现货)

以回退方式支持:

  • exchange.GetRecords:原生周期为1分钟、5分钟、15分钟、30分钟、1小时、4小时、12小时、1天、1周、1月;其它周期由托管者合成。
Futures_WOO(期货)

以回退方式支持:

  • exchange.GetRecords:原生周期为1分钟、5分钟、15分钟、30分钟、1小时、4小时、12小时、1天、1周、1月、1年;其它周期由托管者合成。

保证金、账户与模拟盘
Futures_WOO(期货)

保证金模式:用exchange.IO("cross", bool)选择全仓/逐仓,这是本地设置,随每次下单带上(默认全仓)。exchange.SetMarginLevel()按合约设置杠杆,同时带上当前的全仓/逐仓设置。

持仓模式:用exchange.IO("dual", bool)切换双向/单向持仓。连接器不自动探测账户的持仓模式:账户已经是双向持仓时,每次运行策略都要先调用exchange.IO("dual", true),否则下单不带持仓方向会被交易所拒绝。双向持仓下exchange.SetMarginLevel()一次把多头、空头两侧都设置为同一杠杆(任一侧失败即报错,错误信息里注明已设置成功的一侧),与exchange.SetDirection()设置的方向无关;单向持仓下设置一次。

注意事项
全部交易所对象
  • exchange.ModifyOrder()原地修改价格、数量,订单号不变。
WOO(现货)
  • 市价买单的下单量是要花费的计价币金额(按WOO X的order_amount下单),市价卖单为交易币数量。查询订单时,普通市价买单的Amount与DealAmount都是已成交的交易币数量。
  • WOO X现货没有24小时行情接口,exchange.GetTicker()由最近24根1小时K线(开高低价、成交量)和盘口(买一、卖一价)拼成,每次调用请求两个接口。
  • 条件单支持止盈、止损和OCO;exchange.ModifyConditionOrder()只能修改止盈、止损单,不能修改OCO条件单。
  • exchange.GetConditionOrders()只能按交易对查询:不传或传空字符串时查询当前交易对。
  • exchange.GetHistoryOrders()、exchange.GetHistoryConditionOrders()只能按交易对查询:不传symbol时查询当前交易对,传空字符串时报错。
Futures_WOO(期货)
  • 条件单支持止盈、止损和OCO,触发价类型固定为MARKET_PRICE;exchange.ModifyConditionOrder()只能修改止盈、止损单(触发价、委托价、数量,订单号不变),不能修改OCO条件单。
  • exchange.GetFundings()的Rate是交易所估算的下一次结算资金费率,Time是下一次结算时间;支持批量查询。
  • exchange.GetPositions()的Profit按(标记价格−开仓均价)×持仓量计算,Margin按开仓均价×持仓量÷杠杆估算;持仓的保证金模式取交易所持仓数据里的marginMode(同一账户可以同时有全仓和逐仓持仓),与exchange.IO("cross", bool)的本地下单设置无关。
  • exchange.GetHistoryOrders()、exchange.GetHistoryConditionOrders()与未完成订单的查询一样接受USDT.swap这类范围:不按交易对向交易所查询,再按范围筛选,limit只计算范围内的订单。