Importing Non-Balancing Investment Transactions

67 views
Skip to first unread message

Aaron Lindsay

unread,
Nov 7, 2020, 10:56:26 PM11/7/20
to Beancount
I'm working on getting various importers setup for my accounts and have hit a snag. After importing transactions from my brokerage's OFX files, I see messages like the following:

mine.beancount:65467:   Transaction does not balance: (-0.02619 USD)

   2020-09-24 * "DIVIDEND REINVESTMENT"
     Income:Dividend         -53.01 USD
     Assets:Brokerage:TICKR   0.491 TICKR {107.91 USD, 2020-09-24}

It appears my brokerage does not specify the price with enough precision. I'm considering doing the math to calculate the price on my own and replacing my brokerage's value in the importer, but it feels a little 'icky' to be ignoring data from them... And how would I know I'm not introducing an error (i.e. getting my cost basis wrong if my importer miscalculates the price due to not subtracting out commission or something)?

Has anyone else seen an issue like this, or have any wise words on how best to work around it?

Thanks!

-Aaron

Martin Blais

unread,
Nov 7, 2020, 11:06:44 PM11/7/20
to Beancount
On Sat, Nov 7, 2020 at 10:56 PM Aaron Lindsay <acli...@gmail.com> wrote:
I'm working on getting various importers setup for my accounts and have hit a snag. After importing transactions from my brokerage's OFX files, I see messages like the following:

mine.beancount:65467:   Transaction does not balance: (-0.02619 USD)

   2020-09-24 * "DIVIDEND REINVESTMENT"
     Income:Dividend         -53.01 USD
     Assets:Brokerage:TICKR   0.491 TICKR {107.91 USD, 2020-09-24}

It appears my brokerage does not specify the price with enough precision. I'm considering doing the math to calculate the price on my own and replacing my brokerage's value in the importer, but it feels a little 'icky' to be ignoring data from them... And how would I know I'm not introducing an error (i.e. getting my cost basis wrong if my importer miscalculates the price due to not subtracting out commission or something)?

The real question is whether they hold the number of rounded units or a more precise fraction.
I would call them and ask, and track the units as closely to what they do.
(Is this Vanguard?)


Has anyone else seen an issue like this, or have any wise words on how best to work around it?

Make the tolerance larger, or use an extra posting to absord the rounding errors.


 

Thanks!

-Aaron

--
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 beancount+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/beancount/3dbac0ac-ad50-4c72-a4e0-f9634f335452n%40googlegroups.com.

Aaron Lindsay

unread,
Nov 8, 2020, 7:11:18 AM11/8/20
to Beancount
On Saturday, November 7, 2020 at 11:06:44 PM UTC-5 bl...@furius.ca wrote:
On Sat, Nov 7, 2020 at 10:56 PM Aaron Lindsay <acli...@gmail.com> wrote:
I'm working on getting various importers setup for my accounts and have hit a snag. After importing transactions from my brokerage's OFX files, I see messages like the following:

mine.beancount:65467:   Transaction does not balance: (-0.02619 USD)

   2020-09-24 * "DIVIDEND REINVESTMENT"
     Income:Dividend         -53.01 USD
     Assets:Brokerage:TICKR   0.491 TICKR {107.91 USD, 2020-09-24}

It appears my brokerage does not specify the price with enough precision. I'm considering doing the math to calculate the price on my own and replacing my brokerage's value in the importer, but it feels a little 'icky' to be ignoring data from them... And how would I know I'm not introducing an error (i.e. getting my cost basis wrong if my importer miscalculates the price due to not subtracting out commission or something)?

The real question is whether they hold the number of rounded units or a more precise fraction.
I would call them and ask, and track the units as closely to what they do.
(Is this Vanguard?)

Yes, it is Vanguard. I checked their website and it is no more precise... but I suppose you're suggesting they could even be accounting it internally with more precision than they're allowing me to view either via browser or OFX?

Let's suppose that they do hold it internally with more precision - what is my recourse given that I don't have access to that information?

Has anyone else seen an issue like this, or have any wise words on how best to work around it?

Make the tolerance larger, or use an extra posting to absord the rounding errors.

I know the tolerance would work around some of them - but some of them would require tolerances larger than a cent, and I don't think I'm willing to do that. I'm also somewhat aggravated that GnuCash appears to have updated the price to 'fix' it under the covers, but that's another story...

So, it sounds like adding an extra posting to absorb the rounding errors is my best bet. My initial thought was to make it an 'Equity' account, but the documentation seems to discourage this:

> Although it is technically possible to explicitly book postings against Equity accounts the usual purpose of items in that category is to account for past changes on the balance sheet (net/retained income or opening balances).

But it doesn't seem a natural fit for any of the other account types, either...

-Aaron

Martin Blais

unread,
Nov 9, 2020, 9:06:27 AM11/9/20
to Beancount
On Sun, Nov 8, 2020 at 7:11 AM Aaron Lindsay <acli...@gmail.com> wrote:


On Saturday, November 7, 2020 at 11:06:44 PM UTC-5 bl...@furius.ca wrote:
On Sat, Nov 7, 2020 at 10:56 PM Aaron Lindsay <acli...@gmail.com> wrote:
I'm working on getting various importers setup for my accounts and have hit a snag. After importing transactions from my brokerage's OFX files, I see messages like the following:

mine.beancount:65467:   Transaction does not balance: (-0.02619 USD)

   2020-09-24 * "DIVIDEND REINVESTMENT"
     Income:Dividend         -53.01 USD
     Assets:Brokerage:TICKR   0.491 TICKR {107.91 USD, 2020-09-24}

It appears my brokerage does not specify the price with enough precision. I'm considering doing the math to calculate the price on my own and replacing my brokerage's value in the importer, but it feels a little 'icky' to be ignoring data from them... And how would I know I'm not introducing an error (i.e. getting my cost basis wrong if my importer miscalculates the price due to not subtracting out commission or something)?

The real question is whether they hold the number of rounded units or a more precise fraction.
I would call them and ask, and track the units as closely to what they do.
(Is this Vanguard?)

Yes, it is Vanguard. I checked their website and it is no more precise... but I suppose you're suggesting they could even be accounting it internally with more precision than they're allowing me to view either via browser or OFX?

I believe that they are.


Let's suppose that they do hold it internally with more precision - what is my recourse given that I don't have access to that information?

I get around this problem by using the ~ syntax on the balance entries. After many years, they still only off by 0.00x units, and only some of them.

2020-11-10 balance Assets:Vanguard:ABCD         123.456 ~ 0.003 ABCD

It's not a great solution, but it get the job done.



 

Has anyone else seen an issue like this, or have any wise words on how best to work around it?

Make the tolerance larger, or use an extra posting to absord the rounding errors.

I know the tolerance would work around some of them - but some of them would require tolerances larger than a cent, and I don't think I'm willing to do that. I'm also somewhat aggravated that GnuCash appears to have updated the price to 'fix' it under the covers, but that's another story...

So, it sounds like adding an extra posting to absorb the rounding errors is my best bet. My initial thought was to make it an 'Equity' account, but the documentation seems to discourage this:

> Although it is technically possible to explicitly book postings against Equity accounts the usual purpose of items in that category is to account for past changes on the balance sheet (net/retained income or opening balances).

But it doesn't seem a natural fit for any of the other account types, either...

I use Equity accounts for rounding, that's fine. Maybe the wording is too strong and reflects an ideal.

 

-Aaron

--
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 beancount+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages