Хурдан эхлэл
Ямар ч хэлээр эхлээрэй
FXMacroData API нь стандарт JSON REST API юм. HTTP дэмжлэгтэй бүх хэл ажиллана. Түлхүүргүйгээр хамгийн сүүлийн 90 хоногийн freemium цаг цувралын endpoint-ууд боломжтой. Бүрэн түүх болон төлбөртэй endpoint-уудыг нээхийн тулд Individual API түлхүүр нэмнэ үү.
Суурь URL
https://api.fxmacrodata.com
Баталгаажуулалт
X-API-Түлхүүр: YOUR_API_KEY
Authorization: Bearer YOUR_API_KEY
?api_key=YOUR_API_KEY
Хариултын формат
JSON (Content-Type: application/json)
openapi-generator-cli 40+ хэлнүүдээр клиентүүдийг автоматаар үүсгэхэд.
Accept-Encoding: gzip хүсэлт бүрт (8–12× жижиг ачаалал), дахин ашиглах ETag хариултын header-т If-None-Match давтагдсан санал асуулга дээр (буцаана 304 Not Modified биегүйгээр), тэгээд дамжуулах ?limit=50 дараах шиг нэг индикаторын endpoint-ууд дээр /v1/announcements/usd/inflation эсвэл /v1/predictions/usd/inflation зөвхөн сүүлийн үеийн мөрүүд хэрэгтэй үед. Бүрэн лавлахыг үзэх →
core_pce USD -д байдаг боловч валют бүрт байхгүй. Валют бүрийн дэмждэг бүх slug-ийг ... -аар жагсаа GET /v1/data_catalogue/{currency}жишээлбэл /v1/data_catalogue/usd. 404-тэй error_code: NO_DATA_IN_REQUESTED_WINDOW гэдэг нь slug нь хүчинтэй бөгөөд зөвхөн хүссэн огнооны цонх хоосон байна гэсэн үг — өргөжүүлэх start_date/end_date URL -г өөрчлөх биш, харин
data_quality объект. Backtest болон институцийн тайлангийн тулд шалгана уу point_in_time_safe, has_announcement_datetime, source_type, болон is_stale.
Эхний API дуудлага
Хурдан хүсэлт
Шууд зарлалын endpoint-оос эхлээрэй. Баталгаажуулалт нь api_key хөтөч болон скриптээр шууд шалгахын тулд query параметр.
curl "https://api.fxmacrodata.com/v1/announcements/eur/inflation?api_key=YOUR_API_KEY"
Python хүсэлтүүд
Хуулж болох Python API хүсэлтүүд
SDK wrapper-ийн оронд түүхий API хүсэлт авахыг хүсвэл эдгээр шууд REST жишээнүүдийг ашиглана уу. YOUR_API_KEY -г зөвхөн хамгаалалттай замууд дээр соль.
USD инфляцийн зах зээлийн зөвлөлдөх санал
Консенсус, судалгаа, төв банк, IMF, болон FXMacroData-ийн урьдчилсан таамаглалуудыг бодит зарлалуудтай нэгтгэсэн.
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))
known-at цаг хугацаатай USD инфляци
Цаг хугацааны backtest-үүдэд зориулсан нийтийн USD инфляцийн бүртгэлүүд.
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 спот түүх
Хос чартууд, загварууд болон хувилбарын давхмилтын тулд өдөр тутмын FX үнийн түүх.
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 бодлогын хэв률ийн түүх
Ирээдүйг урьдчилан харахгүй судалгаа хийх зориулалттай, гарцын хугацаа бүхий Төв банкны шийдвэрийн түүх.
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 удахгүй гарах нийтлэлийн хуваарь
Сэрэмжлүүлэг төлөвлөх, загварыг шинэчлэх болон арилжааны тойм хийхэд зориулсан UTC, зах зээлийн орон нутгийн болон хүссэн цагийн бүс бүхий ирэх макро үйл явдлууд.
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))
Алтын түүхий эдийн үнэ
Өдөр тутмын утга болон өөрчлөлтийн талбарууд бүхий албан ёсны үнэт металлын цаг хугацааны цуврал.
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
Албан ёсныг суулгах fxmacrodata PyPI-аас багц. Синхрон болон асинхрон клиентүүд, pandas-д бэлэн гаралт.
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 -г шууд ашиглах
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 клиент
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())
Таамаглалууд & Урьдчилсан таамаглал
The /v1/predictions/{currency}/{indicator} endpoint нь зах зээлийн консенсусын судалгаа, төв банкны таамаглал, IMF World Economic Outlook болон мэргэжлийн таамаглагчдын судалгаанаас урьдчилсан мэдээллийг гаргадаг. Тодорхой валют болон индикаторт, жишээ нь https://api.fxmacrodata.com/v1/predictions/usd/inflation; зөвхөн валютын таамаглалын хүсэлтийг дэмжихгүй. Таамаглал бүр нь зарлалттайгаа холбогддог announcement_id, ингэснээр та таамаглалыг бодит ажиглалтуудтай нэгтгэх боломжтой болно.
prediction_type="fxmacrodata" бол FXMacroData-гаар үүсгэсэн тооцоолол юм; жинхэнэ нэгтгэсэн консенсусыг market_consensus. Таамаглалын боломж нь зарлал бүрээс хамаарна — шалгана уу хамрах хүрээний матриц. Ирээдүйг урьдчилан харахгүй судалгаа хийхийн тулд дараахыг дагаарай point-in-time backtesting заавар.
Python — таамаглалуудыг татаж аваад бодит утгуудтай нэгтгэх
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 — төрлөөр таамаглалуудыг татах
# 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"
Таамаглалын төрлүүдийн лавлах
| prediction_type | Тайлбар |
|---|---|
| market_consensus | Боломжтой тохиолдолд нэгтгэсэн зах зээл эсвэл эдийн засагчдын зөвлөлдсөн санал |
| market_prediction | Мэргэжлийн таамаглагчийн цэгэн таамаглал |
| model_nowcast | Төв банк эсвэл нөөц банкны загварын nowcast |
| судалгаа | Төв банкны мэргэжлийн таамаглагчдын судалгаа (жишээ нь ECB SPF) |
| central_bank_forecast | Төв банкны албан ёсны таамаглал (жишээ нь RBNZ MPS, BoC MPR) |
| central_bank_projection | Төв банкны албан ёсны таамаглал |
| imf_weo | IMF Дэлхийн эдийн засгийн төлөвийн таамаглал |
| fxmacrodata | Төв банкны зааварчилгаа, судалгаа болон түүхэн чиг хандлагыг нэгтгэсэн FXMacroData-ийн үүсгэсэн таамаглал |
cURL
Суулгах шаардлагагүй. Аль ч терминалаас ажиллана.
# 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
Node.js (18+), Deno, Bun болон Fetch API бүхий орчин үеийн хөтөчдөд ажиллана.
Албан ёсны npm клиент
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-ийг шууд ашиглах
// 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());
Явах
Гадаад багц шаардлагагүй — стандарт сан бүх зүйлийг зохицуулна.
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
Шаардлагатай 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", query = list(api_key = "YOUR_API_KEY") ) print(fromJSON(content(eur, "text")))
Java
Ашиглалт java.net.http (Java 11+). Гадаад сан шаардлагагүй.
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
Ашиглалт 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
Суурилуулсан хэрэгслийг ашиглана webread функц.
% 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);
Ямар ч хэл дээр төрөлжүүлсэн клиент үүсгэх
FXMacroData API нь бүрэн OpenAPI 3.1 спецификаци. Үүнийг ашиглахдаа openapi-generator Kotlin, Swift, Rust, Dart, Ruby, PHP, болон 40+ бусад хэлнүүдэд бүрэн төрөлжүүлсэн клиентүүдийг бүтээхэд.
# 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
Барихад бэлэн үү?
USD төгсгөлүүд нь өдөрт 100 хүртэлх хүсэлтийг түлхүүргүйгээр үнэлэх боломжийг олгоно. Илүү өндөр хязгаар болон олон валютын хандалтынын тулд захиалгаа хийгээрэй.