Bond Pricing with the BA II Plus: Complete Tutorial
Price a bond and back out its yield on the BA II Plus: every BOND worksheet field, accrued interest between coupon dates, yield to call, and what duration adds.
The short answer
Press 2ND BOND and clear the worksheet, then enter SDT as the settlement date in MM.DDYY form, CPN as the annual coupon rate, RDT as the redemption date and RV as the redemption value per 100 of par. Set ACT or 360 for the day count and 2/Y or 1/Y for the coupon frequency, arrow down to YLD, type the yield and press CPT on PRI. The result is the clean price per 100 of par, and AI one field below holds the accrued interest owed to the seller. Clean price plus accrued interest is the cash that settles.
A bond is the most mechanical instrument in finance: the cash flows are printed on it. Everything interesting is in the one number nobody prints — the rate at which the market is currently willing to discount them.
The BOND worksheet exists so you can move between price and yield without rebuilding the discounting by hand, and so you can do it on a settlement date that falls somewhere in the middle of a coupon period, which is where the arithmetic gets tedious. This guide prices one bond nine different ways: from a yield, from a price, mid-period, on two day-count bases, to a call date, and as a zero.
What “price” means for a bond
Three conventions have to be in place before any of the keystrokes make sense.
Price is quoted per 100 of par, whatever the face value. A price of 95.3994 on £50,000 of nominal is £47,699.70. The calculator never sees your face value.
The quoted price is the clean price. It excludes the interest that has built up since the last coupon.
The seller is owed that build-up. Accrued interest is added at settlement, so the cash that changes hands is clean price plus AI — the invoice price, or dirty price.
Separating the two is not an accounting nicety. It is what lets a quoted price mean the same thing on every day of the coupon period: the clean price of a bond whose yield has not moved barely changes, while the dirty price sawtooths upward and drops by a full coupon every six months.
The nine fields, in the order you meet them
| Field | Holds | Notes |
|---|---|---|
SDT |
Settlement date | MM.DDYY — 15 August 2026 is 8.1526 |
CPN |
Annual coupon rate | A percentage of par, not the cash amount |
RDT |
Redemption date | Maturity, or a call date for yield to call |
RV |
Redemption value | Per 100 of par. 100 at maturity; the call price otherwise |
ACT / 360 |
Day-count basis | 2ND SET toggles. ACT for governments, 360 for most corporates |
2/Y / 1/Y |
Coupon frequency | 2ND SET toggles. Semiannual is the default and the usual case |
YLD |
Yield to redemption | Annual, as a percentage. Enter it, or compute it |
PRI |
Clean price | Enter it, or compute it. One of YLD and PRI is always the input |
AI |
Accrued interest | Always computed, never entered |
A worked bond: the 4.5% of February 2034
A gilt paying 4.5% semiannually, redeeming at par on 15 February 2034. You are buying on 15 August 2026 — a coupon date — and the market yield is 5.25%. What do you pay?
-
2ND -
BOND -
2ND -
CLR WORK -
8.1526 -
ENTER -
↓ -
4.5 -
ENTER -
↓ -
2.1534 -
ENTER -
↓ -
100 -
ENTER -
↓ -
↓ -
↓ -
5.25 -
ENTER -
↓ -
CPT
The three bare arrow-downs step through ACT and 2/Y and land on YLD — read each setting on the way past rather than assuming it.
PRI = 95.3994. Arrow down once more and AI = 0.0000, because settlement is a coupon date: the seller has earned nothing since the last payment. Clean and dirty prices are the same today and will not be again until the next coupon.
The bond trades below par because its 4.5% coupon is worse than the 5.25% the market now demands. Buyers will not accept a lower running yield, so they pay less capital instead, and the £4.60 of discount per 100 is what closes the gap over the remaining seven and a half years.
The same answer from the TVM row
On a coupon date a bond is just an annuity plus a lump sum, so the five TVM registers can price it — and doing it once is the fastest way to satisfy yourself that the worksheet is doing what you think.
-
2ND -
P/Y -
2 -
ENTER -
2ND -
QUIT -
2ND -
CLR TVM -
15 -
N -
5.25 -
I/Y -
2.25 -
PMT -
100 -
FV -
CPT -
PV
PV = −95.3994. Identical to PRI, and every part of the entry maps onto a field in the worksheet: N is the number of coupons left, PMT is the coupon divided by the frequency, FV is RV, and P/Y = 2 is what turns the annual 5.25% into 2.625% per period.
The reason to learn BOND anyway is the word coupon date. Move settlement one day and the TVM route needs a fractional exponent that the five registers cannot express. BOND handles it without being asked.
Yield from a price
Reverse the inputs and the worksheet runs the other way. The same bond is offered at 92.
-
2ND -
BOND -
↓ -
↓ -
↓ -
↓ -
↓ -
↓ -
↓ -
92 -
ENTER -
↑ -
CPT
The dates and coupon are still loaded from the last calculation — arrow past them rather than retyping.
YLD = 5.8321%. Fifty-eight basis points of extra yield for £3.40 less capital, which is the trade-off the whole bond market is made of.
| Yield | Clean price | Trading at |
|---|---|---|
| 3.00% | 110.0074 | Premium |
| 4.00% | 103.2123 | Premium |
| 4.50% | 100.0000 | Par — yield equals coupon |
| 5.25% | 95.3994 | Discount |
| 6.00% | 91.0465 | Discount |
| 8.00% | 80.5428 | Deep discount |
The par row is worth committing to memory as a sanity check. A bond prices at exactly 100 when its yield equals its coupon, on a coupon date, redeeming at par. If you enter a 4.5% coupon with a 4.5% yield and get 99.87, something in the worksheet is wrong — usually the frequency, sometimes the redemption value.
Settling between coupon dates
Same bond, but you buy on 1 November 2026 — seventy-eight days into a period that runs from 15 August to 15 February.
-
2ND -
BOND -
11.0126 -
ENTER -
↓ -
↓ -
↓ -
↓ -
↓ -
↓ -
5.25 -
ENTER -
↓ -
CPT -
↓
Only SDT changes. Everything else is still loaded, so this is one number and a walk down the worksheet.
| 15 Aug 2026 | 1 Nov 2026 | |
|---|---|---|
| PRI — clean price | 95.3994 | 95.4992 |
| AI — accrued interest | 0.0000 | 0.9538 |
| Invoice price | 95.3994 | 96.4531 |
| Coupons remaining | 15 | 15 |
The accrued interest is not a mystery — it is the current coupon prorated by elapsed days:
-
AI = (CPN ÷ frequency) × A ÷ E = 2.25 × 78 ÷ 184 = 0.9538
A is days from the last coupon to settlement; E is days in the whole coupon period. Interest accrues linearly even though the price does not.
The clean price barely moved — up ten pence, because the whole schedule is seventy-eight days closer. The invoice price rose by more than a pound, almost all of it the coupon the seller is handing over. Quote the clean price to a colleague and the invoice price to your custodian.
ACT or 360, and how much it matters
| ACT | 30/360 | |
|---|---|---|
| A — days accrued | 78 | 76 |
| E — days in period | 184 | 180 |
| AI | 0.9538 | 0.9500 |
| PRI | 95.4992 | 95.4988 |
Four hundredths of a penny on the price, four-tenths on the accrued interest. The basis is not where large errors come from, but it is where reconciliation breaks: your custodian will use the bond’s actual convention, and a settlement that disagrees by 0.4p per 100 on a £5m position is £190 nobody can account for.
Use ACT for government bonds — gilts, Treasuries, bunds — and 360 for most corporate and municipal
issues. When you do not know, ACT is the safer default because it is what the larger market uses.
Duration, and what the standard BA II Plus will not tell you
Duration converts a yield move into a price move. Modified duration of 6.2533 says: for every percentage point yields rise, expect the price to fall by about 6.25%.
The word doing the work is about.
| Yield move | Duration predicts | Actual price | Error |
|---|---|---|---|
| +25 bp | 93.9080 | 93.9217 | +0.0137 |
| +100 bp | 89.4338 | 89.6481 | +0.2143 |
| +200 bp | 83.4682 | 84.3034 | +0.8353 |
| −100 bp | 101.3650 | 101.5912 | +0.2262 |
| −200 bp | 107.3306 | 108.2608 | +0.9302 |
Every error is positive. Duration always understates the price you get, whichever way yields move: it is a straight line drawn against a curve, and the curve bows away from it in both directions. That bow is convexity, and it is the bondholder’s friend — you gain more on a rally than you lose on a sell-off of the same size.
Within 25 basis points the straight line is close enough for desk work. At 200 basis points it is nearly a point of par out, which is the difference between a good trade and a bad one.
Yield to call, and yield to worst
A callable bond has more than one possible ending, and the issuer picks. Pricing it to maturity when it will obviously be called is how buyers overpay.
The same bond, callable at 102 on 15 February 2030, still offered at 95.3994.
-
2ND -
BOND -
↓ -
↓ -
2.1530 -
ENTER -
↓ -
102 -
ENTER -
↓ -
↓ -
↓ -
↓ -
95.3994 -
ENTER -
↑ -
CPT
Two fields change: RDT to the call date, RV to the call price. Nothing else about the bond is different.
| Scenario | RDT | RV | Coupons left | Yield |
|---|---|---|---|---|
| Held to maturity | 15 Feb 2034 | 100 | 15 | 5.2500% |
| Called at 102 | 15 Feb 2030 | 102 | 7 | 6.5091% |
The call is the better outcome here — 6.51% against 5.25% — because you bought at a discount and would be redeemed at a premium four years early. Yield to worst is the lower of the two, 5.25%, and that is the number a cautious buyer underwrites. Run every date in the call schedule and take the minimum.
The asymmetry runs the other way for a premium bond, which is the common case: an issuer calls when rates have fallen, exactly when you would rather keep the coupon. If a bond is priced above its call price, price it to the call and treat the maturity yield as optimistic.
Zero-coupon bonds
Set CPN to zero and the worksheet still works, because a zero is a bond with nothing in the middle.
-
2ND -
BOND -
8.1526 -
ENTER -
↓ -
0 -
ENTER -
↓ -
2.1534 -
ENTER -
↓ -
100 -
ENTER -
↓ -
↓ -
↓ -
5.25 -
ENTER -
↓ -
CPT
PRI = 67.7957. Pay £67.80 today, receive £100 in seven and a half years, and there is nothing to reinvest in between — which is the point. A zero has no reinvestment risk because it makes no interim payments, so its promised yield is the yield you actually get.
That also makes its Macaulay duration exactly its life: 7.5000 years, against 6.4175 for the 4.5% coupon bond maturing on the same day. The coupons pull the average payment date forward. It is the cleanest demonstration in fixed income that duration is a weighted average of when the money arrives, not a measure of how long you hold the paper.
Five things to check when the price looks wrong
- The frequency.
2/Yand1/Ylook identical until you arrow onto the field. An annual bond priced semiannually gives an answer in the right region and the wrong pence. - The redemption value. A 102 left in
RVfrom a yield-to-call question quietly reprices everything after it. - The date format.
2.1534is 15 February 2034 in US format and nonsense in EUR format. If the number of coupons looks wrong, checkFORMATbefore you check your arithmetic. - Which of YLD and PRI you entered. The worksheet computes whichever one you did not. Entering both means the second overwrote the first.
- The par test. Set
YLDequal toCPNon a coupon date and the price must be exactly 100. If it is not, one of the four items above is the reason.
Bonds are where the BA II Plus earns its place on the approved calculator lists: the same worksheet handles price, yield, accrued interest, calls and zeros, and the keystroke count barely changes between them. The shortcuts worth drilling before a CFA exam include two from this worksheet, and the interest conversion calculator shows why a 5.25% semiannual yield is not 5.25% a year.