Ātrāksākums
Sāciet darbu jebkurā valodā
FXMacroData API ir standarta JSON REST API servera puses izmantošanai. Der jebkura valoda ar HTTP atbalstu. USD paziņojumu dati, USD publicācijas kalendārs un datu katalogs ir bezmaksas bez atslēgas: pēdējās 90 dienas, ar 15 minūšu publicācijas aizkavējumu, līdz 100 pieprasījumiem dienā. Prognozētām vērtībām (USD ieskaitot), visām pārējām valūtām, reāllaika publicākcijām un pilnai vēsturei ir nepieciešama API atslēga, ko nosūta X-API-Key header. Skatīt, kas ir bezmaksas
Bāzes URL
https://api.fxmacrodata.com
Autentifikācija
X-API-Atslēga: YOUR_API_KEY
Authorization: Bearer YOUR_API_KEY
Vecākais ?api_key= izziņas parametrs ir novecotējis: atslēgas URL adresēs nonāk žurnālos.
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 →
limit pieņem līdz 100. Lai apkopotu pilnu diapazonu, atkārtojiet pieprasījumu ar offset iestatīt uz pagination.next_offset until pagination.has_more is false. Skatieties Python cilku ↓
fetch() no tīmekļa lapas tiek bloķēts pārlūka. Izsauciet FXMacroData no sava backenda un neatlieciet API atslēgu klientu puses kodā.
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. 200, kura data masīvs ir tukšs un kurš nes no_data.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 vai mēģinot vēlreiz. 404 nozīmē, ka valūtas vai indikatora slugs ir nepareizs.
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. point_in_time_safe ir nepatiess ikreiz, kad jebkurā loga rindā ir norādīts publicēšanas laiks, kas ir izvests no sērijas mērītā izlaišanas aizturējuma, tāpēc pārbaudiet assumed_release_time_count un par katru rindu release_time_assumed karojiet pirms apstrādes kļūdu kā nevar izmantojamu.
Piekļuve tirgum
Izmantot FXMacroData caur RapidAPI
RapidAPI ir izvēles tirgus kanāls FXMacroData REST API. FXMacroData nodrošina datus; RapidAPI pārvalda jūsu tirgus abonementu, API atslēgu, pieprasījumu kvotu un rēķināšanu. Lai veiktu pieprasījumus caur šo kanālu, nav nepieciešama atsevišķa FXMacroData konta vai atslēgas.
- Atvērt oficiāls FXMacroData saraksts un izvēlieties plānu. Pārbaudiet cenas sīkumu sadaļu, lai uzzinātu par pašreizējo pārklājumu, kvotām un ierobežojumiem.
- Nokopējiet savu RapidAPI atslēgu no gal点的 (endpoint) izpētes laukiem un saglabājiet to savā servera vidē kā
RAPIDAPI_KEY. - Sūtīt pieprasījumus uz
https://fxmacrodata1.p.rapidapi.comar abiem RapidAPI virsrakstiem, kā tas parādīts zemāk.
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"
Tirgus gal点的 pārklājums
Saraksts ietver paziņojumus, izdošanas kalendārus, datu katalogu, ikdienas FX likmes, COT pozicionēšanu, centrālbankas ziņas, tirgus sesijas un veselības pārbaudi. Piekļuve valūtām un vēsturei ir atkarīga no jūsu RapidAPI plāna. Izmantojiet katalogu, lai atrastu atbalstītus rādītāju identificētājus.
Tieša FXMacroData piekļuve
Citi šajā lapā redzamie piemēri izmanto api.fxmacrodata.com un FXMacroData X-API-Key kad nepieciešams. Atslēgas un abonementi starp kanāliem ir atsevišķi. RapidAPI abonements aptver uzskaitītos REST galvarus; tīmekļa vietņu abonementi, MCP, prognozes, straumēšana un webhooks ir atsevišķi piedāvājumi.
Neatstājiet savu atslēgu pārlūka kodā un publiskos repozitorijos. Garākiem rezultātu kopumiem sekojiet pagination.next_offset until pagination.has_more ir nepatiesns. Nekad nesūtiet savu API atslēgu atbalstam.
Pirmais API calls
Ātrs pieprasījums
Pirmais fragments darbojas tāpat: nepieciešams atslēga USD datiem, tiek sniegti 15 minūtes pēc izdošanas. Pievienot X-API-Key visām 22 valūtām un reāllaika piegādēm, kas sūtītas no servera, skripta vai žurnāla.
# USD inflation, no key: 15-minute delay, most recent 90 days
curl "https://api.fxmacrodata.com/v1/announcements/usd/inflation?limit=5"
# 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"
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"
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 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"
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))
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"
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))
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",
}
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))
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"
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))
Python
Instalēt oficiālo fxmacrodata pakotne no PyPI (1.2.x). Sinhronie un asinhronie klienti atgriež vienkāršas JSON dikcionārus, kas uzreiz ielādējas pandas. Client() bez atslēgas lasa bezmaksas USD līmeni; pāreiet api_key visām citām valūtām un reāllaika piegādēm.
Izmantojot 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")
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])
Lapošana caur pilnu vēsturi
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")
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.
/v1/predictions/coverage/{currency}. Izmēģinājuma vai apmaksāta atslēga atgriež prognozes vērtības.
Python — iegūt prognozes un savienot ar faktiskiem datiem
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 — saņemt prognozes pēc veida
# 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"
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 — 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
Strādā servera pusē Node.js (18+), Deno un Bun. API nesūta CORS galgalītes, tāpēc izsauciet to no sava backenda, nevis no pārlūka koda.
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 = 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());
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", add_headers(`X-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, 'HeaderFields', {'X-API-Key', 'YOUR_API_KEY'}); url = 'https://api.fxmacrodata.com/v1/announcements/eur/policy_rate'; 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 publicācijas dati darbojas bez atslēgas, līdz 100 pieprasījumiem/dienā un 15 minūtes pēc publicēšanas. Abonējiet reāllaika publicācijas, prognozētās vērtības, pilnu vēsturi, augstākus limitiem un visas valūtas.