Skip to content

Platform News

Product Updates

Introducing the Monetary Stance Factor Endpoint

FXMacroData now exposes a precomputed monetary stance factor for major currencies, turning rates, inflation, and labour-market data into a model-ready score with optional stored components and source observations.

Share article X LinkedIn Email
Pip, the FXMacroData robot mascot, reads a large brass gauge whose needle swings between dove and hawk symbols, mounted on a wood-panelled wall.

FXMacroData now includes a precomputed monetary stance factor endpoint for major currencies. The endpoint turns stored policy rate, risk-free rate, 2-year yield, inflation, and unemployment observations into a model-ready score.

The endpoint is designed for the exact problem that comes up when traders try to score rates in isolation. A high real rate can be currency-supportive, while falling inflation can be a dovish impulse at the same time. Those are not contradictions. They are different parts of the same macro story, and the new factor separates them cleanly.

What changed
You can now request https://api.fxmacrodata.com/v1/factors/{currency}/monetary_stance to retrieve a stored currency-level factor score, with optional component values and source observations when you need to explain or audit the score.

What Is a Monetary Stance Factor?

A monetary stance factor is a normalized macro feature for one currency. Positive scores mean the latest stored data is tighter or more rate-supportive. Negative scores mean the stance is easier or less rate-supportive. The score is not a standalone FX buy/sell signal, and it is not an inverted real-rate z-score. It is a structured input for a broader model.

Monetary stance factor workflow Rates, yields, inflation, and unemployment feed into level and impulse components, which combine into one monetary stance score for model builders. Rates and yields Inflation and labour Level score Impulse score monetary_stance model input

Why It Matters for Traders

Real-rate analysis is useful, but it is easy to overfit one dimension of the rates story. If US inflation falls while the real policy-rate spread becomes positive, a simple inverted real-rate z-score can fight itself: lower inflation points toward less pressure for further Federal Reserve tightening, but the current real-rate level may still be restrictive.

The monetary stance factor treats those as separate model features. The level_score captures how restrictive the current real-rate backdrop is. The impulse_score captures whether the latest observed changes in rates, yields, inflation, and unemployment are becoming more hawkish or more dovish. That lets a model say "restrictive level, dovish impulse" instead of forcing one number to explain both.

Field What it measures How traders can use it
score Combined monetary stance factor for the currency. Use as a normalized macro input in ranking, filtering, and model-building workflows.
level_score Current real-rate tightness across policy rate, risk-free rate, and 2-year yield measures. Identify whether the current rates backdrop is restrictive or accommodative.
impulse_score Recent direction of rates, yields, inflation, and unemployment. Separate current tightness from the latest hawkish or dovish data impulse.
rate_repricing_score Recent changes in nominal rate and 2-year-yield observations. Check whether front-end rates are moving in the same direction as the broader factor.
macro_pressure_score Inflation and labour-market pressure. Distinguish inflation relief and labour-market slack from nominal rate repricing.

Practical Example: USD Monetary Stance

The USD factor is public for lightweight testing, and the same endpoint also accepts the standard X-API-Key header used across FXMacroData examples.

curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/factors/usd/monetary_stance?include_components=true&include_sources=true"

A trimmed live response on July 22, 2026 looked like this:

{
  "currency": "USD",
  "factor": "monetary_stance",
  "as_of": "2026-07-17",
  "score": 0.053,
  "level_score": 0.1506,
  "impulse_score": -0.1281,
  "rate_repricing_score": -0.002,
  "macro_pressure_score": -0.4223,
  "label": "neutral",
  "data": [
    {
      "date": "2026-07-17",
      "score": 0.053,
      "coverage_ratio": 1.0,
      "component_count": 8,
      "components": {
        "real_policy_rate": {
          "value": 0.25,
          "score": 0.1244
        },
        "inflation_impulse": {
          "value": -0.7,
          "score": -0.7321
        },
        "real_2y_yield": {
          "value": 0.68,
          "score": 0.2655
        }
      },
      "source_observations": {
        "policy_rate": {
          "date": "2026-06-17",
          "val": 3.75
        },
        "inflation": {
          "date": "2026-06-30",
          "val": 3.5,
          "change": -0.7
        },
        "gov_bond_2y": {
          "date": "2026-07-17",
          "val": 4.18,
          "change": 0.02
        }
      }
    }
  ]
}

The simple real-policy-rate spread in that response is 3.75 - 3.50 = +0.25 percentage points. That positive real-rate level is captured separately from the negative inflation impulse, where inflation fell by 0.7 percentage points. For a macro model, that distinction is the point: USD can still look restrictive in level terms while the newest inflation move is less hawkish.

Comparing EUR and USD

The endpoint is currency-level rather than pair-level. That keeps the API surface clean and avoids duplicating the same factor across every possible FX pair. To analyse EUR/USD, query EUR and USD separately, then compare the two currency scores inside your own model.

curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/factors/eur/monetary_stance?include_components=true"
curl -H "X-API-Key: YOUR_API_KEY" "https://api.fxmacrodata.com/v1/factors/usd/monetary_stance?include_components=true"

A live EUR response on July 22, 2026 returned:

{
  "currency": "EUR",
  "factor": "monetary_stance",
  "as_of": "2026-07-16",
  "score": -0.2145,
  "level_score": -0.3645,
  "impulse_score": 0.0642,
  "rate_repricing_score": 0.0172,
  "macro_pressure_score": 0.1737,
  "label": "moderately_accommodative"
}

Using the two live snapshots above, a simple EUR/USD relative monetary stance feature would be:

EUR/USD monetary stance spread = EUR score - USD score
EUR/USD monetary stance spread = -0.2145 - 0.0530 = -0.2675

That does not mean EUR/USD must fall. It means the monetary-stance factor alone was less supportive for EUR than USD in that snapshot. A production trading model should still combine the factor with price behaviour, risk sentiment, event risk, positioning, execution costs, and its own validation rules.

When to Request Components

Most automated systems should use the top-level fields first: score, level_score, impulse_score, rate_repricing_score, macro_pressure_score, and label. Add include_components=true when you need the stored building blocks behind the score. Add include_sources=true when you want source endpoint URLs for traceability.

This is useful for research notebooks, model explainability, and customer-facing dashboards. It also keeps live requests efficient because the endpoint reads stored factor snapshots rather than recalculating multiple macro collections every time someone queries it.

Get Started

Start with the public USD factor route at https://api.fxmacrodata.com/v1/factors/usd/monetary_stance. Subscriber access for AUD, CAD, CHF, EUR, GBP, JPY, and NZD uses the same path shape with the relevant currency code and a paid API key.

For discovery, use the data catalogue or the API reference. The current OpenAPI schema advertises /v1/factors/{currency}/{factor} for AUD, CAD, CHF, EUR, GBP, JPY, NZD, and USD, with monetary_stance as the first supported factor slug.

FXMacroData API data

Data endpoints used in this article

The following FXMacroData API endpoints supplied data used in this article.

Explore the FXMacroData API reference

Frequently asked

Questions about this topic

What is the main point of the monetary stance factor endpoint?

It provides a precomputed currency-level factor score that combines stored rate, yield, inflation, and unemployment observations into a model-ready monetary stance signal.

Is monetary_stance a buy or sell signal?

No. The score is a macro factor input. Positive values indicate a tighter or more rate-supportive stance, while negative values indicate easier or weaker rate support.

Can I compare EUR and USD with this endpoint?

Yes. Query each currency separately, then compare the currency-level scores inside your model. FXMacroData does not duplicate the factor across every possible pair.

Keep reading

Blogroll

AI Answer-Ready

Key Facts

Page
Introducing the Monetary Stance Factor Endpoint
Section
Articles
Canonical URL
https://fxmacrodata.com/articles/introducing-monetary-stance-factor-endpoint
Source
FXMacroData editorial and official publisher references
Last Updated
2026-10-05 15:23 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 the main point of the monetary stance factor endpoint? It provides a precomputed currency-level factor score that combines stored rate, yield, inflation, and unemployment observations into a model-ready monetary stance signal.

Is monetary_stance a buy or sell signal? No. The score is a macro factor input. Positive values indicate a tighter or more rate-supportive stance, while negative values indicate easier or weaker rate support.

Can I compare EUR and USD with this endpoint? Yes. Query each currency separately, then compare the currency-level scores inside your model. FXMacroData does not duplicate the factor across every possible pair.

Prompt Packs

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

Share page X LinkedIn Email