FinObservatory

Reserve-currency composition / Methodology

FinWeave /reserves layer: methodology

How the reserve-currency composition page is built, what it shows, and every caveat that bears on reading it. Full retrieval detail (exact URLs, byte and line counts, the fetch/build scripts) lives in data/raw/cofer/SOURCE.md and is summarized in docs/data_provenance.md ("FinWeave reserve-currency composition layer"). This doc is the reader-facing companion to the page at /reserves.

What this layer is

The currency composition of the world's allocated official foreign-exchange reserves, quarterly from 1999-Q1 to the latest published quarter, for five currencies: the US dollar (USD), euro (EUR), Japanese yen (JPY), pound sterling (GBP), and Chinese renminbi (CNY). Every figure on the page is read directly from data/parquet/cofer.parquet at request time (functions in src/lib/reserves.ts); nothing is hardcoded, so the page updates with each data refresh.

Source

Dataset. IMF Statistics Department, Currency Composition of Official Foreign Exchange Reserves (COFER), dataflow IMF.STA:COFER(7.0.1). Retrieved 2026-07-10 via the IMF SDMX 2.1 REST API (api.imf.org), SDMX-CSV response.

Key used. COUNTRY=G001 (World), INDICATOR=AFXRA (Allocated foreign exchange reserves), FXR_CURRENCY in {USD, EUR, JPY, GBP, CNY}, TYPE_OF_TRANSFORMATION in {SHRO_PT (share of allocated reserves, percent), NV_USD (nominal value, USD)}, FREQUENCY=Q. The page uses the SHRO_PT (share) rows.

Currency-level breakdowns exist only under AFXRA (allocated reserves): the unallocated portion is by construction not decomposed by currency, so a share is always a share of allocated reserves, never of total reserves. COFER individual -country submissions are kept strictly confidential by the IMF, so only aggregate groupings (here, G001 "World") are ever published; there is no country-level COFER to show.

What the page shows, and the exact figures

  • Latest-quarter shares (coferLatest()): each currency's SHRO_PT value at the most recent quarter, plus a computed residual = 100 - sum(the five).
  • The composition chart (coferShares()): the full quarterly SHRO_PT series for all five currencies, drawn as five lines. The renminbi's line begins at its first reported quarter (2016-Q4), not at zero before then.
  • The dollar-share storyline (usdStory(), currencyAnchors()): first, latest, all-time peak and all-time trough of each currency's share, computed by ordering the series. The prose states only what these anchors say; no trend is asserted beyond the numbers.

The five-currency subset limitation (read before quoting a share)

This data pull carries only the five major currencies. Their allocated shares therefore sum to roughly 89%, not 100%. The remaining ~11% is other allocated currencies (the Australian and Canadian dollars, the Swiss franc, and a small "other currencies" bucket) that were not pulled. It is not unallocated reserves. The page states this residual explicitly and labels every share as a share of allocated reserves.

For context, a separate wildcard-currency pull of all nine reported currencies for 2026-Q1 sums to 100.0000001% (float rounding), and COFER's own CI_T ("all currencies") reports exactly 100 for that quarter, confirming the five pulled shares are genuine percent-of-allocated values, not a mislabeled or double-counted series. See data/raw/cofer/SOURCE.md (spot-check 1) for the full breakdown.

Multi-line, not stacked area

The chart draws five independent lines rather than a stacked area. Two reasons: (1) the five carried currencies sum to ~89%, not 100%, so a stacked area would imply a full decomposition the pulled data does not carry; (2) the reader's question is how each currency's share compares against the others and against its own history, which lines answer directly off a shared 0% baseline.

Revision caveat on recent quarters

COFER is reported voluntarily by 147 reporters; recent quarters are provisional until fully reported and revise as late submitters come in. The most recent quarter should be treated as preliminary if used for a headline claim. A cross-check against DBnomics' mirror of COFER (its legacy W00 grouping) matches exactly at 1999-Q1 for all four currencies then reported, with mid-history divergences up to ~2.5pp attributable to G001 and W00 being two independently-revised IMF grouping definitions (documented in data/raw/cofer/SOURCE.md, open item 1). For a precise historical-quarter claim, re-verify that quarter against the live IMF COFER dashboard.

License

IMF data, free to use with attribution: "Source: IMF, Currency Composition of Official Foreign Exchange Reserves (COFER)." No registration or API key required. The confidentiality of individual-country submissions is a structural property of the dataset (only aggregates are published), not a restriction on the World -aggregate data used here.