USD and FX Conversion
Why FX handling causes so many ACB errors
For foreign-currency securities, both proceeds and adjusted cost base must be expressed in CAD. The problem is not just converting one annual total. The problem is converting each transaction on its own date so the ledger remains correct over time.
That is where many spreadsheet workflows fail: the rate source is inconsistent, the date is wrong, or the conversion logic gets reconstructed later from memory.
MyCostBase launch approach
MyCostBase uses Bank of Canada daily rates by transaction date and keeps the rate visible on the transaction row. When a requested date falls on a weekend or holiday, the fallback rule is the previous business day.
That choice is important because the applied rate needs to be consistent and inspectable.
Overrides and auditability
If you need to use a different documented FX rate, the override should be recorded with a note. The override is part of the ledger, not a side calculation in a separate spreadsheet.
That makes later review possible when you need to answer why a given CAD amount differed from a broker display or an old worksheet.
Missing FX rate warnings
If an FX rate is missing for an imported USD trade, that should be treated as a warning condition. The product should not silently continue with an incomplete conversion trail because the downstream gain or loss depends on that rate.
Related workflows
If the security also has ETF adjustments, read ETF Adjustments. If your primary question is why the final broker number still differs after FX is applied correctly, read Reconciliation and Reports.