synthesize monthly 30 yr T-Bond returns from monthly yield data?

Discussion of the Bond portion of the Permanent Portfolio

Moderator: Global Moderator

Post Reply
cabronjames

synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by cabronjames »

fyi, the Fed has monthly 30 yr bond yield data going back to 1977 http://research.stlouisfed.org/fred2/series/GS30
There is a gap from 2002 to 2006, because at that time the Treasury stopped selling 30 yr bonds.

Would it be possible to synthesize monthly, div-reinvestment value of of 30 yr bonds?

Could somehow the duration of 1 30 yr bond be used, & then that duration used with the change in yield to determine the change in value?

Could someone propose an "algorithm" for doing this?

btw we already have monthly gold & monthly div reinvested S&P500 stock data.  If we can get an approximate 30 yr bond data, we could also use the eqiuvalent 2 yr (or 1 or 3 yr) bond yield data for CASH.  With these data sets, we would then have monthly div-reinvested values for all 4 HBPP assets.  This could be useful for many things, including seeing the historical maximum HBPP drawdown that the yearly only data might mask, seeing how rebalancing works with monthly (as opposed to yearly) review to see if any asset had exceeded the 15/35 bands, etc.

Big thx in advance.
D1984
Executive Member
Executive Member
Posts: 730
Joined: Tue Aug 16, 2011 7:23 pm

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by D1984 »

Cabron,

