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

Популярна стратегія на основі автокореляції

Одна з дивних аномалій на ринку акцій полягає в тому, що інвестори схильні надмірно реагувати на новини. Після великих стрибків, вгору або вниз, ціни на акції мають тенденцію розвертатися. Це називають поверненням до середнього в цінах акцій: після значних рухів ціни зазвичай відскакують і повертаються до попередніх рівнів, що спостерігається на горизонтах близько тижня. Більш математично це можна описати як негативну автокореляцію доходностей акцій.

Ця проста ідея лежить в основі популярної стратегії хедж-фондів. Якщо вам цікаво дізнатися більше про цю стратегію (це не обов'язково для подальших частин курсу), перегляньте тут.

Ви розглянете автокореляцію тижневих доходностей акцій MSFT за 2012–2017 роки. Ви почнете з датафрейму MSFT із щоденними цінами. Скористайтеся методом .resample(), щоб отримати тижневі ціни, а потім обчисліть доходності з цін. Використайте метод pandas .autocorr(), щоб знайти автокореляцію, і покажіть, що вона від'ємна. Зверніть увагу: метод .autocorr() працює лише для Series, а не для DataFrame (навіть якщо в ньому один стовпець), тож потрібно вибрати відповідний стовпець у датафреймі.

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

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

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

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

  • Використайте метод .resample() з rule='W', а потім функцію .last(), щоб перетворити щоденні дані на тижневі.
  • Створіть новий датафрейм returns із відсотковими змінами тижневих цін за допомогою методу .pct_change().
  • Обчисліть автокореляцію методом .autocorr() для ряду цін закриття акцій — це стовпець 'Adj Close' у датафреймі returns.

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

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

# Convert the daily data to weekly data
MSFT = MSFT.resample(___).___

# Compute the percentage change of prices
returns = MSFT.___

# Compute and print the autocorrelation of returns
autocorrelation = returns[___].___
print("The autocorrelation of weekly returns is %4.2f" %(autocorrelation))
Редагувати та запускати код