如何通过 API 获取外汇实时行情数据?QOS 行情 API 接入全解析
无论是量化交易、跨境结算,还是投研分析,对 外汇实时行情数据 的快速获取都是必不可少的。本文将以 QOS 行情 API 为例,展示如何通过 REST 和 WebSocket 接口轻松接入实时外汇价格,获取毫秒级的精准行情。
一、QOS 行情 API 简介
- 支持全球主要外汇货币对:包括 EUR/USD、USD/JPY、GBP/USD、AUD/USD 等主流货币对。(qos.hk)
- 两种接入方式:
- REST API:适合按需请求报价快照、历史行情数据;
- WebSocket:可订阅实时逐笔行情,毫秒级推送。
- REST API:适合按需请求报价快照、历史行情数据;
- 免费试用 + 灵活套餐:免费用户每分钟可请求 10 次,高级套餐支持每分钟数千次调用,满足高频交易需求。
二、外汇行情接入流程
1. 注册并获取 API Key
访问 QOS 官网 注册账号并申请 API Key,用于认证请求。
2. 查询外汇产品代码
使用 product-list
接口获取外汇(FX
)市场的产品编码,如:
FX:EURUSD
(欧元/美元)
FX:USDJPY
(美元/日元)
FX:GBPUSD
(英镑/美元)
请求示例:
{
"market": ["FX"]
}
3. REST API 获取外汇行情快照
Python 示例:
import requests, json
url = "https://api.qos.hk/snapshot?key=你的API_KEY"
payload = json.dumps({"codes": ["FX:EURUSD", "FX:USDJPY"]})
headers = {'Content-Type': 'application/json'}
response = requests.post(url, headers=headers, data=payload)
print(response.text)
返回结果包含:最新买入价、卖出价、最高/最低价、成交量等。
4. WebSocket 订阅实时外汇行情
Python 示例:
import websocket, threading, time, json
url = "wss://api.qos.hk/ws?key=你的API_KEY"
def on_message(ws, message):
print("实时行情:", message)
def on_open(ws):
# 订阅欧元/美元 和 美元/日元 实时行情
subscribe = json.dumps({"type": "S", "codes": ["FX:EURUSD", "FX:USDJPY"], "reqid": 1})
ws.send(subscribe)
# 心跳保持连接
def heartbeat():
while True:
time.sleep(20)
ws.send(json.dumps({"type": "H"}))
threading.Thread(target=heartbeat, daemon=True).start()
ws = websocket.WebSocketApp(url, on_message=on_message, on_open=on_open)
ws.run_forever()
- 可实时获取外汇买卖价、盘口深度、K 线数据;
- 毫秒级推送,适合对时效性要求高的交易系统。
三、为什么选择 QOS 行情 API 获取外汇数据?
优势 | 解读 |
---|---|
覆盖全球主要货币对 | 包含 G10、主要交叉盘,满足投资与风控需求 |
低延迟、实时推送 | WebSocket 接口毫秒级数据传输 |
REST + WS 双支持 | 快照与实时数据自由切换 |
免费试用 + 按需升级 | 适合从个人开发者到企业级应用 |