Saltar al contenido

Quickstart

Comience en cualquier lenguaje

El FXMacroData API es un JSON REST API estándar para uso en el servidor. Cualquier lenguaje con soporte HTTP funciona. Los datos de anuncios USD, el calendario de publicaciones USD y el catálogo de datos son gratuitos sin una clave: los 90 días más recientes, con un retraso de publicación de 15 minutos, hasta 100 solicitudes por día. Los valores pronosticados (USD incluidos), cualquier otra moneda, publicaciones en tiempo real e historial completo requieren una clave API, enviada en el X-API-Key header. Ver qué es gratuito

URL base

https://api.fxmacrodata.com

Autenticación

X-API-Clave: YOUR_API_KEY

Autorización: Bearer YOUR_API_KEY

El legado ?api_key= el parámetro de consulta está obsoleto: las claves en las URLs terminan en los registros.

Formato de respuesta

JSON (Content-Type: application/json)

Generar clientes tipados automáticamente: Use el publicado Especificación OpenAPI 3.1 con openapi-generator-cli para autogenerar clientes en 40+ idiomas.
Ganancias de rendimiento gratuitas: Enviar Accept-Encoding: gzip en cada solicitud (8–12× cargas de datos más pequeñas), reutilice el ETag encabezado de respuesta en If-None-Match en encuestas repetidas (devuelve 304 Not Modified sin cuerpo), y pasar ?limit=50 en endpoints de un solo indicador como /v1/announcements/usd/inflation o /v1/predictions/usd/inflation cuando solo necesita filas recientes. Ver la referencia completa →
Llame al API desde su servidor: El API no envía encabezados CORS a orígenes de navegador, por lo que un fetch() desde una página web es bloqueado por el navegador. Llame a FXMacroData desde su backend y mantenga la clave API fuera del código del lado del cliente.
Descubra los slugs de los indicadores antes de codificar las rutas: Los slugs de los indicadores varían según la moneda — core_pce existe para USD pero no para todas las monedas. Liste cada slug que una moneda soporta con GET /v1/data_catalogue/{currency}, por ejemplo /v1/data_catalogue/usd. Un 200 cuyo data el arreglo está vacío y el cual lleva no_data.error_code: NO_DATA_IN_REQUESTED_WINDOW significa que el slug es válido y solo la ventana de fecha solicitada está vacía — ampliar start_date/end_date en lugar de cambiar el URL o reintentar. Un 404 significa que el slug de la moneda o del indicador es incorrecto.
Verificar calidad de respuesta: Los endpoints respaldados por la fuente devuelven un nivel superior data_quality objeto. Para backtests e informes institucionales, inspeccione point_in_time_safe, has_announcement_datetime, source_type, y is_stale. point_in_time_safe es falso siempre que cualquier fila en la ventana tenga un tiempo de publicación derivado del retraso de lanzamiento medido de la serie, así que verifique assumed_release_time_count y el por fila release_time_assumed marca antes de tratar un falso como inutilizable.

Acceso al mercado

Use FXMacroData a través de RapidAPI

RapidAPI es un canal de mercado opcional para el FXMacroData REST API. FXMacroData suministra los datos; RapidAPI gestiona su suscripción al mercado, la clave API, la cuota de solicitudes y la facturación. No se requiere una cuenta o clave FXMacroData separada para las solicitudes a través de este canal.

  1. Abrir el listado oficial de FXMacroData y elija un plan. Consulte la pestaña de precios para conocer la cobertura, las cuotas y los límites de velocidad actuales.
  2. Copie su clave de RapidAPI desde el playground del endpoint y almacénela en el entorno de su servidor como RAPIDAPI_KEY.
  3. Enviar solicitudes a https://fxmacrodata1.p.rapidapi.com con ambos encabezados de RapidAPI, como se muestra a continuación.
curl --request GET \
  --url "https://fxmacrodata1.p.rapidapi.com/v1/announcements/usd/inflation?limit=3" \
  --header "X-RapidAPI-Key: $RAPIDAPI_KEY" \
  --header "X-RapidAPI-Host: fxmacrodata1.p.rapidapi.com"

Cobertura de puntos finales del mercado

