Live release feed
Sub-second macro releases for FX backtests
Point-in-time history
USD 25/month
Kostenlos testen

By Language

Quick Start Guides

Schneller Start: Verbindung mit FXMacroData mit Node.js

Erhalten Sie mit FXMacroData in Node.js in wenigen Minuten den Betrieb. Deckt die integrierte Fetch-API, Async/Wait-Muster, Multi-Indikator-Anfragen und ein einsatzbereites Skript für das Abrufen von Zentralbankdaten ab.

Auch verfügbar auf English
Share article X LinkedIn Email
Schneller Start: Verbindung mit FXMacroData mit Node.js image

Die FXMacroData REST API ist so konzipiert, dass sie von jeder Sprache aus konsumiert werden kann, die eine HTTP GET-Anfrage stellen kann. Node.js wird mit einer eingebauten fetch implementation from v18 onwards, so there is nothing extra to install for basic usage — just your API key and a few lines of JavaScript. This guide walks you from zero to a working multi-indicator script in under ten minutes.

Was du bauen wirst

Ein eigenständiges Node.js-Skript, das sich anhand der FXMacroData REST API authentifiziert, die Inflations- und Inflationsdaten für mehrere G10-Währungen parallel abruft und eine saubere Zusammenfassungstabelle auf die Konsole druckt bereit für jede Backend-, Serverlose-Funktion oder Automatisierungspipeline.

Voraussetzungen

  • Node.js 18 oder höher v18 führte die globale fetch API; für die Produktion wird v20+ empfohlen
  • npm (mit Node.js gebündelt) nur erforderlich, wenn Sie optionale Pakete hinzufügen möchten
  • Ein FXMacroData API-Schlüssel melden Sie sich an /abonnieren und kopieren Sie Ihren Schlüssel vom Armaturenbrett

Überprüfen Sie Ihre Node.js-Version:

node --version   # should print v18.x.x or later

Schritt 1 Speichern Sie Ihren API-Schlüssel sicher

Verwenden Sie niemals einen API-Schlüssel in Quelldateien, die für die Versionskontrolle verpflichtet sein könnten.

Auf Linux / macOS, fügen Sie zu Ihrem Shell-Profil (~/.bashrc Oder ... ~/.zshrc):

export FXMD_API_KEY="your_actual_api_key_here"

Bei Windows (PowerShell):

$env:FXMD_API_KEY = "your_actual_api_key_here"

Für Node.js-Projekte ist ein .env Die Akte mit dem - Das ist nicht wahr. Die Anwendung von E-Mail-Dateien ist eine beliebte Alternative siehe Schritt 6 für diese Einrichtung.

Schritt 2 Die API-Form verstehen

Jeder FXMacroData-Indikator-Endpunkt folgt dem gleichen Muster, was es einfach macht, einen generischen Abrufhelfer zu erstellen.

GET https://fxmacrodata.com/api/v1/announcements/{currency}/{indicator}?api_key=YOUR_API_KEY

Die Antwort ist JSON mit einem Top-Level data Jedes Element trägt eine dateEine Zahl . val, und (für die meisten Indikatoren) eine announcement_datetime Das zeigt die Sekunde an , in der der Wert freigegeben wurde:

{
  "data": [
    { "date": "2025-03-19", "val": 4.25, "announcement_datetime": "2025-03-19T18:00:00Z" },
    { "date": "2025-01-29", "val": 4.25, "announcement_datetime": "2025-01-29T19:00:00Z" },
    { "date": "2024-12-18", "val": 4.25, "announcement_datetime": "2024-12-18T19:00:00Z" }
  ]
}

Diese saubere, konsistente Struktur erfordert vor der Verwendung in Geschäftslogik, Datenbanken oder nachgelagerten APIs fast keine Transformation.

Schritt 3 Ihr erster Anruf

Erstellen Sie eine Datei namens fxmd.js Das holt den US-Notenbank-Leitzins für die letzten zwei Jahre mit Node.js' eingebauter fetch- Ich weiß .

// fxmd.js  —  requires Node.js 18+
const API_KEY = process.env.FXMD_API_KEY;
const BASE    = "https://fxmacrodata.com/api/v1";

async function getIndicator(currency, indicator, startDate) {
  const url = new URL(`${BASE}/announcements/${currency}/${indicator}`);
  url.searchParams.set("api_key", API_KEY);
  if (startDate) url.searchParams.set("start", startDate);

  const res = await fetch(url.toString());
  if (!res.ok) {
    throw new Error(`API error ${res.status}: ${await res.text()}`);
  }
  const json = await res.json();
  return json.data ?? [];
}

// Fetch the Fed policy rate
const data = await getIndicator("usd", "policy_rate", "2023-01-01");
console.log(`Latest USD policy rate: ${data[0]?.val}% on ${data[0]?.date}`);

- Lassen Sie es laufen.

FXMD_API_KEY=your_key node fxmd.js

