Currency Conversion for Current Share Price and Total Value in Account Currency different from Quote Currency appears ok now -- ver9.2.3. build 350. Thanks for the enhancement!
We might have created another evil in "Total Cost" field, though:
Buy 250 HOT @ USD14.9285 + USD9.95 Commission + USD 0.0075 Fee. 1USD = 1.2504 CAD.
Prior to change in the way Rounding was applied, PSM did:
[250 x 14.9285 + 9.95 + 0.0075] x 1.2504
= USD3,742.0825 x 1.2504
= CAD4,679.1000 Total Cost of Purchase.
Now, (I think) it does:
250 x Round(14.9285 x 1.2504, 4) + Round(9.95 x 1.2504, 4) + Round(0.0075 x 1.2504, 4)
= CAD4,679.1009 Total Cost of Purchase.
You actually have to manually change the USD Fee to USD 0.0068 in the above scenario now in order to get the CAD Total Cost of Purchase manually back to CAD4,679.1000.
A "normal" user would probably open the underlying Buy transaction in the Transaction register and do the "prior" calculation per above and wonder why PSM says CAD4,679.1009, and not CAD4,679.1000 -- unless someone understands the true (new) rounding rule for the Purchase -- that each component of the calc in the transaction gets rounded first before the total Transaction value gets "assembled". Not intuitive, for sure.
Is there a way to apply the change you made to FX conversion and rounding only to the "Total Value" calculation on the Current Holding tab -- for each Lot and the overall Total Holding Value, but not to anything that drives Total Cost, incl. not to any transactions in the Transaction Register -- leave those the way they were calculated before?
The other odd behavior the change has caused is in the "Set Ticker Price" (Manually) feature:
In the above scenario, enter "50", and as soon as you confirm, it shows "49.9990". Enter "20", confirm, it shows "19.9996".
I sense this is also again related to FX and the order in which Rounding is applied.
We fixed one thing, and "broke" two others :-(.
Back to original Problem per Post #2235, I guess if the above differentiated treatment isn't possible, the other option would be to revert back to the old FX and Rounding Sequence. Then, instead of using the already rounded CAD-converted Share Price (as shown on Current Holding tab) for the Lot that was originally bought in CAD, use the current USD share price x full current (6 decimal) FX instead to do the Total Lot Value calc, and only round Total Value at the end.
This should be the other way to give both Lots (the one where the position was originally acquired in CAD and the one where position was originally acquired in USD) the same Total Value on Current Holdings tab if it's the same # of shares in each lots.
The downside of this solution is that now (rounded) CAD Share Price (as shown on current Holdings tab) x # shares in each Lot might be different from what's shown as 4-decimal Total Value of the Lot -- because Total Value now uses a more precise CAD Share Price than the 4-decimal rounded CAD converted share price displayed.