DeepCoin
DeepCoin(现货):DeepCoin现货交易,通过DeepCoin接口(api.deepcoin.com)接入,全部是REST轮询,没有行情和订单推送。API KEY需要同时配置Access Key、Secret Key和Passphrase。账户、订单只使用现货账户(SPOT)。只交易现货,没有模拟盘;永续合约请使用Futures_DeepCoin。
Futures_DeepCoin(期货):DeepCoin U本位(USDT保证金)与币本位永续合约,通过DeepCoin接口(api.deepcoin.com)接入,全部是REST轮询,没有行情和订单推送。API KEY需要同时配置Access Key、Secret Key和Passphrase。只有永续合约,没有模拟盘。
名称与配置
exchange.GetName() | 类型 | 别名 |
|---|---|---|
DeepCoin | 现货 | Deepcoin |
Futures_DeepCoin | 期货 | DeepCoin期货 |
| 配置项 | 必填 | 说明 |
| - | - | - |
| Access Key | 是 | — |
| Secret Key | 是 | — |
| Passphrase | 是 | 创建API Key时设置的Passphrase,私有接口必填。 |
交易对与合约代码
DeepCoin(现货)
交易对示例:BTC_USDT、ETH_USDT
交易对写作BTC_USDT,对应DeepCoin的原生代码BTC-USDT。带合约后缀(如.swap)的品种代码会报错。
Futures_DeepCoin(期货)
交易对示例:BTC_USDT、BTC_USD
计价币决定合约类型:BTC_USDT为USDT本位合约(原生代码BTC-USDT-SWAP),BTC_USD为币本位合约(原生代码BTC-USD-SWAP)。
| 合约代码 | 说明 |
|---|---|
swap | 永续合约。U本位、币本位都有。 |
DeepCoin只有永续合约,其它合约代码会报错。下单数量单位为张,每张对应的数量为exchange.GetMarkets()中的CtVal(单位见CtValCcy)。
专属IO指令
DeepCoin(现货)
没有专属指令,通用指令见exchange.IO。
Futures_DeepCoin(期货)
| 指令 | 参数 | 说明 | 返回值 |
|---|---|---|---|
cross | bool | 全仓(true)/逐仓(false),只修改本地设置,不发请求,之后的下单、条件单和exchange.SetMarginLevel()随请求带上;默认全仓。 | 设置的值。 |
merge | bool | 合并持仓(true)/拆分持仓(false),只修改本地设置,不发请求,之后的下单、条件单和exchange.SetMarginLevel()随请求带上;默认合并持仓。 | 设置的值。 |
通用指令api、base、currency见exchange.IO。
常用用法
逐仓、拆分持仓模式下设置杠杆并下单(仅Futures_DeepCoin)
javascript
function main() {
exchange.SetContractType("swap")
// 只修改本地设置,不发请求;之后的下单、条件单和设置杠杆都随请求带上
Log(exchange.IO("cross", false)) // false:逐仓
Log(exchange.IO("merge", false)) // false:拆分持仓
exchange.SetMarginLevel(5)
var id = exchange.CreateOrder("BTC_USDT.swap", "buy", -1, 1)
Log("订单Id:", id)
}
函数支持差异
全部交易所对象
以回退方式支持:
exchange.GetRecords:原生周期为1分钟、3分钟、5分钟、15分钟、30分钟、1小时、2小时、4小时、6小时、12小时、1天、1周、1月、1年;其它周期由托管者合成。
DeepCoin(现货)
不支持(调用时报错并返回空值):exchange.ModifyOrder。
Futures_DeepCoin(期货)
没有不支持的标准函数。
保证金、账户与模拟盘
Futures_DeepCoin(期货)
保证金模式:用exchange.IO("cross", bool)选择全仓/逐仓,这是本地设置,随每次下单带上(默认全仓);连接器没有读取账户实际保证金模式的途径。exchange.SetMarginLevel()按合约设置杠杆,同时带上当前的全仓/逐仓与合并/拆分持仓设置,交易所回执与请求不符时报错。
持仓模式:用exchange.IO("merge", bool)选择合并持仓/拆分持仓(默认合并)。下单时按方向带上持仓方向(开多、平空为long,开空、平多为short),拆分持仓模式需要它区分多空仓位。
注意事项
全部交易所对象
exchange.GetHistoryOrders()、exchange.GetHistoryConditionOrders()不支持since参数(交易所的历史订单接口没有时间范围参数),传入时报错,只能查询最近的订单。
DeepCoin(现货)
- 不支持改单(
exchange.ModifyOrder()),需要先撤单再重新下单;未触发的条件单可以用exchange.ModifyConditionOrder()修改,修改后订单号不变。 - 市价买单的下单量是要花费的计价币金额(DeepCoin的
tgtCcy为quote_ccy),市价卖单是交易币数量。限价单支持IOC、FOK与只做Maker(postOnly)。 - 条件单只支持止盈、止损单,不支持OCO(需要分成止盈、止损两张条件单下单)。条件单与普通订单的订单号互不通用,条件单只能用
exchange.CancelConditionOrder()撤销。 exchange.GetOrders()、exchange.GetConditionOrders()只能按交易对查询:不传或传空字符串时查询当前交易对。未触发条件单的接口没有翻页,单次最多返回100条,交易所正好返回100条时exchange.GetConditionOrders()报错(无法确认是否已取全)。
Futures_DeepCoin(期货)
- 改单(
exchange.ModifyOrder())使用DeepCoin的撤单再下单接口(replace-order),返回值是新订单的Id,之后的查询、撤单应使用新Id;改量时张数向下取整。 - 限价单支持IOC、FOK与只做Maker(
postOnly)。 - 条件单只支持止盈、止损单,不支持OCO(需要分成止盈、止损两张条件单下单),不能使用自定义订单号(clientId);未触发的条件单可以用
exchange.ModifyConditionOrder()修改,修改后订单号不变。条件单与普通订单的订单号互不通用,条件单只能用exchange.CancelConditionOrder()撤销。 - 查询未完成条件单的接口必须带交易对:
exchange.GetConditionOrders()不传参数时只查询当前合约,不能传范围(如USDT.swap)。该接口没有翻页,单次最多返回100条,交易所正好返回100条时报错(无法确认是否已取全)。 - 交易币本位合约需要账户已在DeepCoin开通币本位合约账户,否则下单会被交易所拒绝。