Saltar al contingut

Inici ràpid

Comença en qualsevol llenguatge

El FXMacroData API és un JSON REST API estàndard per a ús en el servidor. Qualsevol llenguatge amb suport HTTP funciona. Les dades d'anuncis USD, el calendari de publicacions USD i el catàleg de dades són gratuïts sense clau: els 90 dies més recents, amb un retard de publicació de 15 minuts, fins a 100 sol·licituds per dia. Els valors de previsió (USD inclosos), totes les altres monedes, les publicacions en temps real i l'historial complet requereixen una clau API, enviada a la X-API-Key header. Vegeu què és gratuït

URL Base

https://api.fxmacrodata.com

Autenticació

X-API-Clau: YOUR_API_KEY

Autorització: Bearer YOUR_API_KEY

L'herència ?api_key= el paràmetre de consulta està obsolet: les claus a les URL acaben als registres.

Format de resposta

JSON (Content-Type: application/json)

Genera clients tipats automàticament: Utilitzeu el publicat Especificació OpenAPI 3.1 amb openapi-generator-cli per auto-generar clients en idiomes 40+.
Guanyos de rendiment gratuïts: Enviar Accept-Encoding: gzip en cada petició (8–12× càregues més petites), reutilitzeu el ETag capçalera de resposta en If-None-Match en enquestes repetides (retorn 304 Not Modified sense cos), i passar ?limit=50 en endpoints de predictor únic com /v1/announcements/usd/inflation o /v1/predictions/usd/inflation quan només necessitis files recents. Veure la referència completa →
Truqueu a l'API des del vostre servidor: L'API no envia capçaleres CORS a orígens de navegador, per la qual cosa un fetch() des d'una pàgina web és bloquejat pel navegador. Truca a FXMacroData des del seu backend i mantingui la clau API fora del codi del client
Descobreix els slugs dels indicadors abans de codificar les rutes: Els slugs dels indicadors varien segons la divisa — core_pce existeix per a USD però no per a totes les monedes. Llista cada slug que una moneda suporta amb GET /v1/data_catalogue/{currency}, per exemple /v1/data_catalogue/usd. Un 200 el qual data la matriu està buida i que porta no_data.error_code: NO_DATA_IN_REQUESTED_WINDOW significa que el slug és vàlid i només la finestra de data sol·licitada està buida — ampliar start_date/end_date en lloc de canviar el URL o reintentar-ho. Un 404 significa que el slug del tipus de canvi o de l'indicador és incorrecte.
Comproveu la qualitat de la resposta: Els endpoints amb suport de fonts retornen un nivell superior data_quality objecte. Per a backtests i informes institucionals, inspecciona point_in_time_safe, has_announcement_datetime, source_type, i is_stale. point_in_time_safe és fals sempre que qualsevol fila a la finestra porti una hora de publicació derivada del retard de publicació mesurat de la sèrie, així que comprova assumed_release_time_count i el per fila release_time_assumed indicador abans de tractar un fals com a no utilitzable.

Accés al Marketplace

Utilitze FXMacroData a través de RapidAPI

RapidAPI és un canal de mercat opcional per al FXMacroData REST API. FXMacroData proporciona les dades; RapidAPI gestiona la seva subscripció al mercat, la clau API, la quota de peticions i la facturació. No es necessita cap compte o clau FXMacroData independent per a les peticions a través d'aquest canal.

  1. Obre el llistat oficial de FXMacroData i tria un pla. Consulta la pestanya de preus per a la cobertura actual, les quotes i els límits de taxa.
  2. Copia la teva clau de RapidAPI des del playground de l'endpoint i emmagatzema-la al teu entorn de servidor com RAPIDAPI_KEY.
  3. Envia requeriments a https://fxmacrodata1.p.rapidapi.com amb ambdós encapçalaments de RapidAPI, com s' mostra a continuació.
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 l'endpoint del Marketplace

La llista inclou anuncis, calendaris de llançament, el catàleg de dades, tipus de canvi FX diaris, posicionament COT, notícies de bancs centrals, sessions de mercat i una verificació de l'estat del sistema. L'accés a divises i històric depèn del seu pla de RapidAPI. Utilitzi el catàleg per trobar els slugs d'indicadors suportats.

Accés directe a FXMacroData

Els altres exemples d'aquesta pàgina utilitzen api.fxmacrodata.com i un FXMacroData X-API-Key quan sigui els requisits. Les claus i les subscripcions són independents entre canals. Una subscripció de RapidAPI cobreix els endpoints REST esmentats; les subscripcions del lloc web, MCP, les previsions, el streaming i els webhooks són ofertes separades.

Mantingues la teva clau fora del codi del navegador i dels repositoris públics. Per a conjunts de resultats més llargs, segueix pagination.next_offset until pagination.has_more és fals. Mai enviï la seva clau API al suport tècnic.

Primera trucada a API

Petició ràpida

El primer fragment s'executa tal qual: no cal cap clau per a les dades de USD, servides 15 minuts després de la publicació. Afegeix X-API-Key per a totes les monedes 22 i l'entrega en temps real, enviada des d'un servidor, script o notebook.

Sense clau · inflació USD GET /v1/announcements/usd/inflation
1 · No cal clau
# USD inflation, no key: 15-minute delay, most recent 90 days
curl "https://api.fxmacrodata.com/v1/announcements/usd/inflation?limit=5"
2 · Amb la clau 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"

Peticions Python

Peticions Python API copiables

Utilitzi aquests exemples directes de REST quan vulgui la petició bruta de API en lloc d'un wrapper SDK. Substituiu YOUR_API_KEY només en rutes protegides.

consens del mercat de la inflació de USD

