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

Mô phỏng các khoản thanh toán theo kỳ (I)

Bạn đã có đầy đủ công cụ để mô phỏng các khoản thanh toán thế chấp theo thời gian.

Mỗi khi bạn thanh toán tiền thế chấp, ở kỳ tiếp theo, tỷ lệ phần trăm dùng để trả lãi sẽ giảm nhẹ. Điều này có nghĩa là nhiều phần còn lại hơn sẽ được dùng để trả vào phần ngôi nhà mà bạn sở hữu thay vì cho ngân hàng. Điều này quan trọng để xác định bạn sẽ thu được bao nhiêu khi bán nhà trước khi trả hết thế chấp, hoặc để biết khi nào khoản thế chấp của bạn bị âm giá trị. Nhưng ta sẽ bàn kỹ hơn ở phần sau.

Bây giờ bạn sẽ viết một chương trình đơn giản để tính phần lãi và phần gốc trong mỗi khoản thanh toán theo thời gian.

Bạn có thể sử dụng các biến mortgage_loan, mortgage_rate_periodicperiodic_mortgage_payment từ bài tập thứ ba.

Biến principal_remaining được khởi tạo là một mảng toàn số 0, với độ dài bằng số kỳ thanh toán.

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

Nhập môn các khái niệm tài chính với Python

Xem khóa học

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

  • Đặt previous_principal_remaining cho kỳ đầu tiên, tức là khi (i == 0), bằng giá trị khoản vay thế chấp.
  • Đặt previous_principal_remaining cho tất cả các kỳ còn lại bằng dư nợ gốc của kỳ trước ([i - 1]).
  • Tính khoản trả lãi (tích của dư nợ gốc kỳ trước và lãi suất thế chấp theo kỳ) và khoản trả gốc (hiệu giữa khoản thanh toán thế chấp theo kỳ và phần lãi đã trả) cho mỗi kỳ.

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.

# Loop through each mortgage payment period
for i in range(0, mortgage_payment_periods):
    
    # Handle the case for the first iteration
    if i == 0:
        previous_principal_remaining = ____
    else:
        previous_principal_remaining = ____
        
    # Calculate the interest and principal payments
    interest_payment = round(____*____, 2)
    principal_payment = round(____-____, 2)
    
    # Catch the case where all principal is paid off in the final period
    if previous_principal_remaining - principal_payment < 0:
        principal_payment = previous_principal_remaining
        
    # Collect the principal remaining values in an array
    principal_remaining[i] = previous_principal_remaining - principal_payment
    
    # Print the payments for the first few periods
    print_payments(i, interest_payment, principal_payment, principal_remaining)
Chỉnh sửa và Chạy Mã