今天要整理一整組債券與票券的定價函式,像 PRICE、YIELD、DISC、TBILLPRICE 這些名字,還有跟債券報價很有關係的 DOLLARDE、DOLLARFR。
我在工作上用到債券價格的機會不多,這篇當工具書查就好:看到財報或債券條款裡有「票面利率」「殖利率」「貼現率」,想自己用試算表驗一次的時候,回來查就好。本文所有數字僅示範計算,不是任何投資建議。
怎麼選
先看你手上的證券怎麼付利息,再看你已知什麼、要求什麼。
| 證券類型 | 已知 → 要求價格 | 已知價格 → 要求報酬 |
|---|---|---|
| 定期付息債券 | PRICE | YIELD |
| 到期一次付息 | PRICEMAT | YIELDMAT |
| 折價發行、不付息 | PRICEDISC | YIELDDISC、DISC |
| 美國國庫券 | TBILLPRICE | TBILLYIELD、TBILLEQ |
| 買價賣價都已知 | RECEIVED | INTRATE |
DOLLARDE 跟 DOLLARFR 不算價格函式,是報價格式的轉換,放在最後。
用在付息債券的 PRICE 與 YIELD 還會牽涉付息日,付息日相關的 COUP 系列與存續期間,放在 債券付息日與存續期間函式 那篇。
日期與 day count basis
這一族函式幾乎都吃「交割日」(settlement,買進結算的那天)與「到期日」(maturity),還有一個選填的 day count basis,用 0 到 4 選擇天數怎麼算。沒填就是 0。日期建議用 DATE(2026,3,10),不要直接打文字。
| basis | 名稱 | 兩日期間的天數 | 一年的天數 |
|---|---|---|---|
| 0 | 美國 30/360(NASD) | 每月 30 天 | 360 |
| 1 | 實際天數/實際天數 | 實際日曆天 | 涵蓋年度的平均年長 |
| 2 | 實際天數/360 | 實際日曆天 | 360 |
| 3 | 實際天數/365 | 實際日曆天 | 365 |
| 4 | 歐洲 30/360 | 每月 30 天 | 360 |
30/360 的算法是:每個月一律當 30 天,天數 = (年差 × 360) + (月差 × 30) + (日差),其中日要先調整。
- basis 0(美國):起日若是 31,改成 30;迄日若是 31 而且(調整後的)起日是 30 以上,迄日改成 30。
- basis 4(歐洲):起日、迄日是 31 的都改成 30。
- 2 月底另有特別規則,這篇不展開,下面的例子都避開 2 月底。
用 2026/03/10 到 2026/09/10 當例子:30/360 是 6 × 30 = 180 天,實際日曆天是 184 天。同樣的證券換 basis,結果就不一樣,所以對價格時要先確認對方用哪一種。
付息債券
PRICE
算定期付息債券,每 100 面額的價格。
語法:
- 票面利率與殖利率都用年利率,例如 4.75% 寫
0.0475。 - 贖回價是每 100 面額到期拿回多少,一般債券寫 100。
- 每年付息次數:1(年)、2(半年)、4(季)。
舉例:2026/07/01 買進,2030/11/15 到期,票面 4.75%,半年付息,我想知道殖利率 5.8% 時合理價格是多少:
PRICE:半年付息債券,殖利率 5.8%
=PRICE(DATE(2026,7,1), DATE(2030,11,15), 0.0475, 0.058, 100, 2, 0)結果是 95.9893(儲存格格式設成 4 位小數)。殖利率比票面利率高,價格就低於 100,這個方向可以先心算驗證。
算的方式是把每期利息 100 × 4.75% ÷ 2 = 2.375 與到期的 100,用 5.8% ÷ 2 折現,最後扣掉已經過的應計利息(這邊 basis 0 是 46 天,占 180 天的一期)。這個價格是不含應計利息的「淨價」。
YIELD
PRICE 的反向:已知價格,求年殖利率。
語法:
YIELD:價格 97.5 的殖利率
=YIELD(DATE(2026,7,1), DATE(2030,11,15), 0.0475, 97.5, 100, 2, 0)結果是 0.0540,也就是 5.40%。把這個殖利率放回 PRICE 會還原出 97.5,可以拿來自我檢查。殖利率沒有公式解,是迭代求出來的,所以小數最後一兩位可能跟別的工具差一點點。
到期一次付息
PRICEMAT
算到期時一次付清利息的證券,每 100 面額的價格。多一個發行日參數。
語法:
PRICEMAT:2026/01/05 發行、2026/09/10 到期
=PRICEMAT(DATE(2026,3,10), DATE(2026,9,10), DATE(2026,1,5), 0.0475, 0.0525, 0)結果是 99.7345。basis 0 下,發行到到期 245 天,發行到交割 65 天,交割到到期 180 天,代入公式:(100 + 245/360 × 4.75) ÷ (1 + 180/360 × 5.25%) − 65/360 × 4.75。
YIELDMAT
PRICEMAT 的反向,已知價格求年殖利率。
語法:
YIELDMAT:價格 99.25
=YIELDMAT(DATE(2026,3,10), DATE(2026,9,10), DATE(2026,1,5), 0.0475, 99.25, 0)結果是 0.0624。
折價證券
不付利息的證券,賣價低於面額,差額就是報酬,例如商業本票。
PRICEDISC
已知貼現率,算每 100 面額的價格。
語法:
公式很單純:價格 = 贖回價 − 貼現率 × 贖回價 × 天數 ÷ 年天數。
PRICEDISC:貼現率 3.85%
=PRICEDISC(DATE(2026,3,10), DATE(2026,9,10), 0.0385, 100, 0)先手算:100 − 0.0385 × 100 × 180 ÷ 360 = 98.075,結果 98.0750。
同一組日期換 basis,結果如下,可以看出天數規則的影響:
| basis | 天數 / 年天數 | 價格 |
|---|---|---|
| 0 | 180 / 360 | 98.0750 |
| 1 | 184 / 365 | 98.0592 |
| 2 | 184 / 360 | 98.0322 |
| 3 | 184 / 365 | 98.0592 |
| 4 | 180 / 360 | 98.0750 |
YIELDDISC
已知價格,算折價證券的年殖利率。
語法:
YIELDDISC:價格 97.65
=YIELDDISC(DATE(2026,3,10), DATE(2026,9,10), 97.65, 100, 0)算法:(100 − 97.65) ÷ 97.65 × 360 ÷ 180 = 0.0481。
DISC
已知價格,算貼現率。注意分母是贖回價,不是買價,所以同樣的價格,貼現率會比殖利率小一點。
語法:
DISC:價格 97.65 的貼現率
=DISC(DATE(2026,3,10), DATE(2026,9,10), 97.65, 100, 0)結果是 0.0470,對照上一個 YIELDDISC 的 0.0481,就是分母不同造成的。
買價與賣價都已知
INTRATE
買價、賣價都知道,而且期間沒有配息,算這段持有的年利率。
語法:
INTRATE:962.5 買進、1000 賣出
=INTRATE(DATE(2026,3,10), DATE(2026,9,10), 962.5, 1000, 0)算法:(1000 − 962.5) ÷ 962.5 × 360 ÷ 180 = 0.0779。
RECEIVED
已知投資金額與貼現率,算到期時總共會拿回多少。
語法:
RECEIVED:投資 962.5,貼現率 3.85%
=RECEIVED(DATE(2026,3,10), DATE(2026,9,10), 962.5, 0.0385, 0)算法:962.5 ÷ (1 − 0.0385 × 180 ÷ 360) = 981.3918。
美國國庫券
國庫券的天數固定用實際日曆天除以 360,所以這三個函式沒有 basis 參數。到期日必須在交割日之後一年內,否則會是 #NUM!。
TBILLPRICE
語法:
TBILLPRICE:貼現率 3.55%
=TBILLPRICE(DATE(2026,3,10), DATE(2026,6,10), 0.0355)這段 92 天,價格 = 100 × (1 − 0.0355 × 92 ÷ 360) = 99.0928。
TBILLYIELD
已知價格,算收益率。
語法:
TBILLYIELD:價格 99.15
=TBILLYIELD(DATE(2026,3,10), DATE(2026,6,10), 99.15)算法:(100 − 99.15) ÷ 99.15 × 360 ÷ 92 = 0.0335。
TBILLEQ
把貼現率換成跟公債可比的「債券約當收益率」。
語法:
TBILLEQ:貼現率 3.55%
=TBILLEQ(DATE(2026,3,10), DATE(2026,6,10), 0.0355)天數在 182 天以內,算法是 365 × 貼現率 ÷ (360 − 貼現率 × 天數) = 0.0363。超過 182 天會換成另一條二次方程式,這篇不展開。
報價格式轉換
美國公債舊式報價是「整數.分子」,以分母 16 為例,1.02 表示 1 又 2/16。
DOLLARDE
把分數報價轉成小數。
語法:
DOLLARDE:1.02 以 16 為分母
=DOLLARDE(1.02, 16)小數點後的 02 當成分子:1 + 2 ÷ 16 = 1.125。再舉 ,分子是 10,1 + 10 ÷ 32 = 1.3125。
DOLLARFR
反方向,小數轉成分數報價。
語法:
DOLLARFR:1.125 以 16 為分母
=DOLLARFR(1.125, 16)結果是 1.02。DOLLARDE 與 DOLLARFR 的分母要是正整數:分母為負數回 #NUM!,0 回 #DIV/0!;帶小數的分母會先截去小數部分,例如 16.9 的結果與 16 相同,0.5 則被當成 0,一樣回 #DIV/0!。
接下來可以
相關文章
查看所有文章開店投資划不划算:NPV、IRR、XNPV、XIRR、MIRR 怎麼用
用 NPV 算淨現值,IRR 與 XIRR 算內部報酬率,MIRR 修正再投資假設,另附 PDURATION、RRI、FVSCHEDULE。講清楚現金流正負號與「NPV 把第一筆現金流當第 1 期折現(不是第 0 期)」的陷阱,並用開店五年現金流實算。
房貸車貸每月付多少:PMT、IPMT、PPMT、NPER、RATE、PV、FV 與攤還表
用 PMT 算每月還款,IPMT 與 PPMT 拆利息和本金,NPER、RATE、PV、FV 反推期數、利率與可貸金額。附正負號慣例、攤還表前三期與 CUMIPMT、EFFECT 等 12 個財務函式。
留言討論
共 0 則留言