Auf höchster Ebene warten im obigen Beispiel wird die oberste Ebene verwendet awaitDas funktioniert in ... .mjs - Die Akten oder wann ? "type": "module" ist in Ihrem package.json. Für CommonJS-Module wickeln Sie die Anrufe in ein async Funktion und rufen Sie sie sofort an (siehe vollständiges Beispiel in Schritt 5).

Schritt 4 Mehrfache Indikatoren parallel abrufen

Promise.all Hier ist ein wiederverwendbares Muster für das Ziehen mehrerer Währungen und Indikatoren auf einmal:

const CURRENCIES  = ["usd", "eur", "gbp", "aud", "jpy"];
const INDICATORS  = ["policy_rate", "inflation"];
const START       = "2024-01-01";

// Build a flat list of [currency, indicator] pairs
const pairs = CURRENCIES.flatMap(c => INDICATORS.map(i => [c, i]));

// Fire all requests in parallel
const results = await Promise.all(
  pairs.map(([currency, indicator]) =>
    getIndicator(currency, indicator, START)
      .then(data => ({ currency, indicator, latest: data[0] ?? null }))
      .catch(err => ({ currency, indicator, latest: null, error: err.message }))
  )
);

// Print a quick summary
for (const row of results) {
  if (row.error) {
    console.log(`${row.currency.toUpperCase()} ${row.indicator}: ERROR — ${row.error}`);
  } else if (row.latest) {
    console.log(
      `${row.currency.toUpperCase()} ${row.indicator}: ${row.latest.val} (${row.latest.date})`
    );
  }
}

Die ... .catch Die Datenverarbeitung ist in der Regel nur in einem Teil der Datenbank durchgeführt.

Schritt 5 Fertigstellung des Drehbuchs

Nachfolgend finden Sie ein vollständiges CommonJS-kompatibles Skript mit ordnungsgemäßem Fehlermanagement, konfigurierbaren Währungs- und Indikatorlisten und Ausgabe, die für das Loggen oder die nachgeschaltete Verarbeitung formatiert ist:

// macro-snapshot.js  —  CommonJS, Node.js 18+
"use strict";

const API_KEY = process.env.FXMD_API_KEY;
const BASE    = "https://fxmacrodata.com/api/v1";

if (!API_KEY) {
  console.error("Error: FXMD_API_KEY environment variable is not set.");
  process.exit(1);
}

// ── Configuration ──────────────────────────────────────────────────────────
const CURRENCIES = ["usd", "eur", "gbp", "cad", "jpy", "aud", "nzd", "chf"];
const INDICATORS = ["policy_rate", "inflation", "unemployment"];
const START_DATE = "2024-01-01";
// ───────────────────────────────────────────────────────────────────────────

async function getIndicator(currency, indicator, startDate) {
  const url = new URL(`${BASE}/announcements/${currency}/${indicator}`);
  url.searchParams.set("api_key", API_KEY);
  if (startDate) url.searchParams.set("start", startDate);

  const res = await fetch(url.toString());
  if (!res.ok) {
    const body = await res.text().catch(() => "");
    throw new Error(`HTTP ${res.status}${body ? ": " + body.slice(0, 120) : ""}`);
  }
  const json = await res.json();
  return Array.isArray(json.data) ? json.data : [];
}

async function main() {
  const pairs = CURRENCIES.flatMap(c => INDICATORS.map(i => [c, i]));

  const results = await Promise.all(
    pairs.map(async ([currency, indicator]) => {
      try {
        const data = await getIndicator(currency, indicator, START_DATE);
        return { currency, indicator, latest: data[0] ?? null, error: null };
      } catch (err) {
        return { currency, indicator, latest: null, error: err.message };
      }
    })
  );

  // Group by currency for readable output
  const byCurrency = {};
  for (const row of results) {
    if (!byCurrency[row.currency]) byCurrency[row.currency] = [];
    byCurrency[row.currency].push(row);
  }

  console.log("\n=== FXMacroData Macro Snapshot ===\n");
  for (const [currency, rows] of Object.entries(byCurrency)) {
    console.log(`  ${currency.toUpperCase()}`);
    for (const row of rows) {
      if (row.error) {
        console.log(`    ${row.indicator.padEnd(20)} — error: ${row.error}`);
      } else if (row.latest) {
        console.log(
          `    ${row.indicator.padEnd(20)} ${String(row.latest.val).padStart(8)}  (${row.latest.date})`
        );
      } else {
        console.log(`    ${row.indicator.padEnd(20)} — no data`);
      }
    }
    console.log();
  }
}

main().catch(err => {
  console.error("Fatal:", err.message);
  process.exit(1);
});

Führen Sie das Skript aus:

FXMD_API_KEY=your_key node macro-snapshot.js

Ausgabe der Proben:

=== FXMacroData Macro Snapshot ===

  USD
    policy_rate             4.25  (2025-03-19)
    inflation               2.40  (2025-04-10)
    unemployment            4.20  (2025-04-04)

  EUR
    policy_rate             2.40  (2025-04-17)
    inflation               2.20  (2025-04-16)
    unemployment            6.10  (2025-03-31)

  GBP
    policy_rate             4.50  (2025-03-20)
    inflation               2.60  (2025-03-26)
    unemployment            4.40  (2025-04-15)
  ...

