On Sat, Feb 13, 2021 at 3:04 PM Ben Blount <b...@bben.us> wrote: > 1) Is there any downside of attaching so many currencies to a single >> account? > > > For beancount's core tools probably not. It may not work nicely with > tooling like Fava's holdings report. > > 2) Is there a way to represent these transactions using the same currency >> over and over (based on the cost basis and date of options) > > > That gives me an idea. Cost has a date and label field. When omitted, date > is set to the date of the posting which created the lot, and the label is > None. > However you could totally use these for your own purposes: > 2020-12-28 * "STO March 1 PUT 200 on HOOL" > Assets:Brokerage:Taxable:HOOL:Options -1 HOOLPUT {1000 USD, > 2021-03-01} > Assets:Brokerage:Taxable:Cash 1000 USD > > 2020-12-30 * "BTC March 1 PUT 200 on HOOL" > Assets:Brokerage:Taxable:HOOL:Options 1 HOOLPUT {2021-03-01} @ 990 > USD ; Notice how you can omit the price here since there's a unique match > already. If you had STO that same put at more than one price you'd need to > put the price+date on the BTC unless you are closing the whole position. > Assets:Brokerage:Taxable:Cash -990 USD > Income:PnL > > Variations include setting the label as the type of option so you can use > the same commodity for puts and calls. The approach above is the decent > balance IMO. I'd still recommend making the option commodity specific so > you can see your holdings rolled up independent of what account they are in. >
That's not going to work, because of two reasons: using the lot-date as the expiration will fail for vertical spreads (as you point out), which are a most popular building block, but more importantly, the cost of the option isn't the strike, and that's going to mess up the P/L part of the transaction. Much better to use TD symbols (e.g. RUT_031921C2400), which BTW, are naturally fitting the Beancount commodity syntax, and to leverage Beancount's ability to compute P/L. > > On Sat, Feb 13, 2021 at 10:34 AM Rahul Kuchhal <ra...@kuchhal.com> wrote: > >> I am also trying to figure out the best way to represent Sold options >> that open new positions. >> >> The suggested approach below works (kind of). >> >> 2020-12-28 * "Sell March 1 PUT 200 on HOOL" >> Assets:Brokerage:Taxable:HOOL:Options -1 HOOL_PUT_200_2021_03_01 >> {1000 USD} >> Assets:Brokerage:Taxable:Cash 1000 USD >> >> Seems like I would need to add a new currency to HOOL:Options account >> each time I open a new position. Overtime I suspect this may result in >> hundreds (or even thousands) of currencies attached to a single account. >> >> 1) Is there any downside of attaching so many currencies to a single >> account? >> 2) Is there a way to represent these transactions using the same currency >> over and over (based on the cost basis and date of options) >> >> 2020-12-28 * "STO March 1 PUT 200 on HOOL" >> Assets:Brokerage:Taxable:HOOL:Options -1 Options {1000 USD} >> Assets:Brokerage:Taxable:Cash 1000 USD >> >> 2020-12-30 * "BTC March 1 PUT 200 on HOOL" >> Assets:Brokerage:Taxable:HOOL:Options 1 Options {1000 USD} @ 990 USD >> Assets:Brokerage:Taxable:Cash -990 USD >> Income:PnL >> >> >> >> On Tuesday, December 29, 2020 at 5:11:26 PM UTC-5 Rajath wrote: >> >>> Two good approaches. The one where each option symbol is commoditized >>> more inline with how stocks are managed. But the second approach is also >>> very interesting because it accounts for assignment risk. My brokerage also >>> holds the collateral from available cash when I sell a put option, so maybe >>> I can find a way to represent that too (which says exactly how much cash I >>> have on hand to trade). >>> >>> I will play around with this! >>> >>> On Tuesday, December 29, 2020 at 1:16:10 PM UTC-8 tinot...@gmail.com >>> wrote: >>> >>>> Hi, >>>> >>>> I count only the money in my account and control the sum of possible >>>> assignments. I don't have an "entity" option. >>>> >>>> For the options, I sell puts of stocks I want to buy and I have the >>>> money for doing it. So if it's assigned, no problem ;-) >>>> >>>> On Tue, Dec 29, 2020 at 6:47 PM Martin Blais <bl...@furius.ca> wrote: >>>> >>>>> On Tue, Dec 29, 2020 at 11:24 AM Tuno Tunante <tinot...@gmail.com> >>>>> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> What I'm doing (I did the last yesterday) is like that: >>>>>> >>>>>> 2020-12-28 * "TD" "Sell Put MO 15 JAN 2021 Strike 40 @0.40" #Option # >>>>>> Put #MO #Sell >>>>>> Income:Options:TD -40.00 USD >>>>>> Expenses:Comission:TD 0.67 USD >>>>>> Assets:Account:TD 39.33 USD >>>>>> Assets:Options 4000.00 USD >>>>>> Liabilities:Opctions >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> Where's the option? >>>>> >>>>> >>>>> I do 6 or 7 per month. I use the Assets:Options and >>>>>> Liabilities:Options in order to have a complete view about the money I >>>>>> must >>>>>> reserve in case I'm assigned. >>>>>> >>>>> >>>>> Rule #1 of options trading: never get assigned! ;-) >>>>> >>>>> >>>>> >>>>>> Before each put, I check that Liabilities:Options is less that the >>>>>> money in Assets:account:TD >>>>>> >>>>>> Regards. >>>>>> >>>>>> >>>>>> >>>>>> On Tue, Dec 29, 2020 at 6:18 AM Rajath Agasthya <rajatha...@gmail.com> >>>>>> wrote: >>>>>> >>>>>>> Yeah, I figured each option could be a new commodity. I don't do a >>>>>>> lot of option trades, so I'm okay with having more commodities until >>>>>>> something better turns up. >>>>>>> >>>>>>> The thing I'm not sure of is how to represent a trade where I'm >>>>>>> getting a credit (from selling a put or even a short sale of a stock). I >>>>>>> can't quite seem to figure out the matching posting for this >>>>>>> transaction if >>>>>>> I represent receiving credit as a posting into a cash account such as >>>>>>> Assets:US:Schwab:Cash. Any thoughts on how to do this or an example >>>>>>> you can share? >>>>>>> >>>>>>> Thanks! >>>>>>> On Monday, December 28, 2020 at 5:04:37 PM UTC-8 bl...@furius.ca >>>>>>> wrote: >>>>>>> >>>>>>>> On Mon, Dec 28, 2020 at 5:47 PM Rajath Agasthya < >>>>>>>> rajatha...@gmail.com> wrote: >>>>>>>> >>>>>>>>> Hi all, >>>>>>>>> >>>>>>>>> First of all, thanks to all the contributors (especially Martin) >>>>>>>>> for this wonderful tool! I'm new to double entry accounting and >>>>>>>>> Beancount, >>>>>>>>> but I'm blown away at how simple yet powerful this tool is, >>>>>>>>> especially when >>>>>>>>> combined with Fava. >>>>>>>>> >>>>>>>>> I've been reading docs and I just started setting up my beancount >>>>>>>>> file. But as I setup my investment account, I'm a little bit lost as >>>>>>>>> to how >>>>>>>>> I should manage option trades. The trades where there is a net debit >>>>>>>>> is >>>>>>>>> straightforward (I think), but I'm not sure how to enter trades like >>>>>>>>> selling a covered call or a put or a spread/multi-leg option that >>>>>>>>> result in >>>>>>>>> a credit. >>>>>>>>> >>>>>>>>> Are there some examples I can refer to on how to manage option >>>>>>>>> trades? The docs mention options trading as a future topic to be >>>>>>>>> tackled >>>>>>>>> and I unfortunately couldn't find anything in the mailing list >>>>>>>>> (perhaps I >>>>>>>>> didn't search properly). So if anyone can point me in the right >>>>>>>>> direction, >>>>>>>>> I would really appreciate it. >>>>>>>>> >>>>>>>> >>>>>>>> I do options trading, but I only record simple options, never >>>>>>>> combos like this. >>>>>>>> - The option can be encoded in the symbol name. This makes a lot of >>>>>>>> new commodities to declare and put out of commissions. I haven't yet >>>>>>>> figured out what needs to be done to make this a bit nicer (e.g. allow >>>>>>>> user >>>>>>>> to define a commodity regex/pattern for these). >>>>>>>> - For stable asset types, I use leaf subaccounts; for options I >>>>>>>> don't (would be too many accounts, and it feels silly to create an >>>>>>>> account >>>>>>>> for a single position). >>>>>>>> - For options combinations/"strategies", if you have some way to >>>>>>>> trade all the legs instantly, you should be able to either (a) insert >>>>>>>> all >>>>>>>> the individual legs and their prices in a single transaction, or, if >>>>>>>> the >>>>>>>> product is already securitized by your broker, trade it like any other >>>>>>>> product (one leg with the derivative instrument). >>>>>>>> >>>>>>>> Hope this helps, you do have to get a bit creative if you trade >>>>>>>> options, but, well, you trade options, so you will be able to figure >>>>>>>> out >>>>>>>> something :-) >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Rajath >>>>>>>>> >>>>>>>>> -- >>>>>>>>> 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/51c57efc-8915-4edd-981a-cb997c1f143cn%40googlegroups.com >>>>>>>>> <https://groups.google.com/d/msgid/beancount/51c57efc-8915-4edd-981a-cb997c1f143cn%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>>> . >>>>>>>>> >>>>>>>> -- >>>>>>> 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/b12e5c7d-f2d7-4b9c-8131-3cac25b17810n%40googlegroups.com >>>>>>> <https://groups.google.com/d/msgid/beancount/b12e5c7d-f2d7-4b9c-8131-3cac25b17810n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>> . >>>>>>> >>>>>> -- >>>>>> 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/CAM6BLCwOUD47fZz6o0WroYjvPHFhLcHYfSft6bdwiDW1sC%2B%2BSw%40mail.gmail.com >>>>>> <https://groups.google.com/d/msgid/beancount/CAM6BLCwOUD47fZz6o0WroYjvPHFhLcHYfSft6bdwiDW1sC%2B%2BSw%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> >>>>> -- >>>>> 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/CAK21%2BhMp0mVafPWRtdPYgFiQ1GmPLfpZgfaY_fdJJ_oZW74gZA%40mail.gmail.com >>>>> <https://groups.google.com/d/msgid/beancount/CAK21%2BhMp0mVafPWRtdPYgFiQ1GmPLfpZgfaY_fdJJ_oZW74gZA%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> -- >> 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/652e0445-c9a1-4b0b-9084-67672d3207cbn%40googlegroups.com >> <https://groups.google.com/d/msgid/beancount/652e0445-c9a1-4b0b-9084-67672d3207cbn%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- > 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/CACGEkZu_9XM__-qFCiHoCDzhFP5ANzjJj%3DPze0yPyii0U%3DpKkA%40mail.gmail.com > <https://groups.google.com/d/msgid/beancount/CACGEkZu_9XM__-qFCiHoCDzhFP5ANzjJj%3DPze0yPyii0U%3DpKkA%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- 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%2BhOm8_VkVrKo6A_RUsgdkCN2j68ZSKoy-oVP%3Dy98Uo7iiQ%40mail.gmail.com.