Inizia subitoInizia gratis

Test di permutazione per le correlazioni

Come si confronta la volatilità di Bitcoin con quella dell’S&P 500?

In precedenza hai calcolato la volatilità come variazione percentuale giornaliera, che è stata memorizzata per te nelle colonne Pct_Daily_Change_BTC e Pct_Daily_Change_SP500 nei tuoi dati. La domanda a cui vuoi rispondere è in che misura questi due valori sono correlati. Un modo per rispondere è tramite un test di permutazione. Mescolando casualmente i valori tra S&P 500 e BTC puoi vedere quale sarebbe un esito casuale e poi confrontarlo con i valori osservati.

Per te è stato caricato un DataFrame con i prezzi di S&P 500 e Bitcoin (btc_sp_df), così come i pacchetti pandas come pd, NumPy come np e stats da SciPy.

Questo esercizio fa parte del corso

Fondamenti dell'inferenza in Python

Visualizza corso

Istruzioni dell'esercizio

  • Definisci una funzione statistic() che restituisca solo il valore di Pearson R tra due vettori.
  • Imposta data uguale a una tupla che contenga la volatilità di BTC e SP500.
  • Esegui un test di permutazione con questi dati, la statistica, 1000 ri-campionamenti e un’ipotesi alternativa di maggiore volatilità per Bitcoin.
  • Stampa se il p-value è significativo al 5%.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# Define a function which returns the Pearson R value
def statistic(x, y):
	____

# Define the data as the percent daily change from each asset
data = ____

# Compute a permutation test for the percent daily change of each asset
res = ____(____, ____, 
           n_resamples=____,
           vectorized=____, 
           alternative='____')

# Print if the p-value is significant at 5%
print(res.pvalue < 0.05)
Modifica ed esegui il codice