El listado incluye anuncios, calendarios de lanzamiento, el catálogo de datos, tasas diarias de FX, posicionamiento de COT, noticias de bancos centrales, sesiones de mercado y un chequeo de estado. El acceso a divisas e historial depende de su plan de RapidAPI. Use el catálogo para encontrar los slugs de indicadores compatibles.

Acceso directo a FXMacroData

Los otros ejemplos en esta página usan api.fxmacrodata.com y un FXMacroData X-API-Key cuando sea necesario. Las claves y suscripciones son independientes entre canales. Una suscripción de RapidAPI cubre los endpoints REST listados; las suscripciones del sitio web, MCP, pronósticos, streaming y webhooks son ofertas separadas.

Mantenga su clave fuera del código del navegador y de los repositorios públicos. Para conjuntos de resultados más largos, siga pagination.next_offset until pagination.has_more es falso. Nunca envíe su clave API al soporte.

Primera llamada API

Solicitud rápida

El primer fragmento se ejecuta tal cual: no se necesita clave para los datos de USD, servidos 15 minutos después del lanzamiento. Agregar X-API-Key para todas las monedas 22 y entrega en tiempo real, enviada desde un servidor, script o notebook.

Sin clave · inflación de USD GET /v1/announcements/usd/inflation
1 · No se necesita clave
# USD inflation, no key: 15-minute delay, most recent 90 days
curl "https://api.fxmacrodata.com/v1/announcements/usd/inflation?limit=5"
2 · Con clave API · EUR
# EUR inflation: add X-API-Key for all 22 currencies and real-time releases
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/announcements/eur/inflation"

solicitudes de Python

Solicitudes de API en Python copiables

Use estos ejemplos directos de REST cuando desee la solicitud API pura en lugar de un wrapper de SDK. Reemplace YOUR_API_KEY solo en rutas protegidas.

consenso de mercado de inflación de USD

Pronósticos de consenso, encuestas, bancos centrales, IMF y FXMacroData unidos a anuncios realizados.

import requests

url = "https://api.fxmacrodata.com/v1/predictions/usd/inflation"
headers = {"X-API-Key": "YOUR_API_KEY"}
response = requests.get(url, headers=headers, timeout=20)
response.raise_for_status()
payload = response.json()

print(payload.get("data", payload))

USD inflación con marcas de tiempo conocidas

Registros públicos de inflación USD para backtests en un punto en el tiempo.

import requests

url = "https://api.fxmacrodata.com/v1/announcements/usd/inflation"
response = requests.get(url, timeout=20)
response.raise_for_status()
payload = response.json()

print(payload.get("data", payload))

historial spot EUR/USD FX

Historial de precios diario de FX para gráficos de pares, modelos y superposiciones de lanzamientos.

import requests

url = "https://api.fxmacrodata.com/v1/forex/eur/usd"
headers = {"X-API-Key": "YOUR_API_KEY"}
response = requests.get(url, headers=headers, timeout=20)
response.raise_for_status()
payload = response.json()

print(payload.get("data", payload))

historial de tasa de política de AUD

Historial de decisiones de bancos centrales con tiempos de lanzamiento para investigación sin anticipación (no-lookahead).

import requests

url = "https://api.fxmacrodata.com/v1/announcements/aud/policy_rate"
headers = {"X-API-Key": "YOUR_API_KEY"}
response = requests.get(url, headers=headers, timeout=20)
response.raise_for_status()
payload = response.json()

print(payload.get("data", payload))

Calendario de próximas publicaciones de JPY

Próximos eventos macroeconómicos con UTC, campos de mercado local y de zona horaria solicitada para la planificación de alertas, actualizaciones de modelos y revisiones de trading.

import requests

url = "https://api.fxmacrodata.com/v1/calendar/jpy"
params = {
    "timezone": "Asia/Tokyo",
}
headers = {"X-API-Key": "YOUR_API_KEY"}
response = requests.get(url, params=params, headers=headers, timeout=20)
response.raise_for_status()
payload = response.json()

print(payload.get("data", payload))

Precios de la materia prima oro

Series temporales oficiales de metales preciosos con valores diarios y campos de cambio.

import requests

