Bootstrap-betrouwbaarheidsintervallen
Je hebt eerder gezien dat er een zekere mate van correlatie is tussen de S&P 500 en Bitcoin. Een manier om dit te meten is te kijken naar de correlatiecoëfficiënt Pearson’s R tussen de twee. Doe je dat, dan krijg je echter alleen een puntschatting. Waarschijnlijk is de correlatie op sommige momenten behoorlijk sterk, terwijl ze op andere momenten juist heel verschillend bewegen. Hoe kun je die variatie karakteriseren? Een aanpak is om een bootstrap-betrouwbaarheidsinterval te maken voor de correlatiecoëfficiënt tussen de twee. Dat is precies wat je nu gaat doen!
Een DataFrame met S&P 500- en Bitcoin-prijzen (btc_sp_df) is al voor je ingeladen, net als de pakketten pandas als pd, NumPy als np, en stats uit SciPy.
Deze oefening maakt deel uit van de cursus
Basis van inferentie in Python
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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)