Бутстрепні довірчі інтервали
Раніше ви бачили, що між S&P 500 і Bitcoin є певний ступінь кореляції. Один зі способів її виміряти — подивитися на коефіцієнт кореляції Пірсона R між ними. Однак це дає лише точкову оцінку. Імовірно, у певні періоди кореляція між ними досить висока, а в інші — вони поводяться дуже по-різному. Як охарактеризувати мінливість? Один із підходів — побудувати бутстрепний довірчий інтервал для коефіцієнта кореляції між ними. Саме це ви зараз і зробите!
Для вас завантажено датафрейм з цінами S&P 500 та Bitcoin (btc_sp_df), а також бібліотеки pandas як pd, NumPy як np і stats зі SciPy.
Ця вправа є частиною курсу
Основи інференції в Python
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Compute the daily percent change of each asset
btc_sp_df['Pct_Daily_Change_BTC'] = (____['Open_BTC'] - ____['Close_BTC']) / ____['Open_BTC']
btc_sp_df['Pct_Daily_Change_SP500'] = ____
# Write a function which returns the correlation coefficient
def pearson_r(x, y):
return stats.____[0]
# Compute a bootstrap confidence interval
ci = stats.bootstrap((____, ____),
statistic=____,
vectorized=False, paired=True, n_resamples=1000, random_state=1)
print(ci.confidence_interval)