在 2026 年,随着全球金融市场的数字化转型,外汇交易数据的需求日益增长。外汇 API 接口已成为交易者、开发者、金融分析师不可或缺的工具。这些接口提供实时行情、实时汇率、历史 K 线、盘口深度等数据,帮助用户进行算法交易、风险分析和市场监控。汇总了全球外汇实时行情汇率数据 API 接口大全。我将逐一简单介绍每个接口的使用方法,并挑选 3 个典型接口提供 Python 代码示例。
本文将分享如何使用 iTick API 实现获取外汇行情数据。接口类型主要分为 RESTful HTTP GET 请求和 WebSocket 实时推送。REST API 适合批量查询历史数据或单次获取实时行情,而 WebSocket 则适用于低延迟的实时数据流订阅。
接口列表及使用介绍
在使用前,用户需在官网注册获取 Token。以下将分模块总结接口,不逐一列出所有代码示例,而是重点突出请求地址、参数,并挑选典型接口提供详细 Python 示例。
注意:接口基 URL 为https://api.itick.org。数据覆盖主流货币对如 EURUSD、GBPUSD 等,市场代码统一为"GB"。请参考官方文档以获取最新信息。
1. 实时成交 (/forex/tick)
- 描述:获取单个外汇货币对的实时成交数据,包括最新价、时间戳和成交量。
- 使用方法:GET 请求,参数包括
region(市场代码,如"GB")、code(货币对,如"EURUSD")。响应包含产品代码、最新价等。 - 适用场景:监控单一货币对的即时成交情况。
2. 批量实时盘口 (/forex/depths)
- 描述:批量获取多个外汇货币对的实时订单簿深度数据,包括买卖盘口的多档价位和挂单量。
- 使用方法:GET 请求,参数包括
region、codes(多个货币对,用逗号分隔,如"EURUSD,GBPUSD")。响应为字典格式,包含每个货币对的买/卖盘数据。 - 适用场景:高频交易或批量监控市场深度。
3. 批量实时报价 (/forex/quotes)
- 描述:批量获取多个外汇货币对的实时报价,包括最新价、开盘价、最高/最低价、涨跌幅等。
- 使用方法:GET 请求,参数包括
region、codes(多个货币对,用逗号分隔)。响应包含每个货币对的详细报价信息。 - 适用场景:投资组合实时监控。
4. 批量实时成交 (/forex/ticks)
- 描述:批量获取多个外汇货币对的实时成交数据,包括最新价、时间戳和成交量。
- 使用方法:GET 请求,参数包括
region、codes(多个货币对,用逗号分隔)。响应为字典格式,包含每个货币对的成交详情。 - 适用场景:多货币对的成交流分析。
5. 实时报价 (/forex/quote)
- 描述:获取单个外汇货币对的实时报价,包括最新价、开盘价、最高/最低价、涨跌幅等。
- 使用方法:GET 请求,参数包括
region、code。响应包含详细报价字段。 - 适用场景:单一货币对的即时行情查询。
6. 批量历史 K 线查询 (/forex/klines)
- 描述:批量获取多个外汇货币对的历史 K 线数据,支持多种周期(分钟到月线)。
- 使用方法:GET 请求,参数包括
region、codes、kType(K 线类型,如 1 为分钟线)、limit(K 线数量)、et(可选,截止时间戳)。响应为字典格式,包含每个货币对的 K 线数组。 - 适用场景:历史数据分析或回测。
7. 实时盘口 (/forex/depth)
- 描述:获取单个外汇货币对的实时盘口数据,包括多档买卖价位和挂单量。
- 使用方法:GET 请求,参数包括
region、code。响应包含买/卖盘数组。 - 适用场景:查看单一货币对的市场深度。
8. 历史 K 线查询 (/forex/kline)
- 描述:获取单个外汇货币对的历史 K 线数据,支持多种周期。
- 使用方法:GET 请求,参数包括
region、code、kType、limit、et(可选)。响应为 K 线数组。 - 适用场景:单一货币对的历史趋势分析。
这些接口覆盖了从实时到历史、从单一到批量的外汇数据需求。开发者可根据场景选择 RESTful API 或 WebSocket。
获取实时汇率报价行情
这个接口适合快速获取单一货币对的最新行情。下面是 Python 示例,使用requests库。
import requests
# API参数
url = "https://api.itick.org/forex/quote?region=GB&code=EURUSD"
headers = {
"accept": "application/json",
"token": "your_token" # 替换为你的API Token
}
# 发送请求
response = requests.get(url, headers=headers)
# 处理响应
if response.status_code == 200:
data = response.json()
if data["code"] == 0:
quote = data["data"]
print(f"货币对: {quote['s']}")
print(f"最新价: {quote['ld']}")
print(f"涨跌幅: {quote['chp']}%")
else:
print("API错误:", data["msg"])
else:
print("HTTP错误:", response.status_code)
运行后,你将看到 EURUSD 的实时报价信息。
历史数据 K 线查询
这个接口用于获取历史数据,便于趋势分析。示例查询 EURUSD 的最近 10 条 5 分钟 K 线。
import requests
# API参数
url = "https://api.itick.org/forex/kline?region=GB&code=EURUSD&kType=2&limit=10"
headers = {
"accept": "application/json",
"token": "your_token" # 替换为你的API Token
}
# 发送请求
response = requests.get(url, headers=headers)
# 处理响应
if response.status_code == 200:
data = response.json()
if data["code"] == 0:
klines = data["data"]
for kline in klines[:3]: # 只打印前3条以简化输出
print(f"时间戳: {kline['t']}, 开盘: {kline['o']}, 收盘: {kline['c']}, 成交量: {kline['v']}")
else:
print("API错误:", data["msg"])
else:
print("HTTP错误:", response.status_code)
此代码输出 K 线数据数组的前几条,帮助你分析历史价格。
WebSocket 实时行情
通过 WebSocket 提供外汇数据的实时推送,包括报价、成交、盘口和 K 线,支持订阅多个货币对,连接wss://api.itick.org/forex,使用 Token 认证后发送订阅消息(如{"ac": "subscribe", "params": "EURUSD$GB", "types": "quote"})。需处理心跳(ping/pong)。
示例使用websocket库订阅 EURUSD 的报价数据,并处理心跳。
import websocket
import json
import threading
import time
# WebSocket参数
WS_URL = "wss://api.itick.org/forex"
API_TOKEN = "your_token" # 替换为你的API Token
def on_message(ws, message):
data = json.loads(message)
if data.get("data"):
market_data = data["data"]
if market_data.get("type") == "quote":
print(f"实时报价: {market_data['s']} - 最新价: {market_data['ld']}")
def on_open(ws):
print("连接成功")
# 订阅
subscribe_msg = json.dumps({"ac": "subscribe", "params": "EURUSD$GB", "types": "quote"})
ws.send(subscribe_msg)
def send_heartbeat(ws):
while True:
time.sleep(30)
ping_msg = json.dumps({"ac": "ping", "params": str(int(time.time() * 1000))})
ws.send(ping_msg)
# 创建连接
ws = websocket.WebSocketApp(WS_URL,
header={"token": API_TOKEN},
on_message=on_message,
on_open=on_open)
# 启动心跳线程
threading.Thread(target=send_heartbeat, args=(ws,)).start()
# 运行WebSocket
ws.run_forever()
运行此代码后,它会连接 WebSocket、订阅数据,并实时打印报价更新
结语
这些 API 接口为 2026 年的外汇开发者提供了强大工具箱。无论是 RESTful 调用还是 WebSocket 推送,都能满足不同需求。建议从官方文档获取 Token,并注意速率限制。如果你是初学者,从实时报价接口入手;高级用户可探索 WebSocket 实现低延迟应用。
温馨提示:本文仅供代码参考,不构成任何投资建议。市场有风险,投资需谨慎
参考文档:https://docs.itick.org
GitHub:https://github.com/itick-org/
