Buy and Hold: US 10y Treasury

This strategy is very similar to the Buy and Hold of 3M TBills. Please read that blog for more information. This is the description of the strategy:

  1. Buy $10 MM worth of the current 10Y on-the-run (OTR).
  2. On each auction roll to the new 10Y (we actually roll on issue date). We stay fully invested in each roll.
  3. At the end of the simulation we liquidate the positions.
  • Which translates into this strategy script:
var K = 10000000;
function MarkBook() {
    context.AddMark(vars.OTR, vars.PriceOTR);
    if (vars.PriceNextOTR!=null) context.AddMark(vars.NextOTR, vars.PriceNextOTR);
}
function openTrade(dateS, input, tsy, price, comment) {
    var settle = Funcs.TsyBestMarketInputToSettle(dateS, input, null);
    var dirty = Funcs.FINCADToDecimal(Funcs.TsyPriceToDirty(tsy, settle, price))
    var q = Math.Floor(book.NAV/(dirty/100) / 1000 ) * 1000;
    context.AddTrade(null, tsy, q, price, comment);
}
function event_OpenBook() {
    context.AddBookTag("RepoLongs","OFF");
    context.AddCapital(K, "Initial K");
    MarkBook();
    openTrade(vars.DateS, vars.InputOTR, vars.OTR, vars.PriceOTR, "Initial Buy");
}
function event_OpenDay() {
    MarkBook();
}
function event_CloseDay() {
    if (vars.Switch == "YES") {
        context.Liquidate();
        openTrade(vars.DateS, vars.InputNextOTR, vars.NextOTR, vars.PriceNextOTR, "Switch: buy");
    }
}
function event_CloseBook() {
    context.Liquidate();
}
  • The simulation produces the following trades:

10YTrade

NOTES:

  1. One initial trade: “Initial Buy”
  2. Followed by one roll for each new auction: “Switch:sell” / “switch:buy”
  3. Followed by a liquidation trade at the end of the simulation: “Liquidate”
  • Which produces the following returns:

image

  • If we compare the monthly returns with those of a 10Y total return index, we get the following statistics on their differences. It’s a reasonable replication of the index!

image

image   image

NOTES:

  1. On average the differences between the 2 streams of returns are –0.76 bps… the match is pretty close.
  • If we didn’t stay fully invested, and kept rolling the same initial quantity of bonds, the differences would be bigger (as shown in the table below). Clearly the Merrill index stays fully invested:

image 

Adjustments to SAMOA made from this exercise

In our database, the following bonds did not receive a first coupon on issue date. This was a discrepancy with the index, and we proceeded to make the correction to match the index.

T 7.5 05/15/2002
T 5.875 02/15/2004
T 5.75 08/15/2010
T 5 02/15/2011
T 5 08/15/2011
T 4.875 02/15/2012
T 4.375 08/15/2012
T 6.5 02/15/2010

Leave a Reply

CAPTCHA Image Audio Version
Reload Image