ПочатиПочніть безкоштовно

Чи можемо ми впевнено сказати, що ця акція має середнє повернення?

У попередньому розділі ви бачили, що автокореляція щотижневих доходностей акцій MSFT становила -0,16. Це здається великим значенням, але чи є воно статистично значущим? Іншими словами, чи можете ви стверджувати, що ймовірність побачити таку велику від'ємну автокореляцію менша за 5%, якщо справжня автокореляція насправді дорівнює нулю? І чи є автокореляції на інших лагах, які суттєво відрізняються від нуля?

Навіть якщо справжні автокореляції дорівнюють нулю на всіх лагах, у скінченній вибірці доходностей оцінки автокореляцій рідко будуть рівно нуль. Насправді стандартне відхилення вибіркової автокореляції дорівнює \(\small 1/\sqrt{N}\), де \(\small N\) — кількість спостережень, тож якщо, наприклад, \(\small N=100\), стандартне відхилення ACF дорівнює 0,1. Оскільки 95% нормального розподілу лежить між +1,96 та -1,96 стандартних відхилень від середнього, 95% довірчий інтервал дорівнює \(\small \pm 1.96/\sqrt{N}\). Це наближення коректне лише тоді, коли справжні автокореляції усі дорівнюють нулю.

Ви обчислите фактичний і наближений довірчі інтервали для ACF та порівняєте їх з автокореляцією першого лага -0,16 з минулого розділу. Щотижневі доходності Microsoft уже завантажені в датафрейм returns.

Ця вправа є частиною курсу

Аналіз часових рядів у Python

Переглянути курс

Інструкції до вправи

  • Повторно обчисліть автокореляцію щотижневих доходностей у Series 'Adj Close' у датафреймі returns.
  • Знайдіть кількість спостережень у датафреймі returns за допомогою функції len().
  • Наближено обчисліть 95% довірчий інтервал для оціненої автокореляції. Математичну функцію sqrt() уже імпортовано — її можна використати.
  • Побудуйте автокореляційну функцію returns, використавши plot_acf з пакета statsmodels. Встановіть alpha=0.05 для довірчих інтервалів (це значення за замовчуванням) і lags=20.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Import the plot_acf module from statsmodels and sqrt from math
from statsmodels.graphics.tsaplots import plot_acf
from math import sqrt

# Compute and print the autocorrelation of MSFT weekly returns
autocorrelation = returns['Adj Close'].___
print("The autocorrelation of weekly MSFT returns is %4.2f" %(autocorrelation))

# Find the number of observations by taking the length of the returns DataFrame
nobs = ___

# Compute the approximate confidence interval
conf = 1.96/___
print("The approximate confidence interval is +/- %4.2f" %(conf))

# Plot the autocorrelation function with 95% confidence intervals and 20 lags using plot_acf
plot_acf(___, alpha=0.05, ___)
plt.show()
Редагувати та запускати код