Evaluarea și analiza obligațiunilor în R
Clifford Ang
Senior Vice President, Compass Lexecon
bondprc() pentru a simplifica calculelep pentru valoarea nominalăr pentru rata cuponuluittm pentru durata până la scadențăy pentru randamentcf <- c(rep(p * r, ttm - 1), p * (1 + r))
rep(x, y) - repetă valoarea lui x de y orix = p * r = plata cuponuluiy = ttm - 1 = durata până la scadență minus un anp * (1 + r) = principal + plata finală a cuponuluicf <- data.frame(cf)
cf$t <- as.numeric(rownames(cf))
rownames() ale vectorului cf este egal cu 1, 2, 3, 4, până la ttm al obligațiuniias.numeric() este necesar pentru a se asigura că valorile sunt citite ca numerecf$pv_factor <- 1 / (1 + y)^cf$t
cf$pv <- cf$cf * cf$pv_factor
sum(cf$pv)
bondprc()p, r, ttm și ybondprc <- function(p, r, ttm, y){
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)
}
Evaluarea și analiza obligațiunilor în R