经纪商申请
如果您的业务平台提供数字货币服务,您就可以申请加入欧易经纪商项目,成为欧易的经纪商合作伙伴,享受专属的经纪商服务,并通过用户在欧易产生的交易手续费赚取高额返佣。
经纪商业务包含且不限:聚合交易平台、交易机器人、跟单平台、交易策略提供方、量化策略机构、资管平台等。
具体经纪商业务文档及产品服务在申请成功后提供相关资料。
经纪商指引
获取返佣指引
OKX Broker 经纪商进行 OKX V5 API 接口调用时,当请求参数有"tag"时,请务必录入您专属的 Broker code 信息,实现订单与经纪商的关联。
当订单录入 BrokerCode 信息后,经纪商方可享受对应的佣金奖励、数据统计等特定逻辑追踪
经纪商常用接口
OKX Broker经纪商进行OKX V5 API接口调用时,当请求参数有tag
时,请务必录入您专属的Broker code信息,实现订单与经纪商的关联。
当订单录入Brokercode
信息后,经纪商方可享受对应的佣金奖励、数据统计等特定逻辑追踪。
常规下单
策略交易
网格交易
定投交易
大宗交易
价差撮合交易
闪兑
金融产品
独立经纪商
简介
独立经纪商
(Non-disclosed Broker) 是一种非披露经纪商。如果您有一定的研发运营能力,想要搭建独有的交易平台和自主管理您的用户,独立经纪商服务是最好的选择。您则负责前端开发和用户运营,而欧易为您提供后端技术和市场的流动性,赋能您的交易增值服务。
- 经纪商在欧易OKX申请开户 申请页面。
- 独立经纪商模块是为经纪商提供管理Broker子账户的功能,包括创建子账户、删除子账户、子账户手续费费率加点、返佣记录查询等。经纪商的账户可以为子账户创建API key,用子账户的API key进行下单、 查看账户余额接口、查看持仓信息等操作,所有的ND子账户默认有主动转出权限。
独立经纪商
的优势如下
丰厚的交易佣金
欧易OKX为经纪商提供高额的交易佣金返利和灵活的费率加点方案,支持固定加点和百分比加点,实现经纪商最大收益。全产品线共享流动性
成为欧易OKX经纪商可以赋予您的产品最佳的流动性,将与OKX共享现货市场和衍生品市场的深度和流动性。24/7 专业的客服支持
欧易OKX团队将为经纪商提供全天候的专业客服支持。
API
适用于独立经纪商母账户API Key。
获取独立经纪商账户信息
查看独立经纪商母账户的账户信息
限速:1次/s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/nd/info
请求示例
GET /api/v5/broker/nd/info
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 获取独立经纪商账户信息
result = ndBrokerAPI.get_broker_info()
print(result)
返回结果
{
"code": "0",
"data": [
{
"level": "lv1",
"maxSubAcctQty": "1000",
"subAcctQty": "6",
"ts": "1637301641775"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcctQty | String | 已创建子账户的数量 |
maxSubAcctQty | String | 最多可以创建子账户数量 |
level | String | 交易等级,如 lv1 |
ts | String | 数据返回时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
创建子账户
独立经纪商母账户创建子账户
限速:40次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/create-subaccount
请求示例
POST /api/v5/broker/nd/create-subaccount
body
{
"subAcct":"brokerTest5",
"label":"5566"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 创建子账户
result = ndBrokerAPI.create_subaccount(
subAcct="brokerTest5",
label="5566"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 6-20位字母(区分大小写)或数字,可以是纯字母、不可以是纯数字。 |
label | String | 否 | 子账户的备注 不超过50位字母(区分大小写)或数字,可以是纯字母或纯数字。 |
clientIP | String | 否 | 子账户注册时的IP 非个人账户请使用ND服务端IP |
mainAcct | String | 可选 | 二级子账户的母账户名称 创建二级子账户时必填,且需要填写一级子账户名称 创建一级子账户时,值为空"" |
返回结果
{
"code": "0",
"data": [
{
"acctLv": "1",
"label": "5566",
"subAcct": "brokerTest5",
"uid": "345173667552038914",
"ts": "1637141950450"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
label | String | 子账户的备注 |
acctLv | String | 账户模式1 :现货模式如果想设置ND子账户等级,参考 设置子账户的账户等级 |
uid | String | 账户ID |
ts | String | 创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
删除子账户
独立经纪商母账户删除子账户,该子账户被删除前,需将子账户的资金全部划转出去。
限速:10次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/delete-subaccount
请求示例
POST /api/v5/broker/nd/delete-subaccount
body
{
"subAcct":"yonxws"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 删除子账户
result = ndBrokerAPI.delete_subaccount(
subAcct="yonxws"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"subAcct": "test-1"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
获取子账户列表
限速:1次/s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/nd/subaccount-info
请求示例
GET /api/v5/broker/nd/subaccount-info
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 获取子账户列表
result = ndBrokerAPI.get_subaccount_info()
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 否 | 子账户名称 |
uid | String | 否 | 子账户UID |
page | String | 否 | 查询页数 |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"data": [
{
"details": [
{
"acctLv": "1",
"canTransOut": false,
"mainAcct": "",
"enable": true,
"frozenFunc": [],
"label": "1",
"subAcct": "h*******5",
"ts": "1648521249000",
"uid": "289*********1696"
}
],
"page": "1",
"totalPage": "1"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
totalPage | String | 总的页数 |
page | String | 当前页数 |
details | Array | 子账户列表 |
> subAcct | String | 子账户名称 |
> uid | String | 子账户UID |
> label | String | 子账户的备注 |
> acctLv | String | 账户模式1 :现货模式2 :现货和合约模式3 :跨币种保证金模式4 :组合保证金模式 |
> enable | Boolean | 子账户状态true :正常使用false :冻结(全局) |
> frozenFunc | Array of string | 被冻结的功能trading :交易convert :闪兑transfer :母子账户间资金划转withdrawal :提币deposit :充值flexible_loan :活期借币 |
> canTransOut | String | 是否可以主动转出(通过子账户APIKey直接转到另一个子账户下)true :可以转出false :不可转出 |
> mainAcct | String | 二级子账户的母账户名称 为""时,代表返回的是一级子账户,有值时为二级子账户 |
> ts | String | 子账户创建时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
获取子账户交易手续费费率
限速:1次/s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/dma/subaccount-trade-fee
请求示例
GET /api/v5/broker/dma/subaccount-trade-fee
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 否 | 子账户名称 |
uid | String | 否 | 子账户UID |
page | String | 否 | 查询页数 |
limit | String | 否 | 分页返回的结果集数量,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"data": [
{
"details": [
{
"feeRates": [
{
"marker": "-0.0008",
"taker": "-0.001",
"type": "1"
},
{
"marker": "-0.0005",
"taker": "-0.0007",
"type": "2"
},
{
"marker": "-0.0002",
"taker": "-0.0005",
"type": "3"
},
{
"marker": "-0.0002",
"taker": "-0.0005",
"type": "4"
},
{
"marker": "-0.0002",
"taker": "-0.0005",
"type": "5"
},
{
"marker": "-0.0002",
"taker": "-0.0005",
"type": "6"
},
{
"marker": "-0.0002",
"taker": "-0.0005",
"type": "7"
},
{
"marker": "-0.0002",
"taker": "-0.0005",
"type": "8"
},
{
"marker": "-0.0002",
"taker": "-0.0003",
"type": "9"
}
],
"mainAcct": "",
"subAcct": "subaccount111ad",
"ts": "1658287703000",
"uid": "335748406955877155"
}
],
"page": "1",
"totalPage": "1"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
totalPage | String | 总的页数 |
page | String | 当前页数 |
details | Array | 子账户列表 |
> subAcct | String | 子账户名称 |
> uid | String | 子账户UID |
> mainAcct | String | 二级子账户的母账户名称 为""时,代表返回的是一级子账户,有值时为二级子账户 |
> ts | String | 子账户创建时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
> feeRates | Array | 手续费率信息 |
>> type | String | 手续费类型1 现货 USDT 交易对2 现货 稳定币/Crypto3 USDT 交割合约4 USDC 交割合约5 币本位交割合约6 USDT 永续合约7 USDC 永续合约8 币本位永续合约9 期权 |
>> maker | String | 挂单手续费率 |
>> taker | String | 吃单手续费率 |
创建子账户的APIKey
限速:40次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/subaccount/apikey
请求示例
POST /api/v5/broker/nd/subaccount/apikey
body
{
"subAcct":"panpanBroker2",
"label":"broker3",
"passphrase":"Qwr4321!",
"perm":"read_only,trade",
"ip":"10.0.108.9"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 创建子账户的APIKey
result = ndBrokerAPI.create_subaccount_apikey(
subAcct="panpanBroker2",
label="broker3",
passphrase="Qwr4321!",
perm="trade",
ip="10.0.108.9"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称,支持6-20位字母和数字组合(区分大小写,不支持空格符号) |
label | String | 是 | API Key备注 不超过50位字母(区分大小写)或数字,可以是纯字母或纯数字。 |
passphrase | String | 是 | API Key密码,8-32位字母数字组合,至少包含一个数字、一个大写字母、一个小写字母、一个特殊字符 |
ip | String | 否 | 绑定IP地址,多个IP用半角逗号隔开,最多支持20个IP 安全性考虑,推荐绑定IP 未绑定IP且拥有交易或提币权限的API key,将在闲置14天之后自动删除。(模拟盘的API key不会被删除) |
perm | String | 否 | API Key权限read_only :读取,默认拥有,且不可去除trade :交易withdraw :提币 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"subAcct": "panpanBroker2",
"label": "broker3",
"apiKey": "****",
"secretKey": "****",
"passphrase": "Qwr4321!",
"perm": "read_only,trade",
"ip": "10.0.108.9",
"ts": "1597026383085"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
label | String | API Key备注 |
apiKey | String | API公钥 |
secretKey | String | API Key私钥 |
passphrase | String | API Key密码 |
perm | String | API Key权限 |
ip | String | API Key绑定的ip地址 |
ts | String | 创建时间,Unix时间戳的毫秒数格式,如 1597026383085 |
查询子账户的API Key
限速:1次/s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/nd/subaccount/apikey
请求示例
GET /api/v5/broker/nd/subaccount/apikey?subAcct=panpanBroker2
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 查询子账户的APIKey
result = ndBrokerAPI.get_subaccount_apikey(
subAcct="panpanBroker2",
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
apiKey | String | 否 | API Key公钥 |
返回结果
{
"code":"0",
"msg":"",
"data":[
{
"label":"v5",
"apiKey":"arg13sdfgs",
"perm":"read_only,trade",
"ip":"1.1.1.1,2.2.2.2",
"ts":"1597026383085"
},
{
"label":"v5.1",
"apiKey":"arg13sdfgs",
"perm":"read_only",
"ip":"1.1.1.1,2.2.2.2",
"ts":"1597026383085"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
label | String | API Key备注 |
apiKey | String | API Key公钥 |
perm | String | API Key权限read_only :读取trade :交易withdraw :提币 |
ip | String | API Key绑定的IP地址 |
ts | String | API Key创建时间 |
重置子账户的APIKey
限速:10次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/subaccount/modify-apikey
请求示例
POST /api/v5/broker/nd/subaccount/modify-apikey
body
{
"subAcct":"yongxu",
"perm":"read_only",
"label":"test7",
"apiKey":"49e1b84b-6dee-4894-80ee-ce9eb7ad614f"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 重置子账户的APIKey
result = ndBrokerAPI.reset_subaccount_apikey(
subAcct="panpanBroker2",
perm="read_only",
label="test7",
apiKey="49e1b84b-6dee-4894-80ee-ce9eb7ad614f"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
apiKey | String | 是 | API公钥 |
label | String | 否 | APIKey备注 不超过50位字母(区分大小写)或数字,可以是纯字母或纯数字 如果传入该字段,则会被重置 |
perm | String | 否 | APIKey权限read_only :读取,默认拥有,且不可去除trade :交易withdraw :提币多个权限用半角逗号隔开 如果传入该字段,则会被重置 |
ip | String | 否 | 绑定ip地址,多个ip用半角逗号隔开,最多支持20个ip 如果传入该字段,则会被重置 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"subAcct": "yongxu",
"label": "test7",
"apiKey": "arg13sdfgs",
"perm": "read,trade",
"ip": "",
"ts": "1597026383085"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
label | String | API Key备注 |
apiKey | String | API Key公钥 |
perm | String | API Key权限 |
ip | String | API Key绑定的ip地址 |
ts | String | 更新时间,Unix时间戳的毫秒数格式,如 1597026383085 |
删除子账户的APIKey
限速:10次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/subaccount/delete-apikey
请求示例
POST /api/v5/broker/nd/subaccount/delete-apikey
body
{
"subAcct":"test00001",
"apiKey":"b521e11c-b4ed-4c80-9624-346d69749a85"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 删除子账户的APIKey
result = ndBrokerAPI.delete_subaccount_apikey(
subAcct="panpanBroker2",
apiKey="49e1b84b-6dee-4894-80ee-ce9eb7ad614f"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
apiKey | String | 是 | API的公钥 |
返回结果
{
"code": "0",
"msg": "",
"data": [{
"subAcct": "test-1"
}]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
设置子账户的账户等级
独立经纪商母账户调整子账户的账户等级。
如果独立经纪商母账户想调整自己的账户等级,参考 设置账户模式
限速:5次/2s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/set-subaccount-level
请求示例
POST /api/v5/broker/nd/set-subaccount-level
body
{
"acctLv":"3",
"subAcct":"brokerTest3"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 设置子账户的账户等级
result = ndBrokerAPI.set_subaccount_level(
subAcct="panpanBroker2",
acctLv="3",
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
acctLv | String | 是 | 账户模式 1 :现货模式2 :现货和合约模式3 :跨币种保证金模式4 :组合保证金模式 |
返回结果
{
"code": "0",
"data": [
{
"acctLv": "3"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
acctLv | String | 账户模式 1 :现货模式,2 :现货和合约模式 ,3 :跨币种保证金模式 ,4 :组合保证金模式 |
设置子账户的交易手续费费率
子账户交易费率是当前层级的基础费率加上绝对或百分比的变化。设置子账户手续费费率后,生效日期为T+1小时(HKT)。
限速:5次/2s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/set-subaccount-fee-rate
请求示例
POST /api/v5/broker/nd/set-subaccount-fee-rate
body
{
"subAcct":"broker4",
"chgType":"absolute",
"chgTaker":"90",
"chgMaker":"90",
"effDate":"20211219"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 设置子账户的交易手续费费率
result = ndBrokerAPI.set_subaccount_fee_rate(
subAcct="panpanBroker2",
chgType="absolute",
chgTaker= "90",
chgMaker= "90",
effDate= "20211219"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 否 | 子账户名称 |
instType | String | 否 | 产品类型SPOT :币币SWAP :永续合约FUTURES :交割合约OPTION :期权 |
quoteCcyType | String | 否 | 计价币类型2 :USDT3 :USDⓈ/Crypto适用于 币币 当指定该参数时, instType 必传 |
mgnType | String | 否 | 保证金类型1 :USDT本位2 :币本位3 :USDC本位适用于 交割/永续 当指定该参数时, instType 必传 |
chgType | String | 是 | 手续费加点类型absolute :固定加点percentage :百分比加点 |
chgTaker | String | 可选 | Taker手续费加点固定加点 :单位bp (1bp = 0.01%),范围【0.0bp,1,000bp】,即【0.00%,10%】,精度为0.1bp 百分比加点 :单位% 范围【0%,1,0000%】,精度为1% |
chgMaker | String | 可选 | Maker手续费加点固定加点 :单位bp (1bp = 0.01%),范围【0.0bp,1,000bp】,即【0.00%,10%】,精度为0.1bp 百分比加点 :单位% 范围【0%,1,0000%】,精度为1% chgTaker和chgMaker必须填写一个 |
effDate | String | 否 | 手续费加点的生效日期 格式:YYYYMMdd ,如 20210623 如果不填写,就是第二天0点(HKT)生效(T+1生效) 如果填写,就在指定日期0点(HKT)生效 |
返回结果
{
"code": "0",
"data": [
{
"subAcct": "brokerTest4",
"effTs": "20211119"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
effTs | String | 格式:YYYYMMdd ,如 20210623 |
创建子账户充值地址
独立经纪商母账户创建子账户的充值地址,每个币种最多20个充值地址。闪电网络充值有独立接口。
限速:10次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/asset/broker/nd/subaccount-deposit-address
请求示例
POST /api/v5/asset/broker/nd/subaccount-deposit-address
body
{
"ccy":"BTC",
"subAcct":"brokerTest5"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 创建子账户充值地址
result = ndBrokerAPI.create_subaccount_deposit_address(
ccy="BTC",
subAcct="panpanBroker2"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
ccy | String | 是 | 币种名称,仅支持大写,如 BTC |
chain | String | 否 | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 多个链如果不填此参数,则默认为主链 |
addrType | String | 否 | 充值地址类型1 :普通地址2 :隔离验证地址 (仅适用于BTC 和LTC )默认为 1 |
to | String | 否 | 充值到账账户6 :资金账户18 :交易账户默认为 6 |
返回结果
{
"code": "0",
"data": [
{
"chain": "EOS-EOS",
"ccy": "EOS",
"memo": "10810086",
"addr": "okbtothemoon",
"ts": "1637141950450"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 充值币种 |
addr | String | 充值地址 |
chain | String | 币种链信息 |
pmtId | String | 部分币种提币需要此字段,如 XMR 如果不需要此字段的币种,则不会返回 |
tag | String | 部分币种提币需要此字段,如 XRP 如果不需要此字段的币种,则不会返回 |
memo | String | 部分币种充值需要标签,如 EOS 若不需要则不返回此字段,则不会返回 |
comment | String | 部分币种充值需要标签,如 TON 若不需要则不返回此字段,则不会返回 |
ts | String | 创建时间,Unix 时间戳的毫秒数格式,如 1597026383085 |
重置子账户充值地址
目前仅支持充值到账账户的调整
限速:6次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/asset/broker/nd/modify-subaccount-deposit-address
请求示例
POST /api/v5/asset/broker/nd/modify-subaccount-deposit-address
body
{
"subAcct":"test",
"ccy":"USDT",
"chain":"USDT-ERC20",
"addr":"1123456",
"to":"18"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 重置子账户充值地址
result = ndBrokerAPI.reset_subaccount_deposit_address(
ccy="USDT",
subAcct="panpanBroker2",
chain="USDT-ERC20",
addr="1123456",
to="18"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
ccy | String | 是 | 币种名称,仅支持大写,如 BTC |
chain | String | 否 | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 多个链如果不填此参数,则默认为主链 |
addr | String | 是 | 充值地址 某些数字货币地址格式为:地址+标签,如 ARDOR-7JF3-8F2E-QUWZ-CAN7F:123456 |
to | String | 是 | 充值到账账户6 :资金账户 18 :交易账户充值到账账户是一个全局设置,单个子账户下的所有充值地址的到账账户都会影响 |
返回结果
{
"code": "0",
"data": [
{
"chain": "USDT-ERC20",
"ccy": "USDT",
"to": "18",
"addr": "1123456",
"ts": "1654778132000"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ccy | String | 充值币种 |
addr | String | 充值地址 |
chain | String | 币种链信息 |
pmtId | String | 部分币种提币需要此字段,如果不需要此字段的币种吗,返回"" ,如 XMR |
tag | String | 部分币种提币需要此字段,如果不需要此字段的币种吗,返回"" , 如 XRP |
memo | String | 部分币种充值需要标签,若不需要则不返回此字段,返回"",如 EOS |
comment | String | 部分币种充值需要标签,若不需要则不返回此字段,返回"",如 TON |
to | String | 调整后的充值到账账户6 :资金账户 18 :交易账户 |
ts | String | 修改时间,Unix 时间戳的毫秒数格式,如 1597026383085 |
获取子账户充值地址
获取子账户的充值地址
限速:6次/s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/asset/broker/nd/subaccount-deposit-address
请求示例
GET /api/v5/asset/broker/nd/subaccount-deposit-address?ccy=BTC&subAcct=brokerTest1
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 获取子账户充值地址
result = ndBrokerAPI.get_subaccount_deposit_address(
ccy="USDT",
subAcct="panpanBroker2"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
ccy | String | 是 | 币种,仅支持大写:如 BTC |
返回结果
{
"code": "0",
"data": [
{
"chain": "XMR-Monero",
"ctAddr": "",
"ccy": "XMR",
"to": "6",
"addr": "884ifkSCavs9X759FZhfmrNmEbimqnXdofsd5kqXwuxfJMKZPKCfSAubrnwanuUf2JJi6hwskfcYzAUGodkJj3RsHAVFoDm",
"selected": false
},
{
"chain": "XMR-Monero",
"ctAddr": "",
"ccy": "XMR",
"to": "6",
"addr": "88aCNpJgfX1DGZ2HPd5i9DaAmyuRiQbnFGVbc8AFXgAhi4i7eX6sRm75m1UuJNZxwfMh4xBwV5fv6h4A5v1qQET5LHnXqgn",
"selected": false
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
addr | String | 充值地址 |
tag | String | 部分币种充值需要标签,若不需要则不返回此字段 |
memo | String | 部分币种充值需要标签,若不需要则不返回此字段 |
pmtId | String | 部分币种充值需要此字段,若不需要则不返回此字段 |
comment | String | 部分币种充值需要此字段,若不需要则不返回此字段 |
ccy | String | 币种,如BTC |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 多个链 |
to | String | 转入账户6 :资金账户18 :交易账户 |
selected | Boolean | 该地址是否为页面选中的地址 |
ctAddr | String | 合约地址后6位 |
获取子账户充值记录
根据币种,充值状态,时间范围获取充值记录,按照时间倒序排列,默认返回 100 条数据。
支持Websocket订阅,参考 充值信息频道。
限速:5次/2s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/asset/broker/nd/subaccount-deposit-history
请求示例
查询最近的充值记录
GET /api/v5/asset/broker/nd/subaccount-deposit-history?subAcct=brokerTest1&state=1
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 获取子账户充值记录
result = ndBrokerAPI.get_subaccount_deposit_history()
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 否 | 子账户名称 |
ccy | String | 否 | 币种名称,如 BTC |
txId | String | 否 | 区块转账哈希记录 |
type | String | 否 | 充值方式3 :内部转账4 :链上充值 |
state | String | 否 | 充值状态0 :等待确认1 :确认到账2 :充值成功8 :因该币种暂停充值而未到账,恢复充值后自动到账11 :命中黑名单地址12 :账户或充值被冻结13 :子账户充值拦截14 :KYC限额 |
after | String | 否 | 查询在此之前的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
before | String | 否 | 查询在此之后的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1597026383085 |
limit | string | 否 | 返回的结果集数量,默认为 100,最大为 100 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"amt": "0.01044408",
"actualDepBlkConfirm": "17",
"txId": "1915737_3_0_0_asset",
"ccy": "BTC",
"chain":"BTC-Bitcoin",
"from": "13801825426",
"areaCodeFrom": "86",
"to": "",
"ts": "1597026383085",
"state": "2",
"subAcct": "brokerTest1",
"depId": "4703879"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
ccy | String | 币种名称,如 BTC |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 多个链 |
amt | String | 充值数量 |
from | String | 充值账户,只显示内部账户转账地址,不显示区块链充值地址 |
areaCodeFrom | String | 如果from 为手机号,该字段为该手机号的区号 |
to | String | 到账地址 |
txId | String | 区块转账哈希记录 |
ts | String | 充值记录创建时间,Unix 时间戳的毫秒数格式,如 1597026383085 |
state | String | 充值状态0 :等待确认1 :确认到账2 :充值成功8 :因该币种暂停充值而未到账,恢复充值后自动到账11 :命中黑名单地址12 :账户或充值被冻结13 :子账户充值拦截14 :KYC限额 |
depId | String | 充值记录 ID |
actualDepBlkConfirm | String | 最新的充币网络确认数 |
子账户提币
ND 子账户支持提币,需要使用 ND 子账户 API Key 调用 提币。
获取子账户提币记录
根据币种,提币状态,时间范围获取提币记录,按照时间倒序排列,默认返回 100 条数据。
支持Websocket订阅,参考 提币信息频道。
限速:5次/2s
限速规则:UserID
权限:读取
限速规则:UserID
HTTP 请求
GET /api/v5/asset/broker/nd/subaccount-withdrawal-history
请求示例
GET /api/v5/asset/broker/nd/subaccount-withdrawal-history?subAcct=brokerTest1
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 否 | 子账户名称 |
ccy | String | 否 | 币种名称,如 BTC |
wdId | String | 否 | 提币申请ID |
clientId | String | 否 | 客户自定义ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
txId | String | 否 | 区块转账哈希记录 |
type | String | 否 | 提币方式3 :内部转账4 :链上提币 |
state | String | 否 | 提币状态10 :等待划转0 :等待提币4 /5 /6 /8 /9 /12 :等待客服审核7 :审核通过1 :正在将您的交易广播到链上15 :交易待确认16 :根据当地法律法规,您的提币最多可能需要 24 小时才能到账-3 :撤销中-2 :已撤销-1 :失败2 :提币成功 |
after | String | 否 | 查询在此之前的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1654041600000 |
before | String | 否 | 查询在此之后的内容,值为时间戳,Unix 时间戳为毫秒数格式,如 1656633600000 |
limit | string | 否 | 返回的结果集数量,默认为100,最大为100,不填默认返回100条 |
返回结果
{
"code": "0",
"msg": "",
"data": [
{
"subAcct":"brokerTest1",
"chain": "ETH-Ethereum",
"fee": "0.007",
"feeCcy": "ETH",
"ccy": "ETH",
"clientId": "",
"amt": "0.029809",
"txId": "0x35c******b360a174d",
"to": "0xa30d1fab********7CF18C7B6C579",
"areaCodeTo": "",
"state": "2",
"ts": "1655251200000",
"wdId": "15447421"
}
]
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
ccy | String | 币种 |
chain | String | 币种链信息 有的币种下有多个链,必须要做区分,如 USDT 下有USDT-ERC20 ,USDT-TRC20 多个链 |
nonTradableAsset | Boolean | 是否为不可交易资产true :不可交易资产,false :可交易资产 |
amt | String | 数量 |
ts | String | 提币申请时间,Unix 时间戳的毫秒数格式,如 1655251200000 |
to | String | 收币地址 |
areaCodeTo | String | 如果to 为手机号,该字段为该手机号的区号 |
tag | String | 部分币种提币需要标签,若不需要则不返回此字段 |
pmtId | String | 部分币种提币需要此字段(payment_id),若不需要则不返回此字段 |
memo | String | 部分币种提币需要此字段,若不需要则不返回此字段 |
addrEx | Object | 提币地址备注,部分币种提币需要,若不需要则不返回此字段。如币种TONCOIN的提币地址备注标签名为comment,则该字段返回:{'comment':'123456'} |
txId | String | 提币哈希记录 内部转账该字段返回"" |
fee | String | 提币手续费数量 |
feeCcy | String | 提币手续费币种,如 USDT |
state | String | 提币状态 |
wdId | String | 提币申请ID |
clientId | String | 客户自定义ID |
获取子账户返佣记录
独立经纪商账户查看子账户的返佣记录,返佣按小时计算,更新时间为T+1小时。
返回结果按照时间倒序排列。
限速:1次/10s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/nd/rebate-daily
请求示例
GET /api/v5/broker/nd/rebate-daily
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 获取子账户返佣记录
result = ndBrokerAPI.get_rebate_daily()
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 否 | 子账户名称 |
begin | String | 否 | 查询起始日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/23 00:00:00 (包含)后的记录 |
end | String | 否 | 查询结束日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/24 00:00:00 (不包含)前的记录 |
beginTime | String | 否 | 查询起始时间 Unix时间戳的毫秒数格式,如 1597026383085 ,查询在 1597026383085 (包含)后的记录 |
endTime | String | 否 | 查询结束时间 Unix时间戳的毫秒数格式,如 1597026383085 ,查询在 1597026383085 (不包含)前的记录 |
page | String | 否 | 查询页码 如 1 :第一页 |
limit | String | 否 | 分页返回的结果集数量,最大为100 ,不填默认返回100 条 |
返回结果
{
"code": "0",
"data": [
{
"details": [
{
"income": "0.01857038047018",
"incomeCat": {
"convert": "0",
"derivative": "0",
"spot": "0.01857038047018"
},
"markupFee": "-0.0147228174975",
"markupFeeCat": {
"convert": "0",
"derivative": "0",
"spot": "-0.0147228174975"
},
"netFee": "0.0096189074317",
"netFeeCat": {
"derivative": "0",
"spot": "0.0096189074317"
},
"rebateDate": "20221107",
"rebateTime": "1689609601000",
"subAcct": "testing"
}
],
"page": "1",
"totIncome": "0.51129485727208",
"totIncomeCat": {
"convert": "0",
"derivative": "0",
"spot": "0.50704793427208"
},
"totPage": "1",
"ts": "1689846562790"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
ts | String | 数据查询时间,Unix时间戳的毫秒数格式,如 1597026383085 |
totIncome | String | 所有子账户总返佣金额,单位为USDT |
totIncomeCat | Object | 所有子账户返佣金额分类统计 |
> spot | String | 所有子账户 现货 总返佣金额,单位为USDT |
> derivative | String | 所有子账户 衍生品 总返佣金额,单位为USDT |
> convert | String | 所有子账户 闪兑 总返佣金额,单位为USDT |
totPage | String | 总的页数 |
page | String | 当前页数 |
details | Array of object | 子账户返佣记录列表 |
> subAcct | String | 子账户名称 |
> income | String | 当前子账户返佣金额 ,单位USDT |
> incomeCat | Object | 当前子账户返佣金额分类统计 |
>> spot | String | 当前子账户 现货 返佣金额,单位为USDT |
>> derivative | String | 当前子账户 衍生品 返佣金额,单位为USDT |
>> convert | String | 当前子账户 闪兑 返佣金额,单位为USDT |
> netFee | String | 当前子账户净手续费,单位USDT |
> netFeeCat | Object | 当前子账户净手续费分类统计 |
>> spot | String | 当前子账户 现货 净手续费汇总,单位为USDT |
>> derivative | String | 当前子账户 衍生品 净手续费汇总,单位为USDT |
> markupFee | String | 当前子账户加点后手续费,单位USDT |
> markupFeeCat | Object | 当前子账户加点后手续费分类统计 |
>> spot | String | 当前子账户 现货 加点后手续费,单位为USDT |
>> derivative | String | 当前子账户 衍生品 加点后手续费,单位为USDT |
>> convert | String | 当前子账户 闪兑 加点后手续费,单位为USDT |
> rebateDate | String | 子账户返佣日期,格式: YYYYMMdd ,如 20210623 |
> rebateTime | String | 子账户返佣时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取返佣明细下载链接(ND)
获取已经申请成功的成交明细维度的返佣下载链接,下载链接生成后,仅保留9小时有效。
限速:2次/1min
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/nd/rebate-per-orders
请求示例
GET /api/v5/broker/nd/rebate-per-orders?type=false&begin=20211109&end=20211208
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 获取返佣明细下载链接
result = ndBrokerAPI.get_rebate_details_download_link()
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
type | String | 是 | 筛选条件类型true :获取当前用户所有已生成的历史记录false :查询指定的历史记录 |
begin | String | 可选 | 查询链接生成的起始日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/23 00:00:00 (包含)后的记录如果type为 false ,该字段必填 |
end | String | 可选 | 查询链接生成的结束日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/24 00:00:00 (不包含)前的记录如果type为 false ,该字段必填 |
返回结果
{
"code": "0",
"data": [
{
"beginTime": "1667232000000",
"cTime": "1689823776000",
"endTime": "1672502400000",
"fileHref": "http://okg-pri-hk.oss-cn-hongkong.aliyuncs.com/okex/broker/ndbroker_reward/e8e1af1918f864fe99c33fdfc9b5fcdd5819173b/e8e1af1918f864fe99c33fdfc9b5fcdd5819173b_20221101_20230101.zip?Expires=1697617317&OSSAccessKeyId=LTAI5tKNPwWs7AttSPZn4iaa&Signature=rn%2Bk%2Fk35SFHpYmfFfWLyWfHzE%2F0%3D",
"state": "finished",
"ts": "1689823776000"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
fileHref | String | 文件链接,没有数据时为 "" |
beginTime | String | 返佣明细的开始时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
endTime | String | 返佣明细的结束时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
cTime | String | 生成下载链接的首次请求时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
ts | String | 下载链接生成时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
state | String | 下载链接状态finished :已生成ongoing :进行中 |
解压后CSV里的字段说明
参数名 | 描述 |
---|---|
subAcct | 子账户名称 |
instId | 交易产品 |
ordId | 订单id |
tradeId | 最新成交 ID |
amt | 成交金额,单位为USDT |
fee | 手续费,单位为USDT |
execType | 流动性方向T :takerM :maker |
rebate | 返佣金额,单位为USDT |
rebateCat | 返佣类别spot :现货derivative :衍生品convert :闪兑 |
netFee | 净手续费(去除返佣卡、对手方等数据后进行返佣结算的手续费基数),单位为USDT |
markupFee | 加点手续费,单位为USDT |
ts | 该笔订单最后一次成交时间 |
生成返佣明细下载链接(ND)
支持所有ND子账户账户的全部历史返佣明细
限速:1次/1h
限速规则:UserID
权限:读取
HTTP请求
POST /api/v5/broker/nd/rebate-per-orders
请求示例
POST /api/v5/broker/nd/rebate-per-orders
body
{
"begin":"20210623",
"end":"20210626"
}
import okx.NDBroker as NDBroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "1" # 实盘:0 , 模拟盘:1
ndBrokerAPI = NDBroker.NDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 生成返佣明细下载链接
result = ndBrokerAPI.generate_rebate_details_download_link(
begin="20220623",
end="20210922"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
begin | String | 是 | 起始日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/23 00:00:00 (包含)后的记录 |
end | String | 是 | 结束日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/24 00:00:00 (不包含)前的记录 |
返回结果
{
"code": "0",
"data": [
{
"result": "false",
"ts": "1646892328000"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
result | String | 是否已经存在该区间的下载链接true :已存在,可以通过"获取返佣明细下载链接"接口获取false :不存在,正在生成,请3个小时后查看下载链接 |
ts | String | 服务端首次收到请求的时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取双币赢产品列表
请先跟你的客服经理联系开通双币赢产品。返回产品详细信息列表和预估报价。
限速:30次/2s
限速规则:IP
权限:读取
HTTP请求
GET /api/v5/finance/sfp/dcd/products
请求示例
GET /api/v5/finance/sfp/dcd/products?ccy=BTC&alternativeCcy=USDT&optType=C&tag=123456789ABCDEFG
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ccy | String | 是 | 风险货币,如 BTC |
alternativeCcy | String | 是 | 稳定货币,如 USDT |
optType | String | 是 | 期权类型C :看涨期权,申购货币是风险货币P :看跌期权,申购货币是稳定货币 |
tag | String | 是 | 经纪商订单标签 |
返回结果
{
"code": 0,
"data": [
{
"absYield": "0.01302066",
"altCcy": "USDT",
"annualYield": "0.683",
"ccy": "BTC",
"expTime": "1683878400000",
"interestAccrualTime": "1683277200000",
"listTime": "1682969037000",
"maxSize": "200.0000000000000000",
"minSize": "0.0001000000000000",
"notionalCcy": "BTC",
"optType": "C",
"productId": "BTC-USDT-230512-29500-C",
"quota": "198.9990000000000000",
"quoteTime": "1683275022001",
"settTime": "1683885600000",
"stepSize": "0.0001",
"stk": "29500",
"tag": "123456789ABCDEFG",
"uly": "BTC-USD"
}
],
"msg": ""
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
absYield | String | 产品预估回报 |
alternativeCcy | String | 稳定货币 |
annualYield | String | 产品预估年化回报 |
ccy | String | 风险货币 |
expTime | String | 到期时间 |
interestAccrualTime | String | 起息时间 |
listTime | String | 产品上线时间 |
maxSize | String | 订单最大数量(申购货币) |
minSize | String | 订单最小数量(申购货币) |
notionalCcy | String | 申购货币 C :看涨期权,申购货币是风险货币 P :看跌期权,申购货币是稳定货币 |
optType | String | 期权类型, C :看涨期权 P :看跌期权 |
productId | String | 产品ID |
quota | String | 剩余额度(申购货币) |
quoteTime | String | 报价时间 |
settTime | String | 结算时间 |
stopTradingTime | String | 最后申购时间 |
stepSize | String | 下单数量精度 |
stk | String | 行权价格 |
tag | String | 经纪商订单标签 |
uly | String | 标的指数 |
双币赢询价
返回产品最终报价。只可以透过子账户的API Key调用接口。
限速:2次/2s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/finance/sfp/dcd/quote
请求示例
POST /api/v5/finance/sfp/dcd/quote
body
{
"clReqId": "Q001",
"markUp": "0.05",
"notional": "1",
"notionalCcy": "BTC",
"productId": "BTC-USDT-220414-30800-C",
"tag": "123456789ABCDEFG"
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
clReqId | String | 否 | 客户端自定义的订单标识 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 |
markUp | String | 否 | 覆盖预设的分佣。如果省略,系统将应用预设的分佣值 必须0<=x<1 |
notional | String | 是 | 申购金额,单位是申购货币 |
notionalCcy | String | 是 | 申购货币,必须对应产品的申购货币 |
productId | String | 是 | 产品ID |
tag | String | 是 | 经纪商订单标签 |
返回结果
{
"code": 0,
"msg": "",
"data": [
{
"absYield": "0.001",
"annualYield": "0.0822",
"clQReqId": "Q001",
"notional": "5",
"notionalCcy": "BTC",
"productId": "BTC-USDT-221221-16900-C",
"quoteId": "quoterbcDCD-QUOTE16715309383851388",
"ttlMs": "30000",
"tag": "123456789ABCDEFG",
"markUp": "0.05"
}
]
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
absYield | String | 产品回报 |
annualYield | String | 产品年化回报 |
clReqId | String | 客户端自定义的订单标识 |
notional | String | 申购金额,单位是申购货币 |
notionalCcy | String | 申购货币,必须对应产品的申购货币 |
productId | String | 产品ID |
quoteId | String | 报价ID |
ttlMs | String | 报价有效期,单位为毫秒 |
tag | String | 经纪商订单标签 |
markUp | String | 覆盖的分佣。返回“”代表系统用预设的分佣值 |
双币赢交易
用拿到的quote ID下单。 下单时间一定是报价有效期内。只可以透过子账户的API Key调用接口。
限速:2次/2s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/finance/sfp/dcd/order
请求示例
POST /api/v5/finance/sfp/dcd/order
body
{
"clOrdId": "T001",
"quoteId": "quoterbcDCD-QUOTE16715309383851388"
}
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
clOrdId | String | 否 | 用户自定义ID 字母(区分大小写)与数字的组合,可以是纯字母、纯数字且长度要在1-32位之间。 不能与所有订单的clOrdId重复 |
quoteId | String | 是 | 系统报价ID |
返回结果
{
"code": 0,
"data": {
"clOrdId": "T001",
"orderId": "fa478b7a60d24cac966ea97c7e837380",
"quoteId": "quoterbcDCD-QUOTE16715309383851388"
},
"msg": ""
}
返回参数
Parameter参数 | Type类型 | 描述 |
---|---|---|
clOrdId | String | 用户自定义ID |
ordId | String | 订单ID |
quoteId | String | 系统报价ID |
获取双币赢订单
只可以透过子账户的API Key调用接口。
限速:10次/2s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/finance/sfp/dcd/order
请求示例
GET /api/v5/finance/sfp/dcd/order
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
ordId | String | 可选 | 系统报价ID ordId 或clOrdId 必填其一。若传ordId 和clOrdId ,以ordId 为主 |
clOrdId | String | 可选 | 用户自定义ID |
返回结果
{
"code": 0,
"data": [
{
"absYield": "0.00282333",
"alternativeCcy": "USDT",
"annualYield": "1.12420000",
"cTime": "1683193229000",
"ccy": "BTC",
"clOrdId": "fa478b7a60d24cac966ea97c7e837380",
"notional": "0.0100000000000000",
"notionalCcy": "BTC",
"ordId": "1",
"productId": "BTC-USDT-230505-29250-C",
"quoteId": "abcd1234",
"settAmt": "0.01002823",
"settCcy": "BTC",
"settPrice": "23000.0000000000000000",
"settledTime": "1683280819000",
"state": "settled",
"stk": "29250",
"tag": "123456789ABCDEFG",
"uTime": "1683280819000",
"uly": "BTC-USD",
"yieldAmt": "0.00002823",
"yieldCcy": "BTC"
}
],
"msg": ""
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
absYield | String | 产品预估回报 |
alternativeCcy | String | 稳定货币 (如USDT) |
annualYield | String | 产品预估年化回报 |
ccy | String | 风险货币(如BTC,ETH) |
clOrdId | String | 用户自定义ID |
cTime | String | 询价单创建时间,Unix时间戳的毫秒数格式。 |
optType | String | 期权类型, C :看涨期权 P :看跌期权 |
ordId | String | 订单ID |
notional | String | 申购金额,单位是申购货币 |
notionalCcy | String | 申购货币 C :看涨期权,申购货币是风险货币 P :看跌期权,申购货币是稳定货币 |
productId | String | 产品ID |
quoteId | String | 系统报价ID |
settTime | String | 结算时间 |
settAmt | String | 结算金额(结算货币) |
settCcy | String | 结算货币 |
settPrice | String | 计算价格。状态在 pending_settled 和 settled 才会有值返回 |
state | String | 订单状态 initial :处理中, live :赚币中, pending_settled :等待结算, settled :已结算, rejected :失败 |
stk | String | 行权价格 |
uTime | String | 订单状态更新时间,Unix时间戳的毫秒数格式 |
tag | String | 经纪商订单标签 |
uly | String | 标的指数 |
获取双币赢所有订单
只可以透过子账户的API Key调用接口。
限速:10次/2s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/finance/sfp/dcd/orders
请求示例
GET /api/v5/finance/sfp/dcd/orders
请求参数
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
productId | String | 否 | 产品ID |
uly | String | 否 | 标的指数 |
state | String | 否 | 订单状态 initial live pending_settled settled rejected |
beginId | String | 否 | 请求的起始询价单ID,请求此ID之后(更新的数据)的分页内容,不包括 beginId |
endId | String | 否 | 请求的结束询价单ID,请求此ID之前(更旧的数据)的分页内容,不包括 endId |
begin | String | 否 | 用开始时间戳筛创建时间,Unix时间戳的毫秒数格式,不包括 begin |
end | String | 否 | 用结束时间戳筛选创建时间,Unix时间戳的毫秒数格式,不包括 end |
limit | String | 否 | 返回结果的数量,最大为100,默认100条。 如果请求范围内的交易数量大于100,则返回该范围内最近的100笔交易。 |
返回结果
{
"code": 0,
"data": [
{
"absYield": "0.01163784",
"alternativeCcy": "USDT",
"annualYield": "0.51750000",
"cTime": "1683166630000",
"ccy": "BTC",
"clOrdId": "fa478b7a60d24cac966ea97c7e837376",
"notional": "0.0100000000000000",
"notionalCcy": "BTC",
"ordId": "1",
"productId": "BTC-USDT-230512-30000-C",
"quoteId": "abcd1234",
"settAmt": "",
"settCcy": "",
"settPrice": "",
"settledTime": "",
"state": "live",
"stk": "30000",
"tag": "123456789ABCDEFG",
"uTime": "1683166632000",
"uly": "BTC-USD",
"yieldAmt": "",
"yieldCcy": ""
}
],
"msg": ""
}
返回参数
参数 | 类型 | 描述 |
---|---|---|
absYield | String | 产品预估回报 |
alternativeCcy | String | 稳定货币 (如USDT) |
annualYield | String | 产品预估年化回报 |
ccy | String | 风险货币(如BTC,ETH) |
clOrdId | String | 用户自定义ID |
cTime | String | 询价单创建时间,Unix时间戳的毫秒数格式。 |
optType | String | 期权类型, C :看涨期权 P :看跌期权 |
ordId | String | 订单ID |
notional | String | 申购金额,单位是申购货币 |
notionalCcy | String | 申购货币 C :看涨期权,申购货币是风险货币 P :看跌期权,申购货币是稳定货币 |
productId | String | 产品ID |
quoteId | String | 系统报价ID |
settTime | String | 结算时间 |
settAmt | String | 结算金额(结算货币) |
settCcy | String | 结算货币 |
settPrice | String | 计算价格。状态在 pending_settled 和 settled 才会有值返回 |
state | String | 订单状态 initial :处理中, live :赚币中, pending_settled :等待结算, settled :已结算, rejected :失败 |
stk | String | 行权价格 |
uTime | String | 订单状态更新时间,Unix时间戳的毫秒数格式 |
tag | String | 经纪商订单标签 |
uly | String | 标的指数 |
爆仓预警推送
推送:爆仓预警通知
频道名:liquidation-warning
此推送频道仅作为风险提示,不建议作为策略交易的风险判断
在行情剧烈波动的情况下,可能会出现此消息推送的同时仓位已经被强平的可能性。
设置模拟盘ND子账户资产
限速:40次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/set-subaccount-assets
请求示例
POST /api/v5/broker/nd/set-subaccount-assets
body
{
"subAcct":"brokerTest5",
"ccy":"BTC"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | ND子账户名称 |
ccy | String | 是 | 币种,如 BTC |
返回结果
{
"code": "0",
"data": [
{
"amt": "3",
"ccy": "BTC",
"subAcct": "brokerTest5"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | ND子账户名称 |
ccy | String | 币种,如 BTC |
amt | String | 当前交易账户的币种数量 |
子账户IP上报
限速:40次/s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/report-subaccount-ip
请求示例
POST /api/v5/broker/nd/report-subaccount-ip
body
{
"subAcct":"brokerTest5",
"clientIP":"1.1.1.1"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
subAcct | String | 是 | 子账户名称 |
clientIP | String | 是 | 子账户登录IP |
返回结果
{
"code": "0",
"data": [
{
"subAcct": "brokerTest5",
"ts": "1637141950450"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
subAcct | String | 子账户名称 |
ts | String | IP上报时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取用户的 Broker 返佣信息
ND broker 查询 ND 子账号是否满足有返佣条件。
限速:5次/2s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/nd/if-rebate
请求示例
GET /api/v5/broker/nd/if-rebate?subAcct=ndsubaccount1
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
apiKey | String | 可选 | ND 子账户的 API key 如果填了多个,优先级依次为 apiKey, uid, subAcct 如果同时传了 uid 和 subAcct,以 uid 为准 |
uid | String | 可选 | 子账户 UID |
subAcct | String | 可选 | 子账户名称 |
返回结果
{
"code": "0",
"data": [
{
"lastRebate": "",
"type": "0"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
type | String | 账户无法获取Broker基础费率返佣的原因0 :可以返佣2 :没有返佣,子账号手续费等级为>=VIP4且月返佣金额达到上限3 :没有返佣,VIP 费率模式 |
lastRebate | String | VIP>=4时子账号当月净手续费返佣金额 VIP<4 时,为 "" |
获取合约体验金
获取合约体验金列表,返回按照 creditId 倒序返回,仅适用于 ND 子账户
限速:5次/2s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/nd/credits
请求示例
GET /api/v5/broker/nd/credits
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
state | String | 否 | 合约体验金状态unactivated : 未激活activated : 已激活expired : 已过期invalid : 已失效默认返回所有状态的合约体验金 |
limit | String | 否 | 返回结果的数量,最大为200,默认10条 |
返回结果
{
"code": "0",
"data": [
{
"activateExpTime": "1716025615000",
"amt": "10",
"ccy": "USDT",
"creditId": "117",
"invalidTime": "",
"state": "activated",
"useExpTime": "1716103612000",
"validPeriod": "2592000000"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
amt | String | 合约体验金数量 |
ccy | String | 合约体验金币种 |
state | String | 合约体验金状态 |
activateExpTime | String | 激活的过期时间,Unix时间戳的毫秒数格式。 如果没在这个时间之前激活,就会过期 |
useExpTime | String | 使用的过期时间,Unix时间戳的毫秒数格式。 激活过才有值,否则为 "" 如果没在这个时间之前使用完,剩余的部分就会过期 |
invalidTime | String | 已失效的时间,Unix时间戳的毫秒数格式。 仅适用 已失效 状态,否则为 "" |
validPeriod | String | 权益有效期,毫秒数 |
creditId | String | 合约体验金 ID |
激活合约体验金
激活合约体验金,仅适用于 ND 子账户
限速:5次/2s
限速规则:UserID
权限:交易
HTTP请求
POST /api/v5/broker/nd/activate-credit
请求示例
POST /api/v5/broker/nd/activate-credit
body
{
"creditId":"1112"
}
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
creditId | String | 是 | 合约体验金 ID |
返回结果
{
"code": "0",
"data": [
{
"result": true
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
result | String | 激活结果 true:激活成功 |
全披露经纪商(API和OAuth)
简介
全披露经纪商,按照鉴权和运作方式的不同,可以分为两种经纪商模式,即 API经纪商、OAuth经纪商。如果您是聚合交易平台、交易机器人、量化机构、资管平台等,需要 OKX 提供账户及流动性,赋能于交易用户,OKX FD Broker 是你最好的选择。
API经纪商:
- 集成欧易API,实现经纪商平台与用户的高效对接,享受独特的经纪商功能。
- 用户在欧易申请APIKey并提供给经纪商,通过Brokercode+用户API Key下单。
OAuth经纪商:
- OAuth一键授权登陆,更安全、更便捷的的经纪商&用户对接方式
- 经纪商提供用户跳转到欧易Oauth授权功能,通过Broker code+用户鉴权码下单。
- 更多详情可参考经纪商主页。
FD Broker 的优势如下
- 丰厚的佣金奖励机制
- 高达 50% 的佣金奖励
- 新老用户均可返佣
- 支持与节点返佣叠加,享受更高佣金比例
- 支持高 VIP 返佣策略
- 灵活的佣金管理机制
- 更安全的用户接入方案
- FAST API,更便捷的API接入方式
- 第三方 IP 白名单,安全可靠的平台绑定方案
OAuth 经纪商
简介
OKX OAuth一键授权登陆,提供更安全、更便捷的的经纪商&用户对接方式。
通过欧易OAuth 2.0用户仅需要在第三方应用内一键授权,即可进行交易。无需用户提供账户API Key或者登录密码。
欧易OAuth 2.0支持WEB和APP应用,基于OAuth 2.0协议(RFC 6749)和 OAuth 2.1草案协议中的一些新特征开发。
相关技术文档可联系商务获取。
接入前的准备
- 官网注册账户申请经纪商
您需要先申请成为OAuth经纪商,审核通过后您可以获取到client_id
,client_secret
信息。专属客户经理会提供给您相应的开发文档。
接入步骤:
- 经纪商申请OKX的账户
- 经纪商进入OKX经纪商官网申请OAuth经纪商,填写申请表,红色星为必填
- OKX收到申请表后2天内会进行审核
- 申请表在OKX的后台审核通过后,经纪商会收到邮件通知,邮件内容包括
client_id
和client_secret
- OAuth返佣设置
当前接入的OAuth经纪商的返佣需要设置标签,下单时需要将BrokerCode标识填写到tag字段里,作为返佣订单统计的标识。
授权模式介绍
欧易OAuth 2.0提供的授权模式:授权码模式、PKCE模式。
授权模式 | 描述 | 使用场景 |
---|---|---|
授权码模式 | 用户授权,第三方应用提供client_secret 获取授权码。通过授权码获取访问令牌 和刷新令牌 。 |
应用有服务器,可存储应用密钥,与欧易OAuth服务器进行密钥交互。 |
PKCE模式 | 用户授权,第三方应用提供临时密钥code_verifier 获取授权码。通过授权码获取访问令牌 和刷新令牌 |
应用无服务器(或不愿意后端服务器介入授权过程),无法存储应用密钥,通过随机字符串与欧易OAuth服务器进行交互。 |
授权码模式
同时支持App与Web应用的接入,呈现授权页面给用户,第三方应用在获取用户的授权码后,可以凭借此授权码换取访问令牌,调用OKX OpenAPI,访问用户授权的数据资源。
PKCE模式
若第三方应用无服务端或者不希望服务端参与授权过程,无法存储第三方应用密钥(client_secret),则推荐此模式,通过应用客户端接入获取令牌,有效提升开发者应用的安全防护。
令牌的使用
令牌的区别
第三方应用通过授权码调用换取令牌接口后,会得到两种令牌。
- 访问令牌(access token): 用于第三方应用调用OKX OpenAPI接口。
- 刷新令牌(refresh token): 当访问令牌失效后,用户获取新的访问令牌。
如何使用
请求示例
curl -H "Content-Type:application/json" \
-H "Authorization:Bearer eyJhbGciOiJIUzUxMiIsImNpZCI6ImFhIn0.eyJqdGkiOiJleDExMDE2Mzg4NDM3ODg1MzIxMzMzNUVGMkVGRTNGOUM2Y1BJWiIsInVpZCI6IlEybEZxMnY2N0VybnVMZ0o1cFYzdUE9PSIsIm1pZCI6InFGbG5lVEc4dnlJeDNMSnNSa29qZ0E9PSIsImlhdCI6MTYzODg0Mzc4OCwiZXhwIjoxNjM4ODQ3Mzg4LCJzdWIiOiIxMC4yNTQuMjcuMTIwIiwiYW95IjoiOSIsInZlciI6IjEiLCJkZXYiOiIzMmNmOWM2My02NzM3LTRhYjUtYjFhYi04ODU4YWU2NTkxODUiLCJndHkiOiJhdXRob3JpemUifQ.bWXsgN7hTszxmdFB9xhr0Qh67HQWIp2zoxoqMCUzw2y1MBFPm38nNJJY9coljkivgAQPso81YUnHoLsFOLjxGg" \
-H "TERMID:32cf9c63-6737-4ab5-b1ab-8858ae659185" \
https://www.okx.com/api/v5/asset/currencies
第三方应用完成授权并获取到令牌后,就可以通过访问令牌调用OKX OpenAPI接口了。 请求时需要在请求头中携带如下信息:
请求头字段 | 是否必须 | 描述 |
---|---|---|
Authorization | 是 | 将访问令牌 以Bearer的方式填写到此字段 |
TERMID | 可选 | 用于校验请求合法性的设备号信息 如果请求是由第三方应用客户端应用发起的(如选择了PKCE模式),则客户端应将客户端设备号在请求时带上 如果请求是由第三方应用服务端发起的(如选择了授权码模式),则无需填写此字段 |
令牌的有效期
- 访问令牌(access token):有效期为1个小时。
- 刷新令牌(refresh token):有效期为3天。
超过了访问令牌的有效期,接口会调用失败,如果刷新令牌还在有效期内,第三方应用需要调用刷新令牌接口,获取新的一对访问令牌和刷新令牌。新的访问令牌可以继续使用。需要注意的是,一旦刷新了令牌,无论原来的令牌有没有过期,都不再有效。
当您撤销令牌后,原令牌将不再有效。
权限
权限 | 描述 |
---|---|
read_only | 拥有读取功能的权限(不包含子账户模块) |
trade | 拥有交易功能的权限(不包含子账户模块) |
Fast API
简介
Fast API是帮助OKX用户快速授权第三方应用,创建APIKey并绑定第三方应用的功能。
Fast API工作流程
API Broker的界面上Broker用户登录之后,可以通过Oauth授权跳转到登录OKX页面,在OKX页面登录授权以后,OKX会授权该API Broker 拥有为其用户创建拥有读取
和交易
权限的API Key。
申请流程
- 在OKX申请API和OAuth经纪商
- 建议申请第三方APP IP白名单
- 建议申请第三方APP IP白名单
- 在OauthBroker应用程序中,提供
- 第三方服务器IP白名单
- 重定向URL
- Logo
- Fast API权限
- 跨域域名
- 申请成功后,您会收到一封电子邮件,包含client_id和client_secret。请务必妥善保存此信息,不要对他人展示。
经纪商返佣API
- 可以通过节点接口判断用户是否是自己的节点邀请用户
- 可以通过获取用户的 Broker 返佣信息接口判断用户是否可以给 Broker 返佣
- 返佣数据下载
- 先通过生成返佣明细下载链接(FD)接口生成数据
- 再通过获取返佣明细下载链接(FD)接口下载数据
获取返佣明细下载链接(FD)
获取已经申请成功的返佣明细下载链接,每次请求时获取新的链接,且2小时内有效。
限速:2次/1min
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/fd/rebate-per-orders
请求示例
GET /api/v5/broker/fd/rebate-per-orders?type=false&begin=20221207&end=20230207
import okx.FDBroker as FDbroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "0" # 实盘:0 , 模拟盘:1
fdBrokerAPI = FDbroker.FDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 获取返佣明细下载链接
result = fdBrokerAPI.get_rebate_details_download_link(
type="true"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
type | String | 是 | 筛选条件类型true :获取当前用户所有已生成的历史记录false :查询指定的历史记录 |
begin | String | 可选 | 查询链接生成的起始日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/23 00:00:00 (包含)后的记录如果type为 false ,该字段必填 |
end | String | 可选 | 查询链接生成的结束日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/24 00:00:00 (不包含)前的记录如果type为 false ,该字段必填 |
brokerType | String | 可选 | 经纪商类型api :API经纪商oauth :Oauth经纪商当经纪商只有一种类型时,该参数可以不填 当经纪商有多种类型时,该参数必填 |
返回结果
{
"code": "0",
"data": [
{
"beginTime": "1671638400000",
"cTime": "1671675432000",
"endTime": "1671638400000",
"fileHref": "http://okg-pri-hk.oss-cn-hongkong.aliyuncs.com/okex/broker/pap/brokerRebateInfo/dc9df1365dac6695737e7f17cae14198/21754f4be28dBCDE/2022-12-22/RebateDetails/RebateDetails1222-1222.csv?Expires=1697617451&OSSAccessKeyId=LTAI5tKNPwWs7AttSPZn4iaa&Signature=EdnQthE3PgXHFVtGlQ7gGILi%2Fbw%3D",
"state": "finished",
"ts": "1671676696000"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
fileHref | String | 文件链接 |
beginTime | String | 返佣明细的开始时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
endTime | String | 返佣明细的结束时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
cTime | String | 生成下载链接的首次请求时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
ts | String | 下载链接生成时间,Unix时间戳的毫秒数格式 ,如 1597026383085 |
state | String | 下载链接状态finished :已生成ongoing :生成中 |
解压后CSV里的字段说明
参数名 | 描述 |
---|---|
brokerCode | 申请到的BrokerCode标识 |
level | 用户等级,如Lv1, Lv2, VIP1, VIP2 |
instId | 产品ID |
ordId | 订单ID |
spotTradeAmt | 现货交易量,单位为USDT |
derivativeTradeAmt | 衍生品交易量,单位为USDT |
fee | 手续费,单位为USDT |
netFee | 净手续费 (去除返佣卡、对手方等数据后进行返佣结算的手续费基数),单位为USDT |
settlementFee | 结算手续费 (去除节点返佣、返佣卡等,Broker进行结算前的手续费基数),单位为USDT |
brokerRebate | 经纪商返佣量,单位为USDT |
suBrokerRebate | 经纪商助力人返佣量,单位为USDT |
userRebate | 用户返佣量,单位为USDT |
affiliated | 是否有节点返佣true :节点返佣false :无节点返佣 |
ts | 该笔订单当天最后一次成交时间 Unix 时间戳为毫秒数格式,如 1597026383085 |
生成返佣明细下载链接(FD)
支持FD Broker的所有历史返佣明细。
限速:1次/1h
限速规则:UserID
权限:读取
HTTP请求
POST /api/v5/broker/fd/rebate-per-orders
请求示例
POST /api/v5/broker/fd/rebate-per-orders
body
{
"begin":"20210623",
"end":"20210626"
}
import okx.FDBroker as FDbroker
# API 初始化
apikey = "YOUR_API_KEY"
secretkey = "YOUR_SECRET_KEY"
passphrase = "YOUR_PASSPHRASE"
flag = "0" # 实盘:0 , 模拟盘:1
fdBrokerAPI = FDbroker.FDBrokerAPI(apikey, secretkey, passphrase, False, flag)
# 生成返佣明细下载链接
result = fdBrokerAPI.generate_rebate_details_download_link(
begin="20210623",
end="20210626"
)
print(result)
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
begin | String | 是 | 起始日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/23 00:00:00 (包含)后的记录 |
end | String | 是 | 结束日期 格式: YYYYMMdd ,如 20210623 ,查询在 2021/06/24 00:00:00 (不包含)前的记录 |
brokerType | String | 可选 | 经纪商类型api :API经纪商oauth :Oauth经纪商当经纪商只有一种类型时,该参数可以不填 当经纪商有多种类型时,该参数必填 |
返回结果
{
"code": "0",
"data":[
{
"result": "true",
"ts": "1646892328000"
}
],
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
result | String | 是否已经存在该区间的下载链接true :已存在,可以通过"获取返佣明细下载链接"接口获取false :不存在,正在生成,请2个小时后查看下载链接 |
ts | String | 服务端首次收到请求的时间,Unix时间戳的毫秒数格式,如 1597026383085 |
获取用户的 Broker 返佣信息
FD broker 查询用户是否有返佣条件,满足Broker返佣条件、下单时指定了 brokerCode、且用户的交易产生手续费时,Broker 会获得返佣。
限速:5次/2s
限速规则:UserID
权限:读取
HTTP请求
GET /api/v5/broker/fd/if-rebate
请求示例
GET /api/v5/broker/fd/if-rebate?apiKey=63d54aa0-0020-4ad9-a9f0-ac92654bc831
请求参数
参数名 | 类型 | 是否必须 | 描述 |
---|---|---|---|
apiKey | String | 是 | 用户的 API key |
brokerType | String | 可选 | 经纪商类型api :API经纪商oauth :Oauth经纪商当经纪商只有一种类型时,该参数可以不填 当经纪商有多种类型时,该参数必填 |
返回结果
{
"code": "0",
"data":[
{
"affiliated": false,
"brokerCode": "6099c63a8d75SCDE",
"type": "0",
"clientRebateRatio":"0",
"lastRebate":""
}
] ,
"msg": ""
}
返回参数
参数名 | 类型 | 描述 |
---|---|---|
type | String | 账户无法Broker返佣的原因0 :可以返佣1 :Broker身份过期2 :手续费等级为VIP4/5 且月返佣金额达到上限3 :手续费等级大于等于VIP6 |
brokerCode | String | FD broker 申请到的 BrokerCode 标识 |
affiliated | String | 绑定关系的情况,有无节点返佣true :有节点返佣false :无节点返佣 |
clientRebateRatio | String | 交易用户可获取返佣比例 |
lastRebate | String | 账号月返佣金额,仅适用于 VIP4 和 VIP5 的用户 |
错误码
错误提示 | HTTP 状态码 | 错误码 |
---|---|---|
53000 | 400 | 无效的token |
53001 | 400 | 无效的授权,用户已取消授权 |
53002 | 400 | token已过期 |
53003 | 400 | token已撤销 |
53004 | 400 | 用户已被冻结 |
53005 | 400 | 刷新令牌不正确 |
53006 | 401 | 无效的设备 |
53009 | 400 | 授权失败 |
53010 | 400 | 参数{0}错误 |
53011 | 400 | 必填参数{0}不能为空 |
53012 | 400 | 授权码已过期 |
53013 | 400 | 接口权限不足 |
53014 | 401 | 无效的IP |
53015 | 400 | 参数{参数名}长度超过最大限制{长度} |
53016 | 400 | 无效的redirect_uri |
53017 | 400 | 快捷 API 权限尚未开启 |