LoslegenKostenlos loslegen

Periodische Zahlungen simulieren (I)

Du hast jetzt alle Werkzeuge, um die Hypothekenzahlungen über die Zeit zu simulieren.

Bei jeder Hypothekenzahlung sinkt der prozentuale Anteil, der für Zinsen verwendet wird, leicht. Das bedeutet, dass mehr vom Rest in den Anteil des Hauses fließt, der dir gehört, statt zur Bank. Das ist wichtig, um zu bestimmen, wie viel du beim Verkauf des Hauses vor vollständiger Rückzahlung deiner Hypothek erhältst oder wann deine Hypothek „unter Wasser“ ist. Aber dazu später mehr.

Du schreibst nun ein kleines Programm, um die Zins- und Tilgungsanteile jeder Zahlung im Zeitverlauf zu berechnen.

Die Variablen mortgage_loan, mortgage_rate_periodic und periodic_mortgage_payment aus der dritten Übung stehen zur Verfügung.

Die Variable principal_remaining ist als Array aus Nullen initialisiert, dessen Länge der Anzahl der Zahlungsperioden entspricht.

Diese Übung ist Teil des Kurses

Einführung in finanzielle Konzepte mit Python

Kurs anzeigen

Anleitung zur Übung

  • Setze previous_principal_remaining für die erste Periode, d. h. wenn (i == 0), auf den Wert des Hypothekendarlehens.
  • Setze previous_principal_remaining für alle anderen Perioden auf den verbleibenden Kreditbetrag aus der vorherigen Periode ([i - 1]).
  • Berechne für jede Periode die Zinszahlung (das Produkt aus verbleibendem Kreditbetrag und periodischem Hypothekenzinssatz) und die Tilgungszahlung (die Differenz zwischen periodischer Hypothekenzahlung und den gezahlten Zinsen).

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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)
Code bearbeiten und ausführen