跳到主要內容

升息,債券跌?

我在2015年買了一些美國公債基金,恰巧遇到美國開始實施升息循環,我就眼睜睜地看著我的基金報酬率一路下滑。

回到「金融分析」頁面

利率一上升,債券價格就下跌,利率一下跌,債券價格就上升;而債券價格一下跌,表示我持有的債券只能用便宜的價格賣出,就是虧錢的意思。所以,投資債券雖然有領取利息的美好,也不能不注意債券價格變動的風險。

目錄:

聯邦基金利率(Federal funds rate)

我們常聽到的「聯準會升息」這個詞裡面的「息」指的是聯邦基金利率,而聯邦基金利率是美國各家銀行的「隔夜利率(overnight rate)」,也就是銀行與銀行之間借一天後還錢的利率。

聯準會藉由「公開市場操作(open market operations)」來達到聯準會設定的聯邦基金利率標準,而公開市場操作指的是聯準會在市場上買進或賣出美國公債,來影響利率。

舉例來說,聯準會如果大量購買美國公債,公債價格就會上升,殖利率就會下降;或者來說,聯準會大量購買美國公債,向市場注入大量資金,而使「錢」變的「便宜」,也就是說,銀行或投資人能用更低的利率借到錢,因為聯準會願意大量低利借款。
回到目錄

債券價格計算

利率與債券的價格在不考慮債券違約的可能性之下,受到利率的變化影響非常大。為了評估債券的價格,我們必須先了解現值(present value)、終值(future value)及無套利定價原則(no arbitrage pricing principle)的概念。可參考這篇文章:

要怎麼評估一張1年期票面價值(face value)100元,票面利率(coupon rate)5%年配息的債價格呢?

另外一提,票面價值指的是債券到期時可以拿回到的錢,票面利率就是每期(每月、每季、每半年等等)可領的利息。

繼續假設定存年利率是1%。上述這張債券1年後將給我5元利息(100X5%的票面利率)及票面價值100元,而這張債券評價公式為:
 5 / (1 + 0.01) + 100 / (1 + 0.01) = 103.96
所以這張債券應該賣103.96元比較合理。

如果改成票面價值(face value)為100元,票面利率(coupon rate)為5%的年配息債券,第1年會配發5塊利息,第2年到期會還回5塊利息加票面價值100塊,則債券評價公式變為:
 5 / (1 + 0.01) + 5 / (1 + 0.01)^2 100 / (1 + 0.01)^2  = 107.88
所以這張債券應該賣107.88元比較合理。
回到目錄

債券價格因利率變動

接續我們試試看調整利率,看看債券價格是否改變;把利率從1%改成2%,升息。

延續上面的例子,該債券的價格變成:
5 / (1 + 0.02) + 5 / (1 + 0.02)^2 100 / (1 + 0.02)^2  = 105.82
價格下跌了!從107.88元降到105.82元。

也就是說如果我在升息前用107.8買了這個債券,瞬間升息了,我就只能用105.82賣出,虧大了。

如果降息呢?假設利率由1%降成0%,債券的價格變成:
5 / (1 + 0.00) + 5 / (1 + 0.00)^2 100 / (1 + 0.00)^2  = 110
價格上升了!

債券價格公式可參考這篇文章:

回到目錄

結論

券(這邊指公債為主)價格受到利率的影響非常大,而聯準會能設定目標聯邦基金利率且大量使用公開市場操作,影響市場利率及債券價格,因此,投資債券也需要稍微關注一下利率的變化,以免賺了利息,卻因債券價格下跌而出現帳面虧損了。

2015年升息時債券基金表現

2015年美國聯準會開始升息循環,從2015/12/14一直到2020/3/16新冠肺炎全球爆發時。
  • 被動式美國公債ETF在美國升息時一定下跌,反之上漲,因為被動式管理意味著,不管利率變動都不做任何動作,所以以下挑選三檔主動管理式基金比較。
  • 比較基金為富蘭克林美國政府基金、聯博房貸收益基金及聯博短期債券基金。
  • 績效以聯博房貸收益基金最優,聯博短期債券基金最差,令人訝異,理論上,短期債券應該對利率變化敏感度較低才對。
  • 總體而言聯博房貸收益基金最優,因為它不僅表現最好,且波動率也還可以接受。


