T-bills through Treasury Direct - How to Record?

185 views
Skip to first unread message

CDT

unread,
Feb 19, 2024, 8:12:56 AM2/19/24
to Beancount
What is the best way to post entries for t-bills?

When you purchase a 30 day t-bill on Treasury Direct, you purchase at a discount, so if it's $1100 face value bill, and the interest rate is 5.4%, you get a 5.4% ($4.53) discount and only pay $1,095.47.

In 30 days the face value is $1100.

So how is the interest counted 30 days later?  Is there a way to do that?

Also, you can let each month roll over into a new bond, so in cases like that the $1100 would come due but you would get a refund for the new bond that is discounted.

I'm just confused how these things would be registered in Beancount.

From the treasury direct website...

A refund payment from a Treasury bill is the difference between the face value and the price paid when purchased at original issue. Treasury bills are sold at a discount or at par (face value). When the bill matures, the buyer is paid its face value.

Martin Blais

unread,
Feb 19, 2024, 8:56:10 AM2/19/24
to bean...@googlegroups.com
I have a bunch of these now too, I haven't converted to Beancount yet, but I think it'll be straightforward.
I think there is a choice to make about whether you want to 
- just account for the cash flows (which should be really easy, book as a new commodity with a price that begins at what you paid and ends at the face value, with transactions for coupons in between)  or 
- if you also want to be precise and account for the accrued interest and discounted value portions separately on acquisition.
Anyhow, I'll try to post one of these here or to a doc as an example once I do mine.



--
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/a74715d8-96ec-41fa-8ee2-9312fe917ed6n%40googlegroups.com.

Max Tower

unread,
Feb 20, 2024, 9:26:23 AM2/20/24
to Beancount
I treat these just like stocks, this is an example. I have to prepend "B" to the cusip number for these.

2022-05-01 commodity B91282CBA8
2022-05-01 open Assets:Brokers:Etrade:B91282CBA8 B91282CBA8
2022-05-01 open Income:Interest:Etrade:B91282CBA8 USD
2022-05-01 open Income:Capital-Gains:Etrade:B91282CBA8 USD

2022-12-02 * "buystock" "[B91282CBA8] US Treasury"
Assets:Brokers:Etrade:B91282CBA8 1000 B91282CBA8 {95.55127 USD}
Assets:Brokers:Etrade:USD -95551.27 USD

2022-12-15 * "INT - UNITED STATES TREASURY NOTE - REG INT ON 100000 BND" "[B91282CBA8] "
Assets:Brokers:Etrade:USD 62.5 USD
Income:Interest:Etrade:B91282CBA8 -62.5 USD

2023-12-15 * "DEPOSIT - US TSY NOTE 012523DE15 REDEMPTION OF MATURED BOND"
Assets:Brokers:Etrade:Cash 100000 USD
Assets:Brokers:Etrade:B91282CBA8 -1000 B91282CBA8 {95.55127 USD} @ 100 USD
Income:Capital-Gains:Etrade:B91282CBA8

CDT

unread,
Feb 20, 2024, 10:17:51 AM2/20/24
to Beancount
What about this as a format?...

2024-01-16 * "Treasury Direct" "Security Issued"
  interestrate: "5.390%"
  cusip: "912797JD0"
  Assets:US:TreasuryDirect:T-bills     995.89 USD
  Assets:US:TreasuryDirect:CofI         -995.89 USD

2024-02-13 * "Treasury Direct" "Interest Payment"
  cusip: "912797JD0"
  Assets:US:TreasuryDirect:CofI         4.11 USD
  Income:US:TreasuryDirect:Interest     -4.11 USD

Only issue is that the date on the interest is forwarded to the future because that 4.11 isn't mine until that date.  

Is there any way to make all of this in one transaction?   Also how can I have a date that might be in the future not register when I pull reports?

Also, I have it reinvested each month so how would you close the one transaction and create a new one and let the old one go?

Max Tower

unread,
Feb 20, 2024, 11:41:45 AM2/20/24
to Beancount
In your example, why wouldn't you expire the position at $1000 instead?

You are holding Bills in USD commodity, but that doesn't quite match what they are. Those Bills have USD values that can fluctuate. You don't have to hold them to maturity either. You could trade in and out of those, so I think it's better if they are their own commodity.

You could lump them all into one commodity if you prefer to simplify your assets.
For ex.
2022-05-01 commodity BILLS
2022-05-01 open Assets:Brokers:Etrade:B91282CBA8 BILLS
2022-05-01 open Income:Interest:Etrade:B91282CBA8 USD
2022-05-01 open Income:Capital-Gains:Etrade:B91282CBA8 USD

2022-12-02 * "buystock" "[B91282CBA8] US Treasury"
Assets:Brokers:Etrade:B91282CBA8 1000 BILLS {95.55127 USD}
Assets:Brokers:Etrade:USD -95551.27 USD

2022-12-15 * "INT - UNITED STATES TREASURY NOTE - REG INT ON 100000 BND" "[B91282CBA8] "
Assets:Brokers:Etrade:USD 62.5 USD
Income:Interest:Etrade:B91282CBA8 -62.5 USD

2023-12-15 * "DEPOSIT - US TSY NOTE 012523DE15 REDEMPTION OF MATURED BOND"
Assets:Brokers:Etrade:Cash 100000 USD
Assets:Brokers:Etrade:B91282CBA8 -1000 BILLS {95.55127 USD} @ 100 USD
Income:Capital-Gains:Etrade:B91282CBA8

CDT

unread,
Feb 20, 2024, 2:18:48 PM2/20/24
to Beancount
In Treasury Direct, I don't think you can trade in and out.  You can in brokerage accounts like etrade or Schwab, but not in Treasury Direct (from my understanding - I could be wrong).

Also, in treasury direct there is a sort of holding account called CofI where you can park your money before buying bills and into which things go for a small amount of time before a reinvestment happens.

I do like the setup with BILLS as a commodity.  Thanks for showing that.

What about the forward dated items?  Will the reporting be correct or do I have to do something special to remove any forward dated items?

Max Tower

unread,
Feb 20, 2024, 11:30:19 PM2/20/24
to Beancount
What about the forward dated items?  Will the reporting be correct or do I have to do something special to remove any forward dated items?

I think this will be fine. I don't believe beancount knows what day is today. It just adds everything up, or you can use the bean-query to extract info from specific date ranges.

CDT

unread,
Feb 21, 2024, 12:29:09 PM2/21/24
to Beancount
Another wrinkle in this puzzle...

My understanding is that t-bills are not taxed as capital gains but as interest income on 1099-INT.
Also, they are NOT taxed at the state level only at the Federal level. 

So I'm wondering how that could be recorded in such a way as to separate the different types of interest received throughout the year.

On Tuesday, February 20, 2024 at 11:41:45 AM UTC-5 mtb...@gmail.com wrote:

Timothy Jesionowski

unread,
Feb 22, 2024, 6:05:04 AM2/22/24
to bean...@googlegroups.com
Usual solution for that is to use different income accounts. 

Red S

unread,
Feb 22, 2024, 9:15:21 PM2/22/24
to Beancount
Reply all
Reply to author
Forward
0 new messages