Closed buchen closed 11 years ago
die Diskussion über den IZF zieht sich ja schon ein wenig länger, und auch ich bin nicht ganz zufrieden mit der bisherigen Berechnung. Folgendes finde ich nicht gut:
Nun, ich habe mir mal die IZF-Berechnung im ClientIRRYield angesehen. Das Problem liegt wohl in der gemeinsamen, aber nur teilweisen Betrachtung von AccountTransactions und PortfolioTransactions. Ich hätte dazu einen Vorschlag, hole dazu aber mal ein wenig aus:
Eine IZF-Berechnung beruht ja schlicht und einfach darauf, das eine Folge von "Kapitalveränderungs/Stichtags-Pärchen" in den IRRYield-Newton-Iterator schickt. Dies kann man für eine einzelne Position oder eine beliebige Gruppe von Positionen tun, um einen einzelnen oder gemeinsamen IZF zu erhalten. Man muss immer nur sehen, das jede einzelne Zahlungsreihe in sich abgeschlossen ist. Dies ist gar kein Problem, wenn man einen vollständigen Vorgang hat, z.B. eine Aktienreihe Kauf-Dividenden-Verkauf. Oder eine Konto-Einzahlung-Zinsen-Auflösungs-Reihe. Hat man aber meistens nicht. Will zu einem Zeitpunkt nach einem Kauf starten, nimmt man bei Wertpapieren den Historienkurs oder sonst den Einstandskurs als "Kauf". Bei Konten immer den Saldo zum Stichtag als "Einlage" Will man zu einem Zeitpunkt vor dem Verkauf enden, nimmt man bei Wertpapieren den Historienkurs oder sonst den letzten bekannten Kurs, zur Not den Einstandskurs als "Verkauf". Bei Konten immer den Saldo zum Stichtag als "Entnahme" Wie gesagt, dies immer einzeln pro Wertpapier oder Konto betrachtet und anschließend alles in den großen Topf.
Nun konkret:
Damit könnte man ersten drei oben beschrieben "Probleme" lösen und hätte eine Basis für ein Gruppierungsfeature.
@gynngr, erst mal Danke für Deinen Input!
Momentan gibt es zwei Wegen wie ich Performance berechne: a) IZF (interner Zinsfuß) b) kontinuierliche Performance (ähnlich wie ein Index rechnet)
Methode a) IZF berechne ich für
Methode b) kontinuierliche Performance berechne ich für
Erst mal zu Methode a) IZF:
Zu Methode b) kontinuierliche Performance:
Zu Deinen Punkten:
bei Käufen wird nicht der Kaufpreis, sondern der Kurs am Kauftag zur Bewertung benutzt. Ist der nicht vorhanden, gibt es unsinnige Werte.
Für den IZF ist das m.E. nicht der Fall, aber für die kontinuierliche Performance. Hier sollte es aber Abhilfe bringen, wenn ich fehlende Kurse ggf. durch Kauf- und/oder Verkaufskurse zu ersetzen.
Kosten beim Kauf und Verkauf fließen nicht in den IZF ein
Das kann ich nicht nachvollziehen. In der Wertpapier-Performance sieht man ja den Kaufwert - damit wird gerechnet und das beinhaltet die Gebühren.
Bei Methode b) fließen die Gebühren auch ein, aber anders. Hier hat man am Kauftag ein Minus weil man x + 10 Euro zahlt, die Position aber nur mit x bewertet wird. (Klar, hier muss der richtige Kurs vorliegen - siehe oben)
auch mir fehlt ein Feature, um eine beliebige Gruppierung von Konten und Wertpapieren IZF-mäßig zu betrachten.
Stimmt. Bei Methode b) geht das, beim IZF nicht. Ich kann nicht versprechen, dass in naher Zukunft zu tun (ich bin gerade an den freien Klassifizierungen dran).
Die Idee mit der Nutzung der Kauf-/Verkaufskurse nehme ich auf jeden Fall auf.
@buchen: meine Behauptung
Kosten beim Kauf und Verkauf fließen nicht in den IZF ein stimmt so nicht, aber das richtige Ergebnis liefert deine Berechnung auch nicht.
Zum Nachvollziehen das Beispiel: Kauf und Verkauf eines Fonds 1.1.2012 Einlage 2100 1.1.2012 Kauf 10 Stck Kurs 100 Gebühren 50 = 1050 1.1.2013 Verkauf 10 Stck Kurs 120 Gebühren 50 = 1150
Gewinn ist 100, also Performance bezogen auf die Einlage ca. 4,7% und auf die Investition 9,5%. Bei pp ist ein Erfolg von 150 mit 7,31% / 15% ausgewiesen. Das Problem ist die inkonsistente Verwendung der Kurse zur Bewertung. Verwende einfach immer die Umsätze, Die Kurse nur zur Bewertung offener Bestände am Anfang und am Ende.
@buchen: habe mein IZF-Buchungsschema mal in ein Kalkulationsblatt verpackt. Da kann man alle Buchungsarten durchspielen und sehen, wie man sowohl Konten und Portfoliers beliebig summieren kann.
https://www.dropbox.com/s/zn1o37wonseb2qv/izf.ods
Sonderfälle, wo sich ein Summen-IZF nicht berechen lässt, kann man leicht vermeiden, wenn man einzelne IZF-Reihen mit Summe Null bei der Gesamtsummierung weglässt.(Beispiel "Fond" mit Einlage 0 oder 1050)
@gynngr: ich habe es noch nicht geschafft, die ods Datei inklusive Formeln zu öffnen (Excel zeigt mir nur Werte an), aber eine Puzzleteilchen konnte ich zusammensetzen :-)
Bei einem Berichtszeitraum von X bis Y nehme ich immer Tagesendwerte, d.h. den Wert am Ende des Tages nach den Transaktionen. Ein Kauf am Anfangsdatum (hier 1.1.) fällt also nicht mehr in den Berichtszeitraum und wird mit dem aktuellen Kurs abgegrenzt. Die "Verluste" durch die Gebühren fallen damit auch in die vorherige Berichtsperiode.
Wenn Du das Berichtsdatum auf den 31.12.2011 bis 31.12.2012 änderst, dann sollten die erwarteten Werte herauskommen.
Hier die Excel Gegenrechnung - und es kommen die selben Werte raus die Du auch errechnet hast.
Hier die Datei mit Formeln als xlsx https://www.dropbox.com/s/vqiz3qqfxns4s2g/izf.xlsx
@simpsus danke für die konvertierung, hab halt keinen bock auf Mietbasis hin und wieder Excel zu nutzen @buchen: ja ein Tag vorher ist alles gut, ich bin schon ziemlich gemein. Aber als Beispiel für die relative Einfachheit eines IZF-Modells möglichst ohne Kurse schon durchaus geeignet oder ?
Die Diskussion hat mehrere Punkte hervorgehoben:
Ein kleiner Vorschlag zu dem Punkt "Kauf/Verkaufskurse nutzen, wenn keine historischen Kurse vorliegen": warum nicht einfach automatisch bei einem Kauf/Verkauf den dort berechneten Kurs als historischen Kurs beim Wertpapier eintragen?
Ungünstig, weil im Preis auch versteckte Gebühren stecken können, z.B. 5% Ausgabeaufschlag bei Fonds. Dann sind auf einmal Sprünge im Kursverlauf.
Ungünstig, weil im Preis auch versteckte Gebühren stecken können
Das ist auch der Grund warum ich noch nicht - mal schnell - den errechneten Kurs der Kurshistorie hinzufügt habe. Ich muss noch eine Möglichkeit finden, die zu unterscheiden und auch wieder zu ersetzen sobald bessere historische Kurse zur Verfügung stehen.
Ich schliesse diesen Issue mal, weil das ursprüngliche Feature (Wertpapiere auf dem Diagramm sowohl als Benchmark wie auch als Performance zu sehen) mit 0.8.0 geliefert ist.
Beides sollte möglich sein: a) die Performance des Depots mit einem Papier zu vergleichen (z.B. DAX) b) die Performance eines Papiers des Depots auf dem Chart abzutragen
Aus dem Wertpapier Forum: