MulaiMulai sekarang secara gratis

Ubah kode Anda menjadi fungsi valuasi obligasi

Pada latihan sebelumnya, Anda telah menjalani langkah demi langkah cara menghitung nilai suatu obligasi. Namun, mengulangi semua langkah tersebut untuk menilai banyak obligasi akan merepotkan. Untungnya, Anda dapat membuat sebuah fungsi untuk melakukan perhitungan yang sama berulang kali untuk berbagai obligasi.

Fungsi yang Anda buat harus fleksibel agar memungkinkan Anda memasukkan fitur-fitur kunci obligasi. Merujuk contoh sebelumnya, Anda memerlukan fungsi yang dapat memasukkan nilai pari obligasi, tingkat kupon, waktu hingga jatuh tempo, dan imbal hasil.

Dalam latihan ini, Anda akan membuat fungsi bondprc yang menerima keempat masukan tersebut untuk menghitung nilai sebuah obligasi. Ingat bahwa untuk membuat fungsi Anda dapat menggunakan function(input 1, input 2, ...) { [lines of code] }.

Latihan ini adalah bagian dari kursus

Penilaian dan Analisis Obligasi di R

Lihat Kursus

Petunjuk latihan

  • Sebuah kerangka fungsi, bondprc, telah dibuat di ruang kerja Anda. Lengkapi fungsi tersebut dengan menyusun perintah function() dan menyediakan nama untuk empat masukan: p untuk nilai pari, r untuk tingkat kupon, ttm untuk waktu hingga jatuh tempo, dan y untuk imbal hasil.
  • Verifikasi bahwa fungsi bondprc memberikan harga sebesar $95.79 untuk nilai obligasi dengan nilai pari $100, tingkat kupon 5%, 5 tahun hingga jatuh tempo, dan imbal hasil hingga jatuh tempo 6%.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Create function
bondprc <- ___(___, ___, ___, ___) {
  cf <- c(rep(p * r, ttm - 1), p * (1 + r))
  cf <- data.frame(cf)
  cf$t <- as.numeric(rownames(cf))
  cf$pv_factor <- 1 / (1 + y)^cf$t
  cf$pv <- cf$cf * cf$pv_factor
  sum(cf$pv)
}

# Verify prior result
bondprc(___, ___, ___, ___)
Edit dan Jalankan Kode