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

Застосування моделі MA

Коливання ціни акції між цінами попиту та пропозиції спричиняє негативну автокореляцію першого порядку, але відсутність автокореляцій на лагах, більших за 1. Такий самий вигляд ACF має й модель MA(1). Тому ви пристосуєте модель MA(1) до внутрішньоденних даних про акції з попередньої вправи.

Перший крок — обчислити помінутні доходності з цін у intraday і побудувати автокореляційну функцію. Ви маєте побачити, що ACF виглядає як для процесу MA(1). Потім пристосуйте дані до MA(1) так само, як ви робили для змодельованих даних.

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

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

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

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

  • Імпортуйте модулі plot_acf та ARIMA зі statsmodels
  • Обчисліть помінутні доходності з цін:
    • Обчисліть доходності методом .pct_change()
    • Використайте метод pandas .dropna(), щоб прибрати перший рядок доходностей, де стоїть NaN
  • Побудуйте ACF з лаґами до 60 хвилин
  • Пристосуйте дані доходностей до моделі MA(1) і виведіть параметр MA(1)

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

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

# Import plot_acf and ARIMA modules from statsmodels
from statsmodels.graphics.tsaplots import plot_acf
from statsmodels.tsa.arima.model import ARIMA

# Compute returns from prices and drop the NaN
returns = intraday.___
returns = returns.___

# Plot ACF of returns with lags up to 60 minutes
plot_acf(___, ___)
plt.show()

# Fit the data to an MA(1) model
mod = ARIMA(___, order=(0,0,1))
res = mod.fit()
print(res.params[1])
Редагувати та запускати код