Closed SurienDG closed 1 year ago
You are right in that the exchange rate should be applied on the settlement date instead of the transaction date. But why not just enter the settlement date instead of the transaction date in the CSV input file for each row, and then it will properly get the exchange rate for the settlement day?
No that is not what I'm saying. The exchange rate is supposed be from the transaction date: https://www.adjustedcostbase.ca/blog/calculating-adjusted-cost-base-with-foreign-currency-transactions/
So what I was saying is superficial losses are supposed to use the settlement date and currency exchange rates should use the transaction date. Thus, you need both dates,
Ah I see what you mean now. We're going off his opinion for this, and as he says the CRA doesn't have a firm stance on this. I've read some comments from this site from others who suggested that it's fine to just use the settlement date for both exchange rate and superficial loss purposes. The author's own tool, if you pay for premium, only asks for a single date to be inputted and then automatically finds the exchange rate for the given day. I'm not a tax expert so I'm not sure what the correct approach is here, but in my own case I use the settlement day for everything. For USD <--> CAD transactions, it really shouldn't be a big deal as the currency fluctuates very marginally on a day-to-day basis.
I think if we want to do this as he suggests, I would need to expand the CSV file to take in an optional transaction date and required settlement date. Then we could do exchange rate lookups on the transaction date, and do superficial loss calculations using the settlement dates, if both dates are provided, or otherwise do both operations on just the settlement date if that one date is only provided. This allows the tool to support both approaches.
I don't like the idea of trying to calculate what the settlement date is. It's not consistent, and trying to account for holidays across the world is not a trivial endeavor. I'm also not sure if brokerages have standardized using T+2 for the settlement date. Certainly before 2017, this was not the case. I think it's simpler if the user provides that information without having to do guesswork.
Yea not sure about T+2 settlement but from the ones I looked at they said T+2 (ex. QuestTrade and Wealthsimple and Robinhood). But anyway I agree would be good to have the user provide both if possible.
Ah I didn't know the tool does it automatically for premium. I only looked at normal where you had to enter in the exchange rate you wanted to use. Anyway I think what you said about exchange rate not differing too much (at least for CADUSD) makes sense especially since apparently another valid solution is to calculate the exchange is to use the avg for year (from the Bank of Canada) if I recall correctly.
As such I'm good to close this unless you want to implement the optional functionality.
Looks like you use the daily currency exchange rate. So I'm guessing you're entering the transaction date instead of settlement date however you're supposed to use the settlement date instead of the transaction date for calculating superficial losses. I think this can change the rate if you buy a share on Friday. Then settlement is usually after two business days so Tuesday so you effectively moved your transaction ahead can get even more conflicts if public holiday. Not sure the best way to fix this. Maybe add 2 days + holidays when calculating superficial losses?
https://www.adjustedcostbase.ca/blog/what-is-the-superficial-loss-rule/ https://www.adjustedcostbase.ca/blog/understanding-trade-dates-and-settlement-dates/ https://help.wealthsimple.com/hc/en-ca/articles/360058451913-US-and-Canadian-exchange-holidays