# 介绍

# 开通指引

# 1.注册

开发者需要在华盛通注册并开通交易业务;

# 2.提供开发者信息

内容 是否必填 说明
开发者RSA公钥 初始化链接时使用,验证开发者的身份。注:此RSA公钥不是平台的公钥。
IP白名单 只有在白名单内的IP才可以访问API接口,多个IP间以英文逗号分隔(,)分隔。

# 3.开通申请

开发者需要确认并签署《API问卷评估调查》、《API测试结果申报表》、《API开发者授权协议》、《API免责声明》,通过合规部门审核(2-3工作日)后,才可以开通OpenAPI实盘功能;

点击此处申请开通 (opens new window)

# 4.配置账号

审核通过后,点击此处配置开发者RSA公钥 (opens new window)

# 安装说明

量化OpenAPI已提供Java、Python、C++接入SDK,接入参考使用:

点击此处下载Java (opens new window)

点击此处下载Python (opens new window)

点击此处下载C++ (opens new window)

proto接口定义文件:

点击此处下载proto (opens new window)

# 费用说明

# 行情

通过OpenAPI获取行情与通过华盛通APP获取行情权限一致,如您没有行情权限,请与客户经理联系。

# 交易

通过OpenAPI进行交易,交易费用与通过华盛通APP交易费用一致。

港股收费标准 (opens new window)

美股收费标准 (opens new window)

A股通收费标准 (opens new window)

# 协议

基于TCP Socket长链接,采用心跳机制维持长链。通过签名及加密机制来保证传输数据的安全性及完整性。

报文格式:通讯头(header) + 报文体(msgBody)+业务实体(payload)。header固定151字节。msgBody采用Protobuf编码二进制格式。msgBody有四种类型:心跳(HeartBeat)、请求(PBRequest)、响应(PBResponse)、推送(PBNotify),这四种类型有各自的报文格式定义。除心跳外,其余msgBody都包含payload字段,payload为业务实体,见具体接口中“消息类型”定义部分。

# 通讯头

位数 属性 类型 说明 可能值 默认值
1-2 szHeaderFlag Chars(utf-8) 包头起始标志 固定为"HS" HS
3-4 msgType Int16(Little Endian) 消息类型 "0"心跳,"1"请求,"2"响应,"3"推送 0
5 protoFmtType Byte 数据格式 "0"为Protobuf 0
6 protoVer Byte 协议版本,用于迭代兼容 0
7-10 serialNo Int32(Little Endian) 包序列号,要求递增
11-14 bodyLen Int32(Little Endian) 包体最终(加密后)长度
15-142 bodySHA1 Bytes 包体原始数据的SHA1WithRSA签名值,用于验签
143 compressAlgorithm Byte 压缩算法 "0"不压缩 0
144-151 reserved Int64(Little Endian) 保留8字节扩展
# 请求报文体
mmessage PBRequest {
    RequestMsgType requestMsgType = 1;
    string requestId = 2;
    int64 requestTime = 3;
    google.protobuf.Any payload = 4;
    string token = 5;
}
属性 类型 说明
requestMsgType RequestMsgType枚举 请求消息类型
requestId String 请求ID,可使用UUID
requestTime Long 请求时间戳
payload Any 具体的业务参数实体
token String 会话token
# 响应报文体
message PBResponse {
    ResponseMsgType responseMsgType = 1;
    string requestId = 2;
    int64  responseTime = 3;
    string  responseCode = 4;
    string responseMsg = 5;
    google.protobuf.Any payload = 6; 
}
属性 类型 说明
responseMsgType ResponseMsgType枚举 结果消息类型
requestId String 请求ID,与请求时值一样
responseTime Long 响应时间戳
responseCode String 响应状态码,"0000"代表成功
responseMsg String 响应状态说明
payload Any 具体的业务结果实体
# 心跳报文体
message HeartBeat {

}
# 推送报文体
message PBNotify {
    NotifyMsgType notifyMsgType = 1;
    string notifyId = 2;
    uint64 notifyTime = 3;
    google.protobuf.Any payload = 4; 
}
属性 类型 说明
notifyMsgType NotifyMsgType枚举 推送消息类型
notifyId String 推送ID
notifyTime Long 推送时间戳
payload Any 推送消息实体

# 接入说明

平台RSA测试环境公钥:

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCbRuA8hsbbzBKePEZZWaVtYpOjq2XaLZgAeVDlYqgy4lt4D+H2h+47AxVhYmS24O5lGuYD34ENlMoJphLrZkPbVBWJVHJZcRkpC0y36LFdFw7BSEA5+5+kdPFe8gR+wwXQ7sj9usESulRQcqrl38LoIz/vYUbYKsSe3dADfEgMKQIDAQAB

平台RSA正式环境公钥:

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDu7xSKk8VNr7WVsxIbltmpe4ViEVNP9QyjRvA2IBm7KCuE6FFyFABSubjhxeZ3joDuNlga0NVtd/qfPf2iursrSOmT00j2JWcR9pQ/mZ61aWEW8BNnkFvu0nijrw0A2z1XhyoaG1p4/pNWKiqcwpA1P23vRoDkfretUF/SlLtQGQIDAQAB

接口调用时序图

img

# 报文包序列号

进行业务接口调用之前必须首先调用HTTP登录接口,登录成功后会获取到token及用户信息。获取到token后再请求初始化链接接口,初始化链接接口发送报文头的serialNo属性必须为0。当连接被关闭,需要重新连接时需重新调用初始化链接接口进行初始化操作。

包序列号(serialNo)从0开始,调用初始化链接接口时序列号必须为0。当初始化链接成功后,序列号才从1开始递增,每调用一次业务接口自增1。发送心跳消息时序列号无需自增。

# 签名及验签

签名及验签使用SHA1WithRSA算法。开发者私钥签名请求,平台公钥验证响应。

签名的流程为以下所示:

1、获取发送报文体msgBody的明文二进制数据。

2、使用私钥对msgBody明文二进制数据进行签名。

3、把签名后的结果设置到发送报文头的bodySHA1属性中。

验签的流程为以下所示:

1、获取接收报文体msgBody的明文二进制数据。

2、使用公钥对msgBody明文二进制数据及bodySHA1进行验签。

# 数据加密

初始化链接的请求报文体使用平台RSA公钥加密,响应结果使用开发者RSA私钥解密。后续业务接口使用初始化链接接口返回的动态秘钥进行AES加解密。

# RSA加密说明

RSA加密算法是一种非对称加密算法,有一对公私钥。RSA密钥格式为PKCS#8,长度为1024,无密码,采用分段加密(RSA/ECB/PKCS1Padding)。

公钥加密,私钥解密。

RSA单次加密串的最大长度为 (key_size)/8 - 11, 目前位数1024, 所以单次最大可加密长度为117。将明文数据分成一个或数个最长117字节的小段进行加密,拼接分段加密数据即为最终的msgBody密文。

RSA解密同样遵循分段规则,对于1024位密钥,每小段待解密数据长度为128字节,将密文数据分成一个或数个128字节长的小段进行解密,拼接分段解密数据即为最终的msgBody明文。

# AES加密说明

AES是一种对称加密算法,接入端及平台端持有相同的秘钥(动态生成)。AES加密模式使用ECB(AES/ECB/PKCS5Padding)。

AES秘钥为初始化接口返回的encryptedKey属性。encryptedKey需Base64解码,解码后为16位字节。

AES加密要求源数据长度必须是16的整数倍,故会填充对齐。因加密前有可能对源数据作修改,故会在其最后一个字节赋值mod_len,记录mod_len为源数据长度与16取模值。当源数据正好是16的整数倍时,密文会比源数据长16字节。加密数据和额外的填充数据块拼接即为最终的msgBody密文。

AES解密后,会先将最后一个字节取出,记为mod_len,mod_len为0时,截掉尾部16字节填充数据块即为协议返回的msgBody数据,否则截掉尾部(16 - mod_len)长度的用于填充对齐的数据。AES加解密的填充对齐操作一般加密库都会自动进行,无需干预。

# 加解密流程

加密流程如下:

1、获取发送报文体msgBody的二进制数据。

2、对msgBody二进制数据进行加密。

3、把加密后的结果设置为新的报文体msgBody,并把加密后的数据长度设置到报文头的bodyLen属性中。

解密流程如下:

1、获取接收报文体msgBody的二进制数据。

2、对msgBody二进制数据进行解密。

3、解密后的结果即为源报文体,对该数据根据不同消息类型进行解析。

# 设备绑定

测试环境已关闭用户设备校验,连接测试环境调试时,无需进行设备绑定!

# Java程序绑定说明

点击此处下载设备绑定jar包 (opens new window)

设备绑定以jar包方式提供,所以在执行设备绑定时,需要先安装Java环境(Java8及以上,安装请参考网络资料,此处不再赘述)。

下载该jar包,Java命令执行该jar包:

$>java  -jar  xxxxx.jar

执行完上述命令之后,会提示输入相关信息,输入正确信息之后键入回车,会提示已向手机号发送验证码,接着输入手机收到的正确验证码:

请选择连接环境(1:测试环境 2:生产环境):2

请输入开发者登录手机号(格式 CHN-186xxxxxxxx):CHN-186xxxxxxxx         [注:必须为真实手机号以接收验证码,区号参考数据字典区号代码说明]

请输入开发者秘钥:xxxxxxxxxxxxxxxxxxxxxx

验证码已经发送请注意查收:186xxxxxxxx  ............... 服务器响应:{"data":"","respCode":"0000"}

验证码发送成功!

请输入手机验证码:xxxxxx

输入完验证码之后,键入回车,如果出现下面提示,说明设备绑定成功:

开始设备绑定:186xxxxxxxx  设备号:xx-xx-xx-xx-xx-xx  服务器响应:{"data":"","respCode":"0000"}

绑定成功!

此外出现其他提示信息,一律视为设备绑定失败。

# Python程序绑定说明

设备绑定以三方模块方式提供,Python版本需要支持3.7及以上,需要安装pip命令(Python等环境的安装请参考网络资料,此处不再赘述)。

执行如下命令,安装设备绑定模块包:

$> pip install HsOpenAPIDeviceBind

安装模块成功之后,进入Python交互式命令行,执行绑定操作:

$> python
>>> from hsbind.device_bind import bind
>>> bind()

执行bind()函数之后,会提示输入相关信息,输入正确信息之后键入回车,会提示已向手机号发送验证码,接着输入手机收到的正确验证码:

请选择连接环境(1:测试环境 2:生产环境):2

请输入开发者登录手机号(格式 CHN-186xxxxxxxx):CHN-186xxxxxxxx         [注:必须为真实手机号以接收验证码,区号参考数据字典区号代码说明]

请输入开发者秘钥:xxxxxxxxxxxxxxxxxxxxxx

验证码已经发送请注意查收:186xxxxxxxx  ............... 服务器响应:{"data":"","respCode":"0000"}

验证码发送成功!

请输入手机验证码:xxxxxx

输入完验证码之后,键入回车,如果出现下面提示,说明设备绑定成功:

开始设备绑定:186xxxxxxxx  设备号:xx-xx-xx-xx-xx-xx  服务器响应:{"data":"","respCode":"0000"}

绑定成功!

此外出现其他提示信息,一律视为设备绑定失败。

# 平台接口

# 平台域名

http接口测试环境:https://openapi-daily.hstong.com

http接口正式环境:https://openapi.hstong.com

# HTTP登录

# 接口说明

登录账号并获取token。账号需提前申请成为开发者。仅能使用手机号进行登录。

登录成功后返回的token需要使用开发者RSA私钥解密。

Token有效期默认为3小时,有效期内有接口请求则会顺延有效时间。Token可能会提前失效,失效后请求会提示1014:登录超时。Token失效后需要重新登录。

在执行该接口登录之前需进行设备绑定,如果未绑定设备,会登录失败。

# 接口地址

POST https://openapi-daily.hstong.com/hs/v2/login

# 参数说明
参数 类型 必填 说明 可能值
countryCode String 区号 CHN、HKG
mobile String 登录手机号
password String 登录密码,平台RSA公钥加密并Base64转码
deviceNo String 设备号 设备MAC地址
# 示例

Post请求示例:

https://openapi-daily.hstong.com/hs/v2/login?countryCode=CHN&mobile=18000000000&password=KpoFttVDl98KM1Iuj9Rm+4f3Hvo6mOEioLRknBdzyWcys4ilUvVwVPO0jT7498wMokb1oZ5202OY1c614CdFnjZLaZxrzKsQX+/8Hr2fe/PJY9T4L8ormW35ZB/YSlUhy+kXJXH93mnXHX9f7cM3+nATm1gFLnSG0wpBj6FlIfk=&deviceNo=00-50-56-C0-00-08

响应结果:

{
    "data": {
    "nickName": "518273",
    "mobile": "18000000000",
    "token": "jaWlTm8zINb8po5KBIoGUCLdNKJM7Boyr/Mfznuii3N+ciw0dP8dLHXbuXJNfsHS7g5n9URJwxxcpiL/kayFY7IgAu35LFkKLppPnqACkBnFaAQzwZHF/sbd6g8iIW08F1YFoGHhWC70hMUsTBdlKwVg7rzsi0uyD4IeNVyCSuE="
    },
	"respCode": "0000"
}

