Inaccurate performance for deposit accounts with interest payment

Hi,

I have observed some weird behaviors for a deposit account performance with interest. I created a new file to represent a minimal reproducible example.

=====

Case 1: Interest on initial deposit without security


This correctly shows 10% performance (no issue).

Case 2: Interest with no remaining balance


This shows 0% performance despite the $10 interest.

Case 3: Interest with small remaining balance


This time, I left $1 balance, and the performance chart shows 1000% gain. It seems it’s thinking the $10 interest gain was from the $1.

=====

Is this the expected behavior? I have a several deposit accounts (bank/brokerage) that earns small interest before I buy any securities. I labeled those deposit accounts as “Cash” in the taxonomies (with other cash-equivalent investments) and want to track their performance. But these behavior I showed above makes it inaccurate.

This is what happens:

  1. I deposit money to the deposit account.
  2. The money sits in the deposit account a few days before I buy a security, and it earns the interest.
  3. I buy a security, and a few cents are left over.
  4. My brokerage pays the accrued interest at the end of the month, which is after I bought the security.
  5. PP thinks that interest was an extremely high performance gain.

Here are a few examples from my actual portfolio:



=====

Please let me know any suggestions or if I need to report this as a bug in GitHub.

I have the latest version of PP (Version 0.73.0) as the application say no updates are available.

1 Like

Yes, while not ideal, it is to be expected. To change the behaviour, you would need to book the interest as it accrues daily on a “shadow account” instead of once when it is actually paid.

You know those jokes where the doctor says “Then don’t do it!”? Just refrain from evaluating those mostly-empty accounts individually; alternatively, leave more money on them so that the unavoidable error isn’t amplified like in your examples.

“Shadow account” as in create another fake account and log my interests in that account instead? That would double count the balance in those accounts if I were to have the accurate performance (case 1 in my OP). Also, booking the interest for all those accounts daily isn’t very trivial/intuitive as banks pay your interests at the end of a month.

I was expecting PP to collect the daily balance between each interest payment, and calculate the gain/performance/rate of the interest based on that information.

I do not evaluate those accounts individually; I was showing those individual accounts to make a better representation of the behavior. I want to evaluate the performance of my cash and cash-equivalent investments altogether. Those accounts are not always “mostly-empty”, but holds meaningful amount of cash in meaningful duration of time often enough.

This also affects the performance of the “Entire portfolio” data series, which is the default data series of many pages in PP, even if I don’t track those cash accounts separately since those deposit accounts are part of my entire portfolio.

I don’t think the users are supposed to change their cash/investment management just to make it better in a portfolio management program, especially having a few remaining cents after a security purchase, and later receiving an interest payment in the same account would be a common occurrence.

Also, you mentioned this is the expected behavior, but here you are saying this is an unavoidable “error”. I see you are a “Regular”, so I assume you have a better understanding of this product, but I don’t know if you are also a code contributor. Do you know if this behavior is the intended behavior (as a developer), or are you saying this is the “expected” behavior since this is what you have been observing in the past? Or are you saying this is a bug in PP?

I recently discovered this issue myself, and it’s hard for me to call it anything but an error. At the moment, in such cases, the performance metrics are simply wrong - and incredibly so. PP calculates performance on interest erroneously.

Is there a solution? Should I reclassify all interest transactions as deposits? I’m not sure how much this skews the overall performance calculations (I guess not much, but I’m starting to doubt the general reliability of these calculations).

The same as hansae, I’d also like to know whether this is the expected behavior or an actual error. Maybe the German-speaking part of the forum is a better place to ask?

We love to help. But we need you to help us helping you.

You are not providing any details, so I‘m afraid we can’t help you.

Please provide bookings and what you expect is wrong.

You can use the private view to keep your personal situation, when taking screenshots.

The problem seems to be the same as the one @hansae had. The performance of interest is calculated from the amount of money that is in the account at the moment the interest is credited to the account.

This is a problem with savings accounts that have large cash flows (and even in cases of smaller variability the problem remains - it is just smaller and not so easily noticeable), as well as with brokerage accounts that pay interest on idle cash.

Copy that. Thanks!

To takle the issue isnt as easy as it might looks.

To give you an idea:

PP doesn’t know the interest payment date in advance. Some are monthly, quarterly or yearly.

From a bird view: PP calculates every transaction by date from oldest to newest. Every time when you start the program.

So currently there is no algorithm which keeps track of cash accounts which could be used for a reliable performance based on interest payments.

If you combine those two points you’ll release how complex this is.

A possible solution was introduced by @chirlu

Instead of booking the interest as interest for the respective account, you could book a deposit on a dummy cash account.

The result won’t be 100% correct performance wise, but is currently the best possible workaround to have your cash accurate.

If you create a filter which includes all but the dummy cash account your performance will be accurate.

OK, thanks for the thorough answer. It’s a bit of a cumbersome solution, but I’ll give it a try. Or maybe I’ll simply change the interest entries to deposits.

It’s a shame that there is no option to specify whether the interest payment is monthly, quarterly, or otherwise when adding an interest entry, so that the algorithm could calculate the daily amount and the performance based on that.

It’s not a shame if you consider the intention and history of PP.

The core of PP is almost 15 years old. It’s a minor thing which doesn’t please everyone, but it’s not at all a big thing. In Germany we had for almost 10 years no interest at all, so this wasn’t a focus compared to other things

Ps:

Even a payment option wouldn’t solve the issue straight away. You still would need a way to consider all transactions for this period.

Not literally “shame”, rather: “something that would be nice to have.”

Wouldn’t taking the account balance at the end of each day and dividing it by the number of days in the interest payment period work? I don’t know how PP works, but it seems to me that a simple auxiliary table for each day would solve any problems.

I guess there are still some issues: for example, the exact hour at which the broker or bank checks the account for interest calculation, etc.

To be as precise as possible, interest must be calculated for every day per months, while taking the payment date in consideration.

But this isn’t an easy task as I explained above.