博客/Developer

Reddit 上关于黄金价格 API 的开发者问题,一一解答

Reddit 上反复出现的黄金价格 API 问题,直接解答:免费套餐、更新频率、速率限制、鉴权方式、数据来源、商业用途,以及它是否足够可靠用于生产。

Developer

在 Reddit 上搜索黄金价格 API,帖子的结构几乎总是一样的。有人在构建行情看板、价格提醒、交易机器人,或者一个需要报价贵金属的在线商店,他们需要一个可以从代码中拉取的实时黄金价格。在接入任何东西之前,他们会在 r/algotrading、r/webdev 和 r/golang 上提出同样几个问题:有没有免费套餐?数据有多新鲜?限流是多少?可以商用吗?数据可信吗?

本文直接回答这些问题,以 goldprice.dev 作为实际示例。阅读无需注册,下面的第一个 API 调用不需要密钥即可运行。

goldprice.dev 是什么,又不是什么

它是面向开发者的商品定价 API:黄金、白银和铜,通过位于 https://api.goldprice.dev 的单一认证 REST 端点提供服务。每个响应都包含各数据源的价格和时间戳、经过交叉验证的数据陈旧标志,以及价差指标,让你的代码能够发现某个上游数据源是否正在滞后,而不是默默失效。MCP 服务器在所有套餐中均已包含,包括免费套餐。

它不是经纪商,也不是结算报价源。这些价格是指示性参考数据,用于展示、分析和告警。如果你需要可执行的交易报价来结算一笔交易,任何公开的黄金价格 API 都不是合适的工具,本 API 也不例外。

有免费套餐吗?

有,而且不需要绑定信用卡。免费套餐提供每月 1,000 次调用、每分钟 30 次请求,涵盖黄金(XAU)的实时现货价格。付费套餐增加了白银和铜、期货结算数据、更高的限额以及商业使用权:

套餐价格每月调用次数新增内容
Free$01,000XAU 现货、MCP、无需信用卡
Basic$10/月20,000+ 黄金期货
Pro$30/月100,000+ 白银、铜、商业用途
Realtime$80/月1,000,000+ WebSocket 逐笔行情流

价格多久更新一次?

实时现货价格是持续更新的数据,而非每日一次的快照。期货结算价格按交易所的结算时间表更新。这个 API 的意义在于你永远不需要猜测自己看到的是哪一种:每个响应都会为每个数据源标注各自的 timestamp,并在某个值超出其预期刷新窗口时设置 is_stale。你直接从响应体中读取数据新鲜度,而不是盲目相信一个笼统的"实时"标签。

速率限制是多少?

免费套餐是每分钟 30 次请求;付费套餐分别为 120 次和 500 次。每个响应都会返回标准的 X-RateLimit-Remaining 请求头,因此正确的做法是读取该请求头,在剩余次数不多时主动降速,而不是盲目轮询然后触发 429 错误。对于大多数应用,一个客户端短期缓存——TTL 与底层数据实际变化的频率相匹配——就足以让你舒适地维持在免费套餐内。

如何进行鉴权?

使用 Bearer Token。密钥以 ga_live_ 为前缀,放入 Authorization 请求头中。此外还有一个匿名接口,每个 IP 每小时限制 100 次请求,返回精简响应(价格、买价、卖价、按成色和克重的换算表,以及数据陈旧字段),供你在注册前先行测试。通过鉴权后可获取完整响应:开盘价、最高价、最低价、前收盘价、涨跌幅,以及跨数据源的价差字段。

我能看到这个数字从哪里来吗?

可以,而且这正是大多数 API 隐藏的部分。每个响应都包含一个 sources[] 数组,每行对应一个上游数据源,各自有独立的价格和时间戳。当各数据源出现分歧时,响应中会带有 divergence_bpsdivergence_flag,让你可以自行设定容忍阈值,而不是盲目相信一个无来源可查的混合数字。如果你在构建任何一个价格出错会造成损失的系统,这种可见性正是选择结构化 API 而非抓取网页的理由。

可以商业使用吗?

免费套餐和 Basic 套餐仅供个人和评估使用。商业使用——即在你发布的产品中展示价格——从 Pro 套餐起支持,并需要进行署名。如果你要向自己的用户展示黄金价格,Pro 套餐是最低要求。

我的 LLM 智能体可以使用它吗?

可以。MCP 服务器包含在所有套餐中,包括免费套餐。你只需在 Claude、Cursor 或任何支持 MCP 的运行时中添加一个配置块,智能体就能直接获取实时价格,无需手写任何工具代码。数据与 REST API 提供的完全相同。如需了解设置细节,可查阅完整的 MCP 使用指南

最简单的调用

无需密钥,无需任何依赖:

curl https://api.goldprice.dev/v1/prices?symbol=XAU-USD-SPOT

你将得到包含价格、买价、卖价、按成色分克重的换算明细、贡献数据源以及陈旧标志的 JSON 响应。这一个调用就足以将一个实时、真实的黄金价格嵌入你正在构建的任何东西中。当你需要完整响应体和更高限额时,申请一个免费密钥只需一分钟。

如需特定语言的版本,Fetch live gold prices in JavaScript 完整覆盖了 REST 调用的全流程,Caching gold prices and staying inside rate limits 则介绍了如何在大规模场景下使用。

// 相关指南

// goldprice.dev

实时黄金价格、历史 OHLC 数据与多源聚合 — 通过 REST 和 SSE 接口提供。