Alternatywny kod wektora przepływów pieniężnych
W powyższym przykładzie wektor przepływów pieniężnych mógł być zakodowany jako cf <- c(3, 3, 3, 3, 3, 3, 3, 103).
Takie podejście bywa jednak żmudne. Alternatywą jest użycie polecenia rep(). Wywołanie rep(x, y) automatycznie powtarza x dokładnie y razy. Na przykład rep(1, 4) jest równoważne zapisowi c(1, 1, 1, 1).
W tym ćwiczeniu stworzysz bardziej ogólną funkcję do obliczania wektora przepływów pieniężnych na podstawie kilku parametrów wejściowych: r dla stopy kuponu, p dla wartości nominalnej oraz ttm dla czasu do wykupu. Skorzystasz przy tym z polecenia rep().
To ćwiczenie jest częścią kursu
Wycena i analiza obligacji w R
Instrukcje do ćwiczenia
- Zakoduj alternatywną funkcję przepływów pieniężnych, używając
rep()oraz zmiennych wejściowychr,pittm. Zapisz tę nową funkcję jakoalt_cf. - Użyj
alt_cf, aby wygenerować wektor przepływów pieniężnych ze stopą kuponu (r) równą 3% (0.03), wartością nominalną (p) 100 USD oraz czasem do wykupu (ttm) wynoszącym 8 lat.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Code cash flow function
alt_cf <- function(r, p, ttm) {
c(rep(p * r, ___ - 1), ___ * (1 + ___))
}
# Generate cf vector
alt_cf(r = ___, p = ___, ttm = ___)