Canadian-dollar FX pressure intelligence (monthly)
Monthly Canadian-dollar foreign-exchange pressure intelligence from the Bank of Canada's keyless Valet web service (FX_RATES_MONTHLY: monthly-average rates, CAD per unit of foreign currency, 2017-01 onward). Each row is one month x one of 21 consistently published currencies: the published rate, a 2017-01=100 CAD-strength index with 1-month / 12-month / 3-month-annualized percent changes, the index's position in its trailing-12-month range and its 60-month z-score, 12-month record-high/low flags, and a per-month YoY strength rank across currencies. Month-level context repeats on every row: currency breadth (share of currencies the CAD gained against year over year), median YoY/MoM strength, and a documented 0-100 cad_strength_score (55% winsorized median YoY, 45% breadth, min-maxed over panel history) with quartile strength_tier s1..s4 and broad-strength (>=70%) / broad-weakness (<=30%) flags. Six inconsistently published series (MYR, THB, VND, RUB, SAR, PLN) are excluded with documented reasons. Caveats: the latest month is subject to revision; monthly averages are indicative rates from aggregated price quotes; the strength score is a relative history gauge, not a forecast. Coverage: Canada base currency, monthly, 2017-01 onward. Provenance: Bank of Canada Valet (commercial reuse allowed with attribution). Primary key: (month, currency_code). Join keys: currency_code (ISO 4217), country_code (ISO 3166-1 alpha-3; empty for EUR), month. Cadence: monthly.
- Source
- Bank of Canada (Valet)
- Rows
- 2,436
- Columns
- 24
- Source cadence
- Monthly
- Last refreshed
- Sep 27, 2026
- Theme
- economy
| Column | Type | Description |
|---|---|---|
| month | string | Reference month, anchored to the first of the month (ISO date). The panel covers 2017-01 onward (the Valet FX_RATES_MONTHLY group starts 2017-01). (unit: ISO date) |
| currency_code | string | ISO 4217 currency code of the foreign currency. (unit: ISO 4217) |
| currency_name | string | Human-readable currency name (from the curated Valet series labels). |
| country_code | string | ISO 3166-1 alpha-3 of the currency's main issuing country (via hub.normalize currency_country); honestly empty for EUR (no single issuing country). (unit: ISO 3166-1 alpha-3) |
| rate_cad_per_fx | float | Published monthly-average exchange rate: Canadian dollars per unit of the foreign currency, kept verbatim from Valet. (unit: CAD per unit of foreign currency) |
| cad_strength_index | float | 100 * (rate in 2017-01 / rate). 2017-01 = 100 for every currency. Rises when the Canadian dollar strengthens against the currency, falls when it weakens. (unit: index (2017-01 = 100)) |
| cad_mom_pct | float | Month-over-month percent change of cad_strength_index. Positive = the CAD strengthened. Null for the first window month. (unit: percent) |
| cad_yoy_pct | float | Year-over-year percent change of cad_strength_index. Positive = the CAD strengthened versus a year ago. Null for the first 12 window months. (unit: percent) |
| cad_3m_ann_pct | float | 3-month percent change of cad_strength_index, annualized ((idx/idx.shift(3))**4 - 1). Null for the first 3 window months. (unit: percent annualized) |
| strength_range_pos_12m | float | Position of cad_strength_index inside its trailing 12-month range: 0 = 12m low for the CAD, 1 = 12m high. Null when the trailing range is zero or shorter than 12 months. (unit: 0-1) |
| strength_zscore_60m | float | Z-score of cad_strength_index versus its trailing 60-month mean/std. Null until 60 months of history exist (first defined 2021-12). (unit: z-score) |
| strength_rank | integer | Per-month rank of cad_yoy_pct descending across the 21 currencies (ties share the minimum rank); 1 = the currency the CAD strengthened most against that month. Null when cad_yoy_pct is null. (unit: rank 1-21) |
| n_currencies | integer | Number of currencies in the curated panel (21). (unit: count) |
| cad_breadth_yoy | float | Share of panel currencies with cad_yoy_pct > 0, over currencies with non-null YoY. 1 = the CAD strengthened against every panel currency year over year. (unit: 0-1 share) |
| cad_median_yoy_pct | float | Median cad_yoy_pct across the 21 panel currencies that month. (unit: percent) |
| cad_median_mom_pct | float | Median cad_mom_pct across the 21 panel currencies that month. (unit: percent) |
| cad_strength_score | float | Documented 0-100 composite: 100 * (0.55 * minmax(winsor(cad_median_yoy_pct, +-15)) + 0.45 * minmax(cad_breadth_yoy)), min-maxed over all scored months of the full panel history. Higher = the loonie is broadly and sharply strengthening. Defined from 2018-01. (unit: 0-100 score) |
| strength_tier | string | Score quartile across scored history: 's1' (>=75, strongest CAD regime), 's2' (>=50), 's3' (>=25), 's4' (<25, weakest CAD regime). |
| broad_strength_flag | integer | 1 when cad_breadth_yoy >= 0.70 (the CAD gained against at least 70% of panel currencies year over year). (unit: binary) |
| broad_weakness_flag | integer | 1 when cad_breadth_yoy <= 0.30 (the CAD lost against at least 70% of panel currencies year over year). (unit: binary) |
| record_high_flag | integer | 1 when cad_strength_index is the trailing-12-month maximum (CAD at a 12m high against this currency). (unit: binary) |
| record_low_flag | integer | 1 when cad_strength_index is the trailing-12-month minimum (CAD at a 12m low against this currency). (unit: binary) |
| source_series | string | Valet series id behind the row (row-level provenance, e.g. FXMUSDCAD). |
| row_hash | string | Deterministic 16-hex row hash of (month, currency_code) (idempotency). |
First 10 sample rows — a preview, not the complete dataset.
| month | currency_code | currency_name | country_code | rate_cad_per_fx | cad_strength_index | cad_mom_pct | cad_yoy_pct | cad_3m_ann_pct | strength_range_pos_12m | strength_zscore_60m | strength_rank | n_currencies | cad_breadth_yoy | cad_median_yoy_pct | cad_median_mom_pct | cad_strength_score | strength_tier | broad_strength_flag | broad_weakness_flag | record_high_flag | record_low_flag | source_series | row_hash |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2017-01-01 | AUD | Australian dollar | AUS | 0.985 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMAUDCAD | ca1c1ef3f6534965 |
| 2017-01-01 | BRL | Brazilian real | BRA | 0.413 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMBRLCAD | 1eb2203e91e20b9b |
| 2017-01-01 | CNY | Chinese yuan | CHN | 0.191 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMCNYCAD | 8cf719f97995ab0c |
| 2017-01-01 | EUR | Euro | — | 1.403 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMEURCAD | 7f06f108b1d96f1e |
| 2017-01-01 | HKD | Hong Kong dollar | HKG | 0.17 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMHKDCAD | 4bedf8ffcbd84a17 |
| 2017-01-01 | INR | Indian rupee | IND | 0.019 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMINRCAD | 0c125c12287f8de4 |
| 2017-01-01 | IDR | Indonesian rupiah | IDN | 0 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMIDRCAD | 9c67edfd5a744758 |
| 2017-01-01 | JPY | Japanese yen | JPN | 0.011 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMJPYCAD | 33b73571e42f7f9b |
| 2017-01-01 | MXN | Mexican peso | MEX | 0.062 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMMXNCAD | c50b240c9f708bbe |
| 2017-01-01 | NZD | New Zealand dollar | NZL | 0.941 | 100 | — | — | — | — | — | — | 21 | — | — | — | — | — | — | — | 0 | 0 | FXMNZDCAD | 8a1394680511d040 |
- Current
20260927T061739Z-d5e4a5a2db8c · sha256 d5e4a5a2db8c…
2,436 rows · first snapshot
Point any LLM at the metadata endpoint — the documentation above is machine-readable too (JSON-LD + Croissant).
curl "https://datazimuts.com/v1/datasets/boc_fx_pressure_intel/ca_fx_pressure_monthly" | jq '{title, rows, columns_count, license}'import requests
ds = requests.get("https://datazimuts.com/v1/datasets/boc_fx_pressure_intel/ca_fx_pressure_monthly").json()
print(ds["title"], ds["rows"], "rows")
# Sample rows for an LLM context window
for row in ds.get("sample_rows", [])[:5]:
print(row)API endpoint: https://datazimuts.com/v1/datasets/boc_fx_pressure_intel/ca_fx_pressure_monthly
Tip: fetch /llms.txt for the full machine-readable catalog.
Where this data comes from and what was made from it. Other people's work shows as counts; only shared projects are named.
Cite this snapshot
Pinned to snapshot 20260927T061739Z-d5e4a5a2db8c and its content hash, so readers get exactly the data you used.
Bank of Canada (Valet). (2026). Canadian-dollar FX pressure intelligence (monthly) [Data set, snapshot 20260927T061739Z-d5e4a5a2db8c, sha256 d5e4a5a2db8c]. Datazimuts. Retrieved 2026-09-27, from https://datazimuts.com/en/datasets/boc_fx_pressure_intel/ca_fx_pressure_monthly?snapshot=20260927T061739Z-d5e4a5a2db8c
@misc{dz_boc_fx_pressure_intel_ca_fx_pressure_mon_d5e4a5a2,
title = {{Canadian-dollar FX pressure intelligence (monthly)}},
author = {{Bank of Canada (Valet)}},
year = {2026},
publisher = {Datazimuts},
howpublished = {\url{https://datazimuts.com/en/datasets/boc_fx_pressure_intel/ca_fx_pressure_monthly?snapshot=20260927T061739Z-d5e4a5a2db8c}},
note = {Snapshot 20260927T061739Z-d5e4a5a2db8c, sha256 d5e4a5a2db8c97457663a1c1f299b16503b3da0944901257c601bc2581278d30; accessed 2026-09-27}
}Embed a table or a chart
Paste this into any page. The embed is pinned to the same snapshot, follows the reader's light or dark setting, and always shows the source, license and a link back.
<iframe src="https://datazimuts.com/embed/chart?dataset=boc_fx_pressure_intel%2Fca_fx_pressure_monthly&lang=en&theme=auto&snapshot=20260927T061739Z-d5e4a5a2db8c&x=month&y=rate_cad_per_fx&agg=avg" title="Canadian-dollar FX pressure intelligence (monthly)" width="100%" height="380" style="border:0" loading="lazy"></iframe>
Ask about this dataset. Answers come only from its catalog record, measured profile and change history, and list the facts they used.