Проблема с получением YTM с помощью функции uniroot

Я пытаюсь вычислить доходность к погашению, но ответ для приведенной ниже функции странный... Правильный ответ, на который я смотрю... get_ytm(100,3,0.04,4,108.8516) ---> 0,01

Кто-нибудь может исправить мое недоразумение?

      get_ytm <- function(F,T,c,f,PV){
  cf <- c(rep((F*c)/f,T*f-1), F*(1+c/f))
  PV <- function(ytm,cf.,t=seq(along=cf.),f.=f){
    cf.pv.factor <- exp(-ytm/f.*t)
    cf.pv <- cf. * cf.pv.factor
    sum(cf.pv)
  }
  uniroot(PV,c(0.001,0.2),cf.=cf,extendInt ="yes")$root
}

0 ответов

Другие вопросы по тегам