跳到正文
AllTick
接入教程Python 3.11 · requests 2.32

Python 获取股票最新行情:从请求到解析

用 Python requests 调用股票最新成交接口,完成 query 参数编码、响应解析、错误处理与时间戳转换,附完整可运行代码。

更新时间:
维护方:AllTick 官方技术团队
适用对象:第一次用 Python 调用行情 REST 接口的开发者

核心结论 · 30秒开发速览

用 Python 获取股票最新行情只需三步:把查询条件写成 JSON 并作为 query 参数传入,带上 API Token 发起 GET 请求,然后检查返回码并解析成交列表。下面的示例使用 AllTick 股票 trade-tick 接口,一次查询腾讯控股(700.HK)与苹果(AAPL.US)。

01

准备环境

1安装 Python 3.9 或更高版本。
2安装依赖:pip install requests
3准备 API Token,并通过环境变量 ALLTICK_API_TOKEN 提供,不要写死在代码里。
终端命令bash
pip install requests
export ALLTICK_API_TOKEN="你的 Token"

02

请求结构

AllTick 的 REST 接口把查询条件放在名为 query 的 URL 参数里,值是一段 JSON。股票接口前缀为 https://quote.alltick.co/quote-stock-b-api,最新成交路径为 /trade-tick。

参数位置说明
tokenURL 参数你的 API Token
queryURL 参数JSON 字符串,包含 trace 与 data
tracequery 内请求追踪 ID,便于排查,建议每次唯一
data.symbol_listquery 内标的列表,如 [{"code": "700.HK"}]

03

完整代码

stock_quote.pypython
import json, os, uuid
from datetime import datetime, timezone
import requests
BASE_URL = "https://quote.alltick.co/quote-stock-b-api"
def latest_trades(codes: list[str]) -> list[dict]:
token = os.getenv("ALLTICK_API_TOKEN", "YOUR_API_TOKEN")
query = {
"trace": str(uuid.uuid4()),
"data": {"symbol_list": [{"code": c} for c in codes]},
}
resp = requests.get(
f"{BASE_URL}/trade-tick",
params={"token": token, "query": json.dumps(query)},
timeout=10,
)
body = resp.json() if resp.content else {}
if body.get("ret") != 200:
raise RuntimeError(f"接口返回错误 ret={body.get('ret')} msg={body.get('msg')}")
resp.raise_for_status()
return body.get("data", {}).get("tick_list", [])
def to_local_time(ms: str) -> str:
return datetime.fromtimestamp(int(ms) / 1000, tz=timezone.utc).astimezone().isoformat()
if __name__ == "__main__":
for tick in latest_trades(["700.HK", "AAPL.US"]):
print(tick.get("code"), tick.get("price"), to_local_time(tick.get("tick_time", "0")))

04

理解响应

成功响应中 ret 为 200,data.tick_list 是每个标的的最新成交。常用字段包括 code(代码)、price(成交价,字符串)、volume(成交量)和 tick_time(毫秒时间戳,字符串)。字段完整列表以官方文档为准。

  • price 以字符串返回,计算前转换为 Decimal 可避免浮点误差。
  • tick_time 是 UTC 毫秒时间戳,展示前按市场时区转换。
  • 休市期间返回的是最后一笔成交,时间戳不会更新。

05

常见错误

现象可能原因处理
KeyError: ALLTICK_API_TOKEN未设置环境变量在当前终端 export 后再运行
ret 不为 200Token 无效、频率超限或参数错误查看 msg,参考鉴权与限流排查
tick_list 为空代码写法错误或无权限核对代码格式,如 700.HK
请求超时网络或代理问题检查网络,保留 timeout 参数

规范来源与验证记录 · 2026-10-13

已根据下方一手资料核对相关端点、字段与交易所规则。

Python 示例已在 Python 3.14.0 上通过 ast.parse 语法解析;此检查不验证依赖安装、运行兼容性或网络响应。

本轮未使用真实 Token 执行 AllTick 请求,也未完成生产端到端测试。复现时请记录套餐、依赖版本、交易时段、ret/trace 与实际结果。

上线前建议复现

  • 测试支持标的、未知代码、失效 Token 与超时;独立检查 HTTP 状态及 ret,日志隐藏凭证并对照请求/返回代码。
  • /trade-tick 是最新快照,不提供历史逐笔;tick_time 按毫秒转 UTC,休市值标为最后已知成交。