0
$\begingroup$

I wanted to make sure my calculation of the US treasury note/bond price is correct. Since T-notes and bonds pay coupons twice a year, let

\begin{eqnarray} F &=& \rm{face\_value} = 100 \\ y &=& \frac{ \rm{yield} }{ 2 } \\ c &=& \frac{ \rm{coupon\_rate} }{ 2 } \\ n &=& 2 \cdot \rm{maturity\_years} \\ a &=& \frac{ \rm{days\_interest\_accrues} }{ \rm{num\_days\_in\_coupon\_period} } \end{eqnarray}

In my understanding, the invoice price of a T-node/bond is given by

\begin{eqnarray} \rm{invoice\_price} &=& F \left[ \sum_{k = 1}^n \frac{c}{(1 + y)^{k - a}} + \frac{1}{(1+y)^{n - a}} \right] \\ &=& F (1 + y)^a \left\{ \frac{c}{y} \left[ 1 - \frac{1}{(1 + y)^n} \right] + \frac{1}{(1 + y)^n} \right\} \end{eqnarray}

that the accrued interest is given by

\begin{equation} \rm{accrued\_interest} = Fca \end{equation}

and that the quoted price is given by

\begin{equation} \rm{quoted\_price} = \rm{invoice\_price} - \rm{accrued\_interest} \end{equation}

However, take the following examples.

  1. Treasury auction results of 20-year bond on May 17, 2023:

    Term and Type of Security      20-Year Bond
    CUSIP Number                   912810TS7
    Series                         Bonds of May 2043
    Interest Rate                  3-7/8%
    High Yield                     3.954%
    Allotted at High               34.77%
    Price                          98.913642
    Accrued Interest per $1,000    $1.68478
    Median Yield                   3.875%
    Low Yield                      2.880%
    Issue Date                     May 31, 2023
    Maturity Date                  May 15, 2043
    Original Issue Date            May 31, 2023
    Dated Date                     May 15, 2023
    

    We have

    yield = 0.03954
    coupon_rate = 0.03875
    maturity_years = 20
    days_interest_accrues = '2023-05-31' - '2023-05-15' = 16
    days_in_coupon_period = '2023-11-15' - '2023-05-15' = 184
    

    where I have assumed the next coupon payment is on Nov 15, 2023. Plugging these into the formulae above gives an invoice price of 99.08361940342022, an accrued interest of 0.16847826086956522, and a quoted price of 98.91514114255065. The accrued interest matches that listed on the auction results. I would assume that the "price" on the auction results refers to the invoice price, which my calculation, however, cannot reproduce. It is not the quoted price either.

  2. Examples on TreasuryDirect's "Understanding Pricing and Interest Rates" page:

    Type of security   Time to maturity   High yield at auction   Interest rate set at auction   Price
    Bond               20 year            1.850%                  1.750%                         98.336995
    Note               7 year             1.461%                  1.375%                         99.429922
    

    Assuming that the number of days interest accrues is assumed to be 0 in these examples, my calculation cannot reproduce these prices either.

Could someone shed light on what is going on?

$\endgroup$

2 Answers 2

4
$\begingroup$

The answer to this is the calculation mode of the bond. The street convention is to use your formula as you have stated, which uses a compounded interest formula for the first period. But the Federal documents, such as: https://www.ecfr.gov/current/title-31/subtitle-B/chapter-II/subchapter-A/part-356/appendix-Appendix%20B%20to%20Part%20356 demonstrate that official calculations use a simple interest formula.

Therefore $$ \frac{1}{(1+y)^a}$$ is replaced by $$ \frac{1}{1+ay} $$

The following demonstrates the difference,

# PYTHON

from rateslib import *

ust = FixedRateBond(
    effective=dt(2023, 5, 15),
    maturity=dt(2043, 5, 15),
    fixed_rate=3.875,
    spec="ust"
)
ust.accrued(dt(2023, 5, 31))
# 0.16847826
ust.price(ytm=3.954, settlement=dt(2023, 5, 31))
# 98.91514114           /* Matches your calculated value */

ust = FixedRateBond(
    effective=dt(2023, 5, 15),
    maturity=dt(2043, 5, 15),
    fixed_rate=3.875,
    spec="ust",
    calc_mode="ust_31bii",
)
ust.accrued(dt(2023, 5, 31))
# 0.16847826
ust.price(ytm=3.954, settlement=dt(2023, 5, 31))
# 98.91364174           /* Matches US Treasury Auction Results */
 
$\endgroup$
1
  • 2
    $\begingroup$ Sometime called the Treasury Method, I believe. (As opposed to the Street Method that everyone else uses). $\endgroup$
    – nbbo2
    Oct 7 at 11:23
3
$\begingroup$

There is a typo in your invoice price formula.

It should be $\dfrac{F}{(1+y)^{-a}}$, not $\dfrac{F}{(1+y)^{a}}$.

It may explain some of the differences when you consider an accrued different from zero.

$\endgroup$
1
  • 1
    $\begingroup$ In my calculation I did use $\frac{F}{(1 + y)^{-a}}$. The equation in my post, however, contained the typo you pointed out. Just corrected. Thanks for the catch! $\endgroup$
    – user46652
    Oct 9 at 7:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.