Yahoo Finance has 30-year yields ( http://finance.yahoo.com/q/hp?s=%5ETYX+ ... cal+Prices ) that seem to go on with no interruption through the time period 2002-2006. Are these the yields for a 30-year bond that was previously issued but with as long of a maturity remaining as possible (i.e. if it was issued in early 2001 it would actually be a 24-years or 25-years until maturity bond by the end of this period) in lieu of a 30-year bond? That might be the closest approximation for a "true" 30-year yield during this period (and with still be in line with HB's PP philosophy as it has more than 20 years remaining).

The only other "quick and dirty" way I can think of to get synthetic yield data for this period would be to use a derivation of the 30-year swap ( http://research.stlouisfed.org/fred2/data/DSWP30.txt ) for the appropriate time frame in the early 2000s; at the time this swap seemed to carry an interest rate that was typically 30-70 basis points higher than the 30-year bond yield (although recently it converged and has even been lower sometimes).

Finally, you could try to obtain the Ryan 30-year Treasury index and index yields for this time period if they are available; I believe they are posted in the WSJ and the current ones are on its website; I don't think anything as old as 2002 or 2006 will be on its (free and non-archived) website and if they were printed inn the Wall Street Journal at all back then it might require either a subscription or some microfiche/film viewing at your local library. The Ryan ALM website may have them as well (since after all they invented the Ryan indexes) but it requires registration (although IIRC registration is free).
Last edited by D1984 on Wed Oct 12, 2011 10:58 pm, edited 1 time in total.
cabronjames

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by cabronjames »

Thx D1984 for your comment on how to fill the yield data gap for 2002-2006.

The key question for me is the "algorithm quesiton", combining duration of a 30 yr bond, with the existing yield data to generate a synthetic approximate 30 yr bond investment value, assuming div-reinvestment (tax-advantaged/IRA style where divs are not taxed).
D1984
Executive Member
Executive Member
Posts: 730
Joined: Tue Aug 16, 2011 7:23 pm

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by D1984 »

Clive,

Would this online calc work to figure out something similar in lieu of using Excel?

http://partners.leadfusion.com/tools/mo ... 5/tool.fcs

It lets you see how much the bond would be worth by months until maturity (the max is 360 months) if the current market yield on bonds of that maturity goes up or goes down
D1984
Executive Member
Executive Member
Posts: 730
Joined: Tue Aug 16, 2011 7:23 pm

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by D1984 »

The default on that calculator is 60 months (five years) but since it can be set for up to 360 months (since the settings for price, rate, months to maturity can all be changed)  it should work for testing out LTTs
cabronjames

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by cabronjames »

Clive & D1984, forgive me if I'm missing something obvious, but I'm not sure how to use the Clive spreadsheet formulas.  Again, my goal is to take this monthly yield data set, and generate the monthly value of 30 yr T-Bond.

The data set available is yield, which presumably could be used in the formula as "Current Yield"..  Given the nature of a 30 yr T-Bond, we know "Years to Maturity" = 30, "Coupons per year" = 2, "value at maturity" = 1000.  Not sure about "Annual Coupon", in reality afaict a 30 yr T-Bond's annual coupon will change with the current interest rate & CPI at that time.  If we knew the "annual coupon" We could calculated the Modified Duration of a 30 yr T-Bond.
User avatar
stone
Executive Member
Executive Member
Posts: 2627
Joined: Wed Apr 20, 2011 7:43 am
Contact:

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by stone »

"Not sure about "Annual Coupon", in reality afaict a 30 yr T-Bond's annual coupon will change with the current interest rate & CPI at that time."

A conventional bond has a fixed coupon. The coupon is normally shown in the name of the bond (eg UK treasury 4% 2060). The yield changes because the price goes up and down whilst the coupon stays the same. So if you spend $1k buying a bond when it costs 121 you will get less money in coupons than if you had bought when it cost 91.
"Good judgment comes from experience. Experience comes from bad judgment." - Mulla Nasrudin
User avatar
Tortoise
Executive Member
Executive Member
Posts: 2751
Joined: Sat Nov 06, 2010 2:35 am

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by Tortoise »

cabronjames, in case you're still interested in how to calculate monthly 30-year T-bond returns from monthly yield data, here is a fairly simple method:

Use the PRICE() function in Excel or Google Docs. It assumes a $100 face value and accepts six key input arguments:
  • Settlement date
  • Maturity date
  • Interest (coupon) rate
  • Market yield
  • Redemption value per $100 face value
  • Number of coupon payments per year
Let's say you want to calculate the return of a hypothetical 30-year T-bond over the month of September 2011. You would just plug in the following values for the six input arguments:
  • Settlement date: DATE(2011, 9, 30) -- this is the day you "sell" your hypothetical new 30-year bond
  • Maturity date: DATE(2041, 9, 1) -- this is 30 years after the day on which you "bought" your hypothetical new 30-year bond
  • Interest (coupon) rate: The market yield on the first day of September 2011 (0.0351) -- assumes you bought a new 30-year bond on that day whose interest rate was equal to the market yield
  • Market yield: The market yield on the last day of September 2011 (0.0292) -- this is the day on which you "sold" your hypothetical bond
  • Redemption value per $100 face value: $100
  • Number of coupon payments per year: 2
In this example, the price returned by Excel's PRICE() function is $111.72, meaning your hypothetical brand new $100 30-year T-bond appreciated in value by $11.72, or 11.72%, over the month of September 2011. (By comparison, TLT gained a little less--10.86%--in September since its average weighted maturity is less than 30 years.) If you calculate this for every month, it's a little artificial since it assumes your 30-year bond always has 30 years to maturity and never ages, but that may be exactly what you want to calculate. Depends on the assumptions you want to make. Just adjust the function's input arguments accordingly.

What I like about Excel's PRICE() function is that you don't have to mess around with keeping track of interest payments--they're automatically reflected in the price that Excel calculates for you, in the same way that interest payments are automatically reflected in the actual market price. This is explained in Excel's documentation of its PRICE() function.

Hope this makes things a little easier.
Last edited by Tortoise on Sat Nov 19, 2011 6:02 am, edited 1 time in total.
User avatar
Tortoise
Executive Member
Executive Member
Posts: 2751
Joined: Sat Nov 06, 2010 2:35 am

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by Tortoise »

Sure enough, Clive, I think you're right about needing to add the interest payments to the capital gains to calculate the total return. Not sure how my thinking got so muddled on that point! Thanks for the correction.

Your suggestion of calculating yearly interest and capital gains makes complete sense, but what about cabronjames's OP indicating his goal is to calculate monthly total returns?

Although 30-year T-bonds pay coupons only twice a year, perhaps one could still calculate artificial/hypothetical "monthly total return" by assuming the bond pays monthly coupons?

If so, then couldn't one calculate the monthly capital gain the way I described above, and then simply add a coupon payment equal to 1/12 of that month's hypothetical bond's coupon yield? Using this method, the coupon yield would, of course, change from month to month. A bit artificial, to be sure, but perhaps it might suit cabronjames's purpose of trying to track monthly returns and drawdowns?
Last edited by Tortoise on Sat Nov 19, 2011 3:22 pm, edited 1 time in total.
User avatar
stone
Executive Member
Executive Member
Posts: 2627
Joined: Wed Apr 20, 2011 7:43 am
Contact:

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by stone »

By the way, sorry for my dumb comment above- I hadn't read the thread :(.

For the PP wouldn't you have the LTT coupons going into the cash portion anyway (along with stock dividends)?
Does the duration (and so the capital gain/loss) get effected that much by having 2 rather than 12 coupons per year? I suppose reinvestment of 12 small coupons would give a slightly greater compounding effect than reinvestment of 2 larger coupons per year.

I suppose if they issued 30 year bonds frequently enough, then the coupon could be approximated OK from the yield? With UK 50 year gilts, they "re-open" existing bonds. So the most recent one, TR60 has been expanded since it was first issued in Jan 2010. I supose that might lead to coupons and yields diverging a lot if TR60 just gets re-opened for the next 10 years rather than them issuing a new bond.
"Good judgment comes from experience. Experience comes from bad judgment." - Mulla Nasrudin
User avatar
Tortoise
Executive Member
Executive Member
Posts: 2751
Joined: Sat Nov 06, 2010 2:35 am

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by Tortoise »

Clive wrote: Typically the price paid will reflect an adjustment for the time value to the next payment date - otherwise you could buy T's a few days before the payment and sell again just after the payment and pocket the income whilst only having held for a few days perhaps. If it wasn't that way you could make a fortune by just continually rolling into whatever was just about to pay out income.
I'd like to understand this better. When I pick a maturity date, coupon yield, and a constant (hypothetical) market yield and plug them into Excel's PRICE() function and plot the price as a function of settlement date, I don't see a sudden change in the calculated price on days when coupon payments are made--or on any other day, for that matter. The calculated price simply changes gradually and smoothly, day after day, until it eventually reaches its face value on the maturity date. (Again, this example assumes a constant market yield.)

If Excel's calculated price is fairly accurate (and from what I've seen of my own bond prices at Schwab, it is), what am I missing here? If the bond price hardly changes when a coupon payment is made, why can't someone buy a bond just before the coupon payment, collect the coupon, then sell the bond the next day to make a profit?

I realize it's not possible to do that; I'm just not fully comprehending why. Perhaps a concrete example would help.
User avatar
Tortoise
Executive Member
Executive Member
Posts: 2751
Joined: Sat Nov 06, 2010 2:35 am

Re: synthesize monthly 30 yr T-Bond returns from monthly yield data?

Post by Tortoise »

Interesting, thanks Clive! I learn new things all the time on this forum :)

From the Wikipedia article on bond valuation:
In many markets, it is market practice to quote bonds on a clean-price basis. When a purchase is settled, the accrued interest is added to the quoted clean price to arrive at the actual amount to be paid.
Given that for a fixed market yield, Excel's PRICE() function appears to produce smoothly varying price vs. time even on coupon payment days, it appears that PRICE() is reporting the clean price rather than the dirty price. I could be wrong, of course. But if Excel were reporting the dirty price, I would expect to see a characteristic "sawtooth" shape to the price vs. time curve with the curve slowly rising until the coupon date and then dropping sharply on that date by the amount of the coupon payment.

For the past seven business days, I've been comparing Excel's calculated price to Schwab's quoted price for the single 30-year T-bond I own. Interestingly, on two of the seven days the two prices were almost an exact match (< 0.1% difference), but on the other five days Schwab's quoted price was higher than Excel's price by anywhere between 0.2% and 0.7%. But it has not yet been below Excel's price.

It's interesting trying to "reverse engineer" exactly how Schwab calculates their daily bond prices. I'm going to continue to monitor and compare Schwab's quoted price to Excel's price for a while to see if the slight bias remains or if the difference averages to zero over time.
Post Reply