接入准备
交易对
交易对由基础币种和报价币种组成。以交易对 btc_usdt 为例,btc 为商品币种,usdt 为计价币种。
申请API Key
手机访问hibt官网,进入个人设置页找到API管理,申请API Key,创建成功后请务必记住以下信息:
Secret Key 签名认证加密所使用的密钥(仅申请时可见)
接口鉴权
公共接口可用于获取基础信息和行情数据。公共接口无需认证即可调用。
私有接口可用于交易管理和账户管理。每个私有请求必须使用您的API Secret Key进行签名验证。
REST API
https://fapi.hibt0.com/open-api
签名认证
除公共接口(基础信息,行情数据)外的私有接口均必须使用您的 API Key 做加密处理,以校验参数或参数值在传输途中是否发生了更改。 每一个API Key需要有适当的权限才能访问相应的接口,每个新创建的API Key都需要分配权限。在使用接口前,确认你的API Key有相应的权限。
一个合法的请求所需要的内容:
Header中填API 访问密钥(X-ACCESS-KEY):您申请的 API Key 中的 Access Key。
Header中填Body签名后的数据 (X-SIGNATURE): 您发送请求的body用Secret Key 加密后得到
Post请求Body中和Get请求url参数加入请求时间戳字段(timestamp): 请求时的毫秒时间戳,签名时使用
必选和可选参数:每个方法都有一组用于定义 API 调用的必需参数和可选参数。可以在每个方法的说明中查看这些参数及其含义。
签名:加密计算得出的值,用于确保签名有效和未被篡改,为了您 API Key 的安全,一次参数签名 5分钟后会过期。
签名必要参数:需要签名认证的接口,必须添加 timestamp参数(传值为服务器最新时间,可通过v2/server/time
接口获取)。
加密方式
开仓post请求body内容
{
"customID": "11111", //您的自定义订单id
"symbol": "btc_usdt",//交易币对
"type": 1,// 1限价 2市价
"side": 1,// 方向 1 buy 2 shell
"leverage": 10, //杠杆
"price": "2660", //下单价(限价委托使用) 非限价单不需要传此字段
"amount": "0.01", //下单量
"triggerType": 2, //止盈止损出发类型 1:成交价触发,2:指数价触发 不设置止盈止损可以不填
"spPrice":"2770", //预设止盈价格 不设置止盈 不需要传此字段
"slPrice":"2450", //预设止损价 不设置止损 不需要传此字段
"isSetSp": true, //是否止盈
"isSetSl": true, //是否止损
"timestamp": 1724916869475 //当前时间戳 ms
}
对参数按照ASCII进行排序
amount=0.01&customID=11111&isSetSl=true&isSetSp=true&leverage=10&price=2660&side=1&slPrice=2450&spPrice=2770&symbol=btc_usdt×tamp=1724916869475&triggerType=2&type=1
将排完序的请求参数使用secretKey 进行HMAC SHA256进行加密,得到的结果
9543936a83c8b4fd0aae02a6e6fa272dc8ebc95b871f620eb23ae1a6dadffee7
import json
import hmac
import hashlib
from collections import OrderedDict
def bytes_to_hex(bytes_array):
return ''.join(['%02x' % byte for byte in bytes_array])
def generate_hmac_sha256(data, key):
secret_key = key.encode()
message = data.encode()
signature = hmac.new(secret_key, message, hashlib.sha256).digest()
return bytes_to_hex(signature)
def get_sort(json_str):
# 解析JSON字符串
data = json.loads(json_str, object_pairs_hook=OrderedDict)
# 创建一个新字典,用于存储排序后的键值对
sorted_data = OrderedDict()
# 对原始字典的键进行排序,并按顺序插入到新字典中
for key in sorted(data.keys()):
if data[key] != "":
sorted_data[key] = data[key]
return sorted_data
def get_key(json_str, secret_key):
# 过滤掉空字符串值
sortData = get_sort(json_str)
filtered_data = {k: v for k, v in sortData.items() if v != ""}
# 拼接签名串
sign_str = []
for k, v in filtered_data.items():
# #如果v 是数组,则转换为字符串
if isinstance(v, list):
for i in range(len(v)):
v[i] = get_sort(json.dumps(v[i], ensure_ascii=False, separators=(',', ':')))
v = json.dumps(v,ensure_ascii=False, separators=(',', ':'))
sign_str.append(f"{k}={v}")
continue
sign_str.append(f"{k}={v}")
sorted(sign_str) # 按字典顺序排序
sign_str = '&'.join(sign_str)
print("签名串:", sign_str)
# 计算HMAC SHA256签名
signature = generate_hmac_sha256(sign_str, secret_key)
return signature
# print("签名:", signature)
if __name__ == '__main__':
json_str ={"items": [{"amount": "1", "customID": "123223", "leverage": 20, "side": 1, "symbol": "eth_usdt", "type": 2}, {"amount": "0.01", "customID": "321322", "leverage": 100, "side": 1, "symbol": "btc_usdt", "type": 2}], "timestamp": 1725599130897}
g =json.dumps(json_str)
a = get_key(g, "your secret key")
print(a) #打印签名
备注: 如果参数字段含有数组 单独对其转为json字符串后拼接到签名串
构建 http 请求使用
使用
X-ACCESS-KEY
存储access key信息,并在 header 中进行参数传递
使用
X-SIGNATURE
存储生成的签名信息,并在 header 中进行参数传递
使用
X-TIMESTAMP
存储请求时间戳,并在 header 中进行参数传递
请求方式
目前只有两种方法:GET和POST
POST请求,所有参数以JSON格式发送在请求主体(body)里
返回格式
{
"msg": "success",
"code": 0,
"data": ""
}
常见错误码
21XXXX(参数错误类)
22XXXX(业务错误类)
基础信息接口
服务器时间获取
HTTP请求
GET /v2/server/time
鉴权 否
请求参数
无任何参数
返回字段
{
"code":0,
"msg":"success",
"data":{"serverTime":1724916869475} //ms毫秒
}
查询所有交易币对
HTTP请求
GET /v2/market/symbols
请求参数 无
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"symbol": "",
"supportTrade": true, //是否支持交易
"volumePrecision": 0, //交易对下单数量的精度(小数点后位数)
"pricePrecision": 0, //交易对下单价格的精度(小数点后位数)
"marketMiniAmount": "", //交易对市价最小下单量
"limitMiniAmount": "" //交易对限价最小下单量
}
]
}
查询单个币对ticker数据
HTTP请求
GET /v2/market/tickers
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"symbol": "",
"amount": "", //以基础币种计量的交易量 btc
"volume": "", //以报价币种计量的交易量 usdt
"open": "",// 最近24小时开盘价
"close": "", // 最近24小时收盘价
"high": "", // 最近24小时最高价
"low": "", //最近24小时最低价
"lastPrice": "", //最新成交价
"lastAmount": "",//最新成交价对应的量
"lastTime": 0, //最新一笔交易的时间戳
"change": 5.55 //涨跌幅
}
]
}
查询单个币对K线数据
HTTP请求
GET /v2/market/candle
请求参数
返回数据时间粒度,也就是每根蜡烛的时间区间(M1,M5,M15,M30,H1,H4,H6,D1)
返回K线数据条数[1,500],默认200 最大500。有start、end时,实际返回调试以时间范围内的条数为准
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"symbol": "",
"amount": "", //以基础币种计量的交易量
"volume": "", //以报价币种计量的交易量
"open": "", //本阶段开盘价
"close": "",//本阶段收盘价
"high": "", //本阶段最高价
"low": "",//本阶段最低价
"ts": 0 //本阶段开始的时间戳
}
]
}
查询单个币对ticker价格
HTTP请求
GET /v2/market/ticker/price
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"symbol": "",
"price":""
}
]
}
查询单个币对深度
HTTP请求
GET /v2/market/depth
请求参数
深度挡位数量 5, 10, 20, 50, 100, 200
返回示例
{
"msg":"success",
"code":0,
"data":{
"bid": [
[
"9638.0", // 价格
"431" // 数量
]
],
"ask": [
[
"9638.0", // 价格
"431" // 数量
]
]}
}
查询单个币对最新成交
HTTP请求
GET /v2/market/deals
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[{
"symbol": "",
"amount": "", //以基础币种计量的交易量
"price": "", //以报价币种为单位的成交价格
"side": "", // 交易方向:“sell” 或 “buy”, “buy” 即买,“sell” 即卖
"time": 0 // 当前时间戳 ms
}]
}
查询单个币对标记价格
HTTP请求
GET /v2/market/index
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[{
"symbol": "", //币对
"marketPrice": "" //价格
}]
}
查询资金费率
HTTP请求
GET /v2/market/fundingRate
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"symbol": "",
"rate": "", //资金费率
"time": 0 //时间戳
}
]
}
查询风险限额
HTTP请求
GET /v2/market/riskLimit
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"symbol": "",
"minValue": "", // 最小仓位价值
"maxValue": "", // 最大仓位价值
"maxLeverage": 0, // 最大可用杠杆
"maintenanceMarginRate": "" // 维持保证金率
}
]
}
查询合约最新行情
HTTP请求
GET /v2/market/contracts
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"ticker_id": "合约标识", // 合约标识
"base_currency": "基础货币", // 基础货币
"quote_currency": "计价货币", // 计价货币
"last_price": "最新价格", // 最新价格
"base_volume": "基础货币成交量", // 基础货币成交量
"USD_volume": "美元成交量", // 美元成交量
"quote_volume": "计价货币成交量", // 计价货币成交量
"bid": "买一价", // 买一价
"ask": "卖一价", // 卖一价
"high": "最高价", // 最高价
"low": "最低价", // 最低价
"product_type": "产品类型", // 产品类型
"open_interest": "未平仓量(基币)", // 未平仓量(基币)
"open_interest_usd": "未平仓量(美元)", // 未平仓量(美元)
"index_price": "指数价格", // 指数价格
"creation_timestamp": 0, // 创建时间戳
"expiry_timestamp": 0, // 到期时间戳
"funding_rate": "资金费率", // 资金费率
"next_funding_rate": "下期资金费率", // 下期资金费率
"next_funding_rate_timestamp": 0, // 下期资金费率时间戳
"maker_fee": "挂单手续费率", // 挂单手续费率
"taker_fee": "吃单手续费率", // 吃单手续费率
"contract_type": "合约类型", // 合约类型
"contract_price": "合约面值", // 合约面值
"contract_price_currency": "合约面值货币" // 合约面值货币
}
]
}
查询合约交易的说明
HTTP请求
GET /v2/market/contractSpecifications
请求参数 无
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"contract_type": "okb_usdt",
"contract_price": "123.45", //最新价
"contract_price_currency": "usdt"
}
]
}
查询合约订单簿
HTTP请求
GET /v2/market/orderBook
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[
{
"ticker_id": "btc_usdt", // 交易对标识符,例如 "BTCUSD"
"timestamp": 1689991200, // 时间戳(毫秒级)
"bids": [ // 买方订单列表
["10000.50", "2.3"], // [价格, 数量]
["9999.75", "1.1"]
],
"asks": [ // 卖方订单列表
["10001.00", "3.5"],
["10002.25", "0.8"]
]
}
]
}
交易接口
合约开仓
HTTP请求
POST /v2/order/open
鉴权 有
请求参数
{
"customID": "11111", //您的自定义订单id
"symbol": "btc_usdt",//交易币对
"type": 1,// 1限价 2市价
"side": 1,// 方向 1 buy 2 shell
"leverage": 10, //杠杆
"price": "2660", //下单价(限价委托使用) 非限价单不需要传此字段
"amount": "0.01", //下单量
"triggerType": 2, //止盈止损出发类型 1:成交价触发,2:指数价触发 不设置止盈止损可以不填
"spPrice":"2770", //预设止盈价格 不设置止盈 不需要传此字段
"slPrice":"2450", //预设止损价 不设置止损 不需要传此字段
"isSetSp": true, //是否止盈
"isSetSl": true, //是否止损
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg":"success",
"code":0,
"data":{
"orderID":"24081233332184101100143203708" //委托单id
}
}
批量开仓
HTTP请求
POST /v2/order/batchOpen
鉴权 有
请求参数
{
"timestamp": 1724916869475, //当前时间戳 ms
"items": [
{
"customID": "11111", //您的自定义订单id
"symbol": "btc_usdt", //交易币对
"type": 1, // 1限价 2市价
"side": 1, // 方向 1 buy 2 shell
"leverage": 10, //杠杆
"price": "2660", //下单价(限价委托使用) 非限价单不需要传此字段
"amount": "0.01", //下单量
"triggerType": 2, //止盈止损出发类型 1:成交价触发,2:指数价触发 不设置止盈止损可以不填
"spPrice": "2770", //预设止盈价格 不设置止盈 不需要传此字段
"slPrice": "2450", //预设止损价 不设置止损 不需要传此字段
"isSetSp": true, //是否止盈
"isSetSl": true //是否止损
},
{
"customID": "11111", //您的自定义订单id
"symbol": "btc_usdt", //交易币对
"type": 1, // 1限价 2市价
"side": 1, // 方向 1 buy 2 shell
"leverage": 10, //杠杆
"price": "2660", //下单价(限价委托使用) 非限价单不需要传此字段
"amount": "0.01", //下单量
"triggerType": 2, //止盈止损出发类型 1:成交价触发,2:指数价触发 不设置止盈止损可以不填
"spPrice": "2770", //预设止盈价格 不设置止盈 不需要传此字段
"slPrice": "2450", //预设止损价 不设置止损 不需要传此字段
"isSetSp": true, //是否止盈
"isSetSl": true //是否止损
}
]
}
返回示例
{
"msg": "success",
"code": 0,
"data": {
"success": { "11111": "orderID", "2222222": "orderID" }, // {"自定义订单id":"委托单id"}
"fail": { "333333": "sp price error", "44444444": "bad symbol" } // {"自定义订单id":"错误内容"}
}
}
合约撤单
HTTP请求
POST /v2/order/cancel
鉴权 有
请求参数
{
"symbol": "btc_usdt",
"orderID": "22222222", //orderID customID positionID 三选一
"customID": "",
"positionID": "",
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg": "success",
"code": 0,
"data": {
"success": { "11111": "orderID", "2222222": "orderID" }, // {"自定义订单id":"委托单id"}
"fail": { "333333": "orderID", "44444444": "orderID" } // {"自定义订单id":"委托单id"}
}
}
批量撤单
HTTP请求
POST /v2/order/batchCancel
鉴权 有
请求参数
{
"symbol": "btc_usdt",
"listOrderID": ["11111"], //listOrderID listCustomID listPositionID 三选一 或者都不填
"listCustomID": [""],
"listPositionID": [""],
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg": "success",
"code": 0,
"data": {
"success": { "11111": "orderID", "2222222": "orderID" }, // {"自定义订单id":"委托单id"}
"fail": { "333333": "orderID", "44444444": "orderID" } // {"自定义订单id":"委托单id"}
}
}
合约平仓
HTTP请求
POST /v2/order/close
鉴权 有
请求参数
{
"amount": "0.01",
"price": "2256", //仅限于限价平仓
"type": 1, //1 限价, 2市价
"positionID": "12222222222222", // 仓位id
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg": "success",
"code": 0,
"data": {
"orderID": "24081233332184101100143203708" //委托单id
}
}
一键平仓
HTTP请求
POST /v2/order/closeAll
鉴权 有
请求参数
{
"symbol": "btc_usdt",
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg":"success",
"code":0,
"data":{
"listOrderID":["24081233332184101100143203708"] //委托单id
}
}
查询未完成订单
HTTP请求
GET /v2/order/unFinish
鉴权 有
请求参数
委托单id // orderID customID positionID 三选一 或者都不填
返回示例
{
"msg":"success",
"code":0,
"data":[{
"id": "", //订单id
"customID": "", //自定义订单id
"symbol": "",//交易对
"type": 1, //订单类型 订单类型 1限价 2市价
"action": 0, //订单事件 0开仓 1平仓 2止损 3止盈 4强平 5FOK强平 6ADL减仓 7加仓 8反向开仓 9穿仓
"side": 1, //交易方向 1 buy 2 sell
"positionID": "", //仓位id
"price": "", //订单价格,限价单才有值
"leverage": 0, //杠杆
"amount": "", //下单量
"frozen": "", //冻结保证金
"filledAmount": "", //已完成量
"filledPrice": "", //成交均价
"filledValue": "",//成交价值
"triggerType": 2, //止盈止损触发类型 1成交价 2指数价
"spPrice": "", //预设止盈价
"slPrice": "", //预设止损价
"state": 1,//状态 1正常 2已完成 3撤销 4部分成交 5部分成交已撤销 6撤销中
"profit": "", //已实现盈亏(平仓订单使用)
"fee": "", //原始手续费
"pointFee": "", //积分(赠金)手续费抵扣
"pointProfit": "", //积分(赠金)盈亏抵扣
"closePrice": "", //破产价
"triggerPrice": "", //触发价
"createdAt": 0,
"updatedAt": 0
}]
}
查询已经完成订单详情
HTTP请求
GET /v2/order/finishedInfo
鉴权 有
请求参数
委托单id //orderID customID positionID 三选一
返回示例
{
"msg":"success",
"code":0,
"data":{
"id": "", //订单id
"customID": "", //自定义订单id
"symbol": "",//交易对
"type": 1, //订单类型 订单类型 1限价 2市价
"action": 0, //订单事件 0开仓 1平仓 2止损 3止盈 4强平 5FOK强平 6ADL减仓 7加仓 8反向开仓 9穿仓
"side": 1, //交易方向 1 buy 2 sell
"positionID": "", //仓位id
"price": "", //订单价格,限价单才有值
"leverage": 0, //杠杆
"amount": "", //下单量
"frozen": "", //冻结保证金
"filledAmount": "", //已完成量
"filledPrice": "", //成交均价
"filledValue": "",//成交价值
"triggerType": 2, //止盈止损触发类型 1成交价 2指数价
"spPrice": "", //预设止盈价
"slPrice": "", //预设止损价
"state": 1,//状态 1正常 2已完成 3撤销 4部分成交 5部分成交已撤销 6撤销中
"profit": "", //已实现盈亏(平仓订单使用)
"fee": "", //原始手续费
"pointFee": "", //积分(赠金)手续费抵扣
"pointProfit": "", //积分(赠金)盈亏抵扣
"closePrice": "", //破产价
"triggerPrice": "", //触发价
"createdAt": 0,
"updatedAt": 0
}
}
查询历史完成订单列表
HTTP请求
GET /v2/order/finished
鉴权 有
请求参数
交易对(参数"btc_usdt,eth_usdt")
返回示例
{
"msg":"success",
"code":0,
"data":{
"total":100, //总量
"page":1, //当前第几页
"data":[{
"id": "", //订单id
"customID": "", //自定义订单id
"symbol": "",//交易对
"type": 1, //订单类型 订单类型 1限价 2市价
"action": 0, //订单事件 0开仓 1平仓 2止损 3止盈 4强平 5FOK强平 6ADL减仓 7加仓 8反向开仓 9穿仓
"side": 1, //交易方向 1 buy 2 sell
"positionID": "", //仓位id
"price": "", //订单价格,限价单才有值
"leverage": 0, //杠杆
"amount": "", //下单量
"frozen": "", //冻结保证金
"filledAmount": "", //已完成量
"filledPrice": "", //成交均价
"filledValue": "",//成交价值
"triggerType": 2, //止盈止损触发类型 1成交价 2指数价
"spPrice": "", //预设止盈价
"slPrice": "", //预设止损价
"state": 1,//状态 1正常 2已完成 3撤销 4部分成交 5部分成交已撤销 6撤销中
"profit": "", //已实现盈亏(平仓订单使用)
"fee": "", //原始手续费
"pointFee": "", //积分(赠金)手续费抵扣
"pointProfit": "", //积分(赠金)盈亏抵扣
"closePrice": "", //破产价
"triggerPrice": "", //触发价
"createdAt": 0,
"updatedAt": 0
}]
}
}
添加计划委托
HTTP请求
POST /v2/entrust/add
鉴权 有
请求参数
{
"customID": "11111", //自定义订单id
"symbol": "btc_usdt", //交易对
"side": 1, //交易方向 1 buy 2 sell
"triggerType": 1, //触发类型:1最新价 2指数价
"triggerPrice": "", //触发价格
"amount": "", //下单量
"price": "", //委托价
"leverage": 0, //杠杆
"spSlTriggerType": 0, //止盈止损触发类型:1最新价 2指数价
"spPrice": "", //预设止盈价 设置了止盈 就传
"slPrice": "", //预设止损价 设置了止损就传
"IsSetSp": false, //是否设置止盈
"IsSetSl": false, //是否设置止损
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg": "success",
"code": 0,
"data": {
"id": "", //委托id
"symbol": "", //币对
"leverage": 0, //杠杆
"triggerType": 1, //触发类型:1最新价 2指数价
"triggerPrice": "", //触发价格
"status": 2, //状态 1-待委托 2-已委托 3-用户撤消 4-系统撤消
"side": 1, //交易方向 1 buy 2 sell
"price": "", //委托价
"startPrice": "", //触发下单的价格
"amount": "", //委托量
"spSlTriggerType": 0, // 止盈止损触发类型
"spPrice": "", //预设止盈价
"slPrice": "", //预设止损价
"isSetSp": false, //是否设置止盈
"isSetSl": false, //是否设置止损
"frozen": "", //冻结保证金
"createdAt": 0,
"updatedAt": 0
}
}
撤销计划委托
HTTP请求
POST /v2/entrust/cancel
鉴权 有
请求参数
{
"symbol": "", //交易币对
"entrustID": "", //委托id 与自定义id 二选一
"customID": "", // 自定义用户id
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg":"success",
"code":0,
"data":["委托id1","委托id2"] // 返回取消成功的列表
}
获取未完成计划委托列表
HTTP请求
GET /v2/entrust/unFinish
鉴权 有
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[{
"id": "", //委托id
"symbol": "", //币对
"leverage": 0, //杠杆
"triggerType": 1,//触发类型:1最新价 2指数价
"triggerPrice": "", //触发价格
"status": 2, //状态 1-待委托 2-已委托 3-用户撤消 4-系统撤消
"side": 1, //交易方向 1 buy 2 sell
"price": "",//委托价
"startPrice": "",//触发下单的价格
"amount": "", //委托量
"spSlTriggerType": 0, // 止盈止损触发类型
"spPrice": "", //预设止盈价
"slPrice": "", //预设止损价
"isSetSp": false, //是否设置止盈
"isSetSl": false, //是否设置止损
"frozen": "", //冻结保证金
"createdAt": 0,
"updatedAt": 0
}]
}
获取已完成计划委托列表
HTTP请求
GET /v2/entrust/finished
鉴权 有
请求参数
返回示例
{
"msg": "success",
"code": 0,
"data": {
"total": 100, //总量
"page": 1, //当前第几页
"data": [
{
"id": "", //委托id
"symbol": "", //币对
"leverage": 0, //杠杆
"triggerType": 1, //触发类型:1最新价 2指数价
"triggerPrice": "", //触发价格
"status": 2, //状态 1-待委托 2-已委托 3-用户撤消 4-系统撤消
"side": 1, //交易方向 1 buy 2 sell
"price": "", //委托价
"startPrice": "", //触发下单的价格
"amount": "", //委托量
"spSlTriggerType": 0, // 止盈止损触发类型
"spPrice": "", //预设止盈价
"slPrice": "", //预设止损价
"isSetSp": false, //是否设置止盈
"isSetSl": false, //是否设置止损
"frozen": "", //冻结保证金
"createdAt": 0,
"updatedAt": 0
}
]
}
}
账户接口
获取账户余额
HTTP请求
GET /v2/account/balance
鉴权 有
请求参数 无
返回示例
{
"msg":"success",
"code":0,
"data":{
"balance": "余额", // 账户余额
"frozen": "挂单冻结", // 挂单冻结金额
"margin": "持仓保证金", // 持仓保证金
"point": "积分(赠金)", // 积分或赠金
"loans": "借贷", // 借贷金额
"profit": "未实现盈亏", // 未实现盈亏
"unProfit": "浮盈", // 浮盈
"unLosses": "浮亏", // 浮亏
"coin": "币种" // 币种
}
}
调整开仓杠杆
HTTP请求
POST /v2/account/setLeverage
鉴权 有
请求参数
{
"symbol": "", //交易对
"leverage": 0, //杠杆
"timestamp": 1724916869475 //当前时间戳 ms
}
返回示例
{
"msg":"success",
"code":0,
"data":{
"symbol": "", //交易对
"leverage": 0 //杠杆
}
}
获取用户持仓
HTTP请求
GET /v2/account/position
鉴权 有
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[{
"positionID": "", // 仓位ID
"symbol": "", // 交易对
"side": 0, // 持仓方向(1: 买入, 2: 卖出)
"leverage": 0, // 使用杠杆倍数
"price": "", // 成交均价
"amount": "", // 持仓量
"frozenAmount": "", // 平仓冻结量
"margin": "", //持仓保证金
"triggerType": 1, //止盈止损触发类型 1 成交价 2 指数价
"spPrice": "",// 止盈价
"slPrice": "", //止损价
"openProfit": "", //未实现盈亏
"updatedAt": 0, //时间戳
"spSlModel": 0, //止盈止损模式 1-全部止盈止损 2-部分止盈止损
"spType": 0, //止盈类型 0未设置止盈 1限价 2市价
"slType": 0, //止损类型 0未设置止损 1限价 2市价
"spTriggerPrice": "", //止盈委托价
"slTriggerPrice": "", //止损委托价
"spSlPartData": [ //部分止盈止损数据
{
"id": 0,
"triggerType": 1,// 止盈止损触发类型
"spPrice": "", //止盈价
"slPrice": "", // 止损价
"amount": "", // 止盈止损数量
"spType": 1, // 止盈类型 0未设置止盈 1限价 2市价
"slType": 1, // 止损类型 0未设置止损 1限价 2市价
"spTriggerPrice": "", //止盈委托价
"slTriggerPrice": "" //止损委托价
}
]
}]
}
获取账户成交历史
HTTP请求
GET /v2/account/order
鉴权 有
请求参数
返回示例
{
"msg":"success",
"code":0,
"data":[{
"id": "", // 订单ID
"symbol": "", // 合约标识
"type": 0, // 订单类型 (1: 限价, 2: 市价)
"action": 0, // 订单事件 (0: 开仓, 1: 平仓, 2: 止损, 3: 止盈, 4: 强平, 5: FOK强平, 6: ADL减仓, 7: 加仓, 8: 反向开仓, 9: 穿仓)
"side": 0, // 交易方向 (1: buy, 2: sell)
"positionId": "", // 仓位ID
"price": "", // 订单价格,限价单才有值
"leverage": 0, // 杠杆倍数
"amount": "", // 下单量
"frozen": "", // 冻结保证金 (OpenPrice * Amount * BaseMarginRate)
"filledAmount": "", // 已完成量
"filledPrice": "", // 成交均价
"filledValue": "", // 成交价值
"triggerType": 0, // 止盈止损触发类型 (1: 成交价, 2: 指数价)
"spPrice": "", // 预设止盈价
"slPrice": "", // 预设止损价
"createdAt": 0, // 创建时间
"updatedAt": 0, // 更新时间
"state": 0, // 状态 (1: 正常, 2: 已完成, 3: 撤销, 4: 部分成交, 5: 部分成交已撤销, 6: 撤销中)
"profit": "", // 已实现盈亏(平仓订单使用)
"fee": "", // 手续费
"pointFee": "", // 积分(赠金)手续费抵扣
"pointProfit": "", // 积分(赠金)盈亏抵扣
"closePrice": "" // 破产价
}]
}
获取账户资金账单
HTTP请求
GET /v2/account/balanceRecord
鉴权 有
请求参数
1:充值,2:扣款,3:转入,4:转出,9:资金费用,201:开多,202:开空,204:平多,205:平空,206:强平
返回示例
{
"msg":"success",
"code":0,
"data":[{
"id": "", // 交易ID
"event": 0, // 类型:1:充值, 2:扣款, 3:转入, 4:转出, 9:资金费用, 201:开多, 202:开空, 204:平多, 205:平空, 206:强平
"amount": "", // 余额相关的操作代表金额,交易相关操作代表盈亏
"coin": "", // 币种
"fee": "", // 手续费
"symbol": "", // 所属交易对
"note": "", // 备注
"createdAt": 0 // 时间
}
]
}
获取用户强平历史
HTTP请求
GET /v2/account/orderForced
鉴权 有
请求参数
开始时间 单位ms start end 区间为7天内
强平类型:4-强平,5-FOK强平,6-ADL自动减仓,9-穿仓
返回示例
{
"msg":"success",
"code":0,
"data":[{
"id": "", // 订单ID
"symbol": "", // 币对
"type": 0, // 订单类型 (1: 限价, 2: 市价)
"action": 0, // 强平类型:4-强平, 5-FOK强平, 6-ADL自动减仓, 9-穿仓
"side": 0, // 交易方向 (1: buy, 2: sell)
"positionID": "", // 仓位ID
"price": "", // 订单价格,限价单才有值
"leverage": 0, // 杠杆
"amount": "", // 下单量
"frozen": "", // 冻结保证金 (OpenPrice * Amount * BaseMarginRate)
"filledAmount": "", // 已完成量
"filledPrice": "", // 成交均价
"filledValue": "", // 成交价值
"triggerType": 0, // 止盈止损触发类型 (1: 成交价, 2: 指数价)
"spPrice": "", // 预设止盈价
"slPrice": "", // 预设止损价
"createdAt": 0, // 创建时间
"updatedAt": 0, // 更新时间
"state": 0, // 状态 (1: 正常, 2: 已完成, 3: 撤销, 4: 部分成交, 5: 部分成交已撤销, 6: 撤销中)
"profit": "", // 已实现盈亏(平仓订单使用)
"fee": "", // 手续费
"pointFee": "", // 积分(赠金)手续费抵扣
"pointProfit": "", // 积分(赠金)盈亏抵扣
"closePrice": "" // 破产价
}]
}
合约WebSocket接口
请求方式
例如wss://fapi.hibt0.com/v2/ws
接口鉴权
需要鉴权的订阅请先发送认证消息
signature //把时间戳字符串 签名即可
{"event":"auth","accessKey":"XXX","timestamp":"XXX","signature":"XXX"}
订阅主题
{”event“:"sub", "topic":"主题内容"}
订阅深度
支持的深度主题 5deep 10deep 20 deep
请求json {"event":"sub","topic":"btc_usdt.5deep"}
返回示例
{
"type":"btc_usdt.5deep",
"ts":1725356328427,
"data":{
"symbol":"btc_usdt",
"asks":["58930.89","2.51","58930.99","2.38","58931.09","2.9","58931.19","3.72","58931.29","1.41"],
"bids":["58930.71","1.44","58930.61","1.61","58930.51","2.22","58930.41","1.22","58930.31","1.94"]
}
}
订阅ticker
请求json {"event":"sub","topic":"btc_usdt.ticker"}
返回示例
{
"type": "btc_usdt.ticker",
"ts": 1725356998063,
"data": {
"symbol": "btc_usdt",
"amount": "473529.69", // btc 量
"volume": "27853751718.826", //USDT 价值
"open": "58147.82", //最近24小时开盘价
"close": "58920.25",
"high": "59805.51",
"low": "58103.55",
"lastPrice": "58920.25", //最新成交价
"lastAmount": "0.99", //最新成交价对应的量
"lastTime": 1725356998061,
"change": "1.32" //24小时涨跌幅
}
}
订阅index
请求json {"event":"sub","topic":"btc_usdt.index"}
返回示例
{
"type": "btc_usdt.index",
"ts": 1725357439229,
"data": {
"symbol": "btc_usdt",
"price": "58901.1",
"time": 1725357439228
}
}
订阅最新成交
请求json {"event":"sub","topic":"btc_usdt.trade"}
返回示例
{
"type": "btc_usdt.trade",
"ts": 1725357599308,
"data": [
"58872.48", //价格
"1", //1买 2卖
"2.59", //成交数量
"1725357599305"//时间戳
]
}
订阅K线
请求json {"event":"sub","topic":"btc_usdt.candle.M1"}
支持周期
"M1","M5","M15","M30","H1","H2","H4","H6","H12","D1","W1"
返回示例
{
"type": "btc_usdt.candle.M1",
"ts": 1725357897306,
"data": [
"410.89", //成交量
"24207865.8365", //成交额
"58891.64", //开盘价
"58945.88", //最高价
"58891.64", //最低价
"58923.96", //收盘价
"1725357840000" //时间戳
]
}
订阅计划委托触发推送(需认证)
请求json {"event":"sub","topic":"user.entrust"}
返回示例
{
"type": "user.entrust",
"ts": 1725437392251,
"data": [
{
"id": "24090408062338901100109440001",
"symbol": "btc_usdt",
"leverage": 10, //杠杆
"triggerType": 2, //触发类型 1成交价(最新价) 2指数价(标记价)
"triggerPrice": "56762", //触发价格
"status": 2, //状态 1-待委托 2-已委托 3-用户撤消 4-系统撤消
"side": 1, //交易方向 1buy 2sell
"price": "56830", //委托价
"startPrice": "", //触发下单的价格
"amount": "0.12", //委托量
"spSlTriggerType": 0, //止盈止损触发类型
"spPrice": "0", //预设止盈价
"slPrice": "0", //预设止损价
"isSetSp": false, //是否设置止盈
"isSetSl": false, //是否设置止损
"frozen": "", // 冻结保证金
"createdAt": 1725437183389,
"updatedAt": 1725437392240
}
]
}
订阅仓位变更(需要认证)
请求json {"event":"sub","topic":"user.position"}
返回示例
{
"type": "user.position",
"ts": 1725364233774,
"data": [
{
"positionID": "240903114238636010629", //仓位id
"symbol": "btc_usdt", //
"side": 1, // 方向 1buy 2sell
"leverage": 10, //杠杆
"price": "59066", //成交均价
"amount": "0.21", //持仓量
"frozenAmount": "0.21", //平仓冻结量
"margin": "1240.386", //持仓保证金
"triggerType": 1, // 止盈止损触发类型
"spPrice": "", //止盈价
"slPrice": "", //止损价
"openProfit": "", //未实现盈亏
"updatedAt": 1725364233773,
"spSlModel": 1, // 止盈止损模式 1-全部止盈止损 2-部分止盈止损
"spType": 0, // 止盈类型 0未设置止盈 1限价 2市价
"slType": 0, //止损类型 0未设置止损 1限价 2市价
"spTriggerPrice": "0", //止盈委托价
"slTriggerPrice": "0", //止损委托价
"spSlPartData": [{
"id": 0,
"triggerType": 1, //止盈止损触发类型
"spPrice": "", //止盈价
"slPrice": "", //止损价
"amount": "", //部分止盈止损数量
"spType": 0, //止盈类型 0未设置止盈 1限价 2市价
"slType": 0, //止损类型 0未设置止损 1限价 2市价
"spTriggerPrice": "", //止盈委托价
"slTriggerPrice": "" //止损委托价
}] //部分止盈止损数据
}
]
}
订阅委托单成交推送(需要认证)
请求json {"event":"sub","topic":"user.order"}
返回示例
{
"type": "user.order",
"ts": 1725432998830,
"data": [
{
"id": "24090406563872601100109440728", //订单id
"customID": "", //自定义订单号
"symbol": "btc_usdt",
"type": 2, //订单类型 1限价 2市价
"action": 0, //订单事件 0开仓 1平仓 2止损 3止盈 4强平 5FOK强平 6ADL减仓 7加仓 8反向开仓 9穿仓
"side": 1, // 交易方向 1buy 2sell
"positionID": "240904065638726010729", //仓位ID
"price": "0", //订单价格,限价单才有值
"leverage": 10, //杠杆
"amount": "0.2", //下单量
"frozen": "1128.5496", //冻结保证金 OpenPrice*Amount*BaseMarginRate
"filledAmount": "0", //已完成量
"filledPrice": "0", //成交均价
"filledValue": "", //成交价值
"triggerType": 1,//止盈止损触发类型 1成交价 2指数价
"spPrice": "0", //预设止盈价
"slPrice": "0", //预设止损价
"state": 0, //状态 1正常 2已完成 3撤销 4部分成交 5部分成交已撤销 6撤销中
"profit": "", //已实现盈亏(平仓订单使用)
"fee": "", //手续费
"pointFee": "", //积分(赠金)手续费抵扣
"pointProfit": "", //积分(赠金)盈亏抵扣
"closePrice": "", //破产价
"triggerPrice": "", //触发价
"createdAt": 1725432998726,
"updatedAt": 0
}
]
}
订阅账户资金变更(需要认证)
请求json {"event":"sub","topic":"user.balance"}
返回示例
{
"type": "user.balance",
"ts": 1725364751331,
"data": {
"balance": "4853.95", //余额usdt
"frozen": "0", //挂单冻结保证金
"margin": "1181.29", //持仓保证金
"point": "0", ////赠金余额
"loans": "", //借贷
"profit": "0", //未实现盈亏 unProfit+unLosses
"unProfit": "0", //未实现盈利
"unLosses": "0", //未实现亏损
"coin": "usdt" //usdt
}
}