코드를 채권 가치평가 함수로 변환하기
앞선 연습 문제에서 채권 가치를 단계별로 계산하는 방법을 실습했어요. 하지만 많은 채권을 반복해서 평가하려면 매번 모든 단계를 수행하는 것은 번거롭습니다. 다행히 동일한 계산을 여러 채권에 반복 적용할 수 있는 함수를 만들 수 있어요.
만드실 함수는 채권의 핵심 특성을 입력으로 받을 수 있어야 합니다. 이전 예시 기준으로는 액면가, 쿠폰 이자율, 만기까지 남은 기간, 수익률을 함수가 처리할 수 있어야 해요.
이번 연습에서는 이 네 가지 입력을 받아 채권 가치를 계산하는 bondprc 함수를 만듭니다. 함수를 만들 때는 function(input 1, input 2, ...) { [lines of code] } 형태를 사용할 수 있다는 점을 떠올리세요.
이 연습은 강의의 일부입니다
R로 배우는 채권 가치 평가와 분석
연습 안내
- 작업 공간에 일부만 작성된 함수
bondprc가 준비되어 있습니다.function()구문을 완성하고 네 개의 입력 이름을 지정해 함수를 완료하세요: 액면가p, 쿠폰 이자율r, 만기까지 남은 기간ttm, 수익률y. - 액면가 $100, 쿠폰 이자율 5%, 만기 5년, 만기수익률 6%인 채권의 가격이 $95.79로 계산되는지
bondprc함수로 확인하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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(___, ___, ___, ___)