Các kiểm định định lượng về tính chuẩn
Gói moments cung cấp các hàm tính kurtosis (độ nhọn) và skewness (độ lệch) của dữ liệu, cũng như thực hiện kiểm định Jarque–Bera, một kiểm định tính chuẩn dựa trên các moment bậc cao này. Chỉ với một lệnh, kiểm định sẽ so sánh độ lệch và độ nhọn của dữ liệu với các giá trị lý thuyết của phân phối chuẩn, lần lượt là 0 và 3.
jarque.test(x)
skewness(x, na.rm = FALSE)
kurtosis(x, na.rm = FALSE)
Trong bài tập này, bạn sẽ tính skewness và kurtosis cho djx, chỉ số Dow Jones giai đoạn 2008–2011, và áp dụng kiểm định Jarque–Bera về tính chuẩn. Sau đó bạn sẽ áp dụng các phương pháp tương tự cho djreturns, bộ dữ liệu gồm 29 cổ phiếu thuộc Dow Jones trong cùng giai đoạn.
Nhớ rằng bạn có thể dùng apply(X, MARGIN, FUN, …) để áp dụng hàm theo các chiều của mảng. Tham số MARGIN là một vector chỉ định nơi hàm sẽ được áp dụng; trong trường hợp này, bạn sẽ dùng 2 để chỉ định rằng hàm FUN được áp dụng theo các cột của ma trận X.
Gói moments đã được nhập sẵn cho bạn, và dữ liệu djx cùng djreturns đã có trong môi trường làm việc của bạn.
Bài tập này là một phần của khóa học
Quản trị Rủi ro Định lượng bằng R
Hướng dẫn bài tập
- Tính skewness và kurtosis của lợi nhuận chỉ số Dow Jones trong
djxlần lượt bằngskewness()vàkurtosis(). - Thực hiện kiểm định Jarque–Bera về tính chuẩn cho
djxbằngjarque.test(). - Dùng
apply()để tính skewness và kurtosis của lợi nhuận từng cổ phiếu trongdjreturns, lưu kết quả lần lượt vàosvàk. - Điền
plot()để vẽkso vớisvới tham sốtype = "n", rồi đặt các mã cổ phiếu tại các điểm bằng lệnhtext()(đoạn này đã được viết sẵn cho bạn). - Dùng
apply()để thực hiện kiểm định Jarque–Bera cho từng thành phần của Dow Jones trongdjreturns.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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
___(___)