Totals for a specific commodity

77 views
Skip to first unread message

CDT

unread,
Feb 24, 2024, 2:46:25 PM2/24/24
to Beancount
I have some commodities (lets just use BTC as an example) spread out over many different accounts.

Is there a command to get a grand total on a specific commodity (like BTC) regardless of the account hierarchy?

I couldn't find anything on this.

Martin Blais

unread,
Feb 24, 2024, 3:25:34 PM2/24/24
to bean...@googlegroups.com
Just SELECT sum(position) WHERE currency = 'BTC'?

--
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/9b8133d0-e942-44cd-bc80-db773878aa9en%40googlegroups.com.

CDT

unread,
Feb 25, 2024, 12:18:16 PM2/25/24
to Beancount
I'm new to Python, coding and Beancount, so I don't mean to sound like a dunce when I ask - where do I use "SELECT sum(position) WHERE currency = 'BTC'?  

Is that to be put in a script I create or is that used in Bean-Query or Bean-Report or something else?

Martin Blais

unread,
Feb 25, 2024, 12:20:45 PM2/25/24
to bean...@googlegroups.com
(No need to apologize, there are no dumb questions here - but maybe just not much time for detailed answers.)
Use beanquery:


CDT

unread,
Feb 25, 2024, 12:41:15 PM2/25/24
to Beancount
Thank you.  That worked.

CDT

unread,
Feb 25, 2024, 12:58:22 PM2/25/24
to Beancount
This command gives me a list of the different purchases of that position at different prices. So if I bought some Filecoin at $5.77 and other at $7.83 (just as an example) it separates each of them out in the output 1.134 FIL {5.77 USD}, 3.345 FIL {7.83 USD}.  Is there a way to get the total number of shares across all accounts regardless of price (or maybe with an average price)?

I see where I can get a sum total of the amount I spent on a position by using  SELECT sum(cost(position))  but I don't see anything  on getting a total number of a specific commodity (as a total).
On Sunday, February 25, 2024 at 12:20:45 PM UTC-5 bl...@furius.ca wrote:

Daniele Nicolodi

unread,
Feb 25, 2024, 2:22:07 PM2/25/24
to bean...@googlegroups.com
On 25/02/24 18:58, CDT wrote:
> This command gives me a list of the different purchases of that position
> at different prices. So if I bought some Filecoin at $5.77 and other at
> $7.83 (just as an example) it separates each of them out in the output
> 1.134 FIL {5.77 USD}, 3.345 FIL {7.83 USD}.  Is there a way to get the
> total number of shares across all accounts regardless of price (or maybe
> with an average price)?
>
> I see where I can get a sum total of the amount I spent on a position by
> using SELECT sum(cost(position))  but I don't see anything  on getting a
> total number of a specific commodity (as a total).

SELECT sum(units(position))

or

SELECT sum(position.units)

The latter works only with a somewhat recent beanquery (unreleased).

Cheers,
Dan

CDT

unread,
Feb 25, 2024, 2:43:24 PM2/25/24
to Beancount
Thank you Dan. That worked.
Reply all
Reply to author
Forward
0 new messages