
如果应用需要每克黄金价格,可直接请求公开的 `/v1/carat` 端点。一次请求会按所选货币返回 24K、22K、21K、20K、18K、16K、14K 和 10K 的金属价值,试用无需 API 密钥。
用 Python 获取每克黄金价格
下面只使用 Python 标准库,并将价格读为 Decimal,避免货币计算中的二进制浮点误差。
Python
import jsonfrom decimal import Decimalfrom urllib.parse import urlencodefrom urllib.request import Request, urlopenurl = "https://api.goldprice.dev/v1/carat?" + urlencode({"currency": "USD"})with urlopen(Request(url, headers={"Accept": "application/json"}), timeout=10) as response: payload = json.load(response)prices = { "currency": payload["currency"], "timestamp": payload["timestamp"], "24k": Decimal(payload["price_gram_24k"]), "22k": Decimal(payload["price_gram_22k"]), "18k": Decimal(payload["price_gram_18k"]),}可将 USD 换成 EUR、GBP、INR、IDR、AED、JPY 等支持的货币。请同时保存表示价格观测时间的 timestamp。
计算金饰的金属价值
对于 12.5 克的 18K 金饰,用 18K 每克价格乘以重量,并只在最终金额上舍入一次。
Python
from decimal import Decimal, ROUND_HALF_UPweight = Decimal("12.5")value = (weight * prices["18k"]).quantize(Decimal("0.01"), rounding=ROUND_HALF_UP)端点已按请求货币的最小单位精度返回每克值。结果只是黄金含量的指示性价值,并非零售价或回购价。加工费、宝石、税费、溢价、精炼费和回购折扣需另行计算。
API 如何换算克重与纯度
API 先把 XAU 价格换成所选货币,再将每金衡盎司价格除以 31.1034768,最后乘以 22 / 24 或 18 / 24 等纯度比例。
生产检查清单
- 计算过程始终使用
Decimal。 - 将
timestamp与价格一同保存。 - 按功能所需时效缓存成功响应。
- 不要用零或新时间戳替代刷新失败。
- 将结果标为指示性价值,而非结算报价。
- 账户密钥只保存在服务器端。
完整字段见 carat API 文档;日线 OHLC 数据请使用历史 API。
实时黄金价格、历史 OHLC 数据与多源聚合,通过 REST 和 SSE 接口提供。