url = "https://api.fxmacrodata.com/v1/commodities/gold"
headers = {"X-API-Key": "YOUR_API_KEY"}
response = requests.get(url, headers=headers, timeout=20)
response.raise_for_status()
payload = response.json()

print(payload.get("data", payload))
Oficial SDK

Python

Instalar el oficial fxmacrodata paquete de PyPI (1.2.x). Los clientes síncronos y asíncronos devuelven diccionarios JSON simples que se cargan directamente en pandas. Client() sin clave lee el nivel gratuito USD; pase api_key para cada otra moneda y entrega en tiempo real.

pip install fxmacrodata

Usando el SDK

from fxmacrodata import Client

# USD inflation — no key needed: 15-minute delay, most recent 90 days
data = Client().get_indicator("usd", "inflation")
print(data["data"][0])

# Add X-API-Key for all 22 currencies and real-time releases
client = Client(api_key="YOUR_API_KEY")

# EUR policy rate — requires API key
rate = client.get_indicator("eur", "policy_rate")

# Forex price data — requires API key
fx = client.get_fx_price("usd", "jpy")

Usando el REST API directamente

import requests

resp = requests.get(
    "https://api.fxmacrodata.com/v1/announcements/usd/inflation",
    timeout=30,
)
resp.raise_for_status()
payload = resp.json()
print(payload["data_quality"]["point_in_time_safe"], payload["data"][0])

Paginando a través del historial completo

import requests

URL = "https://api.fxmacrodata.com/v1/announcements/eur/inflation"
HEADERS = {"X-API-Key": "YOUR_API_KEY"}

rows, offset = [], 0
while True:
    resp = requests.get(
        URL,
        params={"limit": 100, "offset": offset},
        headers=HEADERS,
        timeout=30,
    )
    resp.raise_for_status()
    page = resp.json()
    rows.extend(page["data"])
    if not page["pagination"]["has_more"]:
        break
    offset = page["pagination"]["next_offset"]

print(len(rows), "rows")

Cliente Async

import asyncio
from fxmacrodata import AsyncClient

async def main():
    async with AsyncClient(api_key="YOUR_API_KEY") as client:
        data = await client.get_indicator("eur", "inflation")
        print(data)

asyncio.run(main())
Nuevo

Predicciones & Pronósticos

El /v1/predictions/{currency}/{indicator} el endpoint ofrece datos de pronóstico de superficies provenientes de encuestas de consenso de mercado, proyecciones de bancos centrales, IMF World Economic Outlook y encuestas de pronosticadores profesionales. Las predicciones se solicitan para una moneda e indicador específicos, tales como https://api.fxmacrodata.com/v1/predictions/usd/inflation; las solicitudes de predicción de solo moneda no son compatibles. Cada predicción está vinculada a su anuncio a través de announcement_id, para que pueda combinar pronósticos con observaciones realizadas.

No trate cada pronóstico como un consenso. prediction_type="fxmacrodata" es una estimación generada por FXMacroData; un consenso compilado real se etiqueta como market_consensus. La disponibilidad de los pronósticos varía según el lanzamiento; consulte el matriz de cobertura. Para una investigación sin sesgo de anticipación (look-ahead-free), siga el guía de backtesting point-in-time.
Los valores de pronóstico necesitan una clave API para cada moneda, USD incluida. Cobertura — qué fuentes pronostican cada indicador — es gratuito sin una clave en /v1/predictions/coverage/{currency}. Una clave de prueba o de pago devuelve los valores pronosticados.

Python — obtener predicciones y unir con valores reales

import requests

HEADERS = {"X-API-Key": "YOUR_API_KEY"}

# Predictions for USD inflation — requires API key
preds = requests.get(
    "https://api.fxmacrodata.com/v1/predictions/usd/inflation",
    headers=HEADERS,
    timeout=30,
).json()

for group in preds["data"]:
    print(group["announcement_id"], group["date"])
    for p in group["predictions"]:
        print(f"  {p['prediction_source_label']}: {p['predicted_value']}")

# Filter by prediction type
market = requests.get(
    "https://api.fxmacrodata.com/v1/predictions/usd/inflation",
    params={"prediction_type": "market_consensus"},
    headers=HEADERS,
    timeout=30,
).json()

