目录导读
- 为什么需要欧易API? —— 自动交易的核心钥匙
- 欧易API接口申请全流程 —— 3分钟搞定密钥
- Python环境与库安装 —— 别怕,就三步
- 交易脚本实战:从零开始 —— 写一个“自动看盘小助手”
- 常见问题与避坑指南 —— 老司机踩过的坑,你别再踩
为什么需要欧易API?
很多朋友问我:“手动盯盘累死人,能不能让电脑自动帮我买卖?” 答案就是——欧易API接口,它像一个“遥控器”,让Python代码直接操作你的欧易账户,实现行情获取、下单、撤单等操作。

简单说:你用Python写个脚本,就能24小时自动跑,再也不用手动刷新行情页,而且API完全免费,只要你有欧易交易所账号就能申请,如果你还没下载APP,可以先完成欧易交易所下载,注册后跟着教程走。
欧易API接口申请全流程
第一步:登录后台
打开浏览器,进入 欧易官网,登录你的账号。
→ 鼠标移到右上角头像,点“API管理”
→ 输入资金密码验证(如果没设置,先去安全中心设置)
第二步:创建API密钥
点击“创建API”,选择“交易API”:
- 权限勾选:至少勾选“读取”和“交易”
- IP白名单:建议填写你电脑的公网IP(如果不知道,可以暂时留空,但后续建议绑定)
提交后,页面会显示两样关键信息:
- API Key:像你的账号ID
- Secret Key:像你的密码(千万别截图发出去!)
⚠️ 小提示:密钥只显示一次,记得立即复制保存到本地文本,否则只能删除重建。
第三步:绑定域名验证(可选)
有些用户会遇到“域名不匹配”报错,解决方案是在 欧易 的API设置里,把回调域名改成 https://okeh.com.cn 或你的服务器域名。
Python环境与库安装
打开你的终端(Windows按Win+R输入cmd,Mac打开终端),按顺序执行:
pip install requests pip install hashlib pip install hmac pip install base64
如果报错“pip未安装”,先运行 python -m pip install --upgrade pip。
这些库是Python和欧易API“对话”的翻译官,缺一不可。
交易脚本实战:写一个“自动看盘小助手”
假设你想监控BTC/USDT的实时价格,当价格波动超过1%时,打印提示,直接上代码(复制就能用):
import requests
import time
import hashlib
import hmac
import base64
# 你的密钥(从欧易后台获取)
api_key = "你的API_Key"
secret_key = "你的Secret_Key"
# 请求基础参数
base_url = "https://www.okx.com" # 欧易API端点
endpoint = "/api/v5/market/ticker"
params = {
"instId": "BTC-USDT"
}
# 生成签名(欧易要求的认证方式)
def get_signature(timestamp, method, request_path, body):
message = timestamp + method + request_path + body
mac = hmac.new(secret_key.encode(), message.encode(), hashlib.sha256).digest()
return base64.b64encode(mac).decode()
# 获取行情
def get_price():
timestamp = str(int(time.time()))
sign = get_signature(timestamp, "GET", endpoint, "")
headers = {
"OK-ACCESS-KEY": api_key,
"OK-ACCESS-SIGN": sign,
"OK-ACCESS-TIMESTAMP": timestamp,
"OK-ACCESS-PASSPHRASE": "你的passphrase" # 申请API时设置的口令
}
response = requests.get(base_url + endpoint, headers=headers, params=params)
return float(response.json()["data"][0]["last"])
# 主循环:每10秒检查一次
last_price = get_price()
print(f"初始价格:{last_price} USDT")
while True:
try:
current_price = get_price()
change = (current_price - last_price) / last_price * 100
if abs(change) > 1:
print(f"⚠️ 价格波动{change:.2f}%!当前价格:{current_price} USDT")
# 这里可以扩展:自动下单、发邮件提醒等
else:
print(f"当前价格:{current_price} USDT (波动{change:.2f}%)")
last_price = current_price
time.sleep(10)
except Exception as e:
print(f"出错啦:{e}")
time.sleep(30)
关键点解释:
instId参数:币种对名称(BTC-USDT、ETH-USDT等)passphrase:申请API时你设置的口令,不是邮箱密码- 打印价格波动百分比,超过1%会高亮提醒
如果你想把它升级成“自动挂单机器人”,只需要把 get_price() 换成 place_order() 函数,调用欧易的“下单接口”即可。
常见问题与避坑指南
Q1:申请API时显示“安全验证失败”怎么办?
A:检查是否绑定了谷歌验证器,有些二级验证必须过,如果还不行,去安全中心重置资金密码。
Q2:运行脚本报错“signature not match”
A:八成是 passphrase 填错了,或者 secret_key 泄露了,重新去 欧易API管理 删除旧密钥,重建一个新的。
Q3:能不能直接用脚本自动交易?
A:可以,但建议先用模拟盘(欧易有测试网环境)试跑一周,真实资金的话,千万别把API权限全选,只勾选必要的“读取”+“交易”,且设置IP白名单。
Q4:Python脚本能多开吗?
A:一个API Key可以同时跑多个脚本,但注意频率限制(比如每秒5次请求),超了会被封IP。
Q5:我完全不懂代码,能用这个教程吗?
A:直接复制上面的代码,改三处:你的api_key、secret_key、passphrase,然后运行,就能看到价格自动刷新,想深入学习,可以去B站搜“Python欧易API入门”。
写在最后
欧易API是自动交易的“高速公路”,但开车前记得系好安全带——先用小资金测试,设置好止损,如果你在折腾过程中遇到报错,优先检查这三个地方:密钥是否复制全、passphrase是否填对、网络能否访问okx.com。
如果你的脚本需要长期运行,建议租个云服务器(阿里云/腾讯云几十块一个月),把脚本丢上去用nohup python 脚本.py &后台跑,手机也能远程监控。
补充提示:如果你想获取更全面的交易数据(比如深度行情),可以去欧易开发者文档搜索 GET /api/v5/market/books 接口,替换掉上面的ticker接口。
动手试试吧!写好自己的第一个交易脚本后,记得回来评论区告诉我哦~
标签: Python交易脚本