Разработка функции для расчета доходности к погашению по облигации, но продолжаю получать:
Ошибка в f (нижняя, ...): отсутствует аргумент "coupon_rate", без значения по умолчанию
Входные данные:
- face_value: 1000
- coupon_rate: 0.1
- цена: 101
- no_comp: 1
- срок владения: 3
Я понятия не имею, что нужно изменить, чтобы исправить это.Мысли?
Полный код:
ytm <- function(face_value, coupon_rate, price, no_comp, tenure) {
bval <- function(i, face_value, coupon_rate, price, no_comp, tenure, t=seq(along = cf)) {
coupon_payment = face_value * coupon_rate
cf <- c(-face_value*(price/100),rep(c(coupon_payment), (no_comp * tenure -1)), face_value + coupon_payment)
sum(cf / (1 + i)^t)
}
coupon_payment = face_value * coupon_rate
cf <- c(-face_value*(price/100),rep(c(coupon_payment), (no_comp * tenure -1)), face_value + coupon_payment)
uniroot(ytm, interval=c(0, 20))$root
}
ytm(1000, 0.1, 101, 1, 3)