# 获取配置

# 接口说明

获取PB接口IP地址列表。用于交易、行情Socket IP获取等等。

# 接口地址

POST https://openapi-daily.hstong.com/hs/config/queryServer

# 参数说明
参数 类型 必填 说明 可能值
token String 平台登录会话Token
# 示例

Post请求示例:

https://openapi-daily.hstong.com/hs/config/queryServer?token=dd0f25717a274b3ca086e3bf3f4ea9bd

响应结果:

{
    "data": {
    	"tradeServer": "120.237.122.178:8871",
        "hqServer": "192.168.91.105:8871"
    },
    "respCode": "0000"
}

# 查询汇率

# 接口说明

查询各币种汇率(CNY、HKD、USD)。

# 接口地址

POST https://openapi-daily.hstong.com/hs/rate/queryList

# 参数说明
参数 类型 必填 说明 可能值
token String 平台登录会话Token
rateType String 0:换汇汇率, 1:即期汇率
如果不传,默认查询换汇汇率
# 示例

Post请求示例:

https://openapi-daily.hstong.com/hs/rate/queryList?rateType=1

响应结果:

{
    "data": {
        "HKD": {
            "USD": "0.12718763",
            "CNY": "0.90785293"
        },
        "USD": {
            "HKD": "7.83510000",
            "CNY": "7.22780000"
        },
        "CNY": {
            "HKD": "1.07770000",
            "USD": "0.13925443"
        }
    },
    "respCode": "0000"
}

# 长连接接口说明

# 消息推送

初始化链接后会自动订阅成交推送,当委托订单状态发生变化后,平台就会向开发者推送变更消息(注:一个账号只能保持一个交易服务长连接

# 心跳机制

心跳的请求/响应报文体为空,无需签名及加密,心跳消息头的序列号也无需自增,序列号设置为0。

接入端发送心跳时间间隔建议从初始化链接接口中获取。当接入端在一个心跳时间间隔内无接口调用时应发送一个心跳消息,平台端接收到消息后也会响应一个心跳消息,以检测双方服务正常。

当平台端在连续3个心跳时间段内没有接收到到任何接入端发送的消息,则会主动关闭Socket连接。接入端需要重新建立Socket连接并进行初始化链接。

# 接口请求失败处理

当请求接口发生系统异常时,响应报文体返回的responseMsgType值为:999。

业务异常时,响应payload为空,responseCode及responseMsg分别为错误码及错误说明。

除极端情况下(协议不正确、解密失败)requestId会为0之外,其它情况下都是和请求报文中的请求ID一致。

# 初始化链接

# 接口说明

验证链接合法性,其它接口必须先等InitConnect完成才能进行调用。返回的动态加密秘钥,用于后续接口签名、AES加密。

# 消息类型

请求消息类型:RequestMsgType.InitConnectRequestMsgType

请求参数实体:InitConnectReq

message InitConnectReq {
	string deviceNo=1;
}

返回结果实体:InitConnectResp

message InitConnectResp {
    string encryptedKey = 1; //动态加密秘钥
    int32 heartbeatIntervalSec=2; //建议心跳时间间隔,单位:秒
}
# 参数说明
参数 类型 必填 说明 可能值
deviceNo String 客户端唯一标识,可传mac地址

# 交易接口

# 交易登录

# 接口说明

交易相关接口都必须交易登录成功后才可以调用。

# 消息类型

请求消息类型:RequestMsgType.TradeLoginRequestMsgType

请求参数实体:TradeLoginRequest

message TradeLoginRequest {
    string password = 1;			//交易密码
    string authType = 2;			//登录校验类型,'0'设备校验
    string authParam = 3;			//登录校验参数,设备校验则传设备号
}

返回结果实体:CommonBoolResponse

message CommonBoolResponse {
	bool success = 1; //是否执行成功
}
# 参数说明
参数 类型 必填 说明 可能值
password String 交易密码,RSA加密并Base64转码
authType String 登录校验类型 '0'设备校验
authParam String 登录校验参数,设备校验则传设备号

# 交易登出

# 接口说明

客户退出交易状态

# 消息类型

请求消息类型:RequestMsgType.TradeLogoutRequestMsgType

请求参数实体:PBRequest

返回结果实体:CommonBoolResponse

message CommonBoolResponse {
	bool success = 1; //是否执行成功
}
# 参数说明
参数 类型 必填 说明 可能值

# 查询客户资金

# 接口说明

查询客户资金信息

# 消息类型

请求消息类型:RequestMsgType.TradeQueryMarginFundInfoRequestMsgType

请求参数实体:TradeQueryMarginFundInfoRequest

message TradeQueryMarginFundInfoRequest {
	string exchangeType = 1;
}

返回结果实体:TradeQueryMarginFundInfoResponse

message TradeQueryMarginFundInfoResponse {
    string holdsBalance = 1; //持仓盈亏(废弃,该值不可靠,不建议使用该字段)
    string assetBalance = 2; //总资产
    string enableBalance = 3; //可用金额(购买力)
    string marketValue = 4; //证券市值(废弃,该值不可靠,不建议使用该字段)
    string cashOnHold = 5; //交易冻结金额
    string creditValue = 6; //已用额度
    string creditLine = 7; //信用额度
    string fetchBalance = 8; //可取金额
    string frozenBalance = 9; //总冻结金额
    string accountStatus = 10; //账户状态
    string spentRatio = 11; //资金使用率
    
    // 信用额度数据字段从30开始
    string currentCreditLimit = 30; // 当前信用额度
    string maxCreditLimit = 31; // 提升最大信用额度
    string unitCreditLimit = 32; // 统一信用额度
    string unitMaxCreditLimit = 33; // 最大统一信用额度
    
	// 购买力数据字段从40开始
    string buyPower = 40; // 购买力 (统一和单一市场对应市场主币种)
    string buyPowerCredit = 41; // 购买力,提升信用额度后购买力 (统一和单一市场对应市场主币种)
    string buyPowerHk = 42; // 港股购买力
    string buyPowerUs = 43; // 美股购买力
    string buyPowerCn = 44; // 中华通购买力
    string unitedBuyPowerHk = 45; // 统一港股购买力
    string unitedBuyPowerUs = 46; // 统一美股购买力
    string unitedBuyPowerCn = 47; // 统一中华通购买力
    string thirdBuyPowerHk = 48; // 第三方港股购买力
    string thirdBuyPowerUs = 49; // 第三方美股购买力
    string thirdBuyPowerCn = 50; // 第三方中华通购买力
    string buyPowerShortMarket = 51; // 卖空购买力
    string buyPowerMoney = 52; // 现金购买力
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易市场类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通

# 查询持仓列表

# 接口说明

查询持仓股票列表

# 消息类型

请求消息类型:RequestMsgType.TradeQueryHoldsListRequestMsgType

请求参数实体:TradeQueryHoldsListRequest

message TradeQueryHoldsListRequest {
	string exchangeType = 1;
}

返回结果实体:StockQueryHoldsListResponse

message StockQueryHoldsListResponse {
	repeated HoldsVo holdsList = 1;
}

message HoldsVo {
    string stockName = 1; //股票名称
    string enableAmount = 2; //可卖数量
    string currentAmount = 3; //持仓
    string stockCode = 4; //股票代码
    string lastPrice = 5; //最新价(废弃,该值不可靠,不建议使用该字段)
    string incomeBalance = 6; //浮动盈亏(废弃,该值不可靠,不建议使用该字段)
    string costPrice = 7; //成本价
    string marketValue = 8; //股票市值(废弃,该值不可靠,不建议使用该字段)
    string marketValueRate = 9; //盈亏比例(废弃,该值不可靠,不建议使用该字段)
    string incomeRatio = 10; //市值占比(废弃,该值不可靠,不建议使用该字段)
    string dayCostPrice = 11; //当日成本价
    string dayInComeAmount = 12; //当日有效入金
    string dayOutComeAmount = 13; //当日有效出金
    string keepCostPrice = 14; //保本价
    string exchangeType=15; //交易市场类型
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易市场类别 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通

# 查询最大可买

# 接口说明

获取最大可买数量

# 消息类型

请求消息类型:RequestMsgType.TradeQueryBuyAmountRequestMsgType

请求参数实体:TradeQueryBuyAmountRequest

message TradeQueryBuyAmountRequest {
    string stockCode = 1;
    string entrustPrice = 2;
    string exchangeType = 3;
    int32 clientType = 4;
}

返回结果实体:CommonIntResponse

message CommonIntResponse {
	int32 data = 1; //最大可买数量
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
entrustPrice String 委托价格
queryType String 查询类型 '0'-默认、'1'-Margin
clientType Integer 客户端类型 '0'-internet

# 查询最大可卖

# 接口说明

获取最大可卖数量

# 消息类型

请求消息类型:RequestMsgType.TradeQuerySellAmountRequestMsgType

请求参数实体:TradeQuerySellAmountRequest

message TradeQuerySellAmountRequest {
    string stockCode = 1;
    string exchangeType = 2; 
    int32 clientType = 3;
}

返回结果实体:CommonIntResponse

message CommonIntResponse {
	int32 data = 1; //最大可卖数量
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
clientType Integer 客户端类型 '0'-internet

# 查询当日资金流水

# 接口说明

查询客户当日资金流水。分页时当收到的列表为空或数量小于queryCount,表示没有下一页。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryRealFundJourListRequestMsgType

请求参数实体:TradeQueryRealFundJourListRequest

message TradeQueryRealFundJourListRequest {
    string exchangeType = 1;
    string queryParamStr = 2;
    int32 queryCount = 3;
}

返回结果实体:TradeQueryRealFundJourListResponse

message TradeQueryRealFundJourListResponse {
	repeated FundJourVo data = 1;
}

message FundJourVo {
    string businessBalance = 1; //发生金额
    string type = 2; //类型
    string typeDesc = 3; //类型描述
    string fundJourParentType = 4; //资金流水父类型
    string time = 5; //成交日期,当日资金流水没有,历史资金流水有
    string queryParamStr = 6; //当前记录的索引,用于分页
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
queryCount Integer 每页返回数量 默认 20(限制小于100)
queryParamStr String 游标 初始值为0 开始,分页时传上一页最后一条数据的queryParamStr

# 查询历史资金流水

# 接口说明

查询客户历史资金流水。分页时当收到的列表为空或数量小于queryCount,表示没有下一页。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryHistoryFundJourListRequestMsgType

请求参数实体:TradeQueryHistoryFundJourListRequest

message TradeQueryHistoryFundJourListRequest {
    string exchangeType = 1;
    string queryParamStr = 2;
    int32 queryCount = 3;
    int32 startDate=4;
    int32 endDate=5;
}

返回结果实体:TradeQueryHistoryFundJourListResponse

message TradeQueryHistoryFundJourListResponse {
	repeated FundJourVo data = 1;
}

message FundJourVo {
    string businessBalance = 1; //发生金额
    string type = 2; //类型
    string typeDesc = 3; //类型描述
    string fundJourParentType = 4; //资金流水父类型
    string time = 5; //成交日期,当日资金流水没有,历史资金流水有
    string queryParamStr = 6; //当前记录的索引,用于分页
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
queryCount Integer 每页返回数量 默认 20(限制小于100)
queryParamStr String 游标 初始值为0 开始,分页时传上一页最后一条数据的queryParamStr
startDate String 起始日期 格式为:yyyyMMdd
endDate String 结束日期 格式为:yyyyMMdd

# 期货-查询客户资金信息

# 接口说明

获取指定用户下指定资金账户的当前最新资金信息 。

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryFundInfoRequestMsgType

请求参数实体:无

返回结果实体:FuturesQueryFundInfoResponse

message FuturesQueryFundInfoResponse {
	FuturesFundInfoVo fundInfo = 1;
}

message FuturesFundInfoVo {
	string assetBalance = 1; // 资产净值
	string enableBalance = 2; //可用金额(购买力)
	string marginCall = 3; //追缴保证金
	string incomeBalance = 4; //持仓盈亏
	string cashBal = 5; // 现金结余
	string iMargin = 6; // 基本保证金
	string mMargin = 7; // 维持保证金
	string marginLevel = 8; // 保证金水平
	string maxMargin = 9; // 最高保证金
	string creditLimit = 10; // 信贷限额
	string ctrlLevel = 11; // 控制级数
	string marginClass = 12; // 保证金类型
	string aeId = 13; // 经纪
	string cashBalHKD = 14; 	// 港币现金结余
	string cashBalUSD = 15;		// 美元现金结余
	string cycRateUSDtoHSD = 16; // 美元兑港币汇率
	string marginStatus=17; //风险状态  //1:安全 2:预警 3:危险 4:平仓
	string statusPercent=18;//风险状态画图百分比
	string closeProfit=19;//已实现盈亏
	string cashBalCNH=20;//人民币现金结余
}

# 期货-查询持仓列表

# 接口说明

获取用户的持仓信息

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryHoldsListRequestMsgType

请求参数实体:无

返回结果实体:FuturesQueryHoldsListResponse

message FuturesQueryHoldsListResponse {
	FuturesFundInfoVo fundInfo = 1; // 详情参见“期货-查询客户资金信息”
	repeated FuturesHoldsVo holdsList = 2;
}

message FuturesHoldsVo {
	string stockName = 1;//股票名称
	string stockCode = 2;//股票代码,1.港股有后缀 .HK
	string lastDayQty = 3; // 上日持仓数量
	string lastDayPrice =4; // 上日持仓成本
	string depQty = 5; // 存储仓位
	string dayLongQty = 6; // 今日长仓数量
	string dayLongPrice = 7; // 今日长仓均价
	string dayShortQty = 8; // 今日短仓数量
	string dayShortPrice = 9; // 今日短仓均价
	string dayNetQty = 10; //  今日净仓数量
	string dayNetPrice = 11; //  今日净仓均价
	string currentQty = 12;//持仓 上日持仓数量 + 今日净仓数量 = 净仓数量
	string costPrice = 13; // 成本价
	string lastPrice = 14; // 现价
	string preClosePrice = 15; // 昨收价
	string profitLoss = 16; // 盈亏
	string ccyRate = 17;	// 参考兑换率
	string contractValue = 18; // 合约值
	string profitLossBaseCcy = 19; // 盈亏(基本货币)
	string ccy = 20; //产品系列的交易币种
	string dataType = 21; // 仅仅期货是返回dataType,因为港期和美期
	string closeProfit = 22; // 已实现盈亏
	string closeProfitHKD = 23; // 已实现盈亏(HKD)
}

# 期货-查询最大可买可卖

# 接口说明

查询最大可买可卖数量

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryMaxBuySellAmountRequestMsgType

请求参数实体:FuturesQueryMaxBuySellAmountRequest

message FuturesQueryMaxBuySellAmountRequest {
	string stockCode = 1; // 股票代码
}

返回结果实体:FuturesQueryBuySellAmountResponse

message FuturesQueryBuySellAmountResponse {
	int32 positionStatus = 1;  //持仓头寸状态:0未建仓,1正仓,2负仓
	int64 maxBuyAmount = 2; 	//最大可买
	int64 maxSellAmount = 3;  //最大可卖
	string initialMargin = 4; // 开仓按金
	string ccy = 5; // 币种
}

# 期货-查询合约产品信息

# 接口说明

查询最大可买可卖数量

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryProductInfoRequestMsgType

请求参数实体:FuturesQueryProductInfoRequest

message FuturesQueryProductInfoRequest {
	repeated string stockCode = 1;
}

返回结果实体:FuturesQueryProductInfoResponse

message FuturesQueryProductInfoResponse {
	repeated FuturesProductInfoVo productInfoVos = 1;
}

message FuturesProductInfoVo {
    string prodCode = 1; // 产品代码
    string instCode = 2; // 合约系列类型
    int32 lotSize = 3; // 每手数量
    int32 decInPrice = 4; // 产品价格小数位 0表示1,1表示0.1,2表示0.01跟priceDecimalPoint对应
    string contractSize = 5; // 合约值
    string priceDecimalPoint = 6; // 价格小数点,跟decInPrice对应]
    string expiryDate = 7; // 产品到期时间 yyyy-MM-dd
    int32 isSupportT1 = 8; // 是否支持T+1交易,0:否,1:是
}

# 订单

# 委托

# 接口说明

委托下单,如果委托数量超过单笔最大数量,则会进行拆单

# 消息类型

请求消息类型:RequestMsgType.TradeEntrustRequestMsgType

请求参数实体:TradeEntrustRequest

message TradeEntrustRequest {
    string stockCode = 1; // 股票代码(交易接口:港股市场需要带后缀 .HK)
    string exchangeType = 2; // 市场
    string entrustAmount = 3; // 委托数量
    string entrustPrice = 4; // 委托价格
    string entrustBs = 5;
    string entrustType = 6; // 委托类型
    int32 clientType = 7;
    string exchange = 8; // 交易所(IB通道)
    string sessionType = 9; // 盘前盘后交易,0:否 1:是 
    string iceBergDisplaySize = 10; // 冰山单披露数量

    string validDays = 11; // 有效天数
    string condValue = 12; // 触发条件值 价格/价差/百分比值
    string condTrackType = 13; // 跟踪类型 1百分比、2价差
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; //委托编号
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
entrustAmount String 委托数量
entrustPrice String 委托价格 <如果为条件单,该值可为空>
entrustBs String 买卖方向 '1'-买入、'2'-卖出(若为空头持仓情况,服务端接口按照持仓头寸自动处理买卖方向,也可使用 3'-空头平仓、'4'-空头开仓作为入参)
entrustType String 委托类型 港股:'0'-竞价限价、'1'-竞价、'2'-增强限价盘、'3'-限价盘、'4'-特别限价盘、'6'-暗盘、'7'-碎股
美股:'3'-限价盘、'5'-市价盘、'8'-冰山市价、'9'-冰山限价、'10'-隐藏市价、'11'-隐藏限价
A股:'3'-限价盘
条件单:'31'-止盈限价单、'32'-止盈市价单(美股)、'33'-止损限价单、'34'-止损市价单(美股)、'35'-追踪止损限价单、'36'-追踪止损市价单(美股)
clientType Integer 客户端类型 '0' internet
exchange String 交易所(IB通道) 枚举值参考数据字典:exchange 交易所
sessionType String 盘前盘后交易 0:否 1:是 3:只支持盘中 5:港股支持盘中及暗盘 7:美股支持盘中及盘前盘后
<如果为普通订单,默认值为 0,可能值:0、1>
<如果为条件单,默认值为 3,可能值:3、5、7>
iceBergDisplaySize String 冰山单披露数量 如为冰山单,该值必填,且该值必须大于0,小于等于委托数量
validDays String 有效天数 <如果为条件单,该值必传,最多支持100个自然日>
condValue String 触发条件值 <如果为条件单,该值必传,可能值:价格、价差、百分比数字>
condTrackType string 跟踪类型 1百分比、2价差
<如果为条件跟踪单,该值必传>

# 撤单

# 接口说明

委托撤单

# 消息类型

请求消息类型:RequestMsgType.TradeCancelEntrustRequestMsgType

请求参数实体:TradeCancelEntrustRequest

message TradeCancelEntrustRequest {
    string  exchangeType = 1;
    string  entrustAmount = 2;
    string  entrustPrice = 3;
    string  entrustId = 4;
    string  stockCode = 5;
    string  entrustType = 6; // 委托类型
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; //委托编号
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
entrustAmount String 委托数量 必须传原委托的委托数量
entrustPrice String 委托价格
entrustId String 委托编号
entrustType String 委托类型 条件单类型参考上述 委托接口
<如果为条件单,该值必传,必须传原委托的委托类型>

# 批量撤单

# 接口说明

委托批量撤单(注:如果当日订单量超过一定阈值,该接口可能超时)

# 消息类型

请求消息类型:RequestMsgType.TradeBatchCancelEntrustRequestMsgType

请求参数实体:TradeBatchCancelEntrustRequest

message TradeBatchCancelEntrustRequest {
    string  exchangeType = 1; // 交易类型
    repeated string entrustId = 2; // 委托编号列表
}

返回结果实体:TradeBatchCancelEntrustResponse

message TradeBatchCancelEntrustResponse {
	repeated string successEntrustId = 1; // 撤单成功的委托编号
	repeated FailCancelEntrustVo failCancelEntrust = 2; // 失败列表
}

message FailCancelEntrustVo {
    string failEntrustId = 1; // 撤单失败的委托编号
    string remark = 2; // 撤单失败备注
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通(传'v'或者't',会将中华通所有订单都执行撤单)
会将该交易类型下的所有订单执行撤单
entrustId List 委托编号列表 不包含条件单

# 改单

# 接口说明

修改委托单,如果改单后的委托数量超过单笔最大数量,则会进行拆单。

# 消息类型

请求消息类型:RequestMsgType.TradeChangeEntrustRequestMsgType

请求参数实体:TradeChangeEntrustRequest

message TradeChangeEntrustRequest {
    string exchangeType = 1;
    string entrustAmount = 2;
    string entrustPrice = 3;
    string entrustId = 4;
    string stockCode = 5;
    
    string entrustType = 6; // 委托类型
	string sessionType = 7; // 盘前盘后交易
    string validDays = 8; // 有效天数
    string condValue = 9; // 触发条件值 价格/价差/百分比值
    string condTrackType = 10; // 跟踪类型 1百分比、2价差
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; //委托编号
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
entrustAmount String 修改后的委托数量
entrustPrice String 修改后的委托价格 <如果为条件单,该值可为空>
entrustId String 原始委托编号
entrustType String 委托类型 条件单类型参考上述 委托接口
<如果为条件单,该值必传,必须传原委托的委托类型>
sessionType String 盘前盘后交易 3:只支持盘中 5:港股支持盘中及暗盘 7:美股支持盘中及盘前盘后
validDays String 有效天数 最多支持100个自然日
condValue String 触发条件值 <如果为条件单,该值必传,可能值:价格、价差、百分比数字>
condTrackType String 跟踪类型 1百分比、2价差
<如果为条件跟踪单,该值必传>

# 查询最大可用资产

# 接口说明

获取最大可用资产

# 消息类型

请求消息类型:RequestMsgType.TradeQueryMaxAvailableAssetRequestMsgType

请求参数实体:TradeQueryMaxAvailableAssetRequest

message TradeQueryMaxAvailableAssetRequest {
	string exchangeType = 1; // 'K'港股、'P'美股、'v'深股通、't'沪股通
	string stockCode = 2; // 证券代码
	string entrustPrice = 3; // 委托价格
    string entrustType = 4; // 委托类型
}

返回结果实体:TradeQueryMaxAvailableAssetResponse

message TradeQueryMaxAvailableAssetResponse {
	MaxAvailableAssetVo data = 1;
}

message MaxAvailableAssetVo {
    string positionStatus = 1; // 持仓头寸状态:0未建仓,1做多,2做空
    string position = 2; // 持仓头寸
    
    string longOpenAvailable = 3; // 做多数据:做多可开仓(买入)数量
    string longCloseAvailable = 4; // 做多数据:做多可平仓(卖出)数量
    string cashAvailableToOpen = 5; // 做多数据:现金可开仓数量
    string marginAvailableToOpen = 6; // 做多数据:融资可开仓数量
    string cashAndMarginAvailableToOpen = 7; // 做多数据:现金和融资可开仓数量
    string cashAvailableAmount = 8; // 做多数据:现金购买力
    string marginAvailableAmount = 9; // 做多数据:融资购买力
    string cashAndMarginAvailableAmount = 10; // 做多数据:现金和融资总共的购买力
    
    string shortOpenAvailable = 11; // 做空数据:做空可开仓(卖出)数量
    string shortCloseAvailable = 12; // 做空数据:做空可平仓(买入)数量
    string shortCloseCashAvailable = 13; // 做空数据:做空现金可平仓(买入)数量
    string shortOpenPool = 14; // 做空数据:卖空池
    string shortBuyPower = 15; // 做空数据:做空购买力
    
    string contractSize = 16; // 期权合约单位
    string unitedBuyPowerStatus = 17; // 开通统一购买力
    string creditLimit = 18; // 透支额度
    
    string optionLongMarginAmount = 19; // 期权保证金(做多)
    string optionShortMarginAmount = 20; // 期权保证金(做空)
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
entrustPrice String 委托价格
entrustType String 委托类型 港股:'0'-竞价限价、'1'-竞价、'2'-增强限价盘、'3'-限价盘、'4'-特别限价盘、'6'-暗盘、'7'-碎股
美股:'3'-限价盘、'5'-市价盘、'8'-冰山市价、'9'-冰山限价、'10'-隐藏市价、'11'-隐藏限价
A股:'3'-限价盘

# 查询当日委托

# 接口说明

查询客户当日委托信息。分页时当收到的列表为空或数量小于queryCount,表示没有下一页。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryRealEntrustListRequestMsgType

请求参数实体:TradeQueryRealEntrustListRequest

message TradeQueryRealEntrustListRequest {
    string exchangeType = 1;
    string queryParamStr = 2;
    int32 queryCount = 3;
    repeated string entrustId = 4;
}

返回结果实体:TradeQueryRealEntrustListResponse

message TradeQueryRealEntrustListResponse {
	repeated OrderVo data = 1;
}

message OrderVo {
    string stockCode = 1; //股票代码
    string stockName = 2; //股票名称
    string businessPrice = 3; //成交价格
    string entrustBs = 4; //委托方向 1:买入、2:卖出
    string entrustPrice = 5; //委托价格
    string businessBalance = 6; //成交金额
    string entrustAmount = 7; //委托数量
    string businessAmount = 8; //成交数量
    string date = 9; //如果是成交接口,成交日期,如果是委托接口,委托日期
    string businessTime = 10; //成交时间
    string entrustTime = 11; //委托时间
    string queryParamStr = 12; //当前记录的索引,用于分页
    string statusDesc = 13; //委托状态中文描述
    string status = 14; //委托状态
    string entrustId = 15; //委托编号
    string unBusinessAmount = 16; //未成交数量
    int32 canBeCanceled = 17; //可撤单 1:可撤单、0:不可撤单
    string entrustType = 18; //委托类型
    string opponentSeat = 19; //对手席位号,仅当日成交有该字段
    string entrustTypeNum = 20; //委托类型对应的数字
    string remarkType = 21; //备注类型 0:无、1:废单
    string remark = 22; //备注信息
    FareVo fareVo = 23; //费用
    string exchangeType=24; //交易类型
    int32 canBeUpdated = 25; //是否可改单 1:可改单,0:不可改单
    string exchange = 26; //交易所
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
queryCount Integer 每页数量(分页时必填) 默认 20(限制小于100)
queryParamStr String 游标(分页时必填) 初始值为0 开始,分页时传上一页最后一条数据的queryParamStr
entrustId List 委托编号列表,传此参数时分页参数无效 最大传100条

# 查询历史委托

# 接口说明

查询客户历史委托信息。分页时当收到的列表为空或数量小于queryCount,表示没有下一页。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryHistoryEntrustListRequestMsgType

请求参数实体:TradeQueryHistoryEntrustListRequest

message TradeQueryHistoryEntrustListRequest {
    string exchangeType = 1;
    string queryParamStr = 2;
    int32 queryCount = 3;
    string startDate = 4;
    string endDate = 5;
}

返回结果实体:TradeQueryHistoryEntrustListResponse

message TradeQueryHistoryEntrustListResponse {
	repeated OrderVo data = 1;
}
message OrderVo {
    string stockCode = 1; //股票代码
    string stockName = 2; //股票名称
    string businessPrice = 3; //成交价格
    string entrustBs = 4; //委托方向 1:买入、2:卖出
    string entrustPrice = 5; //委托价格
    string businessBalance = 6; //成交金额
    string entrustAmount = 7; //委托数量
    string businessAmount = 8; //成交数量
    string date = 9; //如果是成交接口,成交日期,如果是委托接口,委托日期
    string businessTime = 10; //成交时间
    string entrustTime = 11; //委托时间
    string queryParamStr = 12; //当前记录的索引,用于分页
    string statusDesc = 13; //委托状态中文描述
    string status = 14; //委托状态
    string entrustId = 15; //委托编号
    string unBusinessAmount = 16; //未成交数量
    int32 canBeCanceled = 17; //可撤单 1:可撤单、0:不可撤单
    string entrustType = 18; //委托类型
    string opponentSeat = 19; //对手席位号,仅当日成交有该字段
    string entrustTypeNum = 20; //委托类型对应的数字
    string remarkType = 21; //备注类型 0:无、1:废单
    string remark = 22; //备注信息
    FareVo fareVo = 23; //费用
    string exchangeType=24; //交易类型
    int32 canBeUpdated = 25; //是否可改单 1:可改单,0:不可改单
    string exchange = 26; //交易所
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
queryCount Integer 每页返回数量 默认 20(限制小于100)
queryParamStr String 游标 初始值为0 开始,分页时传上一页最后一条数据的queryParamStr
startDate String 起始日期 格式为:yyyyMMdd
endDate String 结束日期 格式为:yyyyMMdd

# 查询当日成交

# 接口说明

查询客户当日成交信息。分页时当收到的列表为空或数量小于queryCount,表示没有下一页。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryRealDeliverListRequestMsgType

请求参数实体:TradeQueryRealDeliverListRequest

message TradeQueryRealDeliverListRequest {
    string exchangeType = 1;
    string queryParamStr = 2;
    int32 queryCount = 3;
}

返回结果实体:TradeQueryRealDeliverListResponse

message TradeQueryRealDeliverListResponse {
	repeated OrderVo data = 1;
}

message OrderVo {
    string stockCode = 1; //股票代码
    string stockName = 2; //股票名称
    string businessPrice = 3; //成交价格
    string entrustBs = 4; //委托方向 1:买入、2:卖出
    string entrustPrice = 5; //委托价格
    string businessBalance = 6; //成交金额
    string entrustAmount = 7; //委托数量
    string businessAmount = 8; //成交数量
    string date = 9; //如果是成交接口,成交日期,如果是委托接口,委托日期
    string businessTime = 10; //成交时间
    string entrustTime = 11; //委托时间
    string queryParamStr = 12; //当前记录的索引,用于分页
    string statusDesc = 13; //委托状态中文描述
    string status = 14; //委托状态
    string entrustId = 15; //委托编号
    string unBusinessAmount = 16; //未成交数量
    int32 canBeCanceled = 17; //可撤单 1:可撤单、0:不可撤单
    string entrustType = 18; //委托类型
    string opponentSeat = 19; //对手席位号,仅当日成交有该字段
    string entrustTypeNum = 20; //委托类型对应的数字
    string remarkType = 21; //备注类型 0:无、1:废单
    string remark = 22; //备注信息
    FareVo fareVo = 23; //费用
    string exchangeType=24; //交易类型
    int32 canBeUpdated = 25; //是否可改单 1:可改单,0:不可改单
    string exchange = 26; //交易所
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
queryCount Integer 每页返回数量 默认 20(限制小于100)
queryParamStr String 游标 初始值为0 开始,分页时传上一页最后一条数据的queryParamStr

# 查询历史成交

# 接口说明

查询客户历史成交信息,港股历史成交会进行合单,和委托单不能直接对应起来。分页时当收到的列表为空或数量小于queryCount,表示没有下一页。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryHistoryDeliverListRequestMsgType

请求参数实体:TradeQueryHistoryDeliverListRequest

message TradeQueryHistoryDeliverListRequest {
    string exchangeType = 1;
    string queryParamStr = 2;
    int32 queryCount = 3;
    string startDate = 4;
    string endDate = 5;
}

返回结果实体:TradeQueryHistoryDeliverListResponse

message TradeQueryHistoryDeliverListResponse {
	repeated OrderVo data = 1;
}

message OrderVo {
    string stockCode = 1; //股票代码
    string stockName = 2; //股票名称
    string businessPrice = 3; //成交价格
    string entrustBs = 4; //委托方向 1:买入、2:卖出
    string entrustPrice = 5; //委托价格
    string businessBalance = 6; //成交金额
    string entrustAmount = 7; //委托数量
    string businessAmount = 8; //成交数量
    string date = 9; //如果是成交接口,成交日期,如果是委托接口,委托日期
    string businessTime = 10; //成交时间
    string entrustTime = 11; //委托时间
    string queryParamStr = 12; //当前记录的索引,用于分页
    string statusDesc = 13; //委托状态中文描述
    string status = 14; //委托状态
    string entrustId = 15; //委托编号
    string unBusinessAmount = 16; //未成交数量
    int32 canBeCanceled = 17; //可撤单 1:可撤单、0:不可撤单
    string entrustType = 18; //委托类型
    string opponentSeat = 19; //对手席位号,仅当日成交有该字段
    string entrustTypeNum = 20; //委托类型对应的数字
    string remarkType = 21; //备注类型 0:无、1:废单
    string remark = 22; //备注信息
    FareVo fareVo = 23; //费用
    string exchangeType=24; //交易类型
    int32 canBeUpdated = 25; //是否可改单 1:可改单,0:不可改单
    string exchange = 26; //交易所
}

message FareVo {
    string fare0 = 1; //港股:佣金、美股:佣金
    string fare1 = 2; //港股:印花税、美股:证监会费
    string fare2 = 3; //港股:交易费、美股:交易活动费
    string fare3 = 4; //港股:交易征费、美股:交易征费
    string fare4 = 5; //港股:待用、美股:待用
    string fare5 = 6; //港股:待用、美股:待用
    string fare6 = 7; //港股:平台使用费、美股:平台使用费
    string fare7 = 8; //港股:待用、美股:待用
    string farex = 9; //港股:结算费、美股:交收费
    string faret = 10; //港股:总成交费用、美股:总成交费用
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
queryCount Integer 每页返回数量 默认 20(限制小于100)
queryParamStr String 游标 初始值为0 开始,分页时传上一页最后一条数据的queryParamStr
startDate String 起始日期 格式为:yyyyMMdd
endDate String 结束日期 格式为:yyyyMMdd

# 查询当日条件单

# 接口说明

查询当日条件单列表。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryRealCondOrderListRequestMsgType

请求参数实体:TradeQueryRealCondOrderListRequest

message TradeQueryRealCondOrderListRequest {
	string exchangeType = 1;
	string stockCode = 2; 
	int32 pageNo = 3;
	int32 pageSize = 4;
}

返回结果实体:TradeQueryRealCondOrderListResponse

message TradeQueryRealCondOrderListResponse {
	repeated CondOrderVo data = 1;
	int32 curPageNo= 2;
	int32 curPageSize = 3;
	int64 totalPages = 4;
}

message CondOrderVo {
    string condOrderId = 1; // 条件单号
    string dataType = 2; // 股票dataType
    string stockCode = 3; // 股票代码
	string stockName = 4; // 股票名称
    string stockNameTc = 5; // 股票名称-繁体
    string stockNameEn = 6; // 股票名称-英文
    string exchangeType = 7; // 市场代码
    
    string entrustType = 8;  // 31止盈限价单 32止盈市价单(美股) 33止损限价单 34止损市价单(美股) 35追踪止损限价单 36追踪止损市价单(美股)
    string sessionType = 9; // 3只支持盘中 6美股只支持盘前盘后 7美股支持盘中及盘前盘后
    string status = 10; // 条件单状态  1:待触发 2:已触发 3:暂停 4:已过期 5:已删除 6:错误 8:止盈止损单失效 9:除权除息失效
    string canBeCancel = 11; // 是否可以撤单 0否 1是
    string canBeModify = 12; // 是否可以改单 0否 1是
    
    string entrustBs = 13; // 买卖方向  '1'-多头开仓、'2'-多头平仓、'3'-空头平仓、'4'-空头开仓
    string entrustAmount = 14; // 委托数量
    
    string createTime = 15; // 下单时间
    string startTime = 16; // 启动时间
    string endTime = 17; // 到期时间
    string errorCode = 18; // 错误码
    string errorMsg = 19; // 异常信息
    
    string condValue = 20; // 条件值 价格/价差/百分比值
    string condPrice = 21; // 条件指定价
    string condTrackType = 22; // 条件跟踪类型 1百分比、2价差、3价格
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
pageNo Integer 页码 1(从1开始)
pageSize Integer 每页条数 20(限制小于100)

# 查询历史条件单

# 接口说明

查询历史条件单列表。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryHistoryCondOrderListRequestMsgType

请求参数实体:TradeQueryHistoryCondOrderListRequest

message TradeQueryHistoryCondOrderListRequest {
	string exchangeType = 1;
	string stockCode = 2; 
	int32 pageNo = 3;
	int32 pageSize = 4;
	string startTime = 5;
    string endTime = 6;
}

返回结果实体:TradeQueryHistoryCondOrderListResponse

message TradeQueryHistoryCondOrderListResponse {
	repeated CondOrderVo data = 1;
	int32 curPageNo= 2;
    int32 curPageSize = 3;
    int64 totalPages = 4;
}

message CondOrderVo {
    string condOrderId = 1; // 条件单号
    string dataType = 2; // 股票dataType
    string stockCode = 3; // 股票代码
	string stockName = 4; // 股票名称
    string stockNameTc = 5; // 股票名称-繁体
    string stockNameEn = 6; // 股票名称-英文
    string exchangeType = 7; // 市场代码
    
    string entrustType = 8;  // 31止盈限价单 32止盈市价单(美股) 33止损限价单 34止损市价单(美股) 35追踪止损限价单 36追踪止损市价单(美股)
    string sessionType = 9; // 3只支持盘中 6美股只支持盘前盘后 7美股支持盘中及盘前盘后
    string status = 10; // 条件单状态  1:待触发 2:已触发 3:暂停 4:已过期 5:已删除 6:错误 8:止盈止损单失效 9:除权除息失效
    string canBeCancel = 11; // 是否可以撤单 0否 1是
    string canBeModify = 12; // 是否可以改单 0否 1是
    
    string entrustBs = 13; // 买卖方向  '1'-多头开仓、'2'-多头平仓、'3'-空头平仓、'4'-空头开仓
    string entrustAmount = 14; // 委托数量
    
    string createTime = 15; // 下单时间
    string startTime = 16; // 启动时间
    string endTime = 17; // 到期时间
    string errorCode = 18; // 错误码
    string errorMsg = 19; // 异常信息
    
    string condValue = 20; // 条件值 价格/价差/百分比值
    string condPrice = 21; // 条件指定价
    string condTrackType = 22; // 条件跟踪类型 1百分比、2价差、3价格
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码
pageNo String 页码 1(从1开始)
pageSize String 每页条数 20(限制小于100)
startTime String 开始时间 格式为: 2021-01-01 19:21:21
endTime String 结束时间 格式为: 2021-01-02 19:21:21

# 查询是否支持盘前盘后交易

# 接口说明

查询某支股票是否支持盘前盘后交易。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryBeforeAndAfterSupportRequestMsgType

请求参数实体:TradeQueryBeforeAndAfterSupportRequest

message TradeQueryBeforeAndAfterSupportRequest {
	string stockCode = 1;
	string exchangeType = 2;
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; // "1": 是, "0":否
}
# 参数说明
参数 类型 必填 说明 可能值
stockCode String 证券代码
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通

# 查询股票沽空信息

# 接口说明

查询股票的沽空信息。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryStockShortInfoRequestMsgType

请求参数实体:TradeQueryStockShortInfoRequest

message TradeQueryStockShortInfoRequest {
    string exchangeType = 1; // 'K'港股、'P'美股、'v'深股通、't'沪股通
    string stockCode = 2; // 证券代码
}

返回结果实体:TradeQueryStockShortInfoResponse

message TradeQueryStockShortInfoResponse {
    string supportShort = 1; // 是否支持沽空(1-支持、0-不支持)
    string interestRate = 2; // 沽空利率
}
# 参数说明
参数 类型 必填 说明 可能值
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
stockCode String 证券代码

# 查询股票融资融券数据

# 接口说明

查询股票融资融券数据。

# 消息类型

请求消息类型:RequestMsgType.TradeQueryMarginFullInfoRequestMsgType

请求参数实体:TradeQueryMarginFullInfoRequest

message TradeQueryMarginFullInfoRequest {
	string dataType = 1; // 股票类型
	string stockCode = 2; // 股票代码(交易接口:港股市场需要带后缀 .HK)
}

返回结果实体:TradeQueryMarginFullInfoResponse

message TradeQueryMarginFullInfoResponse {
	string marginAllow = 1; // 是否支持融资 0:不支持,1:支持
	string marginInitRatio = 2; // 融资保证金率
	string marginKeepRatio = 3; // 维持保证金率
    
	string shortAllow = 4; // 是否支持融券 0:不支持,1:支持
	string shortInitMarginRatio = 5; // 融券保证金率
	string shortInterestRate = 6; // 融券参考利率
	string shortKeepMarginRatio = 7; // 维持保证金率
	string shortLastAvailableQty = 8; // 沽空池剩余
    
	repeated RateVo rate = 9; // 拓展利率列表
}

message RateVo {
    string currencyCode = 1; // 币种代码
    string currencyDesc = 2; // 币种描述
    string interestRateWithinMortgage = 3; // 融资参考利率
}
# 参数说明
参数 类型 必填 说明 可能值
dataType String 股票类型(值参看下文数据字典股票类型定义)
stockCode String 股票代码

# 期货-委托

# 接口说明

委托下单

# 消息类型

请求消息类型:RequestMsgType.FuturesEntrustRequestMsgType

请求参数实体:FuturesEntrustRequest

message FuturesEntrustRequest {
	string stockCode = 1; // 期货合约代码
	string entrustType = 2; // 0 限价单、1 竞价单、2 市价单
	string entrustPrice = 3; // 委托价格
	string entrustAmount = 4; // 委托数量
	string entrustBs = 5; // 1:买入,2:卖出
	string validTimeType = 6; // 0 即日有效、1 成交并取消、2 全额或取消、3 到期日有效、4 指定日期有效
	string validTime = 7; // 当validTimeType==4 必填yyyyMMdd
	string orderOptions =8; //0:默认 1:T+1
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; //委托编号(不一定会返回)
}

# 期货-撤单

# 接口说明

委托撤单, 用户委托没有完全成交之前撤销剩余的委托

# 消息类型

请求消息类型:RequestMsgType.FuturesCancelEntrustRequestMsgType

请求参数实体:FuturesCancelEntrustRequest

message FuturesCancelEntrustRequest {
	string entrustId = 1; // 委托编号
	string stockCode = 2; // 期货合约代码
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; //委托编号
}

# 期货-改单

# 接口说明

修改委托单

# 消息类型

请求消息类型:RequestMsgType.FuturesModifyEntrustRequestMsgType

请求参数实体:FuturesModifyEntrustRequest

message FuturesModifyEntrustRequest {
	string entrustId = 1; // 委托Id
	string stockCode = 2;	// 股票代码
	string entrustPrice = 3; // 价格
	string entrustAmount = 4; // 数量
	string entrustBs = 5; // 1:买入,2:卖出
	string validTimeType = 6; // 0 即日有效、1 成交并取消、2 全额或取消、3 到期日有效、4 指定日期有效
	string validTime = 7; // 当validTimeType==4 必填yyyyMMdd
	string orderOptions =8; //0:默认 1:T+1
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; //委托编号
}

# 期货-查询当日委托

# 接口说明

查询客户当日最新的委托列表,最大返回500条

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryRealEntrustListRequestMsgType

请求参数实体:无

返回结果实体:FuturesQueryRealEntrustListResponse

message FuturesQueryRealEntrustListResponse {
	repeated FuturesOrderVo data = 1;
}

message FuturesOrderVo {
	string stockCode = 1;//股票代码,1.港股有后缀 .HK
	string stockName = 2;//股票名称
	string businessPrice = 3; // 成交价格
	string entrustBs = 4;// 委托方向 1:买入,2:卖出
	string entrustPrice = 5;// 委托价格
	string entrustAmount = 7;//委托数量
	string businessAmount = 8;//成交数量
	string date = 9; //如果是成交接口,成交日期,如果是委托接口, 委托日期
	string businessTime = 10;//成交时间
	string entrustTime = 11;//委托时间
	string queryParamStr = 12;//当前记录的索引,用于分页
	string statusDesc = 13;	 //委托状态中文描述
	string status = 14; //委托状态(华盛com.huasheng.stock.common.trade.type.EntrustStatus)
	string entrustId = 15;//委托编号
	int32 canBeCanceled = 17;//可撤单  1 可撤单, 0 不可撤单
	string entrustType = 18;//委托类型
	string entrustTypeNum = 20;//委托类型对应的数字
	int32 isValid = 21; // 0 无效 1 有效
	int32 canBeUpdated = 24; // 是否可改单 1 可改单,0 不可改单
	string validType = 22; // 有效期类型 0当天有效,1成交并取消,2成交或取消,3直到有效期,4直到自定时间
	string validTypeDesc = 23; // validType的相关描述,4直到自定时间 直接返回时间yyyy/MM/dd
	int32 orderOptions = 25; //   0=默认,1=T+1
	string validTime = 26; // 有效期时间,yyyy/MM/dd
}

# 期货-查询历史委托

# 接口说明

分页查询客户历史委托列表

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryHistoryEntrustListRequestMsgType

请求参数实体:FuturesQueryHistoryEntrustListRequest

message FuturesQueryHistoryEntrustListRequest {
	int32 pageNo = 1; // 默认1
	int32 pageSize = 2; // 默认20
	string startDate = 3; // yyyyMMdd
	string endDate = 4;	 // yyyyMMdd
}

返回结果实体:FuturesQueryHistoryEntrustListResponse

message FuturesQueryHistoryEntrustListResponse {
	repeated FuturesOrderVo data = 1;
	int32 curPageNo = 2; // 当前页
	int32 curPageSize = 3; // 当前页大小
	int32 totalPageNo = 4; // 最大页【作废】
	int32 lastPage = 5; //是否最后一页,0:否,1:是
}

message FuturesOrderVo {
	string stockCode = 1;//股票代码,1.港股有后缀 .HK
	string stockName = 2;//股票名称
	string businessPrice = 3; // 成交价格
	string entrustBs = 4;// 委托方向 1:买入,2:卖出
	string entrustPrice = 5;// 委托价格
	string entrustAmount = 7;//委托数量
	string businessAmount = 8;//成交数量
	string date = 9; //如果是成交接口,成交日期,如果是委托接口, 委托日期
	string businessTime = 10;//成交时间
	string entrustTime = 11;//委托时间
	string queryParamStr = 12;//当前记录的索引,用于分页
	string statusDesc = 13;	 //委托状态中文描述
	string status = 14; //委托状态(华盛com.huasheng.stock.common.trade.type.EntrustStatus)
	string entrustId = 15;//委托编号
	int32 canBeCanceled = 17;//可撤单  1 可撤单, 0 不可撤单
	string entrustType = 18;//委托类型
	string entrustTypeNum = 20;//委托类型对应的数字
	int32 isValid = 21; // 0 无效 1 有效
	int32 canBeUpdated = 24; // 是否可改单 1 可改单,0 不可改单
	string validType = 22; // 有效期类型 0当天有效,1成交并取消,2成交或取消,3直到有效期,4直到自定时间
	string validTypeDesc = 23; // validType的相关描述,4直到自定时间 直接返回时间yyyy/MM/dd
	int32 orderOptions = 25; //   0=默认,1=T+1
	string validTime = 26; // 有效期时间,yyyy/MM/dd
}

# 期货-查询当日成交

# 接口说明

查询客户当日成交列表,最大返回200条

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryRealDeliverListRequestMsgType

请求参数实体:无

返回结果实体:FuturesQueryRealDeliverListResponse

message FuturesQueryRealDeliverListResponse {
	repeated FuturesOrderVo data = 1;
}

message FuturesOrderVo {
	string stockCode = 1;//股票代码,1.港股有后缀 .HK
	string stockName = 2;//股票名称
	string businessPrice = 3; // 成交价格
	string entrustBs = 4;// 委托方向 1:买入,2:卖出
	string entrustPrice = 5;// 委托价格
	string entrustAmount = 7;//委托数量
	string businessAmount = 8;//成交数量
	string date = 9; //如果是成交接口,成交日期,如果是委托接口, 委托日期
	string businessTime = 10;//成交时间
	string entrustTime = 11;//委托时间
	string queryParamStr = 12;//当前记录的索引,用于分页
	string statusDesc = 13;	 //委托状态中文描述
	string status = 14; //委托状态(华盛com.huasheng.stock.common.trade.type.EntrustStatus)
	string entrustId = 15;//委托编号
	int32 canBeCanceled = 17;//可撤单  1 可撤单, 0 不可撤单
	string entrustType = 18;//委托类型
	string entrustTypeNum = 20;//委托类型对应的数字
	int32 isValid = 21; // 0 无效 1 有效
	int32 canBeUpdated = 24; // 是否可改单 1 可改单,0 不可改单
	string validType = 22; // 有效期类型 0当天有效,1成交并取消,2成交或取消,3直到有效期,4直到自定时间
	string validTypeDesc = 23; // validType的相关描述,4直到自定时间 直接返回时间yyyy/MM/dd
	int32 orderOptions = 25; //   0=默认,1=T+1
	string validTime = 26; // 有效期时间,yyyy/MM/dd
}

# 期货-查询历史成交

# 接口说明

分页查询客户历史成交列表

# 消息类型

请求消息类型:RequestMsgType.FuturesQueryHistoryDeliverListRequestMsgType

请求参数实体:FuturesQueryHistoryDeliverListRequest

message FuturesQueryHistoryDeliverListRequest {
	int32 pageNo = 1; // 默认1
	int32 pageSize = 2; // 默认20
	string startDate = 3; // yyyyMMdd
	string endDate = 4;	 // yyyyMMdd
}

返回结果实体:FuturesQueryHistoryEntrustListResponse

message FuturesQueryHistoryDeliverListResponse {
	repeated FuturesOrderVo data = 1;
	int32 curPageNo = 2; // 当前页
	int32 curPageSize = 3; // 当前页大小
	int32 totalPageNo = 4; // 最大页【作废】
	int32 lastPage = 5; //是否最后一页,0:否,1:是
}

message FuturesOrderVo {
	string stockCode = 1;//股票代码,1.港股有后缀 .HK
	string stockName = 2;//股票名称
	string businessPrice = 3; // 成交价格
	string entrustBs = 4;// 委托方向 1:买入,2:卖出
	string entrustPrice = 5;// 委托价格
	string entrustAmount = 7;//委托数量
	string businessAmount = 8;//成交数量
	string date = 9; //如果是成交接口,成交日期,如果是委托接口, 委托日期
	string businessTime = 10;//成交时间
	string entrustTime = 11;//委托时间
	string queryParamStr = 12;//当前记录的索引,用于分页
	string statusDesc = 13;	 //委托状态中文描述
	string status = 14; //委托状态(华盛com.huasheng.stock.common.trade.type.EntrustStatus)
	string entrustId = 15;//委托编号
	int32 canBeCanceled = 17;//可撤单  1 可撤单, 0 不可撤单
	string entrustType = 18;//委托类型
	string entrustTypeNum = 20;//委托类型对应的数字
	int32 isValid = 21; // 0 无效 1 有效
	int32 canBeUpdated = 24; // 是否可改单 1 可改单,0 不可改单
	string validType = 22; // 有效期类型 0当天有效,1成交并取消,2成交或取消,3直到有效期,4直到自定时间
	string validTypeDesc = 23; // validType的相关描述,4直到自定时间 直接返回时间yyyy/MM/dd
	int32 orderOptions = 25; //   0=默认,1=T+1
	string validTime = 26; // 有效期时间,yyyy/MM/dd
}

# 策略单-下单

# 接口说明

策略单委托下单

# 消息类型

请求消息类型:RequestMsgType.AlgoAddOrderRequestMsgType

请求参数实体:AlgoAddOrderRequest

message AlgoAddOrderRequest {
	string stockCode = 1; // 股票代码
	string exchangeType = 2; // 市场 [K:港股 P:美股 v:深股通 t:沪股通]
	string entrustType = 3; // 委托类型 [1:限价单 2:市价单]
	string entrustPrice = 4; // 委托价格
	string entrustAmount = 5; // 委托数量
	string entrustBs = 6; // [1:买入 2:卖出]
	string targetStrategy = 7; // 策略类型 [1:VWAP 1001:TWAP 1002:ICE_BERG 1003:TPOV 1005:INLINE]
	string sessionType = 8; // 盘前盘后交易 [0:否 1:是]

	StrategyParamVo strategyParam = 9; // 策略参数(不同的策略参数有些差别)
}

message StrategyParamVo {
	string origStartTime = 1; // 开始时间, 可以不填, 格式为HKT的HHmmSS
	string origEndTime = 2; // 结束时间,可以不填,格式为HKT的HHmmSS
	string maxVolume = 3; // 每笔子单最大的委托数量
	string minAmount = 4; // 每笔子单的最小交易金额, 可不填
	string sensitivity = 5; // 订单的执行效率[1:中性(neutral) 2:主动(aggressive) 3:被动(passive)]
	string showQty = 6; // IceBerg订单使用, 每次的报单数量
	string qtyPercent = 7; // TPOV策略使用订单盘口占比, Inline使用累计成交占比(可设置1-99)
	int32 interval = 8; // 订单报单间隔,Inline策略使用(默认60)
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; // 订单ID
}
# 参数说明
参数 参数 类型 必填 说明 可能值
stockCode String 证券代码
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
entrustType String 委托类型 '1'-限价单、'2'-市价单
entrustPrice String 委托价格
entrustAmount String 委托数量
entrustBs String 买入卖出 '1'-买入、'2'-卖出
targetStrategy String 策略类型 '1'-VWAP、'1001'-TWAP、'1002'-ICE_BERG、
'1003'-TPOV、'1005'-INLINE
sessionType String 盘前盘后交易 '0'-否、'1'-是
strategyParam Object 策略参数(不同的策略参数有些差别)
origStartTime String 开始时间 格式为HKT的HHmmSS,默认000000为交易所开盘时间
(开盘后为当前系统时间)
origEndTime String 结束时间 格式为HKT的HHmmSS,默认000000为交易所的休市时间
maxVolume String 每笔子单最大的委托数量
minAmount String 每笔子单的最小交易金额
sensitivity String 订单的执行效率 '1'-中性(neutral),'2'-主动(aggressive),'3'-被动(passive)
showQty String <IceBerg策略使用>:每次的报单数量
qtyPercent String <TPOV策略使用>:订单盘口占比,
<Inline策略使用>:累计成交占比
可设置1-99
interval int <Inline策略使用>:订单报单间隔(默认60)

# 策略单-撤销母单

# 接口说明

策略单撤销母单

# 消息类型

请求消息类型:RequestMsgType.AlgoCancelOrderRequestMsgType

请求参数实体:AlgoCancelOrderRequest

message AlgoCancelOrderRequest {
	string orderId = 1; // 订单ID
	string exchangeType = 2; // 市场 [K:港股 P:美股 v:深股通 t:沪股通]
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; // 订单ID
}
# 参数说明
参数 类型 必填 说明 可能值
orderId String 订单(母单)ID
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通

# 策略单-撤销子单

# 接口说明

策略单撤销子单

# 消息类型

请求消息类型:RequestMsgType.AlgoCancelEntrustRequestMsgType

请求参数实体:AlgoCancelEntrustRequest

message AlgoCancelEntrustRequest {
	string orderId = 1; // 订单ID
	string entrustId = 2; // 子单ID
	string exchangeType = 3; // 市场 [K:港股 P:美股 v:深股通 t:沪股通]
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; // 子单ID
}
# 参数说明
参数 类型 必填 说明 可能值
orderId String 订单(母单)ID
entrustId String 委托(子单)ID
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通

# 策略单-改单

# 接口说明

策略单改单

# 消息类型

请求消息类型:RequestMsgType.AlgoChangeOrderRequestMsgType

请求参数实体:AlgoChangeOrderRequest

message AlgoChangeOrderRequest {
	string orderId = 1; // 订单ID
	string stockCode = 2; // 股票代码
	string entrustPrice = 3; // 委托价格
	string entrustAmount = 4; // 委托数量
	StrategyParamVo strategyParam = 5; // 策略参数(不同的策略参数有些差别)
}

message StrategyParamVo {
	string origStartTime = 1; // 开始时间, 可以不填, 格式为HKT的HHmmSS
	string origEndTime = 2; // 结束时间,可以不填,格式为HKT的HHmmSS
	string maxVolume = 3; // 每笔子单最大的委托数量
	string minAmount = 4; // 每笔子单的最小交易金额, 可不填
	string sensitivity = 5; // 订单的执行效率[1:中性(neutral) 2:主动(aggressive) 3:被动(passive)]
	string showQty = 6; // IceBerg订单使用, 每次的报单数量
	string qtyPercent = 7; // TPOV策略使用订单盘口占比, Inline使用累计成交占比(可设置1-99)
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; // 订单ID
}
# 参数说明
参数 参数 类型 必填 说明 可能值
orderId String 订单ID
stockCode String 股票代码 只能传订单股票代码
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通
entrustPrice String 委托价格
entrustAmount String 委托数量
strategyParam Object 策略参数(不同的策略参数有些差别)
origStartTime String 开始时间 格式为HKT的HHmmSS,默认000000为交易所开盘时间
(开盘后为当前系统时间)
origEndTime String 结束时间 格式为HKT的HHmmSS,默认000000为交易所的休市时间
maxVolume String 每笔子单最大的委托数量
minAmount String 每笔子单的最小交易金额
sensitivity String 订单的执行效率 '1'-中性(neutral),'2'-主动(aggressive),'3'-被动(passive)
showQty String <IceBerg策略使用>:每次的报单数量
qtyPercent String <TPOV策略使用>:订单盘口占比,
<Inline策略使用>:累计成交占比
可设置1-99

# 策略单-操作

# 接口说明

策略单相关操作

# 消息类型

请求消息类型:RequestMsgType.AlgoActionOrderRequestMsgType

请求参数实体:AlgoActionOrderRequest

message AlgoActionOrderRequest {
	string orderId = 1; // 订单ID
	string action = 2; // 操作 [1:START 2:STOP 3:SUSPEND 4:RESUME]
	string targetStrategy = 3; // 策略类型 [1:VWAP 1001:TWAP 1002:ICE_BERG 1003:TPOV 1005:INLINE]
}

返回结果实体:CommonStringResponse

message CommonStringResponse {
	string data = 1; // 订单ID
}
# 参数说明
参数 类型 必填 说明 可能值
orderId String 订单(母单)ID
action String 操作 '1'-START、'2'-STOP、'3'-SUSPEND、'4'-RESUME
targetStrategy String 策略类型 '1'-VWAP、'1001'-TWAP、'1002'-ICE_BERG、
'1003'-TPOV、'1005'-INLINE
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通

# 策略单-查询母单列表

# 接口说明

查询策略单母单列表

# 消息类型

请求消息类型:RequestMsgType.AlgoQueryOrderListRequestMsgType

请求参数实体:AlgoQueryOrderListRequest

message AlgoQueryOrderListRequest {
	int32 pageNo = 1; // 当前页号 默认1
	int32 pageSize = 2; // 每页条数 默认30
	string startDate = 3; // 开始日期 必须
	string endDate = 4; // 结束日期 必须
	string exchangeType = 5; // 市场 可选 [K:港股 P:美股 v:深股通 t:沪股通]
	string stockCode = 6; // 股票代码 可选
}

返回结果实体:AlgoQueryOrderListResponse

message AlgoQueryOrderListResponse {
	repeated AlgoOrderVo algoOrderList = 1; // 策略单列表
}

message AlgoOrderVo {
	string orderId = 1; // 订单ID
	string stockCode = 2; // 股票代码,1.港股有后缀 .HK
	string exchangeType = 3; // 市场 [K:港股 P:美股 v:深股通 t:沪股通]
	string tradeDate = 4; // 委托日期
	string entrustType = 5; // 委托类型
	string entrustPrice = 6; // 委托价格
	string entrustAmount = 7; // 委托数量
	string cumQty = 8; // 股数
	string leavesQty = 9; // 剩余订单数量
	string status = 10; // 委托状态 [0:已报 1:部分成交 2:全部成交 3:当日完成 4:已撤 5:已改:6 待撤 8:废单 A:待报 C:过期 E:待改]
	string entrustBs = 11; // [1:买入 2:卖出]
	string targetStrategy = 12; // 策略类型 [1:VWAP 1001:TWAP 1002:ICE_BERG 1003:TPOV 1005:INLINE]
	string strategyStatus = 13; // 策略状态 [1:START 2:STOP 3:SUSPEND 4:RESUME]

	StrategyParamVo strategyParam = 14; // 策略参数(不同的策略参数有些差别)
	
	string roundLot = 15; // 证券交易手数
	string sendingTime = 16; // 传输时间
	string transactionTime = 17; // 委托时间
	string avgPx = 18; // 平均成本
}

message StrategyParamVo {
	string origStartTime = 1; // 开始时间, 格式为HKT的HHmmSS
	string origEndTime = 2; // 结束时间,格式为HKT的HHmmSS
	string maxVolume = 3; // 每笔子单最大的订单数
	string minAmount = 4; // 每笔子单的最小交易金额
	string sensitivity = 5; // 订单的执行效率[1:中性(neutral) 2:主动(aggressive) 3:被动(passive)]
	string showQty = 6; // IceBerg订单使用, 每次的报单数量
	string qtyPercent = 7; // TPOV策略使用订单盘口占比, Inline使用累计成交占比(可设置1-99)
	int32 interval = 8; // 订单报单间隔, Inline策略使用(默认60)
}
# 参数说明
参数 类型 必填 说明 可能值
pageNo String 当前页号 默认1
pageSize String 每页条数 默认30
startDate String 开始日期 yyyyMMdd
endDate String 结束日期 yyyyMMdd
exchangeType String 市场 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通(如果传了股票代码,该值必传)
stockCode String 股票代码

# 策略单-查询子单

# 接口说明

查询策略单子单

# 消息类型

请求消息类型:RequestMsgType.AlgoQueryEntrustIdListRequestMsgType

请求参数实体:AlgoQueryEntrustIdListRequest

message AlgoQueryEntrustIdListRequest {
	string orderId = 1; // 订单(母单)ID
	string tradeDate = 2; // 交易日期
	string exchangeType = 3; // 市场 [K:港股 P:美股 v:深股通 t:沪股通]
}

返回结果实体:AlgoQueryEntrustIdListResponse

message AlgoQueryEntrustIdListResponse {
	repeated string entrustId = 1; // 委托ID
}
# 参数说明
参数 类型 必填 说明 可能值
orderId String 订单(母单)ID
tradeDate String 交易日期 yyyyMMdd
exchangeType String 交易类型 'K'-港股、'P'-美股、'v'-深股通、't'-沪股通

# 订阅交易推送

# 接口说明

订阅交易推送消息接口,初始化交易链接会默认订阅订单成交推送。

# 消息类型

请求消息类型:RequestMsgType.TradeSubscribeRequestMsgType

请求参数实体:PBRequest

返回结果实体:CommonBoolResponse

message CommonBoolResponse {
	bool success = 1; //是否执行成功
}
# 参数说明
参数 类型 必填 说明 可能值

# 取消订阅交易推送

# 接口说明

取消订阅交易推送接口

# 消息类型

请求消息类型:RequestMsgType.TradeUnsubscribeRequestMsgType

请求参数实体:PBRequest

返回结果实体:CommonBoolResponse

message CommonBoolResponse {
	bool success = 1; //是否执行成功
}
# 参数说明
参数 类型 必填 说明 可能值

# 交易推送消息

# 消息说明

消息类型:NotifyMsgType.TradeStockDeliverMsgType

推送结果实体:

message TradeStockDeliverNotify {
    string fundAccount = 1;			//资金账号
    string stockCode = 2;			//股票代码
    string stockName = 3;			//股票名称
    string entrustBs = 4;			//委托方向
    string businessPrice = 5;		//成交价格
    string businessAmount = 6;		//成交数量
    string businessDate = 7;		//成交日期
    string businessTime = 8;		//成交时间
    string exchangeType = 9;		//交易类型
    string entrustStatus = 10;		//委托状态
    string clientId = 11;			//客户号
    string entrustNo=12;			//委托编号,撤单/改单委托会变
    string sumBusinessAmount = 13;	//总数量
    string sumBusinessBalance=14;	//总金额
    string originalAmount=15;		//原始委托数量
    string originalPrice = 16;		//原始委托价格
    string leftAmount=17;			//剩余挂单数量
    string entrustPrice=18;			//改后委托价格
    string entrustAmount=19;		//改后委托数量
    string recordNo=20;				//委托库记录号,与下单委托号一致
    string remark=21;                //备注
}

# 场景说明

订单的委托状态有变化即会推送消息,场景包括:下单、改单、撤单、成交

# 期货-交易推送消息

# 消息说明

消息类型:NotifyMsgType.FuturesTradeStockDeliverMsgType

推送结果实体:

message TradeStockDeliverNotify {
    string fundAccount = 1;			//资金账号
    string stockCode = 2;			//股票代码
    string stockName = 3;			//股票名称
    string entrustBs = 4;			//委托方向
    string businessPrice = 5;		//成交价格
    string businessAmount = 6;		//成交数量
    string businessDate = 7;		//成交日期
    string businessTime = 8;		//成交时间
    string entrustStatus = 10;		//委托状态
    string clientId = 11;			//客户号
    string entrustNo=12;			//委托编号
    string sumBusinessAmount = 13;	//总数量
    string sumBusinessBalance=14;	//总金额
    string recordNo=20;				//订单号,与entrustNo相同
    string matchNo=22;				//成交流水号,有成交的情况才会有
}

# 场景说明

订单的委托状态有变化即会推送消息,场景包括:成交

# 响应状态码

# 系统状态码

状态码 说明
0000 处理成功
1001 系统未知错误
1002 签名错误
1003 数据加密错误
1004 Socket未初始化
1005 接口已经废弃
1006 用户暂未授权
1007 重复提交
1008 接口调用失败
1009 接口不存在
1010 非法请求
1011 服务繁忙,请稍后重试
1012 用户未登录
1013 登陆被挤下线
1014 登录超时
1015 接口调用超时
1016 接口调用参数不合法
1017 建立长连接失败
1018 正在尝试重连,请稍后重试!
20033 期货交易接口登录超时
40001 查询品种信息失败
40002 查询合约信息失败

# 数据字典

# RequestMsgType 请求业务类型

请求业务类型 请求值 说明
InitConnectRequestMsgType 0 初始化链接接口
TradeLoginRequestMsgType 14 交易登录接口
TradeLogoutRequestMsgType 15 交易登出接口
TradeEntrustRequestMsgType 16 委托接口
TradeCancelEntrustRequestMsgType 17 撤单接口
TradeQueryHoldsListRequestMsgType 18 查询持仓列表接口
TradeQueryBuyAmountRequestMsgType 19 查询最大可买接口
TradeQuerySellAmountRequestMsgType 20 查询最大可卖接口
TradeQueryMarginFundInfoRequestMsgType 21 查询客户资金信息接口
TradeQueryRealEntrustListRequestMsgType 22 查询当日委托接口
TradeQueryHistoryEntrustListRequestMsgType 23 查询历史委托接口
TradeQueryRealDeliverListRequestMsgType 24 查询当日成交接口
TradeQueryHistoryDeliverListRequestMsgType 25 查询历史成交接口
TradeQueryRealFundJourListRequestMsgType 26 查询当日资金流水接口
TradeQueryHistoryFundJourListRequestMsgType 27 查询历史资金流水接口
TradeSubscribeRequestMsgType 28 订阅交易推送
TradeUnsubscribeRequestMsgType 29 取消订阅交易推送
TradeChangeEntrustRequestMsgType 30 改单接口

# ResponseMsgType 响应业务类型

响应业务类型 响应值 说明
InitConnectResponseMsgType 0 初始化链接接口
TradeLoginResponseMsgType 14 交易登录接口
TradeLogoutResponseMsgType 15 交易登出接口
TradeEntrustResponseMsgType 16 委托接口
TradeCancelEntrustResponseMsgType 17 撤单接口
TradeQueryHoldsListResponseMsgType 18 查询持仓列表接口
TradeQueryBuyAmountResponseMsgType 19 查询最大可买接口
TradeQuerySellAmountResponseMsgType 20 查询最大可卖接口
TradeQueryMarginFundInfoResponseMsgType 21 查询客户资金信息接口
TradeQueryRealEntrustListResponseMsgType 22 查询当日委托接口
TradeQueryHistoryEntrustListResponseMsgType 23 查询历史委托接口
TradeQueryRealDeliverListResponseMsgType 24 查询当日成交接口
TradeQueryHistoryDeliverListResponseMsgType 25 查询历史成交接口
TradeQueryRealFundJourListResponseMsgType 26 查询当日资金流水接口
TradeQueryHistoryFundJourListResponseMsgType 27 查询历史资金流水接口
TradeSubscribeResponseMsgType 28 订阅交易推送
TradeUnsubscribeResponseMsgType 29 取消订阅交易推送
TradeChangeEntrustResponseMsgType 30 改单接口
ErrorResponseMsgType 999 系统错误

# NotifyMsgType 推送消息类型

推送消息类型 响应值 说明
TradeStockDeliverMsgType 1 成交消息推送

# entrustProp 委托属性

委托属性 业务类型 委托类别(0下单,2撤单,B订单修改,C成交拒绝,E成交修改)
d 竞价单 0
g 竞价限价单 0
e 增强限价单 0
j 特殊限价单 0
h 限价单 0
m 碎股挂单 0
o 手动交易 0
p 批量撤单 2

# entrustStatus 委托状态

委托状态 说明
0 No Register(未报)
1 Wait to Register(待报)
2 Host Registered(已报)
3 Wait for Cancel(已报待撤)
4 Wait for Cancel(Partially Matched)(部成待撤)
5 Partially Cancelled(部撤)
6 Cancelled(已撤)
7 Partially Filled(部成)
8 Filled(已成)
9 Host Reject(废单)
A Wait for Modify (Registed)(已报待改)
B Unregistered(无用)
C Registering(无用)
D Revoke Cancel(无用)
W Wait for Confirming(待确认)
X Pre Filled(无用)
E Wait for Modify (Partially Matched)(部成待改)
F Reject(预埋单检查废单)
G Cancelled(Pre-Order)(预埋单已撤)
H Wait for Review(待审核)
J Review Fail(审核失败)

# exchangeType 交易类别

交易类别 说明
K 港股,大写
P 美股,大写
v 深股通,小写
t 沪股通,小写

# entrustBs 委托买卖方向

委托买卖方向 说明
1 多头开仓(买入)
2 多头平仓(卖出)
3 空头平仓
4 空头开仓

# entrustType 委托类别

委托类别 说明
0 买卖
1 查询
2 撤单
3 补单
B 改单

# exchange 交易所

交易所(IB通道)
SMART
AMEX
ARCA
BATS
BEX
BYX
CBOE
CHX
DRCTEDGE
EDGEA
EDGX
IBKRTS
IEX
ISE
ISLAND
LTSE
MEMX
NYSE
NYSENAT
PEARL
PHLX
PSX

# realStatus 成交状态

成交状态 说明
0 成交
2 废单
4 确认

# realType 成交类别

成交类别 说明
0 买卖
1 查询
2 撤单

# stockType 证券类型

证券类别 说明
0 股票(stock)
1 基金(Fund)
2 红利(Dividend)
D 交易权证(WRNT)
F 一篮子权证(BWRT)
U 债券(BOND)

# dataType 股票类型

股票类型 说明
10000 港股股票
10001 港股指数
10002 港股ETF
10003 港股窝轮
10004 港股牛熊证
10005 港股债券
10006 港股行业板块
10007 港股概念板块
10009 衍生品期货
10010 香港指数期货
10011 港股股票期货
10012 港股恒指股息期货
10013 港股人民币货币期货
10014 港股中华交易服务期货
10015 恒指波幅指数期货
10016 界内证
20000 美股股票
20001 美股指数
20002 美股ETF
20003 美股期权
20006 美股行业板块
20007 美股概念板块
30000 A股股票
30001 A股指数
30002 A股ETF
30006 A股行业
30007 A股概念
30008 A股科创板

# moneyType 币种

币种 说明
0 人民币
1 美圆
2 港币
4 阿联酋迪拉姆
5 奥地利先令
6 澳大利亚元
7 孟加拉塔卡
8 比利时可兑换法郎
9 比利时金融法郎
A 巴林第纳尔
B 文莱元
C 巴希克鲁赛多
D 缅甸元
E 加拿大元
F 瑞士法郎
H 塞普路斯镑
I 德国马克
J 丹麦克郎
K 厄瓜多尔苏克列 ECS
L 西班牙比塞塔 / 陪士特
M 欧元
N 芬兰马克
O 斐济元
P 法国法郎
Q 英镑
S 印度尼西亚盾/ 卢比
T 爱尔兰镑
U 印度卢比
V 意大利里拉
W 日元
X 肯尼亚先令
Y 韩国元
Z 科威特第纳尔
a 黎巴嫩镑
c 斯里兰卡卢比
d 澳门元
e 毛里求斯卢比
f 马来西亚令吉
g 尼日利亚奈拉
h 荷兰盾
i 挪威克郎
j 新西兰元(纽元)
k 阿曼里亚尔
l 菲律宾比索
m 巴基斯坦卢比
n 葡萄牙埃斯库多
o 卡塔尔
p 沙特里亚尔
q 塞舌尔卢比
r 特别提款权(国际货币基金)
s 瑞典克郎
t 新加坡元
u 塞拉利昂利昂
v 泰铢
w 新台币元
x 南非兰特

# countryCode 区号代码

区号 说明
CHN 中国大陆
HKG 中国香港
MAC 中国澳门
TWN 中国台湾
SGP 新加坡
KOR 韩国
JPN 日本
USA 美国
GBR 英国
FRA 法国
RUS 俄罗斯
BEL 比利时
DEU 德国
CAN 加拿大
ESP 西班牙
NZL 新西兰

# FundJourVo.type 资金流水类别

类型 说明
0 初始值
1 下买单请求
2 下卖单请求
3 下买单请求失败
4 下卖单请求失败
5 买入证券
6 卖出证券
7 改买单请求
9 改买单失败
10 改买单成功
11 改买单被拒
13 买单取消
15 买单拒绝
17 买单过期
18 买单成交撤回
19 收市关闭买单
20 卖单成交撤回
21 存入资金
22 转出资金
23 资金冻结
24 资金解冻
25 司法冻结
26 司法解冻
27 虚增金额
28 虚减金额
29 换汇-兑入资金
30 换汇-兑出资金
31 存入资金
32 处理客户存款
33 重置today金额
34 第三方结算落地
42 支票入金冻结
43 支票入金解冻
44 转出资金冻结
45 转出资金解冻
46 内部转入后冻结
47 内部转入后解冻
48 转出资金
82 交收资金
83 期权自动行权
84 期权指派
85 期权过期
88 资产账号升级
89 资产账号降级
95 资金存
98 买入证券
99 卖出证券
121 罚息调整
122 调整利息罚息
141 返还证券资金-卖单交易取消后的证券、资金反向流水
142 返还证券资金-买单交易取消后的证券、资金反向流水
143 返还证券资金-买单交易取消后的证券、资金反向流水
144 交收-HS
145 交收-HS
147 资金冻结-HS
148 资金解冻-HS
149 支票确认-HS
150 证券存取费用-HS
151 利息归本回算-HS
152 成交卖出-HS
153 成交买入-HS
154 未转换-HS
181 撤回加款
182 撤回扣款
183 撤回冻结
184 内部转入资金
185 内部转出资金
186 待处理客户存款退回
187 客户转仓手续费
188 基金转入证券
189 证券转入基金
190 资金取
210 佣金返回
213 行情费用收取
214 平台费返回
215 活动现金存
216 证券资金转投顾
217 投顾资金转证券
218 咨询费收取
229 债券资金转入证券
230 证券资金转入债券
264 交易金额抵扣券

# 下单期权代码 规则说明

华盛行情期权code组成规则为:【正股代码】+【期权到期日】+【期权类型】+【行权价】

例如:【AAPL】+【220916】+【C】+【3000000】

具体的拼接规则应该是正股代码+yyyyMMdd格式的到期日取后6位即yyMMdd+期权类型+行权价保留4位小数点将小数点移除的字符串

比如行权价位0.1的期权保留4位小数位的行权价为0.1000转换出来的行权价字符串为01000

90行权价的期权保留4位小数位90.0000的行权价转换出来的字符串为900000

# 行情接口

# 通用VO结构说明

股票定义

message Security {
    int32 dataType = 1; //股票类型
    string code = 2; //股票代码(行情接口:港股、沪深市场股票代码需要带后缀 .HK .SH .SZ)
}

# 基础报价

# 接口说明

批量查询股票基础报价

# 消息类型

请求消息类型:RequestMsgType. HQBasicQotRequestMsgType

请求参数实体:BasicQotRequest

message BasicQotRequest {
	repeated  Security security = 1;
}

返回结果实体:BasicQotResponse

message BasicQotResponse {
    // 基础行情返回
    repeated BasicQot basicQot=1;
}

//基础行情
message BasicQot {
    Security security = 1;
    bool isSuspended = 2; //是否停牌
    double openPrice = 3; // 开盘价
    double highPrice = 4; //最高价
    double lowPrice = 5; //最低价
    double lastPrice = 6; //最新价	
    double lastClosePrice = 7; //昨收价
    double priceSpread = 8; //价差
    int64 volume = 9; //成交量
    double turnover = 10; //成交额
    double turnoverRate = 11; //换手率
    double amplitude = 12; //振幅
    int32 secStatus = 13; //SecurityStatus, 股票状态
    string listTime = 14; //上市日期字符串(目前未返回该字段)
    FutureBasicQotExData futureExData = 15; //期货特有字段
    OptionBasicQotExData optionExData = 16; //期权特有字段
    int32 lotSize = 17; //每手
    string tradeTime = 18; //交易时间
    string marketTime =19; //市场时间
    string stockStatus =20; //股票状态字段
    string volumeStr =21; //成交量兼容字段
}

//期货特有字段
message FutureBasicQotExData {
    string expiryDate=1; // 到期日字符串
    int32 expiryDateDistance = 2; //距离到期日天数
}

//期权特有字段
message OptionBasicQotExData {
	string strikePrice = 1; //行权价
	string openInterest = 2;//未平仓数
	string expireDate =3;//到期日 yyyyMMdd
	string premium  =4;//溢价
	string intrinsicValue =5;//内在价值
	string dueDate =6; //距离到期日
	string iv =7;//隐含波动率
	string timeValue =8;//时间价值
	string actualLeverage =9;//实际杠杆
	string delta =10;//DELTA
	string gamma =11;//GAMMA
	string vega =12;//VEGA
	string theta =13;//THETA
	string rho =14;//RHO
}
# 参数说明
参数 类型 必填 说明 可能值
Security Security 股票信息

# 买卖经纪摆盘

# 接口说明

买卖经纪摆盘,只支持港股

# 消息类型

请求消息类型:RequestMsgType. HQBrokerRequestMsgType

请求参数实体:BrokerRequest

message BrokerRequest { 		 
	Security security = 1;	
}

返回结果实体:BrokerResponse

message BrokerResponse {
    Security security = 1; //股票定义
    repeated Broker brokerAskList = 2; //经纪Ask(卖)盘
    repeated Broker brokerBidList = 3; //经纪Bid(买)盘	
}

//买卖经纪
message Broker {
    int32 level = 1; // 档位
    string item = 2; // 经纪商代码
    int32 type = 3; // type=B或66代表item为买卖经纪商代码, 当type=S或者83代表该位置无买卖经纪,item可用作档位
    string name = 4; // 经济商名称
}
# 参数说明
参数 类型 必填 说明 可能值
Security Security 股票信息

# 买卖档

# 接口说明

查询买卖档

# 消息类型

请求消息类型:RequestMsgType. HQOrderBookRequestMsgType

请求参数实体:OrderBookRequest

message OrderBookRequest {
    Security security = 1;  // 股票定义
    int32 mktTmType = 2; // -1 1 -2 美股 盘前 盘中 盘后
    int32 depthBookType = 3; // 2 3 totalview arcabook (非必填)
}

返回结果实体:OrderBookResponse

message OrderBookResponse {
    Security security = 1; //股票定义
    repeated OrderBook orderBookAskList = 2; //卖盘
    repeated OrderBook orderBookBidList = 3; //买盘
    double spreadLevel = 4; // 最小价格单位
}
 
//买卖档
message OrderBook {
    int32 level = 1; // 档位
    double price = 2; //委托价格
    int64 volume = 3; //委托数量
    int32 orederCount = 4; //委托订单个数
    string brokeId = 5; //交易所
}
# 参数说明
参数 类型 必填 说明 可能值
Security Security 股票信息
mktTmType Int -1 1 -2 盘前 盘中 盘后

# 查询最近多少条逐笔

# 接口说明

查询最近多少条的逐笔列表

# 消息类型

请求消息类型:RequestMsgType. HQTickerRequestMsgType

请求参数实体:TickerRequest

message TickerRequest {
    Security security = 1;
    int32 limit = 2; //返回的逐笔个数,实际返回数量可能少于该值,最多返回100个	
}

返回结果实体:TickerResponse

message TickerResponse {
    Security security = 1; //股票定义
    repeated Ticker ticker=2; // 逐笔列表	
}

//逐笔
message Ticker {
    string time = 1; //时间字符串
    int32 side = 2; //TickerDirection, 买卖方向 0平1买2卖
    double price = 3; //价格
    int64  volume = 4; //成交量
    double turnover = 5; //成交额
    int32 type = 6; //TickerType, 逐笔类型
    int64 timestamp = 7; //时间戳	
}
# 参数说明
参数 类型 必填 说明 可能值
Security Security 股票信息
limit Int 返回的逐笔个数

# 查询K线

# 接口说明

获取K线数据

# 消息类型

请求消息类型:RequestMsgType. HQKLRequestMsgType

请求参数实体:KLRequest

message KLRequest {
    Security security = 1;
    int64 startDate = 2; //yyyyMMdd
    int32 direction = 3; // 方向
    int32 exRightFlag = 4;  // 复权
    int32 cycType = 5;  // k线类型
    int32 limit = 6;  // 天数/数量
}

返回结果实体:KLResponse

message KLResponse {
    Security security = 1; //股票定义
    repeated KLine kline = 2; 
}

message KLine {
    string date = 1; //日期 yyyy-MM-dd
    double highPrice = 2; //最高价
    double openPrice = 3; //开盘价
    double lowPrice = 4; //最低价
    double closePrice = 5; //收盘价
    double lastClosePrice = 6; //昨收价
    int64 volume = 7; //成交量
    double turnover = 8; //成交额
    int64 timestamp = 9; // 时间戳
    string time = 10; // 时间字符串 HH:mm
}
# 参数说明
参数 类型 必填 说明 可能值
Security Security 股票信息
startDate Int yyyyMMdd
direction Security 方向
exRightFlag Int 复权
cycType Int k线类型 参看下面数据字典说明
limit Int 如果查分钟级的数据:
1)limit表示每次查询多少天(1分钟查6天,3分钟查9天,5分钟查12天,15分钟查24天,30分钟查36天,60分钟查60天,120分钟查96天),美股支持(10分钟查18天,240分钟查180天)
如果查天级以上的数据:
1)limit表示每次查数据记录的条数

# 查询分时

# 接口说明

获取分时

# 消息类型

请求消息类型:RequestMsgType. HQTimeShareRequestMsgType

请求参数实体:TimeShareRequest

message TimeShareRequest {
	Security security = 1; 
}

返回结果实体:TimeShareResponse

message TimeShareResponse {   
	Security security = 1; //股票定义
	repeated TimeShare  timeShare = 2; 
}

message TimeShare {
    string time = 1; //时间字符串
    double price = 2; //当前价
    double lastClosePrice = 3; //昨收价
    double avgPrice = 4; //均价
    int64 volume = 5; //成交量
    double turnover = 6; //成交额
}
# 参数说明
参数 类型 必填 说明 可能值
Security Security 股票信息

# 期权链到期日列表

# 接口说明

通过正股代码获取期权链到期日列表

# 消息类型

请求消息类型:RequestMsgType.HQUsOptionChainExpireDateRequestMsgType

请求参数实体:UsOptionChainExpireDateRequest

message UsOptionChainExpireDateRequest {
    //正股代码
    string securityCode = 1;
}

返回结果实体:UsOptionChainExpireDateResponse

message UsOptionChainExpireDateResponse {
      //到期日 yyyy/MM/dd
      repeated string expireDate = 1;
}
# 参数说明
参数 类型 必填 说明 可能值
securityCode string 正股代码

# 期权链Code列表

# 接口说明

通过期权过期日期获取期权链Code列表

# 消息类型

请求消息类型:RequestMsgType.HQUsOptionChainCodeRequestMsgType

请求参数实体:UsOptionChainCodeRequest

message UsOptionChainCodeRequest {
    //正股代码
    string securityCode = 1;
    //到期日 yyyy/MM/dd
    string expireDate =2;
    // 价内=1 价外=2
    int32 flagInOut = 3;
    // 期权类型 看涨=C 看跌P
    string optionType = 4;
}

返回结果实体:UsOptionChainCodeResponse

message UsOptionChainCodeResponse {
    //期权代码
    repeated string optionCode = 1;
}
# 参数说明
参数 类型 必填 说明 可能值
securityCode string 正股代码
expireDate string 到期日 yyyy/MM/dd
flagInOut int 价内/价外 价内=1 价外=2
optionType string 期权类型 看涨=C 看跌P

# 行情推送消息

# 订阅行情推送

# 接口说明

订阅行情推送

# 消息类型

请求消息类型:RequestMsgType. HQSubscribeRequestMsgType

请求参数实体:PushsubscribeRequest

message PushsubscribeRequest {  	
    int32 topicId = 1;
    repeated  Security security = 2;	
}
# 参数说明
参数 类型 必填 说明 可能值
topicId int 订阅类型,参考如下
Security Security 股票信息,可批量

# 取消行情订阅

# 接口说明

取消订阅行情推送

# 消息类型

请求消息类型:RequestMsgType. HQUnsubscribeRequestMsgType

请求参数实体:PushunsubscribeRequest

message PushunsubscribeRequest {  	
    int32 topicId = 1;
    repeated  Security security = 2;
}
# 参数说明
参数 类型 必填 说明 可能值
topicId int 订阅类型,参考如下
Security Security 股票信息,可批量

# 基础行情推送

topicId:11

推送消息实体

message BasicQotNotify {
    Security security = 1;
    BasicQot basicQot=2; // 基础行情返回
}

# 买卖经纪推送

topicId:16

推送消息实体

message BrokerNotify {
    Security security = 1;
    int32 side = 2; // 1买2卖
    repeated Broker brokerList = 3;
}

# 买卖档推送

topicId:17

推送消息实体

message OrderBookFullNotify {
    Security security = 1;
    string side = 2; //1买2卖
    repeated OrderBook orderBookBidList = 3;
    int32 mktTmType = 4;
}

# 逐笔推送

topicId:14

推送消息实体

message TickerNotify {
    Security security = 1;
    Ticker ticker=2; // 逐笔列表
}

# 深度摆盘-ARCABOOK买卖档推送

topicId:25

推送消息实体

message OrderBookFullNotify {
    Security security = 1;
    string side = 2; //1买2卖
    repeated OrderBook orderBookBidList = 3;
    int32 mktTmType = 4;
}

# 深度摆盘-TOTALVIEW买卖档推送

topicId:26

推送消息实体

message OrderBookFullNotify {
    Security security = 1;
    string side = 2; //1买2卖
    repeated OrderBook orderBookBidList = 3;
    int32 mktTmType = 4;
}

# 响应状态码

# 系统状态码

状态码 说明
0000 处理成功

# 业务状态码

状态码 说明

# 数据字典

# RequestMsgType 请求业务类型

请求业务类型 请求值 说明
InitConnectRequestMsgType 0 Socket登录接口

# ResponseMsgType 响应业务类型

响应业务类型 响应值 说明
InitConnectResponseMsgType 0 Socket登录接口

# NotifyMsgType 推送消息类型

推送消息类型 响应值 说明
TradeStockDeliverMsgType 1 成交消息推送

# dataType 股票类型

股票类型 说明
10000 港股股票
10001 港股指数
10002 港股ETF
10003 港股窝轮
10004 港股牛熊证
10005 港股债券
10006 港股行业板块
10007 港股概念板块
10009 衍生品期货
10010 香港指数期货
10011 港股股票期货
10012 港股恒指股息期货
10013 港股人民币货币期货
10014 港股中华交易服务期货
10015 恒指波幅指数期货
10016 界内证
20000 美股股票
20001 美股指数
20002 美股ETF
20003 美股期权
20006 美股行业板块
20007 美股概念板块
20009 美股OTC股票(由于上游供应商不支持,买卖档数据的拉取和推送不支持OTC)
30000 A股股票
30001 A股指数
30002 A股ETF
30006 A股行业
30007 A股概念
30008 A股科创板

# cycType K线类型

币种 说明
2 日线
3 周线
4 月线
11 季度线
12 年度线
5 1分钟
6 5分钟
7 15分钟
8 30分钟
9 60分钟
10 120分钟

# ExRightFlag 复权

币种 说明
0 不复权
1 前复权
2 后复权

# Direction 方向

币种 说明
0 往左查询
1 往右查询

# 常见问题

# 账户相关

  1. 申请一个开发者账户只能交易一个证券账号吗? 可否处理多个证券账号?

    目前仅支持一个开发者对应一个华盛号以及对应的证券账号;如有需要进行多个证券账号交易需求,需要申请多个开发者账号。

  2. 交易登录超时是什么原因?

    交易登录的时间是按照您在华盛通APP上设置的登录时间进行限制,如需要更长登录时间,请前往华盛通APP进行修改。

# 交易相关

  1. 港股的下单类型如何选择?

    通过委托接口中委托类型进行区分,港股:'0'竞价限价、'1'竞价、'2'增强限价盘、'3'限价盘、'4'特别限价盘、'6'暗盘。

  2. 想要查看成交的费用信息在哪里查看?

    由于当日成交还未进行清算,因此通过历史成交接口可以看到费用信息。

  3. 收到错误消息“当前时间不允许委托”是什么原因?

    请检查委托时间是否处于市场开盘时间。

# 接口相关

  1. Token的有效性如何判断呢?只能根据调用接口后的错误结果来处理吗?

    登录后token有效性为3小时,调用接口会延长这个时间。可以通过判断错误码来处理自动重新登录,还可以定时轮询查询类接口来保持登录态。

  2. PB接口地址列表是固定的吗?是否需要经常动态获取配置接口?

    PB接口地址列表是固定的,没有特殊情况不会更新。

  3. 设备绑定是强制的吗? 是只要绑定一次就可以吗?

    目前设备绑定是强制的,一个设备只要绑定一次即可,如更换设备需要重新绑定。

  4. 测试环境API接口调试时段说明。

    工作日周一到周五:9:00~18:00。

# 问题反馈

如遇到疑问可致电华盛客服(400-788-1390),或直接联系您的客户经理,我们将为您提供专门的技术团队协助解决。