取消或修改订单

大约 2 分钟

修改订单

对应的请求类:TigerHttpRequest(MethodName.MODIFY_ORDER)

说明

修改订单,订单类型不能修改

参数

参数类型是否必填描述
accountstringYes用户授权账户:DU575569
idlongYes订单id,下单时返回
total_quantitylongNo订单数量(港股,沪港通,窝轮,牛熊证有最小数量限制)
total_quantity_scaleintNo下单数量的偏移量,默认为0。碎股单的total_quantity 和 total_quantity_scale 结合起来代表真实下单数量,如 total_quantity=111 total_quantity_scale=2,那么真实 quantity=111*10^(-2)=1.11
limit_pricedoubleNo限价,当 order_type 为LMT,STP,STP_LMT时该参数必需
aux_pricedoubleNo股票止损价。当 order_type 为STP,STP_LMT时该参数必需。当 order_type 为 TRAIL时,为跟踪差额
trailing_percentdoubleNo跟踪止损单-百分比 。当 order_type 为 TRAIL时,aux_price和trailing_percent两者互斥,优先使用trailing_percent
secret_keystringNo机构用户专用,交易员密钥

返回

名称类型说明
idlong唯一单号,可用于查询订单/修改订单/取消订单

示例

TigerHttpClient client = TigerHttpClient.getInstance().clientConfig(
      ClientConfig.DEFAULT_CONFIG);
TigerHttpRequest request = new TigerHttpRequest(MethodName.MODIFY_ORDER);

String bizContent = TradeParamBuilder.instance()
    .account("DU575569")
    .id(147070683398615040L)
    .totalQuantity(200)
    .limitPrice(60.0)
    .buildJson();

request.setBizContent(bizContent);
TigerHttpResponse response = client.execute(request);
JSONObject data = JSON.parseObject(response.getData());
Long id = data.getLong("id");

返回示例

{
  "code": 0,
  "message": null,
  "timestamp": 1525938835697,
  "data": {
      "id":147070683398615040
  }
}

取消订单

对应的请求类:TigerHttpRequest(MethodName.CANCEL_ORDER)

说明

撤销已下的订单。撤单同下单类似,为异步执行,调用本命令后表示撤单请求发送成功,撤单的执行会异步处理 使用 TradeOrderRequest 提交订单后,被提交的订单会根据不同情况进入多种状态。已成交或被系统拒绝的订单无法被撤销,只有订单处于已提交或部分成交的状态,才可被撤销。请参考 TigerHttpRequest(MethodName.ORDERS) 方法的说明来了解可能出现的订单状态。

对于批量下出的订单,可用 TigerHttpRequest(MethodName.ACTIVE_ORDERS) 取得待成交的订单列表,依次撤单。对于已经请求过撤单的订单,不要重复请求,可在撤单命令执行会,等待一段时间再次检查待成交的订单。

参数

参数类型是否必填描述
accountstringYes用户授权账户:DU575569
idlongYes订单号,下单时返回的ID
secret_keystringNo机构用户专用,交易员密钥

返回

名称类型说明
idlong唯一单号,可用于查询订单/修改订单/取消订单

示例

TigerHttpClient client = TigerHttpClient.getInstance().clientConfig(
      ClientConfig.DEFAULT_CONFIG);
TigerHttpRequest request = new TigerHttpRequest(MethodName.CANCEL_ORDER);

String bizContent = TradeParamBuilder.instance()
    .account("DU575569")
    .id(147070683398615040L)
    .buildJson();

request.setBizContent(bizContent);
TigerHttpResponse response = client.execute(request);
JSONObject data = JSON.parseObject(response.getData());
Long id = data.getLong("id");

返回示例

{
  "code": 0,
  "message": null,
  "timestamp": 1525938835697,
  "data": {
      "id":147070683398615040
  }
}
上次编辑于: