Canada Bond Yields & Overnight Rate Daily Panel with CAD FX
Pricing
from $1.00 / 1,000 row returneds
Canada Bond Yields & Overnight Rate Daily Panel with CAD FX
Daily Canadian rates panel from the Bank of Canada: overnight target rate, prime, 5-year posted mortgage rate, 2 to 30 year bond yields, real return yield and breakeven, curve spreads, CPI-trim and CAD exchange rates.

What does Canada Bond Yields & Overnight Rate Daily Panel with CAD FX do?
Canada Bond Yields & Overnight Rate Panel returns one row per Canadian business day with the rates backdrop that predictors and dashboards need. Each row holds the Bank of Canada target overnight rate, the prime rate, the 5 year posted mortgage rate, benchmark government bond yields at 2, 3, 5, 7, 10 year and long maturities, the real return bond yield with the implied long-term breakeven inflation rate, the 10s2s curve spread with a regime label, the gap between the 10 year yield and the policy rate, daily changes, the 1-year percentile of the 10 year yield, CPI-trim inflation dated to when it was published, and the Canadian dollar against the US dollar, euro and pound. All data is published by the Bank of Canada.
Why use Canada Bond Yields & Overnight Rate Daily Panel with CAD FX?
- Ready to join: one row per date, so it merges with any price or return series.
- Derived features included: spreads, breakeven, changes, percentiles and a curve regime.
- Official source: the Bank of Canada Valet API.
- Mortgage-relevant fields: prime and the posted 5 year mortgage rate next to bond yields.
- Monthly CPI is dated to its publication day, so backtests avoid look-ahead. No API key or login.
What makes this different
Canadian rate data is spread across many Bank of Canada series. This Actor picks the useful ones, joins them by date, dates monthly inflation by publication, and adds the spreads and percentiles, so one table gives your model the Canadian backdrop.
Who can use the Canada Bond Yields & Overnight Rate Panel and how?
- Quant researchers: add Canadian rates and CAD features to models.
- Mortgage brokers and analysts: track prime, posted rates and bond yields together.
- Portfolio managers: monitor the Canadian curve and policy spread.
- Economists and students: study Canadian yields, inflation and the dollar.
- Newsletter writers: publish a daily Canada rates dashboard.
- Fintech apps: show rate context beside Canadian accounts.
- AI agent builders: let an assistant answer where Canadian yields and the overnight rate stand.
- Backtesting platforms: filter signals by Canadian curve regime.
How it works

- Your input — set a date range or a lookback in days.
- The Actor collects it — the Actor reads Bank of Canada and joins the series by date.
- Your output — you get one row per trading day with derived features; schedule it daily with delta mode to append each new day.
What data can you extract?
The dataset has 29 fields per row:
| Field | Type | Description |
|---|---|---|
date | string | Trading date, YYYY-MM-DD. |
bond_2y | number | 2 year benchmark bond yield, percent. |
bond_3y | number | 3 year benchmark bond yield, percent. |
bond_5y | number | 5 year benchmark bond yield, percent. |
bond_7y | number | 7 year benchmark bond yield, percent. |
bond_10y | number | 10 year benchmark bond yield, percent. |
bond_long | number | Long-term benchmark bond yield, percent. |
real_return_long | number | Real return bond yield, long-term, percent. |
target_overnight_rate | number | Bank of Canada target for the overnight rate, percent. |
prime_rate | number | Chartered banks prime rate, percent. |
mortgage_5y_posted | number | Posted 5 year conventional mortgage rate, percent. |
usd_cad | number | Canadian dollars per US dollar. |
eur_cad | number | Canadian dollars per euro. |
gbp_cad | number | Canadian dollars per pound. |
cpi_trim_yoy_pct | number | CPI-trim inflation, year over year percent, dated to its publication. |
spread_10y_2y_bps | number | Yield spread 10y 2y, basis points. |
spread_long_10y_bps | number | Yield spread long 10y, basis points. |
bond_10y_over_target_bps | number | 10 year yield minus the overnight target, basis points. |
breakeven_long | number | Long bond yield minus real return bond yield, percent. |
curve_regime | string | inverted, flat or normal. |
change_10y_bps | number | 1-day change in 10y, basis points. |
change_2y_bps | number | 1-day change in 2y, basis points. |
change_target_rate_bps | number | 1-day change in target rate, basis points. |
usd_cad_change_1d_pct | number | 1-day change in usd cad, percent. |
bond_10y_percentile_1y | number | Percentile of bond 10y over the last 252 trading days. |
fetch_path | string | How the data was obtained. |
source | string | Data source. |
scraped_at | string | Timestamp. |
actor_version | string | Actor version. |
How to use Canada Bond Yields & Overnight Rate Daily Panel with CAD FX

- Open the Actor and go to the Input tab.
- Leave the dates empty for the last 90 days, or set Start date and End date for a long history. Turn on delta mode and schedule the Actor daily to append each new day.
- Optionally set filters and a Max results limit.
- Click Start. A default run finishes in under a minute.
- Open the Output tab, then download the dataset or connect it to your tools.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startDate | string | No | — | First trading date, YYYY-MM-DD. Leave empty to use the lookback below. |
endDate | string | No | — | Last trading date, YYYY-MM-DD. Leave empty for today. |
lookbackDays | integer | No | 90 | Used when no start date is set. |
newestFirst | boolean | No | true | Return the newest day first. Turn off for chronological order. |
maxItems | integer | No | 0 | Cap on returned rows. Set 0 for no limit. |
deltaMode | boolean | No | false | After the first run with a delta key, return and bill only days not delivered before. |
deltaStateKey | string | No | "default" | Name of the tracked stream. |
proxyConfiguration | object | No | {"useApifyProxy":false} | Optional proxy. The sources work without one. |
Output Data

target_overnight_rate, prime_rate and mortgage_5y_posted are percent. bond_* are benchmark government bond yields in percent. breakeven_long is the long bond yield minus the real return bond yield. spread_*_bps are basis points and curve_regime is inverted, flat or normal from the 10s2s spread. cpi_trim_yoy_pct is dated to its publication date, about three weeks after month end. change_* are 1-day changes.

A real dataset item:
{"date": "2026-09-24","bond_2y": 3.39,"bond_3y": 3.49,"bond_5y": 3.69,"bond_7y": 3.76,"bond_10y": 3.97,"bond_long": 4.27,"real_return_long": 1.95,"target_overnight_rate": 2.25,"prime_rate": 4.45,"mortgage_5y_posted": 6.09,"usd_cad": 1.4136,"eur_cad": 1.6076,"gbp_cad": 1.8688,"cpi_trim_yoy_pct": 1.9,"spread_10y_2y_bps": 58,"spread_long_10y_bps": 30,"bond_10y_over_target_bps": 172,"breakeven_long": 2.32,"curve_regime": "normal","change_10y_bps": 1,"change_2y_bps": -1,"change_target_rate_bps": 0,"usd_cad_change_1d_pct": 0.284,"bond_10y_percentile_1y": 100,"fetch_path": "bank_of_canada_valet","source": "bank_of_canada_valet","scraped_at": "2026-09-27T05:07:05.412Z","actor_version": "1.0.0"}
How to read and use the results
- Read curve_regime and spread_10y_2y_bps for the curve slope.
- Compare bond_10y with target_overnight_rate for policy expectations.
- Check breakeven_long for inflation expectations.
- Track prime_rate and mortgage_5y_posted for borrowing costs.
- Join on date to your own price data.
- Schedule with delta mode to append each new day.
Usage Examples
Last 90 days
{}
Full history for a model
{"startDate": "2000-01-01","newestFirst": false}
Only new days, for a daily schedule
{"deltaMode": true,"deltaStateKey": "daily"}
Tips for Best Results
- Join on the date column; markets are closed on weekends and holidays, so those dates have no row.
- Run the Actor once for the whole history, then schedule it daily with delta mode.
- Use the percentile fields rather than raw levels to compare conditions across years.
- Curve inversion is a slow signal; combine it with faster features such as daily changes.
- Watch change_target_rate_bps for policy decision days.
- Default is 5 results for a fast test. Set the max to 0 to return everything available.
Reliability by mode
| Mode | Status | Needs login or key? | Notes |
|---|---|---|---|
| Overnight rate, prime, mortgage rate | ✅ | No | Published by the Bank of Canada. |
| Benchmark bond yields | ✅ | No | Daily benchmark yields. |
| CAD exchange rates | ✅ | No | Bank of Canada daily rates. |
| Intraday or real-time values | ❌ | - | End-of-day only. |
✅ works as described, 🟡 works with caveats, ❌ not supported.
Only new records (delta mode)
Turn on Only new trading days (delta mode) and set a Delta key. The first run returns the whole range; later runs return, and bill, only trading days not delivered before.
Known Limitations
- Values are end-of-day and appear after the Bank of Canada publishes them.
- Benchmark yields are for the Bank's chosen benchmark bonds, not a full curve fit.
- The mortgage rate is the posted 5 year rate, not a negotiated rate.
- CPI-trim is carried forward from its publication date until the next release.
- This is information, not financial advice.
Integrations
Run it from the Apify API, on a schedule, or from a webhook. Send results straight to Google Sheets, Make, Zapier, Slack or your own database with Apify's built-in integrations.
Export Formats
Download the dataset as JSON, CSV, Excel, XML, HTML table or RSS from the Output tab or the API.
Frequently Asked Questions
Where does the data come from?
The Bank of Canada Valet web service, which publishes these series for free.
How far back does it go?
Each series starts at its own publication date; bond yields and FX go back decades.
Does it need an API key or account?
No.
Can I get intraday data?
No, the data is end-of-day.
Why is a value empty?
The series did not exist on that date, or the source has not published that day yet.
Am I charged for empty days?
No, only for rows returned.
Do I need an account or login?
No. The Actor reads public Bank of Canada data and needs no account or API key.
Am I charged for failed runs or empty results?
You are only charged for results that are actually written to the dataset.
Can I run it on a schedule?
Yes. Create a Task with your input and add a schedule in Apify Console. With monitor mode on, each scheduled run returns only what changed since the previous one.
Changelog
- 2026-09-27: First release.
Enterprise and custom work
Need higher volumes, a custom output schema, dedicated scheduling or a no-breaking-changes commitment for a production pipeline? Open an issue on the Actor page and describe your use case. Bulk terms and custom builds are available.
Support
Questions or a missing field? Open an issue from the Issues tab on this Actor's page and it will be looked at.
Legal / Responsible Use
This Actor reads publicly published Bank of Canada data. You are responsible for how you use the data. It is not financial advice and not affiliated with the Bank of Canada.