เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

จำลองการชำระเงินรายงวด (I)

ตอนนี้มีเครื่องมือครบแล้วสำหรับการจำลองการชำระเงินจำนองตลอดช่วงเวลา

ทุกครั้งที่มีการชำระเงินจำนอง สัดส่วนที่ใช้ชำระดอกเบี้ยจะลดลงเล็กน้อยในแต่ละงวด ซึ่งหมายความว่าเงินส่วนที่เหลือจะถูกนำไปลดยอดเงินต้นมากขึ้น แทนที่จะจ่ายให้ธนาคาร สิ่งนี้มีความสำคัญในการประเมินว่าจะได้กำไรเท่าไรหากขายบ้านก่อนชำระจำนองหมด หรือเพื่อตรวจสอบว่าเมื่อใดที่มูลค่าจำนองติดลบ แต่จะกล่าวถึงเรื่องนั้นในภายหลัง

ตอนนี้จะเขียนโปรแกรมอย่างง่ายเพื่อคำนวณส่วนดอกเบี้ยและส่วนเงินต้นของการชำระแต่ละงวดตลอดช่วงเวลา

ตัวแปร mortgage_loan, mortgage_rate_periodic และ periodic_mortgage_payment จากแบบฝึกหัดที่สามพร้อมใช้งานแล้ว

ตัวแปร principal_remaining ถูกกำหนดค่าเริ่มต้นเป็นอาร์เรย์ของเลข 0 โดยมีความยาวเท่ากับจำนวนงวดการชำระ

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Python เบื้องต้นสำหรับแนวคิดทางการเงิน

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดค่า previous_principal_remaining สำหรับงวดแรก กล่าวคือเมื่อ (i == 0) ให้เท่ากับมูลค่าเงินกู้จำนอง
  • กำหนดค่า previous_principal_remaining สำหรับงวดอื่น ๆ ทั้งหมดให้เท่ากับยอดเงินต้นคงเหลือจากงวดก่อนหน้า ([i - 1])
  • คำนวณการชำระดอกเบี้ย (ผลคูณของยอดเงินต้นคงเหลือก่อนหน้าและอัตราดอกเบี้ยจำนองรายงวด) และการชำระเงินต้น (ผลต่างระหว่างการชำระเงินจำนองรายงวดและดอกเบี้ยที่ชำระ) สำหรับแต่ละงวด

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# 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)
แก้ไขและรันโค้ด