In this frozen ECB EUR/USD snapshot, ordinary-change population standard deviation was 0.467% in 2016–2020 and 0.479% in 2021–2025. Maximum reference-rate drawdown was 14.30% and 22.48%. The dispersion measures are close, but the historical paths differ. These are changes between consecutive reference observations, sometimes several calendar days apart. They are not executable prices, trader-equity drawdowns or strategy returns.
A single volatility number can conceal the path you are trying to understand. We downloaded the ECB USD-per-EUR series for 2016–2025, froze the response and calculated the same descriptive measures in two consecutive five-year windows. The question is limited: how much does the observed risk description change when the selected period changes? There is no entry rule, position size or broker comparison.
What exactly does the data measure?
The input is EXR.D.USD.EUR.SP00.A, quoted as US dollars for one euro. There are 2,560 observations from 2016-01-04 to 2025-12-31. The ECB describes these reference rates as information-only values and strongly discourages transaction use. Its official framework states: “The rates are intended for information purposes only.” A fall in this quote measures euro depreciation against the dollar, not automatically a loss for every currency exposure.
The CSV supplies one reference observation per published date. It has no intraday high or low, bid–ask spread, executable open or close, volume or financing charge. We cannot use it to count doji, establish stop fills or reconstruct a trading account. A daily label also does not make every adjacent pair exactly 24 hours apart. Every derived row records its predecessor date.
How different are the two distributions?
| Period | Observations / changes | Simple-change SD | Log-change SD | Absolute changes >1% | Rate drawdown |
|---|---|---|---|---|---|
| 2016-2020 | 1279 / 1278 | 0.467% | 0.467% | 49 (3.83%) | 14.30% |
| 2021-2025 | 1281 / 1280 | 0.479% | 0.478% | 65 (5.08%) | 22.48% |
| 2016-2025 | 2560 / 2559 | 0.473% | 0.473% | 114 (4.45%) | 23.44% |
The headline SD divides the squared-deviation sum by the number of observed changes. Sample SD divides by one fewer change; both are supplied in the full results. Neither is annualised. Ordinary-change sample SD is 0.467654% and 0.478712%. Log-change 1st-to-99th percentile ranges are -1.118% to 1.180% and -1.307% to 1.290%. These describe the samples, not predicted bounds for the next observation.
The later window has more ordinary changes exceeding 1% in absolute value, yet a slightly smaller mean absolute change: 0.342%, compared with 0.352% in 2016–2020. One summary cannot represent the entire distribution. The comparison does not establish a permanent regime or statistical significance; no such test was performed.
Open the full chart ↗
Why does reference-rate drawdown differ more?
For 2016–2020, the largest in-window decline runs from 1.2493 on 15 February 2018 to 1.0707 on 20 March 2020: 14.30%. For 2021–2025, it runs from 1.2338 on 6 January 2021 to 0.9565 on 28 September 2022: 22.48%. The running peak resets at each period's start.
The full 2016–2025 window connects the earlier 1.2493 peak to the later 0.9565 trough: 23.44%, calculated as 100 × (1 − 0.9565 / 1.2493). This sequence can miss intraday extremes. It includes no leverage, interest, spread, tax, financing or execution model. Calling it a trader-equity drawdown would change the calculation's meaning.
How can another reader reproduce the result?
Frozen data and explicit calculations
Downloaded 2026-10-07T14:18:17.889247+00:00; calculated 7 October 2026. Ordinary change = 100 × (P / previous P − 1); log change = 100 × ln(P / previous P). Each five-year sample's first observation has no change. The 2021 sample does not borrow a 2020 predecessor. Thus the subperiods have 1,278 and 1,280 changes, while the full period has 2,559, including one cross-period bridge. Missing dates are not filled. Quantiles use linear interpolation at (n − 1) × p. Peak ties retain the earliest peak.
Download the original ECB CSV, the transformed path, the standard-library Python calculation and the independent verifier. Raw SHA-256: 12bda408fce288c0d9f68de03beffc6d89592a8fde37aff2d336b122baaddab3. Independent 50-digit Decimal calculations and an exhaustive earlier-peak comparison confirmed the statistics.
Choose another window and recompute before carrying one historical number into your model. The purpose is to expose sample dependence, not to turn a reference series into a trading recommendation.
ECB reuse conditions require source acknowledgement, accuracy and explicit notice of transformations. ECB observations are freely available; the changes, indices, percentiles, distributions and drawdowns here are our calculations. No ECB endorsement is implied. If republished behind a fee, retain the required notice that the underlying ECB information is available free.
Reproduce the calculations
- Code, data and instructions (ZIP)
- Full results (JSON)
- Rates and our transformations (CSV)
- Source, retrieval time and SHA
The code uses only the Python standard library. The included ECB snapshot reproduces the results offline. Run analyze.py, then verify.py.
Source data: ECB statistics; study A also uses NBP. Calculations, classifications and charts are ours. The underlying ECB information is freely available; no ECB endorsement is implied. Source-use conditions are included in the code packages. AI tools assisted calculations and publication; code and data checks are not an independent expert review.