Kolombewerkingen met handelsvolumes
Het aantal verhandelde (verkochte of gekochte) aandelen in een bepaalde periode is het volume. Je werkt als Business Analyst bij een effectenmakelaar. Er is een matrix met dagelijkse veranderingen in het volume, mat_stocks, voor je beschikbaar. Elke kolom bevat de verandering in volume voor een aandeel ten opzichte van de vorige dag. Je wilt uitzoeken of het verhandelde volume voor deze aandelen in een bepaalde periode consequent toeneemt.
De functie calculate_runs() is beschikbaar voor je. Deze functie neemt twee argumenten: 1) de dagelijkse veranderingen in volume, 2) een enkele waarde voor de periode (aantal dagen) waarvoor de reeks wordt berekend.
Je moet calculate_runs() parallel toepassen op elke kolom van mat_stocks, waarbij je vijf dagen opgeeft als periode. Het pakket parallel is alvast voor je geladen.
Deze oefening maakt deel uit van de cursus
Parallel programmeren in R
Oefeninstructies
- Exporteer
n_daysnaar het cluster. - Pas
calculate_runstoe op elke kolom van matrixmat_stocks. - Geef de waarde voor het
period-argument op metn_days.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
n_days <- 5
cl <- makeCluster(4)
# Export n_days to cluster
clusterExport(cl, "___", envir = environment())
# Apply calculate_runs to each column of mat_stocks
volume_runs <- ___(___, ___, ___,
# Specify value for period argument
___ = ___)
stopCluster(cl)
print(paste0("Number of ", n_days, "-day increasing runs: ", sum(volume_runs)))