Previsions de consens, enquestes, bancs centrals, IMF i FXMacroData unides als anuncis realitzats.

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ó amb marca de temps coneguda

Registres d'inflació públics de USD per a backtests de punt en el temps.

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))

història spot EUR/USD FX

Historial diari de preus FX per a gràfics de parelles, models i superposicions de publicació.

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 del tipus de política de AUD

Historial de decisions del banc central amb el moment de la publicació per a recerca sense anticipació.

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))

Calendari de publicacions pròximes JPY

Esdeveniments macro pròxims amb camps de UTC, local de mercat i fusó horària sol·licitada per a la planificació d'alertes, actualitzacions de models i revisions 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))

Preus de la matèria primera de l'or

Sèries temporals oficials de metalls preciosos amb valors diaris i camps de canvi.

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

Instal·leu l'oficial fxmacrodata paquet de PyPI (1.2.x). Els clients sincrònics i asíncrònics retornen diccionaris JSON simples que es carreguen directament a pandas. Client() sense cap clau llegeix el nivell gratuït de USD; transmetreu api_key per a qualsevol altra moneda i lliurament en temps real.

pip install fxmacrodata

Ús de 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")

Utilitzant el REST API directament

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])

Pagina a través de l'historial complet

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")

Client asíncron

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())
Nou

Predicció & Previsions

El /v1/predictions/{currency}/{indicator} endpoint preveu dades de les enquestes de consens del mercat, les projeccions del banc central, el IMF World Economic Outlook i les enquestes de previsors professionals. Les prediccions es sol·liciten per a una moneda i un indicador específics, com https://api.fxmacrodata.com/v1/predictions/usd/inflation; les sol·licituds de predicció només de moneda no estan suportades. Cada predicció està vinculada al seu anunci via announcement_id, perquè puguis unir previsions amb observacions realitzades.

No tractis cada previsió com un consens. prediction_type="fxmacrodata" és una estimació generada per FXMacroData; un consens compilat real s'etiqueta com market_consensus. La disponibilitat de les previsions varia segons la publicació — consulta el matriu de cobertura. Per a la recerca sense anticipació, segueix el guia de backtesting de punt en el temps.
Els valors de previsió necessiten una clau API per a cada moneda, incloent USD. Cobertura — quines fonts preveuen cada indicador — és gratuït sense clau a /v1/predictions/coverage/{currency}. Una clau de prova o de pagament retorna els valors de previsió.

Python — recollir previsions i unir amb les reals

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 — recuperar prediccions per tipus

# 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"

Referència de tipus de predicció

prediction_typeDescripció
market_consensusConsens de l'esdeveniment del mercat o de l'economista compilat, quan està disponible
market_predictionPredicció puntual de pronosticador professional
model_nowcastNowcast de model de banc central o banc de reserva
enquestaEnquesta de bancs centrals a previsors professionals (p. ex. ECB SPF)
central_bank_forecastProjecció oficial del banc central (p. ex. RBNZ MPS, BoC MPR)
central_bank_projectionProjecció oficial del banc central
imf_weoProjecció IMF World Economic Outlook
fxmacrodataPredicció generada per FXMacroData que combina la guia del banc central, enquestes i tendències històriques

cURL

No cal instal·lar res. Funciona des de qualsevol 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 servidor en Node.js (18+), Deno i Bun. El API no envia cap encabezado CORS, així que truqueu-lo des del seu backend en lloc de des del codi del navegador.

Client 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);

Utilitzant Fetch directament

// 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());

Anar

No cal cap paquet extern: la biblioteca estàndard ho gestiona tot.

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

Requereix httr i 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 es necessiten llibreries externes.

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

Utilitza l'integrat webread funció.

% 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);

Genereu un client tipat per a qualsevol llenguatge

El API de FXMacroData publica un complet Especificació OpenAPI 3.1. Utilitza'l amb openapi-generator per produir clients totalment tipats per a Kotlin, Swift, Rust, Dart, Ruby, PHP, i 40+ altres idiomes.

# 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

Preparat per construir?

Les dades de publicació USD funcionen sense clau, fins a 100 sol·licituds/dia i 15 minuts després de la publicació. Subscriu-vos per a publicacions en temps real, valors de previsió, historial complet, límits més alts i totes les monedes.

AI Resposta-llest

Dades clau

Pàgina
Inici ràpid
Secció
Documentació
Canònic URL
https://fxmacrodata.com/ca/documentation/quickstart
Font
Referències editorials i d'editorials oficials d'FXMacroData
Última actualització
Veure metadades de la pàgina

Proveniència i Confiança

Citeu el URL canònic i el camp de font a dalt. Quan està disponible, aquesta pàgina mappa amb les publicacions oficials de l'editor i les actualitzacions amb marca de temps.

Pregunta ràpida&A;

De què tracta aquesta pàgina? Aquesta pàgina explica el Quickstart amb context directament utilitzable per a fluxos de treball de trading, recerca i API.

Quina font s'ha de citar? Utilitzeu el URL canònic i el camp de font llistat; citeu les referències de l'editor oficial quan estiguin disponibles.

Què tan actualitzat està aquest contingut? L'últim valor actualitzat a dalt reflecteix la metàdata de la pàgina o el timestamp de les dades més recents disponibles.

Es pot utilitzar en assistents de AI? Sí. Aquesta secció està estructurada intencionadament per a la recuperació i citació en assistents de xat.

Paquets de prompts

Utilitza-los a ChatGPT, Claude, Gemini, Mistral, Perplexity o Grok per obtenir resultats consistents i conscients de la font.

Comparteix la pàgina X LinkedIn Correu electrònic