Canada's tax engine is the most constraining of the four the platform models. The adjusted-cost-base (ACB) rule pools the basis across every unit of an identical property the holder owns, so the optimizer cannot pick which lot to sell — every sale realises a fraction of the average cost. Combined with the superficial-loss rule and a controlled-affiliate net wider than §1091, the harvest signal is materially smaller in Canada than in the US, and the strategy has to work harder to find it.
Why HIFO is unavailable, and what the optimizer does instead
ITA §47 requires the average-cost-base method for identical properties. The holder owns 100 shares of XYZ acquired across three lots? Their ACB is the dollar-weighted average across those lots. A sale of 30 shares realises a gain or loss based on (sale price − ACB) × 30, not (sale price − specific lot basis) × 30. The optimizer's lot picker for Canada is therefore a no-op — it can't pick a lot, only a quantity.
ITA §40(2)(g)(i) and the controlled-affiliate net
Canada's wash-sale equivalent — the superficial-loss rule — denies a loss when the same or identical property is acquired in the 30 days before or after the sale, by the holder or an affiliated person. "Affiliated person" includes the holder's spouse, controlled corporations, and certain trusts. The optimizer can enforce the holder-side lock; the affiliated-person side requires the household to declare its affiliated accounts so the engine can include them in the lock vector. Without that declaration, an affiliated-account purchase will silently invalidate the holder's harvested loss.
No long-term boundary — single inclusion rate
Canada doesn't split capital gains by holding period the way the US does. Instead, 50% of any realised capital gain is included in taxable income (the "inclusion rate") and the rest is exempt. Effectively, the marginal long-term and short-term rates collapse into one rate equal to (marginal income rate × 50%). The optimizer's tax penalty therefore doesn't have a holding-period step; it's a flat per-dollar realised cost.
| Component | Rate |
|---|---|
| Federal marginal income rate (top) | 33.0% |
| Provincial top (e.g. ON) | 13.16% |
| Combined marginal | ≈ 46.2% |
| Inclusion rate (capital gains) | 50% |
| Effective rate on capital gains | ≈ 23.1% |
Per-account inputs the CA tax engine consumes
- Position-level basis (not lot-level). The engine maintains an ACB per ticker per holder, updated on every buy and sell. Lot history is preserved for audit but not used in the tax calculation.
- Superficial-loss lock vector. Same shape as the US wash-sale vector: per-ticker, per-day. Populated from the holder's 30-day trade history and any declared affiliated accounts.
- Combined federal+provincial rate. One number per account, including the 50% inclusion rate so the optimizer doesn't have to apply it.
Why CA backtests show smaller harvest streams
Two effects compound. First, ACB averaging means each sale realises a smaller per-share loss than the holder could identify under HIFO. Second, the optimizer's harvest-signal threshold rises — a name needs to be more deeply underwater on average before the trade clears. Together, these reduce the annual harvest-as-percent-of-NAV in Canadian backtests to roughly half of the US equivalent for the same construction (see the cross-jurisdiction comparison in the multi-jurisdiction deep-dive).
What's outside scope
- Provincial-specific surtaxes and high-income surtaxes (e.g. Ontario's 56% surtax) are handled via the marginal-rate override; they're not modelled with their own brackets.
- Registered accounts (RRSP, TFSA) are tax-deferred or tax-exempt and don't benefit from harvest at all. The engine assumes a non-registered (taxable) account.
- The §74 attribution rules (gain-on-spousal-loan structures) aren't modelled here; consult a Canadian tax practitioner.
- Income Tax Act (Canada) §40(2)(g)(i) — the superficial-loss rule, denying recognition of certain losses on identical property acquired within 30 days.
- Income Tax Act (Canada) §47 — the identical-properties / ACB rule.
- Canada Revenue Agency Income Tax Folio S3-F4-C1 — General Discussion of Capital Cost Allowance, including ACB mechanics.
Educational illustration · not advice. Provincial rates and rules vary; consult a Canadian tax practitioner.