Bắt đầu ngayBắt đầu miễn phí

Nhiều đối số (2)

Hãy xem một ví dụ phức tạp hơn. Bạn còn nhớ khái niệm giá trị hiện tại (present value) từ khóa Introduction to R for Finance không? Nếu không, bạn có thể xem lại video tại đây. Ý tưởng là bạn chiết khấu số tiền sẽ nhận trong tương lai theo một mức lãi suất nhất định để biểu diễn giá trị của số tiền đó theo giá trị hiện tại. Công thức tổng quát sau được sử dụng cho việc này:

present_value <- cash_flow * (1 + i / 100) ^ -year

Sẽ thật tiện nếu có một hàm thực hiện phép tính này cho bạn, chẳng hạn dạng:

present_value <- pv(cash_flow, i, year)

Hàm này phải hoạt động khi bạn truyền vào các số như pv(1500, 5, 2) và cũng phải hoạt động khi bạn truyền vào các vector có cùng độ dài để tính toàn bộ vector giá trị hiện tại chỉ trong một lần!

Hàm percent_to_decimal() đã được cung cấp để bạn sử dụng.

Bài tập này là một phần của khóa học

R trung cấp cho Tài chính

Xem khóa học

Hướng dẫn bài tập

  • Điền vào chỗ trống trong hàm để thực hiện các việc sau:
    • Yêu cầu các đối số: cash_flow, i, year
    • Tạo hệ số chiết khấu: (1 + i / 100). Dùng hàm percent_to_decimal() để chuyển i sang dạng thập phân.
    • Thực hiện phép tính giá trị hiện tại. Không lưu vào biến; vì là dòng được thực thi cuối cùng, nó sẽ tự động được trả về.
  • Tính giá trị hiện tại của $1200, với lãi suất 7%, nhận sau 3 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.

# Present value function
pv <- function(___, ___, ___) {
    
    # Discount multiplier
    mult <- 1 + ___(i)
    
    # Present value calculation
    ___ * ___ ^ -___
}

# Calculate a present value
___
Chỉnh sửa và Chạy Mã