欧易API接口使用指南 | 自动化交易与账户管理

发布于 2025-01-10 20:43:21 · 阅读量: 101171

欧易API接口使用说明

欧易(OKX)是一个全球领先的加密货币交易平台,提供了丰富的API接口,帮助用户实现自动化交易、数据查询和账户管理。本文将详细介绍如何使用欧易API接口,帮助你快速上手,充分利用API进行各种操作。

获取API密钥

首先,使用API前需要生成API密钥。API密钥由API KeySecret KeyPassphrase 组成。以下是获取API密钥的步骤:

  1. 登录到欧易交易所账户。
  2. 点击右上角的账户头像,选择API管理
  3. 点击创建API,填写API名称和描述(可选)。
  4. 根据需要设置API权限,如“交易权限”、“资金权限”、“信息权限”等。
  5. 设置IP白名单(可选,但强烈推荐)以增强安全性。
  6. 点击确认,你将看到API Key、Secret Key 和 Passphrase,记得妥善保存这些信息。

注意:API密钥非常重要,请确保它们的安全,切勿将API密钥暴露在代码中。

基础接口请求格式

欧易API采用RESTful API风格,所有的请求都通过HTTP协议发送。常见的请求方式包括GET(获取数据)和POST(发送数据)。以下是API请求的一般格式:

https://www.okx.com/api/v5/{api_version}/{endpoint}

  • api_version 是API版本号,例如 v5
  • endpoint 是具体的API接口路径,如 accountsorders 等。

请求的响应通常是JSON格式,包含返回的状态码和数据内容。

主要接口介绍

1. 获取账户信息

获取账户信息的API接口是查询当前账户的余额和资产状况。请求格式如下:

GET https://www.okx.com/api/v5/account/balance

请求示例

bash curl -X GET "https://www.okx.com/api/v5/account/balance" \ -H "OK-API-KEY: your_api_key" \ -H "OK-API-SIGN: your_signature" \ -H "OK-API-TIMESTAMP: your_timestamp" \ -H "OK-API-PASSPHRASE: your_passphrase"

响应示例

json { "code": "0", "data": [ { "currency": "BTC", "balance": "0.5", "available": "0.5", "hold": "0" }, { "currency": "ETH", "balance": "1.2", "available": "1.0", "hold": "0.2" } ] }

2. 下单接口

下单是交易的核心操作。通过API下单,用户可以快速完成买入或卖出操作。请求格式如下:

POST https://www.okx.com/api/v5/trade/order

请求示例

bash curl -X POST "https://www.okx.com/api/v5/trade/order" \ -H "OK-API-KEY: your_api_key" \ -H "OK-API-SIGN: your_signature" \ -H "OK-API-TIMESTAMP: your_timestamp" \ -H "OK-API-PASSPHRASE: your_passphrase" \ -d '{ "instId": "BTC-USDT", "tdMode": "cash", "side": "buy", "ordType": "market", "sz": "0.1" }'

请求参数说明

  • instId:交易对,例如 BTC-USDT
  • tdMode:交易模式,cash 为现货交易,margin 为保证金交易。
  • side:买卖方向,buy 为买入,sell 为卖出。
  • ordType:订单类型,market 为市价单,limit 为限价单。
  • sz:订单数量,单位取决于交易对。

3. 获取历史订单

如果你想查询历史订单记录,可以使用该接口:

GET https://www.okx.com/api/v5/trade/orders-history

请求示例

bash curl -X GET "https://www.okx.com/api/v5/trade/orders-history?instId=BTC-USDT" \ -H "OK-API-KEY: your_api_key" \ -H "OK-API-SIGN: your_signature" \ -H "OK-API-TIMESTAMP: your_timestamp" \ -H "OK-API-PASSPHRASE: your_passphrase"

响应示例

json { "code": "0", "data": [ { "ordId": "123456789", "instId": "BTC-USDT", "side": "buy", "ordType": "limit", "price": "30000", "sz": "0.1", "state": "filled" } ] }

4. 获取市场行情

为了获取市场实时行情,使用该接口:

GET https://www.okx.com/api/v5/market/tickers

请求示例

bash curl -X GET "https://www.okx.com/api/v5/market/tickers" \ -H "OK-API-KEY: your_api_key" \ -H "OK-API-SIGN: your_signature" \ -H "OK-API-TIMESTAMP: your_timestamp" \ -H "OK-API-PASSPHRASE: your_passphrase"

响应示例

json { "code": "0", "data": [ { "instId": "BTC-USDT", "last": "32000", "high24h": "35000", "low24h": "31000", "vol24h": "1000" } ] }

签名与时间戳

为了保证API请求的安全性,所有请求都需要通过签名进行验证。签名是用API Key的Secret Key按照一定的规则生成的。具体的签名方法如下:

1. 时间戳(Timestamp)

时间戳必须为UTC时间,精确到毫秒。例如:

plaintext 2025-01-10T12:00:00.000Z

2. 签名生成

签名生成的流程比较复杂,主要是将请求的内容与时间戳等信息进行加密。以下是一个示例的签名生成步骤:

plaintext sign = hmac-sha256(timestamp + method + request_path + body, Secret Key)

其中: - timestamp 是当前时间戳。 - method 是请求方法(GET、POST等)。 - request_path 是API的路径部分。 - body 是请求的内容(如果是GET请求,可以为空)。

然后,生成的签名需要添加到请求头中,格式如下:

OK-API-SIGN: your_signature

常见错误代码

  1. Invalid API key - API密钥无效,检查API密钥是否正确。
  2. Insufficient funds - 余额不足,确保账户中有足够的资金进行交易。
  3. Order size too small - 订单数量太小,符合最低交易量要求。
  4. Request timeout - 请求超时,重试请求。

通过正确的接口调用与请求参数,你可以在欧易API的帮助下,实现高效的自动化交易、账户管理和数据获取。确保在使用过程中,妥善管理API密钥,并定期更新API的权限和安全设置,以保护自己的账户安全。

其他文章

Gate.io Logo 加入 Gate.io,注册赢取最高$6666迎新任务奖励!