Schritt 6 Nutzung von Dotenv für die lokale Entwicklung

Beim Aufbau eines größeren Node.js-Projekts ist es bequemer, den API-Schlüssel in einem .env Sie wird automatisch mit dem - Das ist nicht wahr. Packung:

npm install dotenv

Erstellen Sie eine .env Sie können die Datei in Ihrem Projektroot (zu .gitignore unverzüglich):

FXMD_API_KEY=your_actual_api_key_here

Fügen Sie eine Zeile an die Spitze Ihres Drehbuchs hinzu:

require("dotenv").config();   // CommonJS
// or
import "dotenv/config";       // ES module

Der Rest des Drehbuchs lautet: process.env.FXMD_API_KEY Genau wie zuvor keine weiteren Änderungen erforderlich.

In Produktion (Cloud-Funktionen, AWS Lambda, Vercel, Render usw.) einführen FXMD_API_KEY Sie werden als sichere Umgebungsvariable über den Geheimnismanager der Plattform verwendet. .env Datei an die Quellkontrolle.

Schritt 7 Erforschen Sie den vollständigen Indikatorkatalog

Der obige Makro-Snapshot umfasst drei Indikatoren, aber FXMacroData zeigt mehr als 80 Zeitreihen in 14 wichtigen Währungsblöcken. getIndicator Einige Beispiele für hochwertige Forex-Händler:

  • Reale Zinssätze subtrahieren inflation von policy_rate Die Währungspolitik der Gemeinschaft ist in der Tat eine wichtige Rolle bei der Berechnung der realen Zinsdifferenz zwischen zwei Währungen zu spielen. USD-Leistungszinsdokumente für Endpunkte.
  • Daten zur Arbeit Ich bin nicht hier . unemployment- Ich weiß . non_farm_payrollsUnd ... average_hourly_earnings (USD) geben frühzeitig Signale für die Reaktionsfunktionen der Zentralbanken.
  • Gefühl Ich bin nicht hier . consumer_confidence- Ich weiß . pmiUnd ... business_confidence Die Währungsbewegungen können den Indikatoren mit harten Daten um ein bis zwei Monate vorausgehen, bevor sie in den Zinsentscheidungen zu erkennen sind.
  • Handelsströme Ich bin nicht hier . trade_balance- Ich weiß . exportsUnd ... imports Die Währungspaare der USA und der USA werden in den USA und in Europa in den letzten Jahren mit dem Wechselkurs der Währungen in den Vereinigten Staaten und in den Niederlanden verknüpft.

Sie können den vollständigen Katalog für jede Währung unter https://fxmacrodata.com/api/v1/catalogue/{currency}?api_key=YOUR_API_KEY, oder erkunden Sie die interaktiven Dokumente unter Daten-Dokumentation- Ich weiß .

Zusammenfassung

Sie haben jetzt alles, was Sie brauchen, um FXMacroData von Node.js zu konsumieren:

  • Ein Generikum . getIndicator(currency, indicator, startDate) Helfer, der die Auth- und Fehlerprüfung übernimmt
  • Parallele Anfragen mit mehreren Indikatoren über Promise.all mit Fehlerisolation pro Anforderung
  • Ein produktionsfertiges Skript, das Sie planen, auf eine serverlose Funktion bereitstellen oder in ein vorhandenes Node.js-Backend integrieren können
  • Sicheres API-Schlüsselmanagement über Umgebungsvariablen oder dotenv

Natürliche nächste Schritte: Planen Sie das Snapshot-Skript mit einem Cron-Job oder einem Task-Runner wie n8nDie gleiche saubere JSON-Struktur, die das Skript liest, funktioniert identisch, egal ob Sie ein React-Dashboard, eine Express-API oder einen Cloud-Funktion-Trigger erstellen.

Weitere sprachspezifische Leitfäden finden Sie unter Schnelle Anlaufleitungen die Python- und R-Vorführungen decken denselben Indikator-Set mit ökosystemspezifischen Werkzeugen für Analyse und Visualisierung ab.

Blogroll

AI Answer-Ready

Key Facts

Page
Quick Start Nodejs FXmacrodata
Section
Articles
Canonical URL
https://fxmacrodata.com/de/artikel/quick-start-nodejs-fxmacrodata
Source
FXMacroData editorial and official publisher references
Last Updated
2026-06-15 11:06 UTC

Provenance And Trust

Cite the canonical URL and source field above. Where available, this page maps to official publisher releases and timestamped updates.

Quick Q&A

What is this page about? This page explains Quick Start Nodejs FXmacrodata with directly usable context for trading, research, and API workflows.

What source should be cited? Use the canonical URL and the listed source field; cite official publisher references when available.

How fresh is this content? The last updated value above reflects the page metadata or latest available data timestamp.

Can this be used in AI assistants? Yes. This section is intentionally structured for retrieval and citation in chat assistants.

Prompt Packs

Use these in ChatGPT, Claude, Gemini, Mistral, Perplexity, or Grok for consistent source-aware outputs.