動機

經濟學者常說,當美國公債殖利率曲線倒掛,代表經濟將衰退,殖利率曲線倒掛就是當短天期殖利率>長天期殖利率,而將利差與股票市場的表現相比可以幫助投資人更好的了解市場的風險與情況,去制定投資策略。因此,此子主題觀察殖利率利差,也就是觀察有沒有倒掛與代表美國股市的S&P500指數的關係。

程式說明

  • 此段程式是從yahoo下載從1990/01/01S&P500的股票資料,並命名為stock,然後將colname改掉
  • Sys.Date()是獲取當前日期的函數
  • src是從哪裡獲取數據
  • auto.assign是代表是否自動將獲取的數據給一個名字,False是不自動給
start = "1990-01-01"
end = Sys.Date()
stock_ticker = "^GSPC"
stock = quantmod::getSymbols(stock_ticker,
                             from=start,
                             to=end,
                             src="yahoo",
                             auto.assign=FALSE) 

colnames(stock) = c("Open", "High", "Low", "Close",
                    "Volume", "Adjusted")
  • 從FRED網站下載DGS2和DGS10,並分別命名為short_rate和long_rate,分別代表短天期利率和長天期利率,並將下載的利率變成小數
short_rate_ticker = "DGS2"
long_rate_ticker = "DGS10"
short_rate = quantmod::getSymbols(short_rate_ticker,
                                  src="FRED",
                                  auto.assign=FALSE)

long_rate = quantmod::getSymbols(long_rate_ticker,
                                 src="FRED",
                                 auto.assign=FALSE)
short_rate = short_rate/100
long_rate = long_rate/100
  • 算出利差,用短天期利率減長天期利率,合併在data,刪掉nan的列
rate=short_rate-long_rate
data = merge(stock$Adjusted, rate)
data = na.omit(data)
  • 利用dygraph畫出sp500和利差的圖,並使用雙y軸,sp500在左邊,利差在右邊,dyShading畫出殖利率倒掛的區間,在底下加時間選擇器
  • dyAxis設置x,y軸,drawGrid=FALSE不顯示格線
  • y軸為SP500,y2軸為利差
  • dyShading陰影區域
library(dygraphs)
fig1 = dygraph(data, main="SP500 and DGSs") %>%
  dyAxis("x", drawGrid=FALSE) %>%  
  dyAxis("y", label="SP500") %>%
  dyAxis("y2", label="利差") %>%
  dySeries("Adjusted", label="SP500", color="blue", axis="y") %>%
  dySeries('DGS2', label='利差', color="red", axis="y2") %>%
  dyShading(from="2000-02-11", to="2000-12-26",
            color="LightPink") %>%
  dyShading(from="2006-06-08", to="2007-03-20",
            color="rgb(173,216,230)") %>%
  dyShading(from="2022-07-06", to="2023-05-15",
            color="#90EE90") %>%
  dyOptions(axisLineColor="navy", 
            gridLineColor="lightblue") %>% 
  dyRangeSelector()

結果

結論

因SP500和利率單位不同,因此使用雙Y軸,從結果可以看到,從1990到現在,發生三次時間較長的殖利率倒掛,分別是2000年2月11 ~ 2000年12月16,2006年6月8 ~ 2007年3月20,2022年7月6 ~ 2023年5月15,可以發現殖利率倒掛的時候S&P500也下跌。