Thanks for sharing! Computing and displaying rate of returns is definitely 
a useful thing to have, and I'd love to see a "standard" solution for this 
for Beancount and Fava. A few challenges:

1. Extracting cashflows turned out to be far trickier than I'd imagined 
when I tried this a few years ago. I also tried hoostus' portfolio-returns 
<https://github.com/hoostus/portfolio-returns>, and though the code is 
clear and helpful, I found that it failed to consider several cases, 
because of which it produced between small and very large errors compared 
to what I was seeing at my broker, for example.

2. Verification that the right cashflows were used is a challenge. It's 
impossible to have faith in the returns numbers without such verification.

Martin wrote and shared beangrow <https://github.com/beancount/beangrow/> 
which solves 1 and 2 above very well. See Martin's doc 
<https://docs.google.com/document/d/1nPsMIunLnDvdsg6TSsd0PZb7jngojNpFlqnaX36WRp8/edit>
 
for more. It also covers grouping, which you mentioned as well. Also see my 
review of beangrow 
<https://docs.google.com/document/d/1FsbdqbPWaupPg67kZp1CK0BoX2Ri4WhGnLa5vNTBBAs/edit#heading=h.xclbp6hivw20>
.

Just at thought, given all of that: it would be awesome if your backend 
could be made to work with beangrow instead.


On Friday, October 15, 2021 at 7:08:10 AM UTC-7 Phractured Blue wrote:

> I've developed a Fava plugin that can calculate a portfolio summary. With 
> several features I've not seen brought together in one place before.
>
> What I needed was a way to group my various accounts by type (Roth, 
> Pre-Tax retirement, Post-Tax investment, Cash) to see the total value of 
> each group.  Additionally I was interested in comparing the performance of 
> managed vs un-managed accounts (which is not straight-forward given the 
> sporadic cash-flow increases).
>
> I settled on calculating the TWRR (Time-Weighted Rate of Return) and MWRR 
> (Money-Weighted Rate of Return) along with Cost and Balance for each 
> account along with the account groups.  Calculating TWRR can be very 
> expensive (even though the MWRR algorithm is significantly more costly) due 
> to the need to calculate the balance at each cashflow point, so by default 
> TWRR calculation is disabled.  It takes about 15 seconds to calculate TWR 
> for ~1000 cash-flow transactions on  my portfolio.
>
> I'm no financial wizard, so the MWRR code is based off the 
> 'portfolio-returns' project ( https://github.com/hoostus/portfolio-returns), 
> and I just hope I got the TWRR calculation correct.  I based the portfolio 
> groups off the fava-classy-portfolio project (
> https://github.com/seltzered/fava-classy-portfolio)
>
> I thought others may have a similar need, so if you there is any interest, 
> the project can be found here:
>
> https://github.com/PhracturedBlue/fava-portfolio-summary
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beancount/1dfda63d-6d72-484c-aaa4-dedec72af8e0n%40googlegroups.com.

Reply via email to