Obliczanie duration
W rozdziale trzecim poznałeś przybliżony wzór na duration. Dla przypomnienia, wzór na przybliżone duration wygląda następująco:
$$(P(down) - P(up)) / (2 * P * \Delta y)$$
gdzie \(P\) to aktualna cena obligacji, \(P(up)\) to cena obligacji przy wzroście rentowności, \(P(down)\) to cena obligacji przy spadku rentowności, a \(\Delta y\) to oczekiwana zmiana rentowności.
W tym ćwiczeniu obliczysz duration. W szczególności użyjesz funkcji bondprc() do wyznaczenia wartości px_up i px_down.
Obiekty px i aaa_yield z poprzednich ćwiczeń są już wczytane do twojego środowiska. Na potrzeby tego ćwiczenia przyjmij, że oczekiwana zmiana rentowności to wzrost o 1%. Jak wcześniej, stopa kuponowa wynosi 3% (0,03), a czas do wykupu – 8 lat.
To ćwiczenie jest częścią kursu
Wycena i analiza obligacji w R
Instrukcje do ćwiczenia
- Użyj funkcji
bondprc(), aby obliczyć cenę obligacji przy wzroście rentowności o 1%. Zapisz wynik dopx_up. - Użyj funkcji
bondprc(), aby obliczyć cenę obligacji przy spadku rentowności o 1%. Zapisz wynik dopx_down. - Korzystając z
px,px_upipx_down, obliczdurationwedług podanego wzoru. - Oblicz i wyświetl procentowy wpływ duration na cenę (
duration_pct_change) na podstawieduration. - Oblicz i wyświetl wartościowy wpływ duration na cenę (
duration_dollar_change) na podstawie duration.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Calculate bond price when yield increases
px_up <- bondprc(p = ___, r = ___, ttm = ___, y = ___)
# Calculate bond price when yield decreases
px_down <-
# Calculate duration
duration <- (___ - ___) / (2 * ___* ___)
# Calculate percentage effect of duration on price
duration_pct_change <-
duration_pct_change
# Calculate dollar effect of duration on price
duration_dollar_change <-
duration_dollar_change