Mã vector dòng tiền thay thế
Trong ví dụ trên, bạn có thể đã viết vector dòng tiền như sau: cf <- c(3, 3, 3, 3, 3, 3, 3, 103).
Tuy nhiên, cách này hơi thủ công. Một cách khác là dùng lệnh rep() để tạo vector dòng tiền. Gõ rep(x, y) sẽ tự động lặp x y lần. Ví dụ, rep(1, 4) tương đương với c(1, 1, 1, 1).
Trong bài tập này, bạn sẽ xây dựng một hàm tổng quát hơn để tính vector dòng tiền dựa trên các đầu vào: r là lãi suất coupon, p là mệnh giá, và ttm là thời gian đáo hạn. Để làm điều đó, bạn sẽ tận dụng lệnh rep().
Bài tập này là một phần của khóa học
Định giá và Phân tích Trái phiếu bằng R
Hướng dẫn bài tập
- Viết một hàm dòng tiền thay thế dùng
rep()và các biến đầu vàor,p, vàttm. Lưu hàm mới này làalt_cf. - Dùng
alt_cfđể tạo vector dòng tiền với lãi suất coupon (r) 3% (0.03), mệnh giá (p) $100, và thời gian đáo hạn (ttm) 8 năm.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Code cash flow function
alt_cf <- function(r, p, ttm) {
c(rep(p * r, ___ - 1), ___ * (1 + ___))
}
# Generate cf vector
alt_cf(r = ___, p = ___, ttm = ___)