НачатьНачать бесплатно

Численные тесты на нормальность

Пакет moments содержит функции для вычисления эксцесса и асимметрии данных, а также для проведения теста Харке–Бера — теста на нормальность, основанного на моментах высших порядков. За одну команду он сравнивает асимметрию и эксцесс данных с теоретическими значениями для нормального распределения, которые равны 0 и 3 соответственно.

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

В этом упражнении вы вычислите асимметрию и эксцесс для djx — индекса Dow Jones за 2008–2011 годы — и проведёте тест Харке–Бера на нормальность. Затем вы примените те же методы к djreturns, который содержит данные по 29 акциям индекса Dow Jones за тот же период.

Напомним, что функция apply(X, MARGIN, FUN, …) применяет функцию к заданным измерениям массива. Параметр MARGIN указывает, где именно будет применяться функция; в данном случае используйте значение 2, чтобы функция FUN применялась к столбцам матрицы X.

Пакет moments уже импортирован, а данные djx и djreturns доступны в вашем рабочем пространстве.

Это упражнение является частью курса

Количественное управление рисками в R

Посмотреть курс

Инструкции к упражнению

  • Вычислите асимметрию и эксцесс доходностей индекса Dow Jones из djx с помощью функций skewness() и kurtosis() соответственно.
  • Проведите тест Харке–Бера на нормальность для djx с помощью jarque.test().
  • Используйте apply() для вычисления асимметрии и эксцесса доходностей отдельных акций из djreturns, сохранив результаты в переменные s и k соответственно.
  • Заполните вызов plot(), чтобы построить график k против s с параметром type = "n", а затем разместите символы акций в точках с помощью команды text() (это уже сделано за вас).
  • Используйте apply() для проведения теста Харке–Бера по каждой из акций, входящих в состав djreturns.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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
___(___)
Редактировать и запускать код