BRo: Tilgung?

Hi

ich will ein Programm schrieben das folgende Werte als Variablen hat:
Darlehen/Schuld
Zinssatz
Laufzeit

Das Programm soll die Tilgung (in Prozent) ausrechnen wenn die Restschuld = 0 ist, d.h. der User kann wie folgt mit dem Programm arbeiten:

Wenn ich ein bestimmtes Kapital / Schuld habe, das bei einem bestimmten Zinssatz eine bestimmte Zeit (T) anliegt, wie groß muss dann die Tilgung sein wenn am Ende der Zeit (T) die Restschuld = 0 ist.

Kann mir jemand sagen,ob das mathematisch überhaupt möglich ist??

MfG BRo

  1. Hello,

    Du meinst sicher, dass die Rate ausgerechnet werden soll.

    Rate = Zinsen + Tilgung

    Das ist eine klassische Reihenentwicklung.
    Mit dem Compi geht das aber besser als iterative Lösung zu knacken, da die Anzahl der Raten bestimmt überschaubar bleibt.

    Auf "gleich Null" wirst Du auch selten kommen, sondern nur auf näherungsweise Null, da Geld i.d.R. quantisiert ist. 1 Cent ist eben die kleinste Differenz wischen wezi Raten.

    Harzliche Grüße vom Berg
    http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau

  2. Glück auf BRo!

    Das Programm soll die Tilgung (in Prozent) ausrechnen wenn die Restschuld = 0 ist,

    Die Tilgung ist bei einer Restschuld von 0 auch 0.

    Wenn ich ein bestimmtes Kapital / Schuld habe, das bei einem bestimmten Zinssatz eine bestimmte Zeit (T) anliegt, wie groß muss dann die Tilgung sein wenn am Ende der Zeit (T) die Restschuld = 0 ist.

    Soll die Rate (Zins- plus Tilgungszahlung) immer gleich hoch sein? D. h., die Zinsen werden über die Laufzeit immer weniger und die Tilgung steigt um den gleichen Betrag. In diesem Fall google mal nach Annuitätentilgung (Wikipedia sagt auch was dazu).

    Oder soll die Rate mit abnehmenden Zinsen sinken? Oder darf es noch eine andere Darlehensform sein?

    Wenn du nur Hilfe zum programmieren und nicht zur eigentlichen Berechnung benötigst, kann ich dir leider nicht weiterhelfen.

    MfG BRo

    Freundliche Grüße

    zwerg Alex

    1. Kannst du mir mal die Annuitätengleichungen erklären??

      Also von Wikipedia die..

      Wäre nett Danke

      MfG BRo

      1. Glück auf!

        Kannst du mir mal die Annuitätengleichungen erklären??

        Also von Wikipedia die..

        Hhmmh, garnicht so einfach. Die Theorie ist ja bei Wikipedia erklärt.
        Ich weiß leider nicht, wie ich hier Formeln darstellen kann, aber ich versuchs trotzdem mal an einem Beispiel zu erklären:

        Ursprungsschuld (So): 40.000 Euro
        Zinssatz (i): 6 %  => q = 1,06
        Laufzeit (n): 7 Jahre

        Setzt du nun die Werte in die Formel ein, um die Annuität (R) herauszubekommen:

        0,06 x (1 + 0,06)hoch7
        R = 40.000 x   ----------------------- = 7.165,40 Euro
                       (1 + 0,06)hoch7 - 1

        Du kannst auch einfach den Rentenbarwertfaktor aus einer Tabelle entnehmen und den Kehrwert dessen mit der Ursprungsschuld multiplizieren. Du suchst also in der verlinkten Tabelle den Wert für 6% und 7 Jahre => 5,5824.
                          1
        R = 40.000 x ---------- = 7.165,40 Euro
                       5,5824

        Im ersten Jahr würde das dann so aussehen:

        Restschuld am Jahresanfang: 40.000 Euro
        Zinsen: 40.000 x 0.06 = 2.400 Euro
        Tilgung: 7.165,40 - 2.400 Euro = 4.765,40 Euro
        Restschuld am Jahresende: 40.000 Euro - 4.765,40 Euro = 35.234,60 Euro

        Zweites Jahr:
        RS am JA: 35.234,60 Euro ...

        Am besten erstellst du dann einen Tilgungsplan, in dem du für jedes Jahr ein Zeile mit den Spalten (Restschuld am Jahresanfang, Zinsen ...). Bis auf die von Tom angesprochenen Rundungsdifferenzen kommst du dann nach Ende der Laufzeit auf die Restschuld von 0.
        Ich hoffe, dass hilft dir weiter.

        1. Hello,

          hier ein kleines Script in PHP zur Berechnung,
          wie schon gesagt, iterativ.

          <?php   ### kredit.php ###

          $kredit   =   60000.0;
          $laufzeit =   7*12;
          $zinssatz =   0.07;

          $rate     =   0.0;

          #-------------------------------------------
          function rest($kredit, $laufzeit, $zinssatz, $rate)
          {
            for ($i = 0; $i<$laufzeit; $i++)
            {
              $kredit = $kredit * (1+$zinssatz/12) - $rate;
            }

          return $kredit;
          }

          #--------------------------------------------

          function info($kredit, $laufzeit, $zinssatz, $rate, $rest)
          {
            echo "<pre>\n";

          echo "Kredit \t\t $kredit\n";
            echo "Rate   \t\t   $rate\n";
            echo "Zinssatz \t $zinssatz\n";
            echo "Laufzeit \t $laufzeit\n\n";

          echo "Rest: ".rest($kredit, $laufzeit, $zinssatz, $rate)."\n";

          echo "------------------------------------------\n";

          echo "</pre>\n";

          }

          #--------------------------------------------

          function neue_rate($kredit, $laufzeit, $zinssatz, $rate)
          {
            $rest = $kredit;
            $rate_neu = $rate;

          while (abs($rest) > 0.1)
            {
              info($kredit, $laufzeit, $zinssatz, $rate_neu, $rest);

          $rest = rest($kredit, $laufzeit, $zinssatz, $rate_neu);
              $rate_neu = $rate_neu + $rest/$laufzeit;
            }

          return $neue_rate;
          }

          #=============================================

          $rate = $kredit*(1+$zinssatz/12)/$laufzeit * 2.0;

          neue_rate($kredit, $laufzeit, $zinssatz, $rate);

          ?>

          Das kann man bestimmt noch geschickter lösen, sodass die Anzhal der Iterationsschritte geringer wird.

          Es funktioniert aber.

          Abbrechen kann man eigentlich, wenn die letzte Rate mit den üblichen Nachkommastellen nicht mehr von der vorigen abweicht. Näher kommt man in der Praxis nicht heran an die passende Rate.

          Harzliche Grüße vom Berg
          http://www.annerschbarrich.de

          Tom

          --
          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
          Nur selber lernen macht schlau

          1. Hello,

            noch eine kleine Korrektur, damit Du es gleich verwenden kannst.

            function neue_rate($kredit, $laufzeit, $zinssatz, $rate)
            {
              $rest = $kredit;
              $rate_neu = $rate;

            while (abs($rest) > 0.1)
              {

            $rate = $neue_rate;

            info($kredit, $laufzeit, $zinssatz, $rate_neu, $rest);

            $rest = rest($kredit, $laufzeit, $zinssatz, $rate_neu);
                $rate_neu = $rate_neu + $rest/$laufzeit;
              }

            return $rate;

            }

            So kommt gleich die gewünschte Rate heraus...

            Harzliche Grüße vom Berg
            http://www.annerschbarrich.de

            Tom

            --
            Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
            Nur selber lernen macht schlau

        2. Ursprungsschuld (So): 40.000 Euro
          Zinssatz (i): 6 %  => q = 1,06
          Laufzeit (n): 7 Jahre

          Du unterschlägst die Ratenfälligkeit, die allerdings wichtig für die Berechnung der Annuität ist. Dein Beispiel errechnet nur die Jahresannuität R, berücksichtigt aber die Zahlungsweise nur unzureichend. In den meisten Fällen ist eine Berechnung nach der Formel für Unterjährige Annuitätentilgung nachzuschieben.

          Siechfred

          --
          Ich bin strenggenommen auch nur interessierter Laie. (molily)
          1. Hello,

            Du unterschlägst die Ratenfälligkeit, die allerdings wichtig für die Berechnung der Annuität ist. Dein Beispiel errechnet nur die Jahresannuität R, berücksichtigt aber die Zahlungsweise nur unzureichend. In den meisten Fällen ist eine Berechnung nach der Formel für Unterjährige Annuitätentilgung nachzuschieben.

            Kredite werden heute meistens nach dem Kontokorrent-Verfahren abgewickelt.
            Da berechnet sich der Zins dann noch anders, oder?

            An den Zinsterminen werden die aufgelaufenen Zinsen der Schuldsumme zugeschlagen
            An den Ratenterminen wird die Rate fällig (und sollte dann auch gezahlt werden)
            da sonst teilweise bereits wieder zusätzliche Zinsen für Ratenverzug berechnet werden...

            Wo sind die Banker, die mal Fraktur reden können? :-)

            Harzliche Grüße vom Berg
            http://www.annerschbarrich.de

            Tom

            --
            Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
            Nur selber lernen macht schlau

            1. Kredite werden heute meistens nach dem Kontokorrent-Verfahren abgewickelt.

              Wie meinst du das?

              Da berechnet sich der Zins dann noch anders, oder?

              In der Tat, ja. Aber darum ging es hier nicht.

              Siechfred

              --
              Ich bin strenggenommen auch nur interessierter Laie. (molily)
  3. Kann mir jemand sagen,ob das mathematisch überhaupt möglich ist??

    Ich hatte da mal einen Link ausgegraben, der dir evtl weiterhilft:
    http://forum.de.selfhtml.org/archiv/2004/9/t90980/#m546431

    Siechfred

    --
    Ich bin strenggenommen auch nur interessierter Laie. (molily)