Utilizar merge_asof() para estudiar las cotizaciones
Tienes un feed de cotizaciones bursátiles que estás registrando, Intenta seguir el precio cada cinco minutos. Sin embargo, debido a la latencia de la red, los precios que obtienes son solo aproximadamente cada cinco minutos. Sacas los registros de precios de tres bancos: JP Morgan (JPM), Wells Fargo (WFC) y Bank Of America (BAC). Quieres saber cómo se compara el cambio de precio de los otros dos bancos con JP Morgan. Por lo tanto, tendrás que fusionar estos tres registros en una sola tabla. Después, utilizarás el método pandas
.diff()
para calcular la variación del precio a lo largo del tiempo. Por último, traza los cambios de precio para poder revisar tu análisis.
Los tres archivos de registro se han cargado para ti como tablas denominadas jpm
, wells
y bac
.
Este ejercicio forma parte del curso
Unir datos con pandas
Instrucciones del ejercicio
- Utiliza
merge_asof()
para unirjpm
(tabla de la izquierda) ywells
en la columnadate_time
, donde coinciden las filas con los tiempos más cercanos y consuffixes=('', '_wells')
. Guardar enjpm_wells
. - Utiliza
merge_asof()
para fusionarjpm_wells
(tabla de la izquierda) ybac
en la columnadate_time
, donde coinciden las filas con los tiempos más cercanos, y consuffixes=('_jpm', '_bac')
. Guarda enjpm_wells_bac
. - Traza los precios de cierre de
close_jpm
,close_wells
yclose_bac
deprice_diffs
.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# 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()