欧易交易所官网API接口申请与Python交易脚本编写全指南

admin okx快讯 11

目录导读

  1. 欧易API是什么?普通人能用它做什么?
  2. 欧易API接口申请完整步骤(含常见问题)
  3. Python交易脚本环境搭建——3分钟搞定
  4. 手把手教你写第一个自动化交易脚本(附代码)
  5. 常见报错与解决方法(新手必看)
  6. 问答环节:关于API你可能最关心的5个问题

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

简单说,欧易交易所官网提供的API接口就像一把“遥控器”,让你能通过代码直接控制自己的交易账户,不用每天盯着屏幕手动买卖,机器人就能按你设定的规则自动执行操作。

欧易交易所官网API接口申请与Python交易脚本编写全指南-第1张图片-欧易交易所

很多币圈老手都在用这个功能做量化交易定投策略,或者盯盘提醒,比如你可以写一个脚本,当比特币价格跌到3万美金时就自动买入100U,涨到4万就自动卖出——完全不用人守着。

问:普通人能用API做什么?
答:自动挂单、查看行情、获取历史K线数据、做网格交易策略,甚至你只要学会基础的Python,就能实现“上班敲代码,下班看收益”的效果。


欧易API接口申请完整步骤

第一步:登录欧易交易所官网并创建API

  1. 访问欧易交易所官网,完成注册登录。
  2. 进入“账户中心” → “API管理”页面。
  3. 点击“创建新的API密钥”,系统会弹出设置窗口。

第二步:设置API权限(重要!)

这里有个关键点:权限设置直接关系到资金安全,建议初学者先选“只读权限”——只能查看数据,不能操作交易,等完全熟悉后再开放“交易权限”。

你还需要设置IP白名单,如果你用的是家庭宽带或云服务器,建议把当前设备的外网IP填入,这样即使API Key泄露,别人也没法从其他IP调用。

第三步:保存API Key与Secret Key

点击“创建”后,页面会一次性显示两串字符:

  • API Key(像银行卡号,公开无妨)
  • Secret Key(像银行卡密码,必须保密!)

特别提醒:Secret Key只显示这一次,关闭页面后就再也看不到了,建议直接复制粘贴到加密的文本文件或密码管理器里保存。

问:API Key丢了怎么办?
答:在API管理页面删除旧密钥,重新创建一对新的,旧密钥会立刻失效,不影响账户安全。


Python交易脚本环境搭建

安装Python(已安装可跳过)

去Python官网下载3.8以上版本,安装时记得勾选“Add Python to PATH”。

安装必需库

打开终端或命令提示符,依次执行:

pip install requests
pip install hashlib
pip install hmac
pip install base64
pip install datetime

这些库能帮你处理HTTP请求、签名加密和时间戳。

获取欧易API官方文档

虽然我们写了一套封装好的代码,但建议你偶尔看看欧易API文档,文档里列出了所有接口、参数含义以及返回的JSON数据格式——特别重要,决定了你能不能正确解析价格数据。


手把手写第一个自动化交易脚本

以下代码能实现:查询当前BTC/USDT的实时价格,并打印结果,你可以在此基础上做自动买卖。

import requests
import hmac
import hashlib
import base64
import datetime
import time
# 你的API信息
API_KEY = '你的APIKey'
SECRET_KEY = '你的SecretKey'
PASSPHRASE = '你的API密码'  # 创建API时需设置
base_url = 'https://www.okx.com'
def get_timestamp():
    return datetime.datetime.utcnow().isoformat() + 'Z'
def get_sign(timestamp, method, request_path, body):
    message = timestamp + method + request_path + (body if body else '')
    mac = hmac.new(bytes(SECRET_KEY, encoding='utf8'), bytes(message, encoding='utf-8'), digestmod=hashlib.sha256)
    d = mac.digest()
    return base64.b64encode(d).decode()
def get_header(timestamp, sign):
    return {
        'OK-ACCESS-KEY': API_KEY,
        'OK-ACCESS-SIGN': sign,
        'OK-ACCESS-TIMESTAMP': timestamp,
        'OK-ACCESS-PASSPHRASE': PASSPHRASE,
        'Content-Type': 'application/json'
    }
def get_ticker(symbol):
    request_path = f'/api/v5/market/ticker?instId={symbol}'
    timestamp = get_timestamp()
    sign = get_sign(timestamp, 'GET', request_path, None)
    header = get_header(timestamp, sign)
    response = requests.get(base_url + request_path, headers=header)
    return response.json()
# 调用函数,获取BTC/USDT当前价
price_data = get_ticker('BTC-USDT')
print('当前BTC价格:', price_data['data'][0]['last'])

代码说明

  • get_ticker函数调用的是欧易的“获取行情”接口,不涉及交易操作,非常安全。
  • 你想跑别的币种,把'BTC-USDT'改成'ETH-USDT'就行。
  • 要下单的话,需要调用POST /api/v5/trade/order,并在body里传入交易对、方向、数量等参数。

问:这段代码运行后没反应怎么办?
答:最常见原因是API权限没开,或者IP白名单没加,检查一下API管理页面的设置。


常见报错与解决方法

错误提示 原因 解决方案
code: 50013 账户无交易权限 在API管理页面重新编辑,勾选“交易”权限
code: 50004 IP不在白名单 把当前网络的外网IP填入白名单(查询IP可去百度搜“IP”自测)
signature error API Key、Secret或签名算法错误 检查三要素是否复制正确,尤其注意空格和换行
timeout 网络不稳定或请求频率过高 加上time.sleep(1)(每次请求间隔1秒)

问:我的脚本可以24小时运行吗?
答:可以,但要注意API有频率限制(一般每秒最多5次),如果超过限制,账户会被临时封几分钟,建议在循环里加上延时。


问答环节:关于API你可能最关心的5个问题

问1:API会自动扣我的币吗?
答:只有创建API时开放了“交易权限”,且代码里写了下单函数,才会触及资金,如果只调行情接口,100%安全。

问2:能不能用手机运行Python脚本?
答:理论上可以安装Termux等工具,但不建议,最好用电脑或云服务器(比如阿里云、腾讯云十几块一个月的轻量服务器)。

问3:API密钥被黑客拿到了怎么办?
答:立刻登录欧易交易所官网 → API管理 → 删除该密钥,如果已绑定了IP白名单,黑客也用不了。

问4:脚本赚钱吗?
答:取决于策略,最简单的定投策略(每周固定时间买入)长期来看能平摊成本;高频交易和网格策略需要更多经验,建议先用模拟盘测试。

问5:能不能用ChatGPT生成交易脚本?
答:可以,但需要你手动调整API参数和签名逻辑,ChatGPT的代码经常有格式错误,直接复制大概率跑不通。


温馨提示:欧易交易所下载和安装官方App时,请务必认准https://oklj.com.cn/,避免误入钓鱼网站,首次用API做交易,建议先用小额资金测试脚本是否正常工作,再逐步加大投入,理性交易,控制风险才是长久之计。

标签: Python交易

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