Швидкий старт

Почніть будь-якою мовою

FXMacroData API — це стандартний JSON REST API. Працює будь-яка мова з підтримкою HTTP. Freemium кінцеві точки часових рядів доступні за останні 90 днів без ключа. Додайте ключ 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 3.1 з openapi-generator-cli для автоматичної генерації клієнтів мовами 40+
Безкоштовні переваги продуктивності: Надіслати Accept-Encoding: gzip на кожен запит (8–12× менші корисні навантаження), повторно використовуйте ETag заголовок відповіді в If-None-Match при повторних опитуваннях (повертає 304 Not Modified без тіла), і передати ?limit=50 у кінцеві точки одного індикатора, такі як /v1/announcements/usd/inflation або /v1/predictions/usd/inflation коли вам потрібні лише нещодавні рядки. Переглянути повний довідник →
Знайдіть ідентифікатори (slugs) індикаторів перед жорстким кодуванням шляхів: Слаги індикаторів варіюються залежно від валюти — 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 об'єкт. Для бектестів та інституційної звітності перевірте point_in_time_safe, has_announcement_datetime, source_type, та is_stale.

Перший виклик API

Швидкий запит

Почніть з ендпоінту живих оголошень. Автентифікація залишається в api_key параметр запиту для прямого тестування в браузері та скриптах.

приклад інфляції EUR GET /api/v1/announcements/eur/inflation
Фрагмент запиту
curl "https://api.fxmacrodata.com/v1/announcements/eur/inflation?api_key=YOUR_API_KEY"

Запити Python

Копійовані Python запити API

Використовуйте ці прямі приклади REST, коли вам потрібен сирий запит API замість обгортки SDK. Замінюйте 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))

інфляція USD з мітками часу відомості

Публічні записи інфляції 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))
Офіційний SDK

Python

Встановіть офіційний fxmacrodata пакет з PyPI. Синхронні та асинхронні клієнти, вивід, готовий для pandas.

pip install fxmacrodata

Використання 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])

Асинхронний клієнт

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} ендпоінт надає прогнозні дані з опитувань ринкового консенсусу, прогнозів центральних банків, IMF World Economic Outlook та опитувань професійних прогнозистів. Прогнози запитуються для конкретної валюти та індикатора, наприклад https://api.fxmacrodata.com/v1/predictions/usd/inflation; запити прогнозів лише для валют не підтримуються. Кожен прогноз пов'язаний зі своїм оголошенням через announcement_id, щоб ви могли об'єднати прогнози з фактичними спостереженнями.

Не сприймайте кожен прогноз як консенсус. prediction_type="fxmacrodata" є оцінкою, створеною FXMacroData; справжній скомпільований консенсус позначений як market_consensus. Доступність прогнозів залежить від релізу — перевірте матриця покриття. Для досліджень без заглядання вперед дотримуйтесь посібник із бектестингу point-in-time.
USD безкоштовний за останні 90 днів — ключ API не потрібен для прогнозів USD у цьому вікні. Повна історія USD та всі інші валюти потребують діючого пробного або платного ключа API.

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_nowcastNowcast моделі центрального або резервного банку
опитуванняОпитування професійних прогнозистів центральним банком (наприклад, 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 — 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 клієнт

npm install @fxmacrodata/client
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.

install.packages(c("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 запитів/день. Підпишіться для отримання вищих лімітів та багатовалютного доступу.

Підсумувати статтю за допомогою AI:

ChatGPT Perplexity Claude Grok Gemini Mistral

AI Готовий до відповіді

Ключові факти

Сторінка
Швидкий старт
Розділ
Документація
Канонічний URL
https://fxmacrodata.com/uk/documentation/quickstart
Джерело
Редакційні та офіційні посилання видавців FXMacroData
Останнє оновлення
Переглянути метадані сторінки

Походження та довіра

Цитуйте канонічний URL та поле джерела вище. Там, де це можливо, ця сторінка відображає офіційні релізи видавця та оновлення з часовими мітками.

Швидке питання&A;

Про що ця сторінка? Ця сторінка пояснює Quickstart із контекстом, що може бути використаний безпосередньо для трейдингу, досліджень та робочих процесів API.

Яке джерело слід цитувати? Використовуйте канонічний URL та зазначене поле джерела; цитуйте офіційні посилання видавця, якщо вони доступні.

Наскільки свіжий цей контент? Останнє оновлене значення вище відображає метадані сторінки або останню доступну часову мітку даних.

Чи можна використовувати це в асистентах AI? Так. Цей розділ навмисно структурований для пошуку та цитування в чат-асистентах.

Пакети промптів

Використовуйте це в ChatGPT, Claude, Gemini, Mistral, Perplexity або Grok для отримання послідовних результатів з урахуванням джерел.

Поділитися сторінкою X LinkedIn Електронна пошта