Bootstrap-Konfidenzintervalle
Du hast zuvor gesehen, dass es eine gewisse Korrelation zwischen dem S&P 500 und Bitcoin gibt. Eine Möglichkeit, das zu messen, ist der Korrelationskoeffizient Pearsons R zwischen den beiden. Allerdings erhältst du damit nur eine Punkt-Schätzung. Vermutlich ist die Korrelation zu manchen Zeitpunkten ziemlich hoch, während sie sich zu anderen Zeiten stark unterscheidet. Wie kannst du diese Variabilität beschreiben? Ein Ansatz ist, ein Bootstrap-Konfidenzintervall für den Korrelationskoeffizienten der beiden zu erstellen. Genau das wirst du jetzt tun!
Ein DataFrame mit S&P-500- und Bitcoin-Preisen (btc_sp_df) wurde für dich geladen, ebenso die Pakete pandas als pd, NumPy als np und stats aus SciPy.
Diese Übung ist Teil des Kurses
Grundlagen der Inferenz in Python
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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)