Loading...
Loading...
Compare original and translation side by side
https://api.stlouisfed.org/fredhttps://api.stlouisfed.org/fredimport os
API_KEY = os.getenv("FRED_API_KEY") # Recomendadoimport os
API_KEY = os.getenv("FRED_API_KEY") # 推荐方式
**⚠️ NUNCA hardcodear la API key en código compartido/commits.**
---
**⚠️ 切勿在共享代码/提交记录中硬编码API密钥。**
---| Límite | Valor |
|---|---|
| Requests por minuto | 120 req/min |
| Requests por día | Ilimitado (sin límite diario explícito) |
| Máx observaciones por request | 100,000 |
| Máx series por request | Depende del endpoint (generalmente 1) |
| Costo | Completamente GRATIS |
| 限制项 | 数值 |
|---|---|
| 每分钟请求数 | 120 req/min |
| 每日请求数 | 无限制(无明确每日上限) |
| 单次请求最大观测值数量 | 100,000 |
| 单次请求最大序列数量 | 取决于接口(通常为1) |
| 费用 | 完全免费 |
observation_startobservation_endobservation_startobservation_end| Endpoint | Descripción | Auth |
|---|---|---|
| Valores históricos de una serie | API Key |
| Buscar series por texto | API Key |
| Metadatos de una serie | API Key |
| Categorías de una serie | API Key |
| Release asociado a una serie | API Key |
| 接口 | 描述 | 认证方式 |
|---|---|---|
| 获取某一序列的历史数值 | 需要API密钥 |
| 按文本搜索序列 | 需要API密钥 |
| 获取某一序列的元数据 | 需要API密钥 |
| 获取某一序列的分类 | 需要API密钥 |
| 获取某一序列对应的发布信息 | 需要API密钥 |
| Endpoint | Descripción |
|---|---|
| Información de una categoría |
| Subcategorías |
| Categorías relacionadas |
| Series en una categoría |
| Información de un release |
| Fechas de un release |
| Series en un release |
| 接口 | 描述 |
|---|---|
| 获取分类信息 |
| 获取子分类 |
| 获取相关分类 |
| 获取某分类下的序列 |
| 获取发布信息 |
| 获取发布日期 |
| 获取某发布下的序列 |
| Endpoint | Descripción |
|---|---|
| Buscar tags |
| Tags relacionados |
| Series con un tag específico |
| Tags de una serie |
| 接口 | 描述 |
|---|---|
| 搜索标签 |
| 获取相关标签 |
| 获取带有指定标签的序列 |
| 获取某序列的标签 |
| Endpoint | Descripción |
|---|---|
| Lista de fuentes de datos |
| Información de una fuente |
| 接口 | 描述 |
|---|---|
| 获取数据源列表 |
| 获取数据源信息 |
| Endpoint | Descripción |
|---|---|
| Series actualizadas recientemente |
| Opciones de ajuste estacional |
| 接口 | 描述 |
|---|---|
| 获取近期更新的序列 |
| 获取季节性调整选项 |
&file_type=json{
"realtime_start": "2026-06-01",
"realtime_end": "2026-06-01",
"observation_start": "1954-07-01",
"observation_end": "2026-06-01",
"units": "lin",
"count": 864,
"observations": [
{
"realtime_start": "2026-06-01",
"realtime_end": "2026-06-01",
"date": "1954-07-01",
"value": "."
},
{
"realtime_start": "2026-06-01",
"realtime_end": "2026-06-01",
"date": "1954-10-01",
"value": "126.8"
}
]
}Nota: valoresindican dato no disponible (N/A)."."
&file_type=json{
"realtime_start": "2026-06-01",
"realtime_end": "2026-06-01",
"observation_start": "1954-07-01",
"observation_end": "2026-06-01",
"units": "lin",
"count": 864,
"observations": [
{
"realtime_start": "2026-06-01",
"realtime_end": "2026-06-01",
"date": "1954-07-01",
"value": "."
},
{
"realtime_start": "2026-06-01",
"realtime_end": "2026-06-01",
"date": "1954-10-01",
"value": "126.8"
}
]
}注意: 值为表示数据不可用(N/A)。"."
| ID | Categoría | Ejemplos |
|---|---|---|
| 0 | Todas las categorías (raíz) | — |
| 32991 | Population, Employment, & Labor Markets | UNRATE, PAYEMS, NFP |
| 32992 | National Income & Product Accounts | GDP, GDPC1, GNP |
| 32993 | Consumer Price Indexes (CPI) | CPIAUCSL, CPILFESL |
| 32994 | Producer Price Indexes (PPI) | PPIACO, PPIFIS |
| 32995 | Interest Rates | FEDFUNDS, DGS10, DGS2 |
| 32996 | Money, Banking, & Finance | M2SL, M1SL, TOTBKCR |
| 32997 | International Trade | BOPGSTB |
| 33000 | U.S. Regional Data | Estadísticas estatales |
| 33001 | Academic Data | Datos académicos |
| ID | 分类 | 示例 |
|---|---|---|
| 0 | 所有分类(根节点) | — |
| 32991 | 人口、就业与劳动力市场 | UNRATE, PAYEMS, NFP |
| 32992 | 国民收入与生产账户 | GDP, GDPC1, GNP |
| 32993 | 消费者价格指数(CPI) | CPIAUCSL, CPILFESL |
| 32994 | 生产者价格指数(PPI) | PPIACO, PPIFIS |
| 32995 | 利率 | FEDFUNDS, DGS10, DGS2 |
| 32996 | 货币、银行与金融 | M2SL, M1SL, TOTBKCR |
| 32997 | 国际贸易 | BOPGSTB |
| 33000 | 美国区域数据 | 各州统计数据 |
| 33001 | 学术数据 | 学术研究数据 |
import requests
API_KEY = "TU_API_KEY"
url = "https://api.stlouisfed.org/fred/series/observations"
params = {
"series_id": "GDP",
"api_key": API_KEY,
"file_type": "json",
"observation_start": "2020-01-01",
"observation_end": "2025-12-31"
}
r = requests.get(url, params=params)
data = r.json()
for obs in data["observations"]:
if obs["value"] != ".":
print(obs["date"], obs["value"])import requests
API_KEY = "TU_API_KEY"
url = "https://api.stlouisfed.org/fred/series/observations"
params = {
"series_id": "GDP",
"api_key": API_KEY,
"file_type": "json",
"observation_start": "2020-01-01",
"observation_end": "2025-12-31"
}
r = requests.get(url, params=params)
data = r.json()
for obs in data["observations"]:
if obs["value"] != ".":
print(obs["date"], obs["value"])params = {
"api_key": API_KEY,
"file_type": "json",
"search_text": "inflation",
"search_type": "full_text", # o "series_id"
"limit": 10
}
r = requests.get("https://api.stlouisfed.org/fred/series/search", params=params)params = {
"api_key": API_KEY,
"file_type": "json",
"search_text": "inflation",
"search_type": "full_text", # 或 "series_id"
"limit": 10
}
r = requests.get("https://api.stlouisfed.org/fred/series/search", params=params)import pandas as pd
import requests
def fetch_fred(series_id, api_key, start="2020-01-01"):
url = "https://api.stlouisfed.org/fred/series/observations"
params = {"series_id": series_id, "api_key": api_key,
"file_type": "json", "observation_start": start}
r = requests.get(url, params=params)
df = pd.DataFrame(r.json()["observations"])
df["date"] = pd.to_datetime(df["date"])
df["value"] = pd.to_numeric(df["value"], errors="coerce")
return df.set_index("date")["value"]
gdp = fetch_fred("GDP", API_KEY)
cpi = fetch_fred("CPIAUCSL", API_KEY)
fedfunds = fetch_fred("FEDFUNDS", API_KEY)import pandas as pd
import requests
def fetch_fred(series_id, api_key, start="2020-01-01"):
url = "https://api.stlouisfed.org/fred/series/observations"
params = {"series_id": series_id, "api_key": api_key,
"file_type": "json", "observation_start": start}
r = requests.get(url, params=params)
df = pd.DataFrame(r.json()["observations"])
df["date"] = pd.to_datetime(df["date"])
df["value"] = pd.to_numeric(df["value"], errors="coerce")
return df.set_index("date")["value"]
gdp = fetch_fred("GDP", API_KEY)
cpi = fetch_fred("CPIAUCSL", API_KEY)
fedfunds = fetch_fred("FEDFUNDS", API_KEY)| Script | Descripción |
|---|---|
| fetch_series.py | Descarga una o más series FRED en CSV/JSON/Parquet |
| search_series.py | Busca series FRED por texto, categoría o tag |
| download_multiple.py | Descarga batches de series predefinidas por categoría |
| 脚本 | 描述 |
|---|---|
| fetch_series.py | 将一个或多个FRED序列下载为CSV/JSON/Parquet格式 |
| search_series.py | 按文本、分类或标签搜索FRED序列 |
| download_multiple.py | 按分类批量下载预定义的序列 |
| Serie | Descripción | Frecuencia |
|---|---|---|
| PIB Nominal (Billions $) | Trimestral |
| PIB Real (Billions chained $) | Trimestral |
| IPC General (CPI All Items) | Mensual |
| IPC Subyacente (Core CPI) | Mensual |
| PCE Subyacente (Core PCE) | Mensual |
| Tasa de Fondos Federales | Diaria |
| Tasa de Fondos Federales (efectiva) | Diaria |
| Treasury a 10 años | Diaria |
| Treasury a 2 años | Diaria |
| Spread 10y-2y (curva invertida) | Diaria |
| Tasa de Desempleo | Mensual |
| Nóminas no agrícolas (Nonfarm Payrolls) | Mensual |
| M2 Money Supply | Mensual |
| M1 Money Supply | Mensual |
| VIX (volatilidad S&P 500) | Diaria |
| Spread BAA - 10y (credit spread) | Diaria |
| Ventas Minoristas | Mensual |
| Producción Industrial | Mensual |
| Viviendas Iniciadas | Mensual |
| Tasa Hipoteca 30 años | Semanal |
| 序列 | 描述 | 频率 |
|---|---|---|
| 名义GDP(十亿美元) | 季度 |
| 实际GDP(十亿美元,链式计算) | 季度 |
| 整体消费者价格指数(CPI所有项目) | 月度 |
| 核心消费者价格指数(Core CPI) | 月度 |
| 核心个人消费支出价格指数(Core PCE) | 月度 |
| 联邦基金利率 | 每日 |
| 有效联邦基金利率 | 每日 |
| 10年期国债收益率 | 每日 |
| 2年期国债收益率 | 每日 |
| 10年-2年期收益率利差(收益率曲线倒挂指标) | 每日 |
| 失业率 | 月度 |
| 非农就业人数(Nonfarm Payrolls) | 月度 |
| M2货币供应量 | 月度 |
| M1货币供应量 | 月度 |
| VIX(标普500波动率指数) | 每日 |
| BAA级企业债与10年期国债收益率利差(信用利差) | 每日 |
| 零售销售额 | 月度 |
| 工业生产指数 | 月度 |
| 新屋开工数 | 月度 |
| 30年期抵押贷款利率 | 每周 |
file_type=jsonobservation_start"."FRED_API_KEYfile_type=jsonobservation_start"."FRED_API_KEY