IniziaInizia gratis

Usare merge_asof() per analizzare i titoli azionari

Hai un feed di prezzi di borsa che stai registrando. Provi a rilevare il prezzo ogni cinque minuti, ma a causa di un po' di latenza di rete, i prezzi che registri sono solo approssimativamente ogni 5 minuti. Hai estratto i log dei prezzi per tre banche, JP Morgan (JPM), Wells Fargo (WFC) e Bank Of America (BAC). Vuoi capire come il cambiamento di prezzo delle altre due banche si confronta con JP Morgan. Quindi, dovrai unire questi tre log in un'unica tabella. Successivamente userai il metodo .diff() di pandas per calcolare la variazione di prezzo nel tempo. Infine, traccia le variazioni di prezzo per poter rivedere l'analisi.

I tre file di log sono stati caricati per te come tabelle chiamate jpm, wells e bac.

Questo esercizio fa parte del corso

Unire i dati con pandas

Visualizza il corso

Istruzioni dell'esercizio

  • Usa merge_asof() per unire jpm (tabella di sinistra) e wells sulla colonna date_time, abbinando le righe con gli orari più vicini, e con suffixes=('', '_wells'). Salva in jpm_wells.
  • Usa merge_asof() per unire jpm_wells (tabella di sinistra) e bac sulla colonna date_time, abbinando le righe con gli orari più vicini, e con suffixes=('_jpm', '_bac'). Salva in jpm_wells_bac.
  • Traccia i prezzi di chiusura close_jpm, close_wells e close_bac da price_diffs.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Use merge_asof() to merge jpm and wells
jpm_wells = ____


# Use merge_asof() to merge jpm_wells and bac
jpm_wells_bac = ____


# Compute price diff
price_diffs = jpm_wells_bac.diff()

# Plot the price diff of the close of jpm, wells and bac only
price_diffs.plot(y=[____, ____, ____])
plt.show()
Modifica ed esegui il codice