# Join predictions with actuals using announcement_id
actuals = requests.get(
    "https://api.fxmacrodata.com/v1/announcements/usd/inflation",
    headers=HEADERS,
    timeout=30,
).json()
actuals_by_id = {row["announcement_id"]: row for row in actuals["data"]}

for group in preds["data"]:
    actual = actuals_by_id.get(group["announcement_id"])
    if actual:
        print(f"{group['date']}: actual={actual['val']}, forecast={group['predictions'][0]['predicted_value']}")

cURL — obtener predicciones por tipo

# Which sources forecast USD indicators — free, no key
curl "https://api.fxmacrodata.com/v1/predictions/coverage/usd"

# All USD inflation predictions — requires API key
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/predictions/usd/inflation"

# Filter by prediction type: market_consensus, imf_weo, central_bank_forecast, survey
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/predictions/usd/inflation?prediction_type=market_consensus"

# EUR policy-rate predictions
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/predictions/eur/policy_rate"

Referencia de tipos de predicción

prediction_typeDescripción
market_consensusConsenso de eventos de mercado o economistas compilado, donde esté disponible
market_predictionPredicción puntual de pronosticador profesional
model_nowcastNowcast de modelo de banco central o banco de reserva
encuestaEncuesta de bancos centrales a pronosticadores profesionales (ej. ECB SPF)
central_bank_forecastProyección oficial del banco central (p. ej., RBNZ MPS, BoC MPR)
central_bank_projectionProyección oficial del banco central
imf_weoproyección IMF World Economic Outlook
fxmacrodataPredicción generada por FXMacroData que combina la orientación del banco central, encuestas y tendencias históricas

cURL

No se requiere instalación. Funciona desde cualquier terminal.

# USD inflation — no-key evaluation, up to 100 requests/day
curl "https://api.fxmacrodata.com/v1/announcements/usd/inflation"

# EUR policy rate — send your API key in the X-API-Key header
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/announcements/eur/policy_rate"

# Release calendar for Australia — requires API key
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/calendar/aud"

# Release calendar converted to a requested IANA timezone
curl "https://api.fxmacrodata.com/v1/calendar/usd?indicator=gdp&timezone=America/Sao_Paulo"

# Forex price history — requires API key
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/forex/usd/jpy"

# Data catalogue (discover available indicators for USD)
curl "https://api.fxmacrodata.com/v1/data_catalogue/usd"

JavaScript / TypeScript

Funciona en el lado del servidor en Node.js (18+), Deno y Bun. El API no envía encabezados CORS, así que llámelo desde su backend en lugar de desde el código del navegador.

Cliente npm oficial

npm install @fxmacrodata/client
import { FXMacroDataClient } from "@fxmacrodata/client";

const client = new FXMacroDataClient({
  apiKey: "YOUR_API_KEY",
});

// Public endpoint example
const usdInflation = await client.announcements("usd", "inflation");

// Non-USD endpoint example (requires paid key)
const eurRate = await client.announcements("eur", "policy_rate");

console.log(usdInflation, eurRate);

Usando Fetch directamente

// USD inflation — no-key evaluation, up to 100 requests/day
const res = await fetch(
  "https://api.fxmacrodata.com/v1/announcements/usd/inflation"
);
const data = await res.json();
console.log(data);

// With API key for non-USD
const API_KEY = process.env.FXMD_API_KEY;
const eur = await fetch(
  "https://api.fxmacrodata.com/v1/announcements/eur/policy_rate",
  { headers: { "X-API-Key": API_KEY } }
);
console.log(await eur.json());

Ir

No se necesitan paquetes externos; la biblioteca estándar lo maneja todo.

package main

import (
    "encoding/json"
    "fmt"
    "net/http"
    "io"
)

func main() {
    // USD inflation — no-key evaluation, up to 100 requests/day
    resp, err := http.Get("https://api.fxmacrodata.com/v1/announcements/usd/inflation")
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)

    var result map[string]interface{}
    json.Unmarshal(body, &result;)
    fmt.Println(result)
}

R

Requiere httr y jsonlite.

install.packages(c("httr", "jsonlite"))
library(httr)
library(jsonlite)

