Ātrāksākums
Sāciet darbu jebkurā valodā
FXMacroData API ir standarta JSON REST API. Der jebkura valoda ar HTTP atbalstu. Freemium laika sērijas punkti ir pieejami pēdējām 90 dienām bez atslēgas. Pievienojiet individuālu API atslēgu, lai atbloķētu pilnu vēsturi un maksas punktu grupām.
Bāzes URL
https://api.fxmacrodata.com
Autentifikācija
X-API-Atslēga: YOUR_API_KEY
Authorization: Bearer YOUR_API_KEY
?api_key=YOUR_API_KEY
Atbildes formāts
JSON (Content-Type: application/json)
openapi-generator-cli lai automātiski ģenerētu klientus 40+ valodās.
Accept-Encoding: gzip katram pieprasījumam (8–12× mazāki dati), atkārtoti izmantojiet ETag atbildes galvene If-None-Match atkārtotās aptaujās (atgriezas 304 Not Modified bez korpusa), un nodot ?limit=50 viena indikatora gala punktos, piemēram, /v1/announcements/usd/inflation vai /v1/predictions/usd/inflation kad jums ir vajadzīgas tikai nesenākās rindas. Skatīt pilnu referenci →
core_pce eksistē USD uchun, bet nevis katrai valūtai. Uzsrakstiet visus slugus, ko valūta atbalsta, ar GET /v1/data_catalogue/{currency}, piemēram /v1/data_catalogue/usd. 404 ar error_code: NO_DATA_IN_REQUESTED_WINDOW nozīmē, ka slugs ir derīgs un tikai pieprasītā datuma loga ir tukšs — paplašināt start_date/end_date nevis mainot URL.
data_quality objekts. Backtestiem un institucionālai atskaišu sagatavošanai pārbaudiet point_in_time_safe, has_announcement_datetime, source_type, un is_stale.
Pirmais API calls
Ātrs pieprasījums
Sāciet ar dzīva paziņojuma punktu. Autentifikācija paliek api_key vaicājuma parametrs tiešai pārlūka un skripta testēšanai.
curl "https://api.fxmacrodata.com/v1/announcements/eur/inflation?api_key=YOUR_API_KEY"
Python pieprasījumi
Kopējami Python API pieprasījumi
Izmantojiet šos tiešos REST piemērus, ja vēlaties saņemt neapstrādātu API pieprasījumu vietā SDK aptikšanai. Aizstājiet YOUR_API_KEY tikai aizsargātajos maršrutos.
USD inflācijas tirgus konsenss
Konsensuss, aptaujas, centrālbanku, IMF un FXMacroData prognozes, savienotas ar realizētiem paziņojumiem.
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 inflācija ar known-at laika zīmēm
Publiski USD inflācijas ieraksti punktā-laikā backtestiem.
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 vērtību vēsture
Ikdienas FX cenu vēsture pāru shēmām, modeļiem un izlaides pārklājumiem.
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 politikas likmes vēsture
Centrālbanku lēmumu vēsture ar publicēšanas laikiem pētniecībai bez nākotnes skatīšanās.
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 gaidāmā publicēšanas grafiks
Gaidāmie makro notikumi ar UTC, tirgus vietējiem un pieprasītajām laika zonām brīdinājumu plānošanai, modeļu atjaunināšanai un tirdzniecības pārskatīšanai.
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))
Zelta preču cenas
Oficiālās draigmetālu laika sērijas ar päivas vērtībām un izmaiņu lielumiem.
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
Instalēt oficiālo fxmacrodata pakete no PyPI. Sinhronie un asinhronie klienti, pandas-gatavi rezultāti.
Izmantojot 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")
Izmantojot REST API tieši
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])
Async klients
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())
Prognozes & Prognozes
The /v1/predictions/{currency}/{indicator} endpoint sniedz prognožu datus no tirgus konsensusa aptaujām, centrālbanku projekcijām, IMF World Economic Outlook un profesionālo prognozētāju aptaujām. Paredzējumi tiek pieprasīti konkrētai valūtai un indikatoram, piemēram, https://api.fxmacrodata.com/v1/predictions/usd/inflation; tikai valūtas prognožu pieprasījumi netiek atbalstīti. Katra prognoze ir saistīta ar tās paziņojumu caur announcement_id, lai jūs varētu apvienot prognozes ar realizētiem novērojumiem.
prediction_type="fxmacrodata" ir FXMacroData ģenerēts novērtējums; īsts apkopots konsenss ir marķēts kā market_consensus. Prognožu pieejamība variē atkarībā no izlaides — pārbaudiet pārklājuma matrica. Pētniecībai bez nākotnes skatīšanās sekojiet punktā-laikā backtesting ceļvedis.
Python — iegūt prognozes un savienot ar faktiskiem datiem
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 — saņemt prognozes pēc veida
# 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"
Prognozes veidu atsaucmes
| prediction_type | Apraksts |
|---|---|
| market_consensus | Sastavīts tirgus vai ekonomistu notikumu konsenss, ja tas ir pieejams |
| market_prediction | Profesionāla prognozētāja punktu prognoze |
| model_nowcast | Centrālbanku vai rezervbanku modeļa nowcast |
| aptauja | Centrālbankas profesionālo prognozētāju aptauja (piemēram, ECB SPF) |
| central_bank_forecast | Oficiāla centrālbankas projekcija (piemēram, RBNZ MPS, BoC MPR) |
| central_bank_projection | Oficiālā centrālbanku prognoze |
| imf_weo | IMF World Economic Outlook projekcija |
| fxmacrodata | FXMacroData ģenerēts paredzējums, kas apvieno centrālbanku vadību, aptaujas un vēsturiskās tendences |
cURL
Instalēšana nav nepieciešama. Darbojas jebkurā terminālā.
# 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
Darbojas Node.js (18+), Deno, Bun un mūsdienīgos pārlūka ar Fetch API.
Oficiāls npm klients
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);
Izmantojot Fetch tieši
// 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());
Iet
Ārējie paketes nav nepieciešamas — standarta bibliotēka nodrošina visu.
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
Prasa httr un 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
Izmantošana java.net.http (Java 11+). Ārējās bibliotēkas nav nepieciešamas.
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
Izmantošana 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
Izmanto iebūvēto webread funkcija.
% 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);
Ģenerēt tipizētu klientu jebkurai valodai
FXMacroData API publicē pilnīgu OpenAPI 3.1 specifikācija. Izmantojiet to ar openapi-generator lai izveidotu pilnībā tipizētus klientus Kotlin, Swift, Rust, Dart, Ruby, PHP un 40+ citām valodām.
# 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
Gatavs būvēt?
USD gala punkti atbalsta bezatslēgas novērtēšanu līdz 100 pieprasījumiem/dienā. Pierakstieties augstākiem limitiem un daudzvalūtu piekļuvei.