სწრაფი დაწყება
დაიწყეთ ნებისმიერ ენაზე
FXMacroData API არის სტანდარტული JSON REST API სერვერზე გამოსაყენებლად. მუშაობს ნებისმიერი ენა, რომელსაც აქვს HTTP მხარდაჭერა. USD განცხადებების მონაცემები, USD გამოქვეყნების კალენდარი და მონაცემთა კატალოგი უფასოა გასაღების გარეშე: ბოლო 90 დღე, გამოქვეყნებისგან 15-წუთიანი დაგვიანებით, დღეში მაქსიმუმ 100 მოთხოვნით. პროგნოზირებული მნიშვნელობები (USD-ის ჩათვლით), ყველა სხვა ვალუტა, რეალურ დროში გამოქვეყნებები და სრული ისტორია საჭიროებს API გასაღებს, რომელიც იგზავნება X-API-Key header. ნახეთ, რა არის უფასო
საბაზისო URL
https://api.fxmacrodata.com
ავთენტიფიკაცია
X-API-Key: YOUR_API_KEY
ავტორიზაცია: Bearer YOUR_API_KEY
ძველი ?api_key= მოთხოვნის პარამეტრი მოძველებულია: URL-ებში არსებული გასაღებები აღიწერება ლოგებში.
პასუხის ფორმატი
JSON (Content-Type: application/json)
openapi-generator-cli იმისთვის, რომ ავტომატურად დაგენერირდეს კლიენტები 40+ ენებზე.
Accept-Encoding: gzip ყოველ მოთხოვნაზე (8–12× უფრო მცირე მონაცემების ნაკადები), გამოიყენეთ ETag პასუხის ჰედერი If-None-Match განმეორებად გამოკითხვებზე (დაბრუნებული 304 Not Modified body-ს გარეშე), და გადასცეთ ?limit=50 ერთ ინდიკატორზე ორიენტირებულ endpoint-ებზე, როგორიცაა /v1/announcements/usd/inflation ან /v1/predictions/usd/inflation როდესაც მხოლოდ ბოლო სტრიქონები გჭირდებათ. ნახეთ სრული რეფერენსი →
limit მიიღებს მაქსიმუმ 100.. სრული დიაპაზონის მოსაგროვებლად, გაიმეორეთ მოთხოვნა offset განსაზღვრული pagination.next_offset until pagination.has_more is false. იხილეთ Python ციკლი ↓
fetch() ვებგვერდიდან მოთხოვნა ბრაუზერის მიერ არის დაბლოკილი. გამოიძახეთ FXMacroData თქვენი ბექენდიდან და შეინახეთ API გასაღები კლიენტის მხარის კოდის მიღმა.
core_pce არსებობს USD-ისთვის, მაგრამ არა ყველა ვალუტისთვის. ჩამოთვალეთ ყველა slug, რომელსაც ვალუტა მხარს უჭერს, GET /v1/data_catalogue/{currency}, მაგალითად /v1/data_catalogue/usd. 200, რომლის data მასივი ცარიელია და რომელიც შეიცავს no_data.error_code: NO_DATA_IN_REQUESTED_WINDOW ნიშნავს, რომ slug-ი ვალიდურია და მხოლოდ მოთხოვნილი თარიღის ფანჯარაა ცარიელი — გაფართოება start_date/end_date ნაცვლად URL-ის შეცვლის ან ხელახალი მცდელობისა. 404 ნიშნავს, რომ ვალუტის ან ინდიკატორის იდენტიფიკატორი (slug) არასწორია.
data_quality ობიექტი. backtest-ებისა და ინსტიტუციური რეპორტინგისთვის, შეამოწმეთ point_in_time_safe, has_announcement_datetime, source_type, და is_stale. point_in_time_safe არის false ყოველთვის, როდესაც ფანჯრის ნებისმიერი სტრიქონი შეიცავს გამოქვეყნების დროს, რომელიც გამომდინარეობს სერიის გაშვების შეფერხებიდან, ამიტომ შეამოწმეთ assumed_release_time_count და თითოეული სტრიქონის release_time_assumed ნიშნავს მანამ, სანამ მცდარს გამოუსადეგრად მიიჩნევთ.
Marketplace წვდომა
გამოიყენეთ FXMacroData RapidAPI-ის მეშვეობით
RapidAPI არის არჩევითი marketplace არხი FXMacroData REST API-ისთვის. FXMacroData აწვდის მონაცემებს; RapidAPI მართავს თქვენს marketplace გამოწერას, API გასაღებს, მოთხოვნის კვოტას და ბილინგს. ამ არხის მეშვეობით მოთხოვნებისთვის ცალკე FXMacroData ანგარიში ან გასაღები არ არის საჭირო.
- გახსენით ოფიციალური FXMacroData ჩამონათვალი და აირჩიეთ ტარიფი. შეამოწმეთ ფასების ტაბი მიმდინარე დაფარვის, კვოტებისა და ტარიფის ლიმიტების გასაგებად.
- დააკოპირეთ თქვენი RapidAPI გასაღები endpoint playground-იდან და შეინახეთ თქვენს სერვერის გარემოში როგორც
RAPIDAPI_KEY. - გზავნეთ მოთხოვნები
https://fxmacrodata1.p.rapidapi.comორივე RapidAPI ჰედერით, როგორც ქვემოთ არის ნაჩვენები.
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"
Marketplace endpoint-ის დაფარვა
ჩამონათვალი მოიცავს განცხადებებს, გამოშვების კალენდრებს, მონაცემთა კატალოგს, ყოველდღიურ FX კურსებს, COT პოზიციონირებას, ცენტრალური ბანკის სიახლეებს, ბაზრის სესიებს და მდგომარეობის შემოწმებას. ვალუტის და ისტორიის წვდომა დამოკიდებულია თქვენს RapidAPI გეგმაზე. გამოიყენეთ კატალოგი მხარდაჭერილი ინდიკატორის slug-ების საპოვნელად.
პირდაპირი FXMacroData წვდომა
ამ გვერდზე მოცემული სხვა მაგალითები იყენებს api.fxmacrodata.com და FXMacroData X-API-Key როცა საჭიროა. გასაღებები და გამოწერები დანხვევად არის არხებს შორის. RapidAPI გამოწერა მოიცავს მითითებულ REST endpoint-ებს; ვებგვერდის გამოწერები, MCP, პროგნოზები, სტრიმინგი და webhooks არის ცალკეული შეთავაზებები.
შეინახეთ თქვენი გასაღები ბრაუზერის კოდისა და საჯარო რეპოზიტორიებისგან შორს. უფრო გრძელი შედეგების ნაკრებებისთვის, მიჰყევით pagination.next_offset until pagination.has_more არის მცდარი. არასოდეს გაუგზავნოთ თქვენი API გასაღები მხარდაჭერის გუნდს.
პირველი API გამოძახება
სწრაფი მოთხოვნა
პირველი ფრაგმენტი მუშაობს ისე, როგორც არის: არ საჭიროებს გასაღებს USD მონაცემებისთვის, მიწოდებული 15 წუთში გამოქვეყნების შემდეგ. დაამატეთ X-API-Key ყველა 22 ვალუტისთვის და რეალურ დროში მიწოდებისთვის, გაგზავნილი სერვერიდან, სკრიპტიდან ან ნოუთბუქიდან.
# 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 მოთხოვნები
კოპირებადი Python API მოთხოვნები
გამოიყენეთ ეს პირდაპირი REST მაგალითები, როდესაც გსურთ ნედლი API მოთხოვნა SDK wrapper-ის ნაცვლად. შეცვალეთ YOUR_API_KEY მხოლოდ დაცულ მარშრუტებზე.
USD ინფლაციის ბაზრის კონსენსუსი
კონსენსუსის, გამოკითხვის, ცენტრალური ბანკის, IMF და FXMacroData პროგნოზების გაერთიანება რეალიზებულ განცხადებებთან.
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 ინფლაცია ცნობილი დროის ნიშნულებით
საჯარო USD ინფლაციის ჩანაწერებს point-in-time backtest-ებისთვის.
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"
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 პოლიტიკის განაკვეთის ისტორია
ცენტრალური ბანკის გადაწყვეტილებების ისტორია გამოშვების დროის მითითებით, წინასწარი ინფორმაციის გარეშე კვლევისთვის.
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 მომავალი გამოქვეყნებების განრიგი
მომავალი მაკროეკონომიკური მოვლენები UTC -ით, ბაზრის-ლოკალური, და მოთხოვნილი-სათაიმო საველეებით შეტყობინებების დაგეგმვისთვის, მოდელის განახლებისთვის და სავაჭრო მიმოხილვისთვის.
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))
ოქროს სასაქონლო ფასები
ძვირფასი ლითონების ოფიციალური დროითი სერიები ყოველდღიური მნიშვნელობებითა და ცვლილების ველებით.
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
დააინსტალირეთ ოფიციალური fxmacrodata პაკეტი PyPI-დან (1.2.x). სინქრონული და ასინქრონული კლიენტები აბრუნებენ ჩვეულებრივ JSON ლექსიკონებს, რომლებიც პირდაპირ იტვირთება pandas-ში. Client() გვერდის გასვლა გასაღების გარეშე კითხულობს უფასო USD დონეს; გადაეცით api_key ყველა სხვა ვალუტისთვის და რეალურ დროში მიწოდებისთვის.
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")
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])
გვერდების გადარჩევა სრული ისტორიიდან
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 კლიენტი
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())
პროგნოზები & პროგნოზები
ის /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. პროგნოზის ხელმისაწვდომობა იცვლება გამოშვების მიხედვით — შეამოწმეთ coverage მატრიცა. წინასწარი კვლევისთვის, მიჰყევით point-in-time backtesting-ის სახელმძღვანელო.
/v1/predictions/coverage/{currency}. საცდელი ან ფასიანი გასაღები აბრუნებს პროგნოზირებულ მნიშვნელობებს.
Python — ამოიღეთ პროგნოზები და შეაერთეთ რეალურ მონაცემებთან
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 — ამოიღეთ პროგნოზები ტიპის მიხედვით
# 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"
პროგნოზის ტიპების რეფერენსი
| prediction_type | აღწერა |
|---|---|
| market_consensus | შედგენილი ბაზრის ან ეკონომისტთა მოვლენების კონსენსუსი, როცა ხელმისაწვდომია |
| market_prediction | პროფესიონალი პროგნოზის წერტილოვანი პროგნოზი |
| model_nowcast | ცენტრალური ბანკის ან რეზერვის ბანკის მოდელის nowcast |
| გამოკითხვა | ცენტრალური ბანკის გამოკითხვა პროფესიონალი პროგნოზისტებზე (მაგ. ECB SPF) |
| central_bank_forecast | ცენტრალური ბანკის ოფიციალური პროგნოზი (მაგ. RBNZ MPS, BoC MPR) |
| central_bank_projection | ოფიციალური ცენტრალური ბანკის პროგნოზი |
| imf_weo | IMF World Economic Outlook პროგნოზი |
| 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 — 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
მუშაობს სერვერის მხარეს Node.js-ში (18+), Deno-სა და Bun-ში. API არ აგზავნის CORS ჰედერებს, ამიტომ გამოიძახეთ იგი თქვენი ბექენდიდან და არა ბრაუზერის კოდიდან.
ოფიციალური 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 = 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());
წასვლა
გარე პაკეტები საჭირო არ არის — სტანდარტული ბიბლიოთეკა ყველაფერს უმკლავდება.
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", add_headers(`X-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, 'HeaderFields', {'X-API-Key', 'YOUR_API_KEY'}); url = 'https://api.fxmacrodata.com/v1/announcements/eur/policy_rate'; 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 მოთხოვნით და პუბლიკაციიდან 15 წუთის დაგვიანებით. გამოიწერეთ რეალურ დროში გამოქვეყნებებისთვის, პროგნოზირებული მნიშვნელობებისთვის, სრული ისტორიისთვის, უფრო მაღალი ლიმიტებისთვის და ყველა ვალუტისთვის.