留言

這個網誌中的熱門文章

母體變異數(population variance)、樣本變異數(sample variance)及自由度(degrees of freedom)

母體指的是所有的數據,樣本指的是從母體抽樣的數據,舉例來說,一個班級有40人,它們的身高,40個身高數據,若只針對這個班,就是母體,但是,卻只是代表全校學生身高的一部分,也就是樣本。 回到「機率統計」頁面 樣本平均數(mean)不是母體平均數,樣本變異數(variance)也不是母體變異數,一個班40個人身高的平均數很難剛好是全校學生的身高平均數。 一個班40個人的身高變異數也不會是全校學生的身高變異數。 變異數計算 母體變異數的定義如下: 而樣本變異數的定義如下: 奇怪的地方 平均數 雖然樣本平均數不是母體平均數,不過,如果不斷重複從同一個母體抽樣平均,會得到一個近似母體平均數的數字。舉例來說,從一個學校所有學生中,不斷隨機選出40個學生取平均數,再將這些平均數平均,結果會接近直接算全校學生的身高平均數。 也就是說樣本平均數的期望值就是母體平均數: 變異數 樣本變異數跟母體變異數就沒這麼單純了。奇怪的地方是,為什麼樣本變異數公式的除術是n-1,而不是像平均數計算一樣用n? 為何樣本變異數要除的是(n-1)? 除數為n的話,變異數會太小 如果樣本變異數的除數是n,樣本變異數就會常常比母體變異數小。為什麼呢? 因為,樣本是從母體抽取的,抽樣的數據算出平均,並且抽樣的數據會相對的接近抽樣的平均,總不會剛好抽出的樣本平均數剛好是母體平均數,且樣本數據離樣本平均數就像母體數據離母體平均數一樣分散吧? 假設母體數據為0-99的整數,共100個數據,從中選出10個數字,然後計算樣本的平均數,分別用n及n-1當作除數算出變異數,連續執行200次,並將200個樣本平均數及200個樣本變異數平均。 也就是取得樣本平均數及樣本變異數的期望值,結果如下: 母體平均數 = 49.5

中央極限定理(central limit theorem)證明

中央極限定理(central limit theorem )指的是從一個獨立同分布(Independent and identically distributed, i.i.d)取出之變數數量趨近無限多時,其平均數(mean)將趨近常態分布(normal distribution)。 回到「機率統計」頁面 目錄: 動差母函數(moment generating function) 常態分布的動差母函數 中央極限定理證明 中央極限定理模擬 中央極限定理應用 動差母函數(moment generating function) 動差母函數為機率密度函數(probability density fFunction, PDF)及累積分佈函數(cumulative distribution function CDF)之外,另一種描述機率分布模型的一種方式。 定義 M X (t) = E[e tx ] 而 e tx 的泰勒級數(Taylor series)為 e tx  = 1 + tx + t 2 x 2 /2! +  t 3 x 3 /3! + ... 則 M X (t) 的泰勒級數為 M X (t) = E[e tx ]  = 1 + tE[x] +  t 2 /2! E[x 2 ] +  t 3 /3! E[x 3 ] + ... 因此,當t = 0時,以t取 動差母函數m次微分,就可以找到其分布模型的第m動差。 特性 M X+Y (t) = E[e t(x+y) ] =  E[e tx+ty ] =  E[e tx e ty ]  =  E[e tx ]  E[ e ty ] =  M X (t)  M Y (t)  常態分布的動差母

HYG、LQD 與 TLT 風險報酬比較

10 年期公債除了站上 4%,再撰寫這篇文章時,已經在 4.3% 徘迴,上次在 這篇文章 研究了現在是否應該要買 LQD 而不是 TLT,本篇文章我想研究非投資等級債是否更適合。 買點 HYG 現在 HYG 價格為 74.04,距離近一次低點 2020/3/20 的 69.75,差別為 5.794% LQD 上次低點在 2020/10/14 的 100.38 附近,與目前的 105.01 相差 4.612%。 TLT 上次低點在 2022/11/4 的 94.22 附近,與目前的 95.16相差 1%。 殖利率上升時,公司債的表現 TLT 2009-01-06 到 2010-01-05 跌了 16.364% 這段期間美國 30 年期公債殖利率從 3.04% 漲到  3.74%,漲了 0.7%。 TLT 2012-11-14 到 2013-11-13 跌了 15.701% 這段期間 美國 30 年期公債殖利率從 2.73% 漲到  3.83%,漲了 1.1%。 TLT 2016-07-29 到 2017-07-28 跌了 10.307% 這段期間 美國 30 年期公債殖利率從 2.18% 漲到  2.89%,漲了 0.71%。 TLT 2021-11-18 到 2023-8-15 跌了 32.695% 這段期間美國 30 年期公債殖利率從 1.97% 漲到  4.35%,漲了 2.38%。 結論 HYG 現在也很便宜,在公債殖利率還有可能持續上漲狀況下,表現可能勝過公債及投資等級公司債。

如何在Chart.js的圖上加上X軸或Y軸名稱

 Chart.js可以幫助網頁顯示各類圖表,要在X軸及Y軸上標示名稱方法如下: 找到Chart物件。 在Chart物件內找到options。 在options內找到scales,若無,自行加上scales。 即可在scales下設定X軸及Y軸的標示。 程式碼範例 <div> <canvas id="myChart"></canvas> </div> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> <script> const labels = [ '1', '2', '3', '4', '5', '6', ]; const data = { labels: labels, datasets: [{ label: '數據', backgroundColor: 'rgb(255, 99, 132)', borderColor: 'rgb(255, 99, 132)', data: [0, 10, 5, 2, 20, 30, 45], }] }; const config = { type: 'line', data, options: {scales:{ x:{ title:{ display:true, text:"月" } }, y:{ title:{ display:true, text:"unit" } } } } }; var myChart = new Chart( document.ge

賭徒破產理論(Gambler's ruin)機率公式證明

賭徒破產理論(Gambler's ruin)指指的是兩位賭徒,每局賭1元,A賭徒有i元,B賭徒有n-i元,兩人不斷的賭,直到一人輸光為止。 回到「機率統計」頁面 前言 假設A賭徒勝率為p,輸的機率就是1-p,稱為q,我們要求算A贏光所有錢的機率。 讓p(i)代表A賭徒擁有i元的時候,獲得最後勝利的機率。 p(0) = 0,因為已經輸光所有錢並且賭局已結束。 p(n) = 1,因為已經贏光所有錢並且賭局已結束。 那麼p(i)呢? 遞迴公式(recursive formula) 假設A有i元,它下一局有可能贏,有可能輸。贏的機率為p,輸的機率為1-p = q。 不論這一局是贏還是輸,A要贏光所有錢的機率還是沒有算出來。 這局贏了,接下來贏光所有錢的機率為p(i+1)。 這局輸了,接下來贏光所有錢的機率為p(i-1)。 因此,p(i) = p*p(i+1) + q*p(i-1),且可以繼續延伸,例如p(i+1) = p*p(i+2) + q*p(i)、p(i-1) = p*p(i-) + q*p(i-2)... 每個公式需要套用原本的公式,稱為遞迴公式公式,而遞迴公式解法可以像解微分方程(differential equation)一樣,可以先用猜的! 例如dx/dt = rx,微分之後x還是在公式裡,可以先猜測x = e^y。 猜測 假設,p(i) = x i ,並帶入p(i) = p*p(i+1) + q*p(i-1),得到  x i   = p* x i+1  + q * x i-1 x = p* x 2  + q p* x 2  - x + q = 0 解一元二次方程式得 x = 1 或 x = q/p 微分方程 p(i) = x i , x = 1 或 x = q/p,且有兩已知數 p(0) = 0 及 p(n) = 1。 而x i 的x有兩個根(root),必須都帶入線性組合(linear combination)公式求解。 p(i) = A(1) i  + B ( q/p ) i  =  A +  B ( q/p ) i  p(0) = A + B = 0 , A = -B p(n) = A + B ( q/p ) n   = 1 A + B ( q/p ) n  = -B +  B ( q/p ) n  = B(-1 +  ( q/p ) n )