[GNC] conceptual errors and approximate numbers [was: Re: GnuCash_user: rounding errors and significant digits]

Jim DeLaHunt list+gnucash at jdlh.com
Sun Oct 8 20:15:05 EDT 2023


Bruce:

On 2023-10-07 18:06, Bruce McCoy via gnucash-user wrote:
> ...What I do not yet understand is if GnuCash considers a price per share of 10.89 to be a precise figure, why GnuCash does not calculate 1,377.41 * 10.89 = 15,000.00 for Jeff. If GnuCash doesn’t, would we consider making a change to GnuCash to allow it? ...

I believe that your first conceptual error is in your premise, "if 
GnuCash considers". You are missing the preceding step:

Why does Bruce McCoy assert what he asserts?

When Bruce McCoy reads a broker statement that a trade was "1,377.41 
shares, price 10.89, amount $15,000.00", why does Bruce consider the 
price per share of 10.89 to be a _precise_ figure, rather than an 
approximation?

Why does Bruce McCoy not engage with the arithmetic truth that the 
quantity "1,377.41 * 10.89" is not equal to the quantity "15,000.00"? 
The two quantities are approximately equal, but not exactly equal. Why 
does Bruce interpret this trade as:

    "1,377.41 * 10.89 = 15,000.00"

instead of

    "1,377.41 * 10.89 ≆ 15,000.00" (where "≆" means "approximately equal
    to but not equal to"?

Many people have told you, Bruce, that the practical way[*] to read this 
broker statement is as:

    "_exactly_ 1,377.41 shares, price _approximately_ 10.89, amount
    _exactly_ $15,000.00"

Then when entering the transaction to GnuCash, enter exactly 1,377.41 as 
the number of shares, exactly 15,000.00 as the amount of the 
transaction, and leave the price blank. GnuCash fills in a price of 
15000000/137741, and stores that internally. GnuCash might display the 
price as either 10 + 50000/137741 or $10.8900, depending on the currency 
and the user preferences, but remember that display and internal exact 
value need not be the same thing. (As indeed it probably is not, in the 
case of the broker's statement of price.)

For example, from this thread:

On 2023-10-07 13:06, john wrote:
> ...Jeff did it wrong. Jeff should enter the number of shares and the amount paid and let GnuCash calculate the price, because the price per share he paid wasn't 10.89, it was 137741/1500000. 137741 is the product of two primes, 181 and 761, so 137741/1500000*cannot*  be exactly represented as a decimal. It's simpler to enter the amount and value than to enter an exact price....

or,

On 2023-10-07 20:07, David Carlson wrote:
> ...What you do not understand is that John Ralls and GnuCash recommend
> entering the total amount and the total number of shares and letting
> GnuCash calculate the price. THEN there is no error in the account running
> balance.  This is not going to change....

So, Bruce, you titled this thread "rounding errors and significant 
digits". But the error I see revealed by this thread is not a rounding 
error by GnuCash, it is a conceptual error by you, in interpreting a 
logically inconsistent broker transaction report, and errors which 
follow from that interpretation.  I also see an error in failing to use 
GnuCash in the way which best fits the provided information, to record 
the transaction.

I have put a lot of effort into this thread. I am happy to help people 
get answers to questions about GnuCash by contributing to this list. 
However, I don't think this thread is about GnuCash any more. It is 
about your conceptual interpretation of logically inconsistent broker 
transaction reports. That is not a topic which I find valuable for the 
limited time I want to invest in this email list. Thus, I suspect I will 
lose interest in this thread going forward.

Best regards,
     —Jim DeLaHunt

[*] by "practical way", I mean in part that you can determine from the 
broker's other information that the values they give for the quantity of 
shares and the amount of the transaction are exact. For instance, if 
they say that a transaction puts $15,000.00 into your account, and if 
they reject your attempt to withdraw $15,000.01 due to insufficient 
funds, and if they tell you after withdrawing $14,999.99 that you have 
$0.01 left over, and if they tell you after withdrawing $15,000.00 that 
you have a zero cash balance, and if they don't allow cash transactions 
for partial cents, then you can be pretty sure that the $15,000.00 
amount they told you was an exact rather than approximate number.




More information about the gnucash-user mailing list