## Computing Treasury Bill Price and Yield

### Introduction

Financial Toolbox™ software provides the following suite of functions for computing price and yield on Treasury bills.

**Treasury Bill Functions**

Function | Purpose |
---|---|

Convert discount rate to yield. | |

Price Treasury bill given its yield or discount rate. | |

Break-even discount of repurchase agreement. | |

Yield and discount of Treasury bill given its price. | |

Convert yield to discount rate. | |

The value of 1 basis point (one hundredth of one percentage point, or 0.0001) given the characteristics of the Treasury bill, as represented by its settlement and maturity dates. You can relate the basis point to discount, money-market, or bond-equivalent yield. |

For all functions with yield in the computation, you can specify yield as money-market or bond-equivalent yield. The functions all assume a face value of $100 for each Treasury bill.

### Treasury Bill Repurchase Agreements

The following example shows how to compute the break-even discount rate. This is the rate that correctly prices the Treasury bill such that the profit from selling the tail equals 0.

Maturity = '26-Dec-2002'; InitialDiscount = 0.0161; PurchaseDate = '26-Sep-2002'; SaleDate = '26-Oct-2002'; RepoRate = 0.0149; BreakevenDiscount = tbillrepo(RepoRate, InitialDiscount, ... PurchaseDate, SaleDate, Maturity)

BreakevenDiscount = 0.0167

You can check the result of this computation by examining the cash flows in and out from the repurchase transaction. First compute the price of the Treasury bill on the purchase date (September 26).

PriceOnPurchaseDate = tbillprice(InitialDiscount, ... PurchaseDate, Maturity, 3)

PriceOnPurchaseDate = 99.5930

Next compute the interest due on the repurchase agreement.

RepoInterest = ... RepoRate*PriceOnPurchaseDate*days360(PurchaseDate,SaleDate)/360

RepoInterest = 0.1237

`RepoInterest`

for a 1.49% 30-day term repurchase agreement (30/360 basis) is 0.1237.

Finally, compute the price of the Treasury bill on the sale date (October 26).

PriceOnSaleDate = tbillprice(BreakevenDiscount, SaleDate, ... Maturity, 3)

PriceOnSaleDate = 99.7167

Examining the cash flows, observe that the break-even discount causes the sum of the price on the purchase date plus the accrued 30-day interest to be equal to the price on sale date. The next table shows the cash flows.

**Cash Flows from Repurchase Agreement**

Date | Cash Out Flow | Cash In Flow | ||
---|---|---|---|---|

9/26/2002 | Purchase T-bill | 99.593 | Repo money | 99.593 |

10/26/2002 | Payment of repo | 99.593 | Sell T-bill | 99.7168 |

Repo interest | 0.1238 | |||

Total | 199.3098 | 199.3098 |

### Treasury Bill Yields

Using the same data as before, you can examine the money-market and bond-equivalent yields of the Treasury bill at the time of purchase and sale. The function `tbilldisc2yield`

can perform both computations at one time.

Maturity = '26-Dec-2002'; InitialDiscount = 0.0161; PurchaseDate = '26-Sep-2002'; SaleDate = '26-Oct-2002'; RepoRate = 0.0149; BreakevenDiscount = tbillrepo(RepoRate, InitialDiscount, ... PurchaseDate, SaleDate, Maturity) [BEYield, MMYield] = ... tbilldisc2yield([InitialDiscount; BreakevenDiscount], ... [PurchaseDate; SaleDate], Maturity)

BreakevenDiscount = 0.0167 BEYield = 0.0164 0.0170 MMYield = 0.0162 0.0168

For the short Treasury bill (fewer than 182 days to maturity), the money-market yield is 360/365 of the bond-equivalent yield, as this example shows.

## See Also

`tbilldisc2yield`

| `tbillprice`

| `tbillrepo`

| `tbillyield`

| `tbillyield2disc`

| `tbillval01`

| `tbl2bond`

| `tr2bonds`

| `zbtprice`

| `zbtyield`