Функція автокореляції

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

Rob Reider

Adjunct Professor, NYU-Courant Consultant, Quantopian

Функція автокореляції

  • Функція автокореляції (ACF): автокореляція як функція лаґу
  • Дорівнює одиниці за лаґу нуль
  • Корисна інформація поза лаґом один
Аналіз часових рядів у Python

Приклад ACF 1: Проста функція автокореляції

  • Для прогнозу можна використати два останні значення ряду
Аналіз часових рядів у Python

Приклад ACF 2: Сезонний прибуток

  • Прибуток H&R Block
  • ACF для H&R Block
Аналіз часових рядів у Python

Приклад ACF 3: Корисно для вибору моделі

  • Вибір моделі

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

Побудова ACF у Python

  • Імпортуйте модуль:
    from statsmodels.graphics.tsaplots import plot_acf
    
  • Побудуйте ACF:
    plot_acf(x, lags= 20, alpha=0.05)
    
Аналіз часових рядів у Python

Довірчий інтервал ACF

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

Довірчий інтервал ACF

  • Аргумент alpha задає ширину довірчого інтервалу
  • Приклад: alpha=0.05
    • 5% імовірності, що за нульової істинної автокореляції оцінка буде поза синьою смугою
  • Довірчі смуги ширші, якщо:
    • Менше alpha
    • Менше спостережень
  • За певних спрощень 95% смуги дорівнюють $\pm 2/\sqrt{N}$
  • Щоб прибрати смуги на графіку, встановіть alpha=1
Аналіз часових рядів у Python

Значення ACF замість графіка

from statsmodels.tsa.stattools import acf
print(acf(x))
[ 1.         -0.6765505   0.34989905 -0.01629415 -0.02507013  0.01930354
 -0.03186545  0.01399904 -0.03518128  0.02063168 -0.02620646 -0.00509828
...
  0.07191516 -0.12211912  0.14514481 -0.09644228  0.05215882]
Аналіз часових рядів у Python

Давайте потренуємось!

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

Preparing Video For Download...