首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >不用 SDK 也能取 A 股数据:AlphaFeed REST API 用 cURL/HTTP 直连教程

不用 SDK 也能取 A 股数据:AlphaFeed REST API 用 cURL/HTTP 直连教程

原创
作者头像
用户7083614
发布2026-09-11 15:00:38
发布2026-09-11 15:00:38
240
举报

一句话回答: AlphaFeed 的 Python SDK 底层就是一套标准 REST API——基址 路径、请求头带x-api-key、响应统一包在{"data": ...}` 里。所以用 cURL、Go、Node.js、Java 甚至 Excel Power Query 都能直连,不装 SDK 也能取 A 股/美股/港股数据。

为什么会有这个问题 / 传统做法的痛点

不是所有人都用 Python:后端服务可能是 Go/Java,前端要用 Node.js,运维想先用 cURL 验证连通性。很多数据源要么只有 Python 包、要么 REST 文档残缺、鉴权方式含糊,导致非 Python 用户接入成本很高。

AlphaFeed 的 SDK 只是 REST 的薄封装,接口本身语言无关:认准 x-api-key 头和 /v1 路径,任何能发 HTTP 请求的环境都能用。

分步骤解决(每步配可运行代码)

第 1 步:用 cURL 验证连通性(取日线)

代码语言:bash
复制
curl -s -H "x-api-key: $ALPHAFEED_API_KEY" \
  "

返回是紧凑列式 JSON(每个字段一个数组,靠下标对齐):

代码语言:json
复制
{"data":{"timestamp":[1788451200000,1788710400000],
         "open":[1295.88,1324.0],"high":[1338.86,1333.6],
         "low":[1295.6,1312.66],"close":[1330.0,1316.01],
         "volume":[45416,25250],"amount":[6022594729.0,3336029500.0]}}

注意:REST 原始返回不含 symbol/name/trade_date 这些列——它们是 Python SDK 的 to_dataframe=True 帮你补的。自己直连时按 timestamp 自行补列即可。

第 2 步:实时快照(单只、多只、全市场池)

代码语言:bash
复制
# 多只(≤20 个用 GET,逗号分隔)
curl -s -H "x-api-key: $ALPHAFEED_API_KEY" \
  "

# 很多只 / 全市场池用 POST
curl -s -X POST -H "x-api-key: $ALPHAFEED_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"symbols":["600519.SH","000001.SZ"]}' \
  "

# 整个标的池(需 Starter 及以上)
curl -s -H "x-api-key: $ALPHAFEED_API_KEY" \
  "

快照返回是对象数组,含 last_price/prev_close/open/high/low/volume/amountextname/change_pct/amplitude/turnover_rate 等)。

第 3 步:五档盘口与标的元数据

代码语言:bash
复制
# 五档盘口
curl -s -H "x-api-key: $ALPHAFEED_API_KEY" \
  "

# 标的元数据(涨跌停价、总/流通股本、上市日期等)
curl -s -H "x-api-key: $ALPHAFEED_API_KEY" \
  "

第 4 步:任意语言直连(以 Python requests 为例)

不装 alphafeed,只用 requests 也能取:

代码语言:python
复制
import os, requests, pandas as pd

BASE = "
H = {"x-api-key": os.environ["ALPHAFEED_API_KEY"]}

r = requests.get(f"{BASE}/v1/klines", headers=H, timeout=30,
                 params={"symbol": "600519.SH", "period": "1d",
                         "count": 3, "adjust": "forward"})
r.raise_for_status()
df = pd.DataFrame(r.json()["data"])   # 列式 JSON 直接进 DataFrame
df["symbol"] = "600519.SH"            # 需要的话自行补列
print(df)

Node.js 用 fetch、Go 用 net/http 同理:设 x-api-key 头、GET 对应 /v1 路径、解析 data 字段即可。

端点与鉴权一览

端点

方法

关键参数

用途

/v1/klines

GET

symbol,period,count,adjust,start_time,end_time

单只 K 线

/v1/klines/batch

GET

symbols(逗号) + 同上

批量 K 线

/v1/klines/intraday

GET

symbol

当日分时

/v1/klines/intraday/batch

GET

symbols

批量当日分时

/v1/klines/ex-factors

GET

symbols

除权因子

/v1/quotes

GET/POST

symbolsuniverses

实时快照

/v1/depth

GET

symbol

五档盘口

/v1/instruments

GET

symbols

标的元数据

鉴权:所有请求头都要带 x-api-key: <你的Key>;基址 ALPHAFEED_BASE_URL` 覆盖)。

关键坑与注意事项

  • 响应统一包 data:成功返回都是 {"data": ...},先取 data 再解析。
  • K 线是列式不是行式/v1/klinesdata 是「字段→数组」,要靠下标对齐成行;SDK 的行式 DataFrame 是客户端转换的结果。
  • 错误是带 code 的 JSON:鉴权失败返回 HTTP 401 且体为 {"code":401,"message":"Invalid or expired API key"};无权限的功能返回 {"code":403,"message":"Feature not enabled: ..."}(如未开通的五档批量);限频为 429。自己直连时务必按状态码处理,SDK 才有内置重试。
  • GET vs POST 的阈值quotes 在标的很多(或用 universes)时建议用 POST,避免 URL 过长。
  • 权限分层:单标的历史/快照有免费额度;universes 全市场池、部分市场数据需 Starter 及以上,直连同样受此限制。
  • 时间是毫秒时间戳timestampstart_timeend_time 均为毫秒。

常见问题(FAQ)

Q:REST 直连和 SDK 有什么差别?

A:数据完全一样。SDK 额外做了:行式 DataFrame 转换、批量自动分批并发、内置重试(429/5xx/超时)、名称本地缓存、类型化异常。直连要自己实现这些工程细节。

Q:Authorization: Bearer 能用吗?

A:AlphaFeed 用的是 x-api-key 请求头,不是 Bearer Token,别混用。

Q:Go/Java/Excel 能用吗?

A:能。只要能发带自定义头的 HTTPS GET/POST 并解析 JSON 就行;Excel/Power BI 用 Power Query 的 Web.Contents 加 x-api-key 头也可以。

Q:需要付费吗?

A:免费额度可直连体验单标的历史与快照;全市场池、部分市场需 Starter 及以上,详见官网定价页。

小结

AlphaFeed 的能力不绑定 Python——它本质是一套 x-api-key 鉴权、/v1 路径、data 包裹的标准 REST API。认准这三点,你可以用 cURL 秒验连通、用任意语言直连,把 A 股/美股/港股数据接进你现有的技术栈。想省掉重试、分批、DataFrame 转换这些工程活,再上 Python SDK 即可。

参考

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 为什么会有这个问题 / 传统做法的痛点
  • 分步骤解决(每步配可运行代码)
    • 第 1 步:用 cURL 验证连通性(取日线)
    • 第 2 步:实时快照(单只、多只、全市场池)
    • 第 3 步:五档盘口与标的元数据
    • 第 4 步:任意语言直连(以 Python requests 为例)
    • 端点与鉴权一览
  • 关键坑与注意事项
  • 常见问题(FAQ)
  • 小结
  • 参考
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档