# USD inflation — no-key evaluation, up to 100 requests/day
res <- GET("https://api.fxmacrodata.com/v1/announcements/usd/inflation")
data <- fromJSON(content(res, "text", encoding = "UTF-8"))

# Convert to data frame
df <- as.data.frame(data$data)
head(df)

# With API key for non-USD
eur <- GET(
  "https://api.fxmacrodata.com/v1/announcements/eur/policy_rate",
  add_headers(`X-API-Key` = "YOUR_API_KEY")
)
print(fromJSON(content(eur, "text")))

Java

Usos java.net.http (Java 11+). No se necesitan librerías externas.

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class FXMacroDataExample {
    public static void main(String[] args) throws Exception {
        var client = HttpClient.newHttpClient();
        var request = HttpRequest.newBuilder()
            .uri(URI.create("https://api.fxmacrodata.com/v1/announcements/usd/inflation"))
            .build();

        var response = client.send(request, HttpResponse.BodyHandlers.ofString());
        System.out.println(response.body());
    }
}

C# / .NET

Usos HttpClient (.NET 6+).

using System.Net.Http;
using System.Text.Json;

var client = new HttpClient();

// USD inflation — no-key evaluation, up to 100 requests/day
var json = await client.GetStringAsync(
    "https://api.fxmacrodata.com/v1/announcements/usd/inflation"
);

var doc = JsonDocument.Parse(json);
Console.WriteLine(doc.RootElement);

MATLAB

Utiliza el integrado webread función.

% USD inflation — no-key evaluation, up to 100 requests/day
data = webread('https://api.fxmacrodata.com/v1/announcements/usd/inflation');
disp(data);

% With API key for non-USD
opts = weboptions('Timeout', 30, 'HeaderFields', {'X-API-Key', 'YOUR_API_KEY'});
url = 'https://api.fxmacrodata.com/v1/announcements/eur/policy_rate';
eur = webread(url, opts);
disp(eur);

Generar un cliente tipado para cualquier lenguaje

El API de FXMacroData publica un completo Especificación OpenAPI 3.1. Úselo con openapi-generator para producir clientes totalmente tipados para Kotlin, Swift, Rust, Dart, Ruby, PHP, y 40+ otros idiomas.

# Install the openapi-generator CLI
npm install @openapitools/openapi-generator-cli -g

# Generate a Go client
openapi-generator-cli generate \
  -i https://api.fxmacrodata.com/openapi.json \
  -g go \
  -o ./fxmacrodata-go-client

# Generate a Java client
openapi-generator-cli generate \
  -i https://api.fxmacrodata.com/openapi.json \
  -g java \
  -o ./fxmacrodata-java-client

¿Listo para construir?

Los datos de lanzamiento USD funcionan sin clave, hasta 100 solicitudes/día y 15 minutos detrás de la publicación. Suscríbase para lanzamientos en tiempo real, valores de pronóstico, historial completo, límites más altos y cada moneda.

AI Listo para responder

Datos clave

Página
Quickstart
Sección
Documentación
URL canónico
https://fxmacrodata.com/es-MX/documentation/quickstart
Fuente
Referencias editoriales y de editores oficiales de FXMacroData
Última actualización
Ver metadatos de la página

Procedencia y Confianza

Cite el URL canónico y el campo de fuente arriba. Cuando esté disponible, esta página se mapea a los lanzamientos oficiales del editor y actualizaciones con marca de tiempo.

Pregunta rápida&A;

¿De qué trata esta página? Esta página explica el Quickstart con contexto directamente utilizable para flujos de trabajo de trading, investigación y API.

¿Qué fuente debe citarse? Use el URL canónico y el campo de fuente listado; cite referencias de editores oficiales cuando estén disponibles.

¿Qué tan reciente es este contenido? El último valor actualizado arriba refleja los metadatos de la página o la marca de tiempo de los últimos datos disponibles.

¿Puede esto ser usado en asistentes AI? Sí. Esta sección está estructurada intencionalmente para la recuperación y citación en asistentes de chat.

Packs de prompts

Utilice esto en ChatGPT, Claude, Gemini, Mistral, Perplexity o Grok para obtener resultados consistentes y conscientes de la fuente.

Compartir página X LinkedIn Correo electrónico