Неможливо прогнозувати білий шум
Часовий ряд білого шуму — це просто послідовність некорельованих випадкових величин з однаковим розподілом. Доходності акцій часто моделюють як білий шум. На жаль, для білого шуму ми не можемо прогнозувати майбутні значення за минулими — автокореляції на всіх лаґах дорівнюють нулю.
Ви згенеруєте ряд білого шуму та побудуєте функцію автокореляції, щоб показати, що вона нульова для всіх лаґів. Ви можете використати np.random.normal() для генерації випадкових доходностей. Для ґаусового процесу білого шуму середнє та стандартне відхилення повністю описують процес.
Побудуйте графік цього ряду білого шуму, щоб побачити, як він виглядає, а потім побудуйте функцію автокореляції.
Ця вправа є частиною курсу
Аналіз часових рядів у Python
Інструкції до вправи
- Згенеруйте 1000 нормально розподілених випадкових доходностей за допомогою
np.random.normal()із середнім 2% (0.02) та стандартним відхиленням 5% (0.05), де аргумент для середнього —loc, а для стандартного відхилення —scale. - Перевірте середнє та стандартне відхилення доходностей за допомогою
np.mean()іnp.std(). - Побудуйте часовий ряд.
- Побудуйте функцію автокореляції за допомогою
plot_acfз параметромlags=20.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Import the plot_acf module from statsmodels
from statsmodels.graphics.tsaplots import plot_acf
# Simulate white noise returns
returns = np.random.normal(loc=___, scale=___, size=___)
# Print out the mean and standard deviation of returns
mean = np.mean(___)
std = np.std(___)
print("The mean is %5.3f and the standard deviation is %5.3f" %(mean,std))
# Plot returns series
plt.plot(___)
plt.show()
# Plot autocorrelation function of white noise returns
plot_acf(___, lags=___)
plt.show()