Kiirkäivitamine
Alustage mis tahes keeles
FXMacroData API on standardne JSON REST API. Kõik keeled, millel on HTTP tugi, töötavad. Tasuta (freemium) ajasarja lõpppunktid on ilma võtmata saadaval viimaste 90 päeva jaoks. Lisage Individuaalne API võti, et avada täielik ajalugu ja tasulised lõpppunktide pered.
Alus URL
https://api.fxmacrodata.com
Autentimine
X-API-Võti: YOUR_API_KEY
Autoriseerimine: Bearer YOUR_API_KEY
?api_key=YOUR_API_KEY
Vastuse vorming
JSON (Content-Type: application/json)
openapi-generator-cli et automaatselt genereerida kliente 40+ keeles.
Accept-Encoding: gzip igal päringul (8–12× vähem andmepakette), taaskasutage ETag vastuse päis (response header) aastal If-None-Match korduvate külite puhul (tagastab 304 Not Modified ilma bodyta), ja edasi ?limit=50 üksiindikaatori ennupunktidel nagu /v1/announcements/usd/inflation või /v1/predictions/usd/inflation kui vajad ainult hilisemaid rühmi. Vaata täielikku viidet →
core_pce olemas on USD jaoks, kuid mitte iga valuuta jaoks. Loetle iga slug, mida valuuta toetab koos GET /v1/data_catalogue/{currency}, näiteks /v1/data_catalogue/usd. 404 koos error_code: NO_DATA_IN_REQUESTED_WINDOW tähendab, et slug on kehtiv ja ainult soovitud kuupäeva aken on tühi — laiendada start_date/end_date va Rather kui URL muutmine.
data_quality objekt. Backtestide ja institutsionaalse aruandluse jaoks kontrollige point_in_time_safe, has_announcement_datetime, source_type, ja is_stale.
Esimene API kutse
Kiire päring
Alustage live-teadaande lõppkogupunktiga. Autentimine jääb api_key päringu parameeter otsese brauseri ja skripti testimiseks.
curl "https://api.fxmacrodata.com/v1/announcements/eur/inflation?api_key=YOUR_API_KEY"
Pythoni päringud
Kopeeritavad Python API päringud
Kasutage neid otseseid REST näiteid, kui soovite råvara API päringut selle asemel, et kasutada SDK wrapperit. Asendage YOUR_API_KEY ainult kaitstud marsruudidel.
USD inflatsiooni turukonsensus
Konsensus, ülevaatus, keskpanga, IMF ja FXMacroData prognoosid on ühendatud tegelike teadaannetega.
import requests
url = "https://api.fxmacrodata.com/v1/predictions/usd/inflation"
response = requests.get(url, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
USD inflatsioon teadaolevate ajastämpadega
Avalikud USD inflatsiooniasendid ajasipunktide tagasiarvutusteks.
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))
EUR/USD FX spot ajalugu
Daily FX hinna ajalugu paaride graafikute, mudelite ja vabastuse üleklävimiste jaoks.
import requests
url = "https://api.fxmacrodata.com/v1/forex/eur/usd"
params = {
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
AUD poliitilise rate ajalugu
Keskpanga otsuste ajalugu koos väljastamise ajastusega tulevasse vaatamata (no-lookahead) uurimistööks.
import requests
url = "https://api.fxmacrodata.com/v1/announcements/aud/policy_rate"
params = {
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
JPY tulevaste avaldamiste graafik
Tulevad makrotudmused koos väljadega UTC, turu-kohalik ja soovitud ajavöönd teavituste planeerimiseks, mudelite värskendamiseks ja kaubanduse ülevaatuseks.
import requests
url = "https://api.fxmacrodata.com/v1/calendar/jpy"
params = {
"timezone": "Asia/Tokyo",
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
Kulta tootehinnad
Ametlikud väärtusmetallide aegrühmad koos igapäevaste väärtuste ja muutuste välimusega.
import requests
url = "https://api.fxmacrodata.com/v1/commodities/gold"
params = {
"api_key": "YOUR_API_KEY",
}
response = requests.get(url, params=params, timeout=20)
response.raise_for_status()
payload = response.json()
print(payload.get("data", payload))
Python
Installige ametlik fxmacrodata pakett PyPI-st. Sünkroonsete ja asünkroonsete klientide ja pandas-valmis väljundiga.
Kasutades SDK
from fxmacrodata import Client client = Client(api_key="YOUR_API_KEY") # USD inflation — no-key evaluation, up to 100 requests/day data = client.get_indicator("usd", "inflation") # 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")
REST API otsesel kasutamisel
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])
Asünkroonne klient
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())
Prognoosid & Prognoosid
See /v1/predictions/{currency}/{indicator} endpoint pakub prognoosandmeid turukonsensuse küsitlustest, keskpanga prognoosidest, IMF World Economic Outlook'ist ja professionaalsete prognoostega küsitlustest. Ennustusi palutakse konkreetse valuuta ja näitajaga, näiteks https://api.fxmacrodata.com/v1/predictions/usd/inflation; ainult valuuta põhjalised prognoosipäringud ei ole toetatud. Iga prognoos on seotud oma teatamisega läbi announcement_id, et saaksite ühendada prognoosid realiseeritud täiteidega.
prediction_type="fxmacrodata" on FXMacroData poolt loodud hinnang; tõeline koostatud konsensus on märgitud market_consensus. Prognoosi kättesaadavus varieerub avalikustamise järgi — kontrollige coverage matriks. Tulevasuse vältimaks uurimisel, järgige hetkelise ajaluse backtesting juhend.
Python — tõsta prognoosid ja ühenda tegelike andmetega
import requests # Predictions for USD inflation — no-key evaluation, up to 100 requests/day preds = requests.get( "https://api.fxmacrodata.com/v1/predictions/usd/inflation", 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"}, timeout=30, ).json() # Join predictions with actuals using announcement_id actuals = requests.get( "https://api.fxmacrodata.com/v1/announcements/usd/inflation", 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 — kooka ennustusi tüübi järgi
# All USD inflation predictions — free curl "https://api.fxmacrodata.com/v1/predictions/usd/inflation" # Filter by prediction type: market_consensus, imf_weo, central_bank_forecast, survey curl "https://api.fxmacrodata.com/v1/predictions/usd/inflation?prediction_type=market_consensus" # EUR predictions — requires API key curl "https://api.fxmacrodata.com/v1/predictions/eur/inflation?api_key=YOUR_API_KEY" # USD policy-rate predictions curl "https://api.fxmacrodata.com/v1/predictions/usd/policy_rate"
Prognoositüüpide viide
| prediction_type | Kirjeldus |
|---|---|
| market_consensus | Koostatud turu või ökonomisti sündmuste konsensus, kui see on saadaval |
| market_prediction | Professionaalne prognoosija punktiprognoos |
| model_nowcast | Keskpanga või reservipanga mudeli hetkeline prognoos (nowcast) |
| uuring | Keskpanga ülevaade professionaalsetest prognoosijatest (nt ECB SPF) |
| central_bank_forecast | Ametlik keskpanga prognoos (nt RBNZ MPS, BoC MPR) |
| central_bank_projection | Ametlik keskpanga prognoos |
| imf_weo | IMF World Economic Outlook prognoos |
| fxmacrodata | FXMacroData poolt genereeritud ennustus, mis kombineerib keskpanga suunised, küsitlused ja ajaloolised trendid |
cURL
Installimine pole vaja. Töötab igast terminalist.
# USD inflation — no-key evaluation, up to 100 requests/day curl "https://api.fxmacrodata.com/v1/announcements/usd/inflation" # EUR policy rate — pass your API key as a query parameter curl "https://api.fxmacrodata.com/v1/announcements/eur/policy_rate?api_key=YOUR_API_KEY" # Release calendar for Australia curl "https://api.fxmacrodata.com/v1/calendar/aud?api_key=YOUR_API_KEY" # 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 "https://api.fxmacrodata.com/v1/forex/usd/jpy?api_key=YOUR_API_KEY" # Data catalogue (discover available indicators for USD) curl "https://api.fxmacrodata.com/v1/data_catalogue/usd"
JavaScript / TypeScript
Töötab Node.js-is (18+), Deno's, Bun'is ja kaasaegsetes brauserites koos Fetch API'iga.
Ametlik npm klient
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);
Fetch'i otsene kasutamine
// 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 = "YOUR_API_KEY"; const eur = await fetch( `https://api.fxmacrodata.com/v1/announcements/eur/policy_rate?api_key=${API_KEY}` ); console.log(await eur.json());
Mine
Väliseid pakette pole vaja — standardiiviateek kirjast haldab kõike.
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
Nõuab httr ja 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", query = list(api_key = "YOUR_API_KEY") ) print(fromJSON(content(eur, "text")))
Java
Kasutused java.net.http (Java 11+). Mitte väliste kirjastikuid pole vaja.
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
Kasutused 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
Kasutab sisäänehitatud webread funktsioon.
% 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); url = 'https://api.fxmacrodata.com/v1/announcements/eur/policy_rate?api_key=YOUR_API_KEY'; eur = webread(url, opts); disp(eur);
Genereerige tüüpiline klient mis tahes keeles
FXMacroData API avaldab täieliku OpenAPI 3.1 spetsifikatsioon. Kasutage seda koos openapi-generator et luua täielikult tüpitud kliente keeltega Kotlin, Swift, Rust, Dart, Ruby, PHP ja 40+ teised keeled.
# 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
Valmis ehitama?
USD lõpptagid toetavad võtuta hindamist kuni 100 taandust/päeva. Tellige kõrgemate piirangutega ja mitmekarhentilise juurdepääsuga.