# 介绍
# 开通指引
# 1.注册
开发者需要在华盛通注册并开通交易业务;
# 2.提供开发者信息
内容 | 是否必填 | 说明 |
---|---|---|
开发者RSA公钥 | 是 | 初始化链接时使用,验证开发者的身份。注:此RSA公钥不是平台的公钥。 |
IP白名单 | 否 | 只有在白名单内的IP才可以访问API接口,多个IP间以英文逗号分隔(,)分隔。 |
# 3.开通申请
开发者需要确认并签署《API问卷评估调查》、《API测试结果申报表》、《API开发者授权协议》、《API免责声明》,通过合规部门审核(2-3工作日)后,才可以开通OpenAPI实盘功能;
# 4.配置账号
审核通过后,点击此处配置开发者RSA公钥 (opens new window)
# 安装说明
量化OpenAPI已提供Java、Python、C++接入SDK,接入参考使用:
点击此处下载Python (opens new window)
proto接口定义文件:
点击此处下载proto (opens new window)
# 费用说明
# 行情
通过OpenAPI获取行情与通过华盛通APP获取行情权限一致,如您没有行情权限,请与客户经理联系。
# 交易
通过OpenAPI进行交易,交易费用与通过华盛通APP交易费用一致。
# 协议
基于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
接口调用时序图
# 报文包序列号
进行业务接口调用之前必须首先调用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 | 往右查询 |
# 常见问题
# 账户相关
申请一个开发者账户只能交易一个证券账号吗? 可否处理多个证券账号?
目前仅支持一个开发者对应一个华盛号以及对应的证券账号;如有需要进行多个证券账号交易需求,需要申请多个开发者账号。
交易登录超时是什么原因?
交易登录的时间是按照您在华盛通APP上设置的登录时间进行限制,如需要更长登录时间,请前往华盛通APP进行修改。
# 交易相关
港股的下单类型如何选择?
通过委托接口中委托类型进行区分,港股:'0'竞价限价、'1'竞价、'2'增强限价盘、'3'限价盘、'4'特别限价盘、'6'暗盘。
想要查看成交的费用信息在哪里查看?
由于当日成交还未进行清算,因此通过历史成交接口可以看到费用信息。
收到错误消息“当前时间不允许委托”是什么原因?
请检查委托时间是否处于市场开盘时间。
# 接口相关
Token的有效性如何判断呢?只能根据调用接口后的错误结果来处理吗?
登录后token有效性为3小时,调用接口会延长这个时间。可以通过判断错误码来处理自动重新登录,还可以定时轮询查询类接口来保持登录态。
PB接口地址列表是固定的吗?是否需要经常动态获取配置接口?
PB接口地址列表是固定的,没有特殊情况不会更新。
设备绑定是强制的吗? 是只要绑定一次就可以吗?
目前设备绑定是强制的,一个设备只要绑定一次即可,如更换设备需要重新绑定。
测试环境API接口调试时段说明。
工作日周一到周五:9:00~18:00。
# 问题反馈
如遇到疑问可致电华盛客服(400-788-1390),或直接联系您的客户经理,我们将为您提供专门的技术团队协助解决。