Re: Question about how to work with beancount for ETFs
Cool, that helped a lot, thanks! Best, Matthias Am Samstag, 18. November 2023, 15:44:30 CET schrieb Martin Blais: > Check out the section on trading in the docs. > You can choose a booking method, e.g. FIFO, or do it manually (if you use > the "specific lot identification" method). > One trick that works well when doing by is to run bean-doctor to get the > context around a transaction, it gives you the contents of the account just > before the transaction with the individual lots and you can just select the > ones you want to reduce and copy-paste them. > If you specify a booking method it does it for you; you can use bean-doctor > context to view the selected lots in the same way. > Hope this helps, > > > > > On Sat, Nov 18, 2023 at 3:44 AM Matthias Beyer > > wrote: > > Hi Blais, > > Hi beancount list, > > > > I am a long term beancount user but only lately got into how to work with > > beancount and stock trading. > > > > I moved my stock trades from "normal syntax", like: > > > > 2023-11-18 * "Buy some" > > > > Assets:Stock +10 COOLSTOCK @ 10 EUR > > Assets:Bank:Account -105 EUR > > Expenses:Commissions > > > > to the appropriate one > > > > 2023-11-18 * "Buy some" > > > > Assets:Stock +10 COOLSTOCK {10 EUR} > > Assets:Bank:Account -105 EUR > > Expenses:Commissions > > > > because I just recently learned about how to actually use beancount for > > stock > > trading. > > > > Now, my issue is that I buy ETF for a rather long time now, recurringly > > (each > > months 1st). That means that there are a lot of postings for ETFs. I know > > about the (experimental) "recurring" plugin, but I assume that this won't > > work > > here because of the everchanging prices. > > Either way, I wouldn't actually use that plugin, because I auto-import > > transactions from my bank account and would need to filter out > > transactions > > that are already done by a recurring order. > > > > But that aside, my question is about something different actually: Do I > > move my > > ETF postings from the first syntax (from above) to the second? It is not > > that > > this is quite some effort (vim scripting ftw) but rather that it becomes > > quite > > complex once I sell ETF again, right? Because I would essentially "match" > > my > > ETF against the buying orders, although I probably do not sell the exact > > same > > amount that I bought order-by-order! > > > > E.G. > > > > * buy 100 EUR worth of ETF at 10 > > * buy 100 EUR worth of ETF at 11 > > * buy 100 EUR worth of ETF at 12 > > * buy 100 EUR worth of ETF at 13 > > * buy 100 EUR worth of ETF at 14 > > * buy 100 EUR worth of ETF at 15 > > * buy 100 EUR worth of ETF at 16 > > ... years pass > > Now I have to sell. ETF is at 50 now and I want to have 100 out of it > > every > > transaction. > > So what I do now is > > * sell 100 EUR worth of ETF that I bought at 10 > > > > The first 5 transactions of this work perfectly well... because the amount > > I > > bought at 10 is now worth 500 of my currency. But after that I have to > > sell > > of what I bought at 11 to get out 100 and for the last bit > > of > > what I bought at 11 I also have to sell some fraction of what I bought at > > 12 > > to get out 100 of my currency. And this gets even more complex in > > real-life > > because the ETF of course does not stay at 50 during my time that I am > > selling, but is still moving in price and also because/if I do not want to > > get > > out 100 but, say, 550 of my currency... > > > > Does my logic check out? > > > > Is there any "simple" solution to that? I can totally see the benefit of > > actually doing that calculation! It's just that I am looking for a less > > complex alternative to not burden my future self with work that might be > > unnecessary! :-) > > > > I am really looking forward to your answer! > > Thank you very much for beancount! > > Have a great weekend, > > best from Germany > > Matthias -- 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+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/beancount/22084491.EfDdHjke4D%40takeshi. signature.asc Description: This is a digitally signed message part.
Re: Question about how to work with beancount for ETFs
Check out the section on trading in the docs. You can choose a booking method, e.g. FIFO, or do it manually (if you use the "specific lot identification" method). One trick that works well when doing by is to run bean-doctor to get the context around a transaction, it gives you the contents of the account just before the transaction with the individual lots and you can just select the ones you want to reduce and copy-paste them. If you specify a booking method it does it for you; you can use bean-doctor context to view the selected lots in the same way. Hope this helps, On Sat, Nov 18, 2023 at 3:44 AM Matthias Beyer wrote: > Hi Blais, > Hi beancount list, > > I am a long term beancount user but only lately got into how to work with > beancount and stock trading. > > I moved my stock trades from "normal syntax", like: > > 2023-11-18 * "Buy some" > Assets:Stock +10 COOLSTOCK @ 10 EUR > Assets:Bank:Account -105 EUR > Expenses:Commissions > > to the appropriate one > > 2023-11-18 * "Buy some" > Assets:Stock +10 COOLSTOCK {10 EUR} > Assets:Bank:Account -105 EUR > Expenses:Commissions > > because I just recently learned about how to actually use beancount for > stock > trading. > > Now, my issue is that I buy ETF for a rather long time now, recurringly > (each > months 1st). That means that there are a lot of postings for ETFs. I know > about the (experimental) "recurring" plugin, but I assume that this won't > work > here because of the everchanging prices. > Either way, I wouldn't actually use that plugin, because I auto-import > transactions from my bank account and would need to filter out > transactions > that are already done by a recurring order. > > But that aside, my question is about something different actually: Do I > move my > ETF postings from the first syntax (from above) to the second? It is not > that > this is quite some effort (vim scripting ftw) but rather that it becomes > quite > complex once I sell ETF again, right? Because I would essentially "match" > my > ETF against the buying orders, although I probably do not sell the exact > same > amount that I bought order-by-order! > > E.G. > > * buy 100 EUR worth of ETF at 10 > * buy 100 EUR worth of ETF at 11 > * buy 100 EUR worth of ETF at 12 > * buy 100 EUR worth of ETF at 13 > * buy 100 EUR worth of ETF at 14 > * buy 100 EUR worth of ETF at 15 > * buy 100 EUR worth of ETF at 16 > ... years pass > Now I have to sell. ETF is at 50 now and I want to have 100 out of it > every > transaction. > So what I do now is > * sell 100 EUR worth of ETF that I bought at 10 > > The first 5 transactions of this work perfectly well... because the amount > I > bought at 10 is now worth 500 of my currency. But after that I have to > sell > of what I bought at 11 to get out 100 and for the last bit > of > what I bought at 11 I also have to sell some fraction of what I bought at > 12 > to get out 100 of my currency. And this gets even more complex in > real-life > because the ETF of course does not stay at 50 during my time that I am > selling, but is still moving in price and also because/if I do not want to > get > out 100 but, say, 550 of my currency... > > Does my logic check out? > > Is there any "simple" solution to that? I can totally see the benefit of > actually doing that calculation! It's just that I am looking for a less > complex alternative to not burden my future self with work that might be > unnecessary! :-) > > I am really looking forward to your answer! > Thank you very much for beancount! > Have a great weekend, > best from Germany > Matthias -- 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+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/beancount/CAK21%2BhP_oY38uAzC9VX6PbOzo5j39Ay97O2xE8BysGCon48CEg%40mail.gmail.com.
Question about how to work with beancount for ETFs
Hi Blais, Hi beancount list, I am a long term beancount user but only lately got into how to work with beancount and stock trading. I moved my stock trades from "normal syntax", like: 2023-11-18 * "Buy some" Assets:Stock +10 COOLSTOCK @ 10 EUR Assets:Bank:Account -105 EUR Expenses:Commissions to the appropriate one 2023-11-18 * "Buy some" Assets:Stock +10 COOLSTOCK {10 EUR} Assets:Bank:Account -105 EUR Expenses:Commissions because I just recently learned about how to actually use beancount for stock trading. Now, my issue is that I buy ETF for a rather long time now, recurringly (each months 1st). That means that there are a lot of postings for ETFs. I know about the (experimental) "recurring" plugin, but I assume that this won't work here because of the everchanging prices. Either way, I wouldn't actually use that plugin, because I auto-import transactions from my bank account and would need to filter out transactions that are already done by a recurring order. But that aside, my question is about something different actually: Do I move my ETF postings from the first syntax (from above) to the second? It is not that this is quite some effort (vim scripting ftw) but rather that it becomes quite complex once I sell ETF again, right? Because I would essentially "match" my ETF against the buying orders, although I probably do not sell the exact same amount that I bought order-by-order! E.G. * buy 100 EUR worth of ETF at 10 * buy 100 EUR worth of ETF at 11 * buy 100 EUR worth of ETF at 12 * buy 100 EUR worth of ETF at 13 * buy 100 EUR worth of ETF at 14 * buy 100 EUR worth of ETF at 15 * buy 100 EUR worth of ETF at 16 ... years pass Now I have to sell. ETF is at 50 now and I want to have 100 out of it every transaction. So what I do now is * sell 100 EUR worth of ETF that I bought at 10 The first 5 transactions of this work perfectly well... because the amount I bought at 10 is now worth 500 of my currency. But after that I have to sell of what I bought at 11 to get out 100 and for the last bit of what I bought at 11 I also have to sell some fraction of what I bought at 12 to get out 100 of my currency. And this gets even more complex in real-life because the ETF of course does not stay at 50 during my time that I am selling, but is still moving in price and also because/if I do not want to get out 100 but, say, 550 of my currency... Does my logic check out? Is there any "simple" solution to that? I can totally see the benefit of actually doing that calculation! It's just that I am looking for a less complex alternative to not burden my future self with work that might be unnecessary! :-) I am really looking forward to your answer! Thank you very much for beancount! Have a great weekend, best from Germany Matthias -- 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+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/beancount/8296870.T7Z3S40VBb%40hoshi. signature.asc Description: This is a digitally signed message part.