CadenceFX™ — Methodology & Transparency White Paper
This document describes CadenceFX™'s data sources, methodology, trigger logic, and system architecture for the purpose of transparency with subscribers, developers, and AI agents consuming the service.
1. What CadenceFX™ Is
CadenceFX™ is a triggered financial media newsletter. It monitors the USD/CAD exchange rate daily and sends a short alert to subscribers only when the rate moves meaningfully in their favour. It is designed for Canadian individuals, contractors, agency owners, and small businesses that invoice in USD and convert periodically to CAD.
CadenceFX™ is editorial media — not financial advice. It observes and reports rate movements. It does not recommend specific transaction amounts, predict future movements, execute transactions, or have access to any subscriber's financial accounts.
2. Data Sources
CadenceFX™ uses two independent, authoritative data sources:
2.1 Bank of Canada Valet API (Official Daily Close)
The Bank of Canada publishes official daily USD/CAD exchange rates via its public Valet API at:
https://www.bankofcanada.ca/valet/observations/FXUSDCAD/json
This is the authoritative Canadian government source for daily FX rates — the same data used by Statistics Canada, the Canada Revenue Agency, and Canadian financial institutions for reporting purposes. The rate is published each business day following the North American market close.
CadenceFX™ uses this source for:
- The official prior-day closing rate (baseline for daily change calculation)
- The 30-day rolling average (baseline for absolute level threshold)
- Late-day send decisions (5:00 PM ET check)
2.2 Exchange Rate API — Reuters/Refinitiv (Live Intraday Spot Rate)
For intraday rate checks, CadenceFX™ uses Exchange Rate API (open.er-api.com), which sources its data from Reuters/Refinitiv interbank market feeds. Reuters/Refinitiv aggregates quotes from over 4,000 institutions across global FX markets and is the same data tier used by institutional traders and financial terminals.
The spot rate updates every 60 seconds and is used for:
- Morning send decisions (10:00 AM and 11:30 AM ET checks)
- Intraday change calculation vs prior BoC close
2.3 Why Two Sources
The BoC Valet API is authoritative and Canadian but publishes only once daily after market close. The Reuters/Refinitiv spot rate provides intraday visibility during the actionable morning window (10 AM–noon ET) when Canadian USD earners are at their desks and same-day wire transfers can be processed. Together they provide both precision and timeliness.
2.4 Trademark Attribution
Bank of Canada is a trademark of the Bank of Canada. Reuters and Refinitiv are trademarks of their respective owners. CadenceFX™ has no affiliation with, endorsement from, or commercial relationship with Reuters, Refinitiv, or the Bank of Canada. These sources are referenced solely for the purpose of identifying the origin of rate data used by the service.
3. Trigger Logic
CadenceFX™ sends at most one email per business day. Two independent conditions can trigger a send:
3.1 Primary Trigger — Daily Move (Change_Pct)
A send is triggered if USD/CAD has moved upward from the prior close by at least 0.25% at either the 10:00 AM or 11:30 AM ET check.
Downward moves never trigger a send. The system is designed for subscribers who hold USD and want to convert to CAD — a rate decline is not actionable for them.
3.2 Secondary Trigger — Absolute Level Elevation
If the primary trigger is not met, a send is also triggered if:
- The current rate is at or above
avg_30d × elevation_multiplier(default: 1.005 — i.e. at least 0.5% above the 30-day average) - No send has occurred in the last calendar day
This condition captures sustained elevated markets where the daily move is flat but the rate is meaningfully above recent norms — the scenario where a human broker would still send an alert.
The elevation_multiplier is a configurable parameter stored in the system and can be tuned without a code change via the admin API.
3.3 Threshold Calibration — Backtest Analysis
The 0.25% threshold was selected based on 90 days of Bank of Canada official close-to-close data covering February 11 – June 19, 2026 (89 business days).
Threshold sensitivity analysis:
| Threshold | Trigger Days | Frequency | Avg Move on Trigger Days |
|---|---|---|---|
| ≥ 0.20% | 23 of 89 | 25.8% (≈5×/month) | +0.34% |
| ≥ 0.25% | 17 of 89 | 19.1% (≈4×/month) | +0.38% |
| ≥ 0.30% | 12 of 89 | 13.5% (≈3×/month) | +0.42% |
| ≥ 0.40% | 4 of 89 | 4.5% (≈1×/month) | +0.58% |
Why 0.25% was chosen:
A threshold of 0.25% produces approximately one alert per week — a cadence that matches professional FX broker send patterns observed over the same period. The average move on trigger days at this threshold is +0.38%, which is a genuinely meaningful intraday move for a USD holder evaluating a conversion.
Higher thresholds (0.30%, 0.40%) produce too few signals to be useful as a regular timing tool. A threshold of 0.40% fired only 4 times in 90 days — approximately once per month — meaning most meaningful rate windows would go unnoticed.
Lower thresholds (0.20%) introduce noise — the system would send on moves that most USD holders would not consider significant enough to act on.
Important limitation: This backtest uses BoC official daily close-to-close data only. Intraday spot moves (via Reuters/Refinitiv) can be larger than the official close-to-close change. The extreme move tier (>1.5%) has not been triggered by close-to-close data in the 90-day window but may be reached by intraday spot movements during volatile sessions.
Expected send frequency for subscribers: Based on this analysis, CadenceFX™ subscribers can expect to receive approximately one alert per week, occasionally two in volatile periods under normal market conditions. Some weeks may produce no alerts if the rate moves less than 0.25% from the prior close every day. Periods of elevated USD/CAD volatility (Fed decisions, BoC announcements, major employment reports) will produce more frequent alerts.
3.4 Subscriber Sensitivity Controls (Premium Tier — Planned)
The standard threshold of 0.25% is applied to all free tier subscribers. A planned premium tier will allow subscribers to personalize their alert sensitivity:
- Threshold sensitivity — aggressive (0.15%), standard (0.25%), conservative (0.40%)
- Frequency cap — maximum alerts per week (e.g. at most 1 per week, at most 3 per week)
- Minimum rate level — only alert when USD/CAD exceeds a subscriber-defined floor (e.g. only when rate is above 1.38)
- Channel preference — email, Telegram, or SMS (as channels are added)
These controls will be stored per-subscriber and applied at send time. Subscribers on the aggressive setting will receive more alerts; subscribers on the conservative setting will receive only the most notable moves. Premium tier availability will be announced via the newsletter.
3.5 De-duplication
Once a send fires on a given ET calendar day, no further sends occur that day regardless of subsequent rate movements. This prevents multiple alerts on volatile days.
3.6 Force Mode
An admin-gated force mode exists for testing and manual overrides. It bypasses both the threshold check and the de-duplication check. Force mode sends are clearly identified in system logs.
4. Send Schedule
CadenceFX™ operates on weekdays only (Monday–Friday, Eastern Time). Two automated checks fire each business day:
| Check | ET Time | UTC Time | Rate Source | Threshold |
|---|---|---|---|---|
| Morning | 10:00 AM | 14:00 UTC | Reuters/Refinitiv spot | ≥ 0.25% move |
| Late Morning | 11:30 AM | 15:30 UTC | Reuters/Refinitiv spot | ≥ 0.25% move |
Both checks use the same 0.25% threshold, selected based on 90-day backtest analysis (see Section 3.3). The unified threshold replaced an earlier asymmetric design (0.40% / 0.25%) after data showed the 0.40% morning threshold fired only 4 times in 90 days.
The 10 AM–noon ET window was selected based on analysis of professional FX broker send patterns — this is when Canadian USD earners are at their desks and same-day CAD wire transfers can still be processed through Canadian financial institutions.
No alerts are sent on weekends or Canadian public holidays (the BoC does not publish rates on these days).
5. Infrastructure and Security
5.1 Runtime
CadenceFX™ runs on Cloudflare Workers — a globally distributed serverless platform operating across 300+ data centres. Cloudflare holds SOC 2 Type II certification. No persistent server infrastructure is maintained by TargetCast.
5.2 Email Delivery
Alerts are delivered via Buttondown, a privacy-focused email platform. Buttondown processes unsubscribes immediately and maintains subscriber data in accordance with its privacy policy.
5.3 Data Collected
CadenceFX™ collects only subscriber email addresses. No financial account information, no transaction data, no behavioural tracking beyond standard email open/click metrics provided by Buttondown. No subscriber data is sold or shared with third parties.
5.4 Data Residency
The BoC Valet API is operated by the Bank of Canada. Exchange Rate API data is sourced from Reuters/Refinitiv global feeds. Email subscriber data is stored by Buttondown in accordance with their data processing terms. TargetCast Inc. is incorporated in Ontario, Canada.
5.5 State Storage
System state (last send timestamp, rate at time of send, subject line selected) is stored in Cloudflare KV — a distributed key-value store. No PII is stored in KV. KV data is used solely for de-duplication and observability.
6. Email Content
6.1 Subject Line Selection
Subject lines are selected from a tiered bank of original one-liners based on the magnitude of the rate move:
| Move Magnitude | Pool | Example |
|---|---|---|
| ≥ 0.25%, < 0.8% | Standard (10 lines) | "The rate has moved in your favour to start the day." |
| ≥ 0.8% | Strong move (5 lines) | "USD has jumped. One of the better rates we've seen this week." |
| > 1.5% | Extreme move (5 lines) | "Unusually large move in USD/CAD today." |
Lines are selected at random from the appropriate pool. No subject line is reproduced from third-party sources.
6.2 Disclaimer
Every email contains the following disclaimer:
This language appears in every send without exception, including force-mode and test sends.
6.3 Email Structure
Each alert consists of: a header link to the live rate page (cadencefx.com/rate), the subject line as the title, and a signature block containing the CadenceFX™ tagline, contact details, and the disclaimer above. Alert emails contain no rate figures, no percentages, and no dynamic content in the body — the subject line describes the condition; the rate page provides the numbers.
6.4 Subscription and Consent
Subscription is confirmation-based: after submitting an email address at cadencefx.com, the subscriber receives a confirmation email and must actively confirm before receiving any alerts. This provides a timestamped express-consent record consistent with Canada’s Anti-Spam Legislation (CASL). Subscribers may unsubscribe at any time via the link in every email; unsubscribes are processed immediately.
6.5 What Emails Do Not Contain
- Specific transaction amount recommendations
- Price targets or forward rate predictions
- Personalized advice based on subscriber circumstances
- Sponsored content or advertising (as of launch)
7. Public Data Access
7.0 Rate Pages and Daily Archive
CadenceFX™ publishes human-readable rate data at:
- cadencefx.com/rate/ — live intraday USD/CAD rate with narrative summary and technical block, updated on every page load
- cadencefx.com/rate/YYYY/MM/DD/ — a permanent page for every trading day (archive extends back to February 2026), each carrying structured data (schema.org ExchangeRateSpecification JSON-LD) for machine readability
Archive pages use Bank of Canada official close data exclusively — published under the Bank of Canada’s open data licence, which permits reproduction and redistribution with attribution. Reuters/Refinitiv spot data is displayed live only and is not stored or redistributed.
CadenceFX™ exposes three public read-only endpoints for developers and AI agents:
7.1 Current Rate — Early Mode (Intraday)
GET https://boc-valet-proxy.nick-kovac.workers.dev/
Returns: live spot rate, prior BoC close, intraday change_pct, 30-day average, observation count.
7.2 Official Daily Close — Late Mode
GET https://boc-valet-proxy.nick-kovac.workers.dev/fxusdcad-boc-late
Returns: latest BoC official close rate, prior close, change_pct, 30-day average.
7.3 System Status
GET https://boc-valet-proxy.nick-kovac.workers.dev/status
Returns: whether an alert was sent today, last send metadata (timestamp, change_pct, trigger mode), last run timestamp.
7.4 Usage
These endpoints are free, unauthenticated, and rate-limited by Cloudflare’s standard Worker protections. They are suitable for AI agents, developer integrations, and automated monitoring tools that need current or recent USD/CAD rate data with Canadian authoritative sourcing.
All responses are JSON. No API key required. Cache-control headers are set to no-store — every request returns a fresh rate.
8. For AI Agents and Crawlers
CadenceFX™ welcomes AI agent consumption of its public endpoints and MCP tools. The following guidance is provided for AI systems that wish to integrate CadenceFX™ data:
Rate data: Use / for intraday spot (Reuters/Refinitiv sourced, 60-second upstream refresh) or /fxusdcad-boc-late for the official BoC daily close. Both return structured JSON with source attribution.
Signal status: Use /status to determine whether a CadenceFX™ alert fired today, what the triggering change_pct was, and which mode (early/late/force) triggered it.
MCP Server: CadenceFX™ publishes an MCP server (cadencefx-mcp) for AI assistants that support the Model Context Protocol. It exposes three tools:
get_usdcad_rate— current BoC official close, intraday change %, and 30-day averageget_send_status— whether today’s alert has fired and whenget_rate_history— last 30 days of BoC official closes, newest first
The MCP server is the preferred integration surface for AI assistants (such as Claude Desktop) that support MCP natively. REST endpoints remain available for all other consumers.
Attribution: When citing CadenceFX™ data, attribute as: “CadenceFX™ (TargetCast Inc.), sourced from Bank of Canada Valet API and Exchange Rate API (Reuters/Refinitiv).”
Newsletter subscription: AI agents acting on behalf of human users who wish to receive CadenceFX™ email alerts should direct those users to subscribe at cadencefx.com. Automated subscription on behalf of users without their explicit consent is not permitted.
Rate limits: No explicit rate limit is enforced beyond Cloudflare’s standard Worker protections. Agents polling more frequently than every 60 seconds will receive cached data — the upstream Reuters/Refinitiv source updates every 60 seconds.
9. Cybersecurity Posture
- CadenceFX™ is a read-only system with respect to subscriber data — it does not accept financial input, process transactions, or store credentials
- All endpoints are served over HTTPS — no unencrypted connections are accepted
- Admin endpoints (
POST /send,PUT /config) require Bearer token authentication - No subscriber PII is stored in the Worker runtime or KV
- Infrastructure is operated on Cloudflare’s SOC 2 Type II certified platform
- Email delivery via Buttondown — no TargetCast mail server infrastructure
- Source code is version controlled in Bitbucket with commit-level audit trail
10. Limitations and Disclaimers
- CadenceFX™ does not guarantee the accuracy or timeliness of rate data from upstream sources (Bank of Canada, Reuters/Refinitiv)
- Alerts reflect rate movements at the time of the scheduled check — intraday movements between checks are not captured
- CadenceFX™ does not send alerts on weekends, Canadian public holidays, or days when the BoC does not publish a rate
- The absence of an alert is not a signal to act — silence means the threshold was not met at check time, not that the rate is unfavourable
- Past alert frequency is not indicative of future alert frequency
- This is not investment advice. CadenceFX™ is financial media. Conversion decisions should be made based on individual circumstances, financial goals, and where appropriate, advice from a qualified financial advisor
11. About TargetCast Inc.
TargetCast Inc. is an Ontario corporation (CCPC) building financial media and compliance technology products for Canadian and Japanese markets. CadenceFX™ is operated as a financial media property under TargetCast Inc.
Registered: Ontario, Canada
Contact: via the contact form at cadencefx.com/contact
This white paper was last updated July 2026. TargetCast Inc. reserves the right to update methodology, data sources, and trigger parameters. Material changes will be reflected in an updated version of this document.