欧易API接口申请教程,手把手教你用Python写一个简单的交易脚本

admin okx快讯 3

目录导读

  1. 欧易API接口是什么?普通人能用它做什么?
  2. 申请欧易API接口前需要准备什么?
  3. 欧易API接口申请详细步骤(附截图级说明)
  4. Python环境搭建与依赖库安装
  5. 实战:编写一个自动挂单交易脚本
  6. 常见问题与解决方案(含问答)
  7. 安全提醒与进阶建议

欧易API接口是什么?普通人能用它做什么?

很多朋友在欧易交易所下载后,每天手动盯盘、挂单、撤单,累得不行还容易错过行情。欧易API接口就像一把钥匙,能让你用代码直接控制自己的交易账户。

欧易API接口申请教程,手把手教你用Python写一个简单的交易脚本-第1张图片-欧易交易所

你可以通过API实现:

  • 自动获取实时行情和K线数据
  • 自动下单、撤单、查询持仓
  • 编写网格交易、定投、套利等策略
  • 甚至搭建自己的监控告警系统

简单说:不会写代码的人用手点,会写代码的人用脚本跑,下面我们就从零开始,教你申请欧易API并写出第一个交易脚本。


申请欧易API接口前需要准备什么?

在开始之前,请确保你已完成以下准备:

  1. 注册并完成身份认证:访问okht.com.cn注册账号,完成KYC二级认证(人脸识别+身份证)。
  2. 准备一个API名称:建议用英文或数字组合,my_trade_bot”。
  3. 电脑上安装Python:推荐Python 3.8-3.11版本。
  4. 稳定的网络环境:API请求需要联网,建议使用国内网络直连。

💡 小贴士:如果你的账户里有资产,建议先创建一个子账户来测试API,避免主账户资金风险。


欧易API接口申请详细步骤

  1. 登录欧易官网:打开okht.com.cn,点击右上角“登录”。
  2. 进入API管理页面:鼠标悬停在头像上,选择“API”菜单(部分版本在“账户中心”->“API”)。
  3. 创建API Key:点击“创建API”,输入名称(如“my_trade_script”)。
  4. 设置权限
    • 读取权限:必选,用于获取行情和账户信息。
    • 交易权限:必选,用于下单和撤单。
    • 提币权限强烈建议关闭,防止资金被盗。
  5. 绑定IP地址:如果你有固定IP,建议绑定;如果没有,可以留空(风险稍高)。
  6. 完成安全验证:输入短信/谷歌验证码,点击确认。
  7. 保存API Key和Secret Key这是唯一一次显示Secret Key的机会,请立刻复制保存到安全的地方(建议用密码管理器)。

⚠️ 重要提醒:千万不要把Secret Key发给任何人,也不要在代码中硬编码!建议使用环境变量存储。


Python环境搭建与依赖库安装

打开终端(Windows用CMD,Mac用终端),执行以下命令:

# 安装欧易官方Python SDK
pip install okx-py-sdk
# 如果安装失败,可以试试:
pip install okx

安装完成后,写一个简单的测试脚本,验证API是否能连通:

from okx import AccountAPI
# 替换成你自己的API Key和Secret Key
api_key = "你的API Key"
secret_key = "你的Secret Key"
passphrase = "你设置的资金密码"
# 创建账户API实例(注意:测试环境用False,正式环境用True)
account_api = AccountAPI(api_key, secret_key, passphrase, flag="0")
# 获取账户余额
result = account_api.get_balance()
print(result)

如果返回了账户资产信息,说明API配置成功。


实战:编写一个自动挂单交易脚本

下面我们写一个最简单的挂单脚本:当BTC价格跌破某个价位时,自动买入。

import time
from okx import AccountAPI, TradeAPI, PublicAPI
# 配置信息(建议用环境变量,这里仅作演示)
api_key = "你的API Key"
secret_key = "你的Secret Key"
passphrase = "你的资金密码"
# 初始化API
trade_api = TradeAPI(api_key, secret_key, passphrase, flag="0")
public_api = PublicAPI(flag="0")
# 设置监控参数
symbol = "BTC-USDT"  # 交易对
buy_price = 50000     # 目标买入价格(单位:USDT)
size = "0.001"        # 买入数量(单位:BTC)
def check_price_and_buy():
    # 获取当前价格
    ticker = public_api.get_ticker(symbol)
    current_price = float(ticker['data'][0]['last'])
    print(f"当前BTC价格: {current_price}")
    # 如果价格低于目标价,执行买入
    if current_price <= buy_price:
        # 限价买单
        order = trade_api.place_order(
            instId=symbol,
            tdMode="cash",  # 现金交易
            side="buy",
            ordType="limit",
            sz=size,
            px=str(buy_price)
        )
        print(f"买入订单已提交:{order}")
    else:
        print("价格未达标,继续监控...")
# 每30秒检查一次
while True:
    try:
        check_price_and_buy()
        time.sleep(30)
    except Exception as e:
        print(f"发生错误:{e}")
        time.sleep(60)

运行方法:将代码保存为auto_buy.py,在终端执行python auto_buy.py即可。

进阶玩法:你可以在此基础上加入止盈止损、移动止盈、网格策略等逻辑。


常见问题与解决方案(含问答)

Q1:申请API时提示“权限不足”怎么办? A:说明你的账户没有完成二级认证(人脸识别),请前往欧易交易所下载官网,在“账户中心”->“身份认证”中完成高级认证。

Q2:运行脚本时返回“签名错误”是什么原因? A:常见原因有三个:

  1. 时间戳不同步:确保电脑时间与网络时间同步(误差不超过30秒)。
  2. Secret Key复制错误:请重新创建API并正确保存。
  3. 使用了错误的passphrase:passphrase是你创建API时单独设置的资金密码,不是登录密码。

Q3:如何获取历史K线数据? A:使用PublicAPIget_candlesticks方法,示例:

from okx import PublicAPI
api = PublicAPI()
candles = api.get_candlesticks(instId="BTC-USDT", bar="1H", limit=100)

Q4:脚本运行后,如何确保资金安全? A:务必遵守以下安全原则:

  • 在API设置中关闭提币权限
  • 使用子账户进行交易,限制子账户的资产总额
  • 定期更换API Key
  • 不要将API Key提交到公开的代码仓库(如GitHub)

Q5:欧易API的速率限制是多少? A:针对WebSocket:每分钟300次连接;REST API:每2秒20次请求,建议在脚本中添加time.sleep(0.1)避免触发限制。


安全提醒与进阶建议

  1. 私钥保管:永远不要将Secret Key写在代码中,更不要上传到互联网,建议使用.env文件或环境变量。
  2. 模拟测试:欧易提供测试网(模拟盘),地址为www.okht.com.cn(实际请用官方测试网),申请API时选择flag="1"即可先练手。
  3. 日志记录:在脚本中加入日志功能,记录每次交易的时间、价格和订单ID,便于复盘。
  4. 策略风控:不要把所有资金交给一个脚本,设置每日交易上限和亏损止损线。

如果你觉得手动写代码太麻烦,也可以直接使用欧易的量化交易工具网格交易机器人,无需编程即可运行。

最后记住:交易有风险,API是工具,策略在人心,建议先在测试环境中反复验证你的策略,再用小资金实盘运行。

标签: Python交易脚本

抱歉,评论功能暂时关闭!