OKCoin API 开发指南:行情接口、下单交易与账户管理入门

·

关键词:OKCoin API、数字货币行情、RESTful 接口、比特币交易、量化投资、API 调用示例、合约接口

OKCoin 的 REST API 提供了稳定且高频限放宽的数字资产数据通道,无论你是做量化回测、价格监控,还是自己搭建资产看板,都能通过简洁的 HTTP 请求完成。以下内容覆盖行情、交易、借贷及资金流水全部常用端点,并给出可直接落地的调用示例。


行情类接口(无需登录)

1. 实时行情 Ticker

请求方式:HTTP GET
URL:https://okxdog.com/api/v1/ticker.do

👉 查看完整行情字段对照,快速定位你需要的数值!

2. 市场深度 Depth

请求方式:HTTP GET
URL:https://okxdog.com/api/v1/depth.do

3. 实时成交 Trades

请求方式:HTTP GET
URL:https://okxdog.com/api/v1/trades.do

4. K 线数据 Kline

请求方式:HTTP GET
URL:https://okxdog.com/api/v1/kline.do


用户私有接口(需要 API Key & 签名)

统一鉴权方式

所有私有接口使用 POST,要求以下公共参数:

调用频率:不同接口有限制,典型如 userinfo 6 次/2 秒,trade 系 20 次/2 秒。

1. 账户信息 userinfo

URL:https://okxdog.com/api/v1/userinfo.do

核心字段:

👉 点此获取账户资产实时快照,保持资金利用率与安全垫!

2. 下单交易 trade

URL:https://okxdog.com/api/v1/trade.do

3. 批量下单 batch_trade

一次可上传多条订单减小延迟,最多 5 笔:orders_data=[{price:..., amount:..., type:'buy'}, ...]
返回按顺序给出各单结果,成功单返回 order_id,失败单返回 error_code

4. 撤单 cancel_order

5. 订单查询 order_info / orders_info / order_history


资金与借贷系统

提币 & 记录

杠杆借贷


高频开发示例(Python)

import time, requests, hashlib

API = 'YOUR_KEY'
SECRET = 'YOUR_SECRET'
BASE = 'https://okxdog.com/api/v1/{}'

def sign(params):
    query = '&'.join([f"{k}={v}" for k, v in sorted(params.items())]) + f"&secret_key={SECRET}"
    return hashlib.md5(query.encode()).hexdigest()

def ticker(symbol='btc_cny'):
    return requests.get(BASE.format('ticker.do'), params={'symbol': symbol}).json()

def place_order(symbol, type_, price, amount):
    params = {'api_key': API, 'symbol': symbol, 'type': type_, 'price': price, 'amount': amount}
    params['sign'] = sign(params)
    return requests.post(BASE.format('trade.do'), data=params).json()

if __name__ == '__main__':
    print(ticker()['ticker']['last'])

常见问题 FAQ

  1. Q:返回 10011 错误码怎么办?
    A:10011 表示余额不足。调用 userinfo 确认账户冻结或负债,调整下单金额即可。
  2. Q:如何优雅地避免 429 被限频?
    A:实测各接口限制宽松,若出现 429 可在循环末尾使用 time.sleep(0.1) 降速;也可用漏桶算法本地限速。
  3. Q:提币手续费最低能设多少?
    A:BTC 建议 ≥0.002,网络拥堵时手续费低会被长时间卡住;节点确认快则更划算。
  4. Q:批量下单失败但返回 true,如何定位失败单?
    A:检查 order_info 数组中的 -1 error_code,再匹配 orders_data 的索引即可。
  5. Q:Kline 的 2000 条数据完整吗?
    A:默认返回 2000 条,若使用 since 时间戳则会截断,因而建议先全量后增量更新。

下一步行动

将上述接口组合即可覆盖 90% 的量化场景:

即刻开始编写属于你的高频脚本,市场下一波动或许就来自于你的算法判断——立即访问 👉 官方示例、费率及深度数据一次看全