開始使用免費開始

常態性的數值檢定

moments 套件提供計算資料的 峰度(kurtosis)偏態(skewness) 的函式,並可執行 Jarque-Bera 檢定。Jarque-Bera 檢定是根據這些高階動差來檢驗常態性。它會在一個指令中,將資料的偏態與峰度與常態分配的理論值進行比較,分別是 0 與 3。

jarque.test(x)
skewness(x, na.rm = FALSE)
kurtosis(x, na.rm = FALSE)

在本練習中,你將計算 2008-2011 年道瓊指數 djx 的偏態與峰度,並套用 Jarque-Bera 常態性檢定。接著,你會將相同的方法套用到 djreturns,其中包含同期道瓊工業指數的 29 檔成分股。

回想一下,你可以用 apply(X, MARGIN, FUN, …) 在陣列的不同邊界套用函式。MARGIN 參數是一個向量,用來指定函式套用的位置;在這裡,你將使用 2,表示把函式 FUN 套用到矩陣 X 的「欄」。

moments 套件已為你匯入,djxdjreturns 資料已在你的工作空間中。

本練習屬於課程

R 的量化風險管理

檢視課程

練習說明

  • 分別使用 skewness()kurtosis() 計算 djx 中道瓊指數報酬的偏態與峰度。
  • 使用 jarque.test()djx 進行 Jarque-Bera 常態性檢定。
  • 使用 apply() 計算 djreturns 中各檔股票報酬的偏態與峰度,並分別將結果指定給 sk
  • plot() 中填入參數,繪製 ks 的散佈圖,並設定參數 type = "n",接著用 text() 將股票代號標示在各點上(此步驟已為你準備好)。
  • 使用 apply()djreturns 中每一檔道瓊成分股執行 Jarque-Bera 檢定。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Calculate skewness and kurtosis of djx
___(___)
___(___)

# Carry out a Jarque-Bera test for djx
___(___)

# Calculate skewness and kurtosis of djreturns 
s <- ___(___)
k <- ___(___)

# Plot k against s and add text labels to identify stocks
plot(___, ___, ___)
text(s, k, names(s), cex = 0.6)

# Carry out Jarque-Bera tests for each constituent in djreturns
___(___)
編輯並執行程式碼