Welcome to Personal Stock Monitor user forum. You must have an account to post to the forum. See the forum instructions page for some instructions on how to use the forum.
Subscribe to RSS Feed
Personal Stock Monitor Users Forum -> Currency Conversion CAD
Not logged in.
2010-06-16 17:33:41
16 of 26
#2269
in reply to #2267
Thanks, Anatoly.

I can confirm the Lot "Total Value" rounding problem is resolved.

Another issue has come up: Price (per Share) x # Shares is now not equal Total Value for the Lot.

For instance, NRTLQ.PK share price right now shows as CAD0.0380 -- based on USD 0.037 price per share and FX rate. # Units is 100. Total Value should be CAD3.8000. However, it shows 3.70.

I think for calculating Total Value, you forgot to convert the USD share price into CAD, and instead used the USD price to calculate "Total Value", maybe?

Thx
Posted by: immaus
2010-06-16 17:47:40
17 of 26
#2270
in reply to #2269
That's certainly possible due to the changes that were made to fix the rounding issue. I won't have time to look at it until tomorrow.
Posted by: Anatoly
2010-06-16 18:24:04
18 of 26
#2272
in reply to #2270
I'm not seeing any change. I've added snapshots of my Canadian holdings, the CAD value from the Currency Conversion table (showing the update time too), and Yahoo quotes for 3 of the holdings - ALS.TO, ATP.TO and HSE.TO. None of them matches the Price (display is set to USD) they should have.

Further, the Total Value is still cockeyed. If you multiply the displayed price * shares for ALS.TO, it comes to 490.535. If you do the following: (10.11 * 50 * .970360), it comes to 490.51698. But the displayed total value is 505.0950. My options are set to no rounding and display to 4 digits. The default currency is USD with these set to override the quote currency to CAD.

Oh, and this is with the Build 349.

Canadian Stock Holdings

Currency Table

ALS.TO from Yahoo

ATP.TO from Yahoo

HSE.TO from Yahoo
Posted by: Litewriter
2010-06-16 21:33:41
19 of 26
#2273
in reply to #2269
immaus wrote
Another issue has come up: Price (per Share) x # Shares is now not equal Total Value for the Lot.

Ok, right now I can't reproduce this. It's equal on my screen.

I'm going to have a new build tomorrow, and I'm really trying to get consistent results with currency conversion, so don't send any samples yet. This may be taken care of in tomorrows build.


Posted by: Anatoly
2010-06-16 21:37:03
20 of 26
#2274
in reply to #2272
Litewriter wrote
I'm not seeing any change. I've added snapshots of my Canadian holdings, the CAD value from the Currency Conversion table (showing the update time too), and Yahoo quotes for 3 of the holdings - ALS.TO, ATP.TO and HSE.TO. None of them matches the Price (display is set to USD) they should have.

I'm pretty sure the quotes for the .TO stocks on Yahoo are in CAD, so you can't have the quote currency set to USD and expect them to be equal. Both the quote and display currency should be set to CAD in this case.
Litewriter wrote

Further, the Total Value is still cockeyed. If you multiply the displayed price * shares for ALS.TO, it comes to 490.535. If you do the following: (10.11 * 50 * .970360), it comes to 490.51698. But the displayed total value is 505.0950. My options are set to no rounding and display to 4 digits. The default currency is USD with these set to override the quote currency to CAD.

Let's take another look at it after I get the next build out tomorrow. I found a couple of inconsistencies as to how currency conversion is done, and I'm hoping to fix those, so that may take care of the problem.

BTW, the number in the currency conversion table is itself rounded or truncated. The actual currency conversion factor can have additional digits that are not displayed, but are used in the calculation, so multiplying out by the value in the currency conversion table won't always equal.

In any case, let's revisit this after tomorrow's build.
Posted by: Anatoly
2010-06-17 15:21:16
21 of 26
#2275
in reply to #2274
New build has been uploaded for testing. This is build 350.
Posted by: Anatoly
2010-06-17 23:49:07
22 of 26
#2276
in reply to #2275
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.
Posted by: immaus
2010-06-21 10:14:56
23 of 26
#2282
in reply to #2276
I loaded Build 350, and my CAD stocks are now correct! Anatoly, in an earlier reply you mentionned that the Yahoo quote for a .TO stock would not match if display was USD. I agree, that's the way it should be. My concern was that if I translated the Yahoo quote to USD using the currency conversion table value, it still was not correct. That's been fixed now. I just updated the currency conversion and looked up the Yahoo quote, ran the conversion on a calculator and the displayed values were correct.

As far as I can see, Build 350 fixed all my CAD stocks. Total value now converts correctly.

I entered a test transaction for FFH-PC.TO using the Yahoo (CAD) value of 26.06 for 10 shares, with $1 for commission. This is the way IB (my broker for CAD) would present the transaction -- using the CAD price per share and $1 commission, even though it will be less than $1 in USD.

What showed up is that commission is .9842 (rounded to 4 digits from .984175 in conversion table - correct), and stock price is 25.6483. If I use the full 6 digit conversion rate against the $26.06 CAD value, the USD would be 25.6476. If I use the 4 digit rounded value, the result is 25.648252, which correctly rounds to 25.6483. So it appears you are rounding the conversion rate to 4 digits before using it in further calculations?

Oh, I also noticed that when I used Online>Update Currency Table, the prices of the .TO stocks all changed to reflect the new conversion rate (it was last updated on Friday when I first opened it.) So I take it you're using the value in the table as available to the program on any particular computer? In other words, not going out and refreshing it?

One last thing -- IS there a way to change the display currency for a particular stock? I'd love to be able to display my CAD stocks in CAD, but since the majority of my stocks are in USD my default is USD. Although I can alter the individual ticker's background color and base currency, I didn't see an option to alter the display currency for the individual ticker.
Posted by: Litewriter
2010-06-21 11:10:23
24 of 26
#2283
in reply to #2282
Unless I missed a spot, it should actually be using the full conversion rate, which is often more than even 6 digits that are displayed in the table. Keep in mind that these conversion rates are just the rates from a single source, and are likely different than you would get if you actually did a transaction with a bank or brokerage. It's kind of like when you go to exchange money at the bank, you will get a slightly different rate from every bank you visit.

The currency table should refresh automatically at the interval set in the preferences. If it doesn't refresh, it uses the last value in the table. Rates are only updated once a day at our source anyway, so there is no point updating the currency table more than once a day.
Posted by: Anatoly
2010-06-21 11:23:32
25 of 26
#2284
in reply to #2276
@immaus, I've accommodated as many of yours and Litewriter's requests as I could, and now I don't have any more time to spend on this issue. I have to move on, so the rounding will have to remain as it is for a while.
Posted by: Anatoly
2010-06-22 09:29:50
26 of 26
#2293
in reply to #2283
Thanks Anatoly! I appreciate the explanation of the conversion rates. I know the 'at the moment' rate is going to fluctuate all over the place, but during a day, it is unusual for any currency to move more than pennies -- certainly not CAD. As long as PSM gets close, I can finagle the values on buys and sells to match what my broker uses, and then know that what I'm seeing is usable. And that you've done!

Interesting about the currency table. After noting the change, I went to preferences and tried changing the interval, and found that it wouldn't go to less than 18 hours I believe -- now I know why -- thanks!
Posted by: Litewriter
<< 1 2