{"uid":"cap_AHV4Chti9p4p9_lx-vxGv","slug":"fx-rates-ecb-currency-pair-change-volatility-b20b2961","name":"FX Rates ECB – Currency Pair Change & Volatility","description":"Currency pair move over 7-365 days: percent change, high, low, annualized volatility and where today sits in the range.","url":"https://fx-ecb.x402tookit.com/fx-change?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","required":["base","quote"],"properties":{"base":{"type":"string","description":"Base currency"},"days":{"type":"integer","description":"Window in days, 7 to 365, default 30"},"quote":{"type":"string","description":"Quote currency"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"low":{"type":["null","object"],"properties":{"date":{"type":["null","string"]},"rate":{"type":["null","number"]}}},"asOf":{"type":["null","string"]},"base":{"type":["null","string"]},"high":{"type":["null","object"],"properties":{"date":{"type":["null","string"]},"rate":{"type":["null","number"]}}},"quote":{"type":["null","string"]},"source":{"type":["null","string"]},"fixings":{"type":["null","number"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"summary":{"type":["null","string"]},"verdict":{"type":["null","string"]},"degraded":{"type":["boolean","null"]},"changePct":{"type":["null","number"]},"sourceUrl":{"type":["null","string"]},"startRate":{"type":["null","number"]},"disclaimer":{"type":["null","string"]},"latestRate":{"type":["null","number"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"thresholds":{"type":["null","object"],"properties":{"moveAbsPct":{"type":["null","number"]},"highVolAnnualPct":{"type":["null","number"]}}},"windowDays":{"type":["null","number"]},"attribution":{"type":["null","string"]},"positionInRange":{"type":["null","number"]},"annualizedVolatilityPct":{"type":["null","number"]}}}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_JHVANxvjg5CTnrlQMEShM","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns percent change, high, low, annualized volatility, and range position for a currency pair over a 7–365 day window using ECB reference rates.","exampleAgentPrompt":"How much has EUR/USD moved over the last 90 days — give me the percent change, the high and low, annualized volatility, and where today's rate sits in that range?","exampleUseCases":[{"title":"FX risk briefing for treasury team","prompt":"Can you pull the 30-day stats for USD/JPY — percent change, high, low, volatility, and where today sits in the range? We need it for our weekly FX risk review."},{"title":"Detecting unusual currency moves","prompt":"Has EUR/GBP made any significant move over the last 60 days? Show me the percent change, annualized volatility, and whether today's rate is near the top or bottom of the range."},{"title":"Year-long trend snapshot for a trade report","prompt":"Give me a full 365-day summary of GBP/USD — start rate, latest rate, percent change, annualized volatility, and where we are in the yearly range."}],"resultDescription":"A JSON object containing: the percent change from start to latest rate, the high and low rates with dates, annualized volatility percentage, position of today's rate within the observed range (0–1 scale), start and latest rates, number of ECB fixings used, a plain-language summary and verdict, thresholds for notable moves, data source attribution, and a degraded-data flag if coverage was incomplete.","failureModes":["Missing or invalid base/quote currency codes return an error or empty result","Days parameter outside 7–365 range may be rejected or clamped","Currency pairs not covered by ECB (non-ECB currencies) will return no data","Weekends and ECB holidays reduce available fixings, potentially triggering degraded mode","Network or upstream ECB data outage may return a degraded or partial response"],"whenToPreferThis":"Choose this endpoint when you need statistical context about how a currency pair has moved — not just the current rate, but volatility, range, and trend over a defined window. Ideal for risk assessments, trade briefings, or alerting workflows that need to contextualize today's rate against recent history. Prefer over a simple rate lookup when percent change, volatility, or range position are needed. All data is sourced from official ECB reference rates, making it appropriate for compliance-sensitive or institutional use cases.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-21T07:19:51.560Z","isFirstParty":false,"canonicalSlug":"fx-rates-ecb-currency-pair-change-volatility-b20b2961"}