weighted average in Balance Sheet (was: Re: Stock Sales -
Balance sheet unbalanced)
stimming at tuhh.de
Mon Jan 24 04:35:01 EST 2005
Derek Atkins schrieb:
>>I usually use the "Nearest in Time" option; the weighted average is not
>>particularly informative. Weighted average is, however, the default;
>>and it appears that that it's used to determine the cost when computing
>>the unrealized gain. Since it's calculated using absolute values, it's
>>not even the correct number.
> Hmm, then that's definitely a bug..
However, there is a particular reason to have "Weighted Average" the
default for any of the multi-currency report: GnuCash has two kinds of
prices. There are *explicit* prices with an entry in the Price Editor.
And there are *implicit* prices whenever a transaction with multiple
currencies is booked.
Users with stock accounts probably have all their prices entered into
the price editor as explicit prices. However, users with no stocks but
rather some foreign currencies usually have no prices in the price
database but have all prices/exchange rates only as implicit prices in
their currency exchange transactions. If those users open any of the
multi-currency reports and the default is one of the explicit-price
options (nearest/latest in time) as opposed to the implicit-price option
(weighted average), then these users will surprisingly observe that
their foreign currency exchange rate is unknown, i.e. zero. This is
usually very surprising for the users ("Where are my foreign currencies?
Who said gnucash is supporting multi-currencies?"). Therefore the
decision was at that time to make "Weighted Average" the price default,
because that guarantees at least the availability of any non-zero
price/exchange rate. (In engineer-speak: On average, this option will
give a better approximation to the desired balance sheet result than any
Unfortunately, the downside of that decision is the behaviour you've
just observed: For stock accounts, the price obtained from the "weighted
average" is probably plain wrong or at least unintended by the user. If
anyone can come up with a suggestion on how to change the default
multi-currency setting *and* still prevent the shock for the
implicit-price-users of seeing all their balances at zero not knowing
what's wrong -- then of course we should implement that suggestion. But
simply changing the average will only cause a different problem to show up.
More information about the gnucash-devel