RangeXIRR - Skriptfunktion
RangeXIRR() liefert den internen Zinsfuß (Internal Rate of Return) eines Investments für eine Reihe von Cashflows. Diese müssen weder gleich hoch sein, noch müssen sie regelmäßig erfolgen. Um den internen Zinsfuß für eine Reihe regelmäßig erfolgender Cashflows zu berechnen, verwenden Sie die Funktion RangeIRR.
Die XIRR-Funktionalität von Qlik (die Funktionen XIRR() und RangeXIRR()) verwendet die folgende Gleichung, die nach dem Wert Rate aufgelöst wird, um den korrekten XIRR-Wert zu bestimmen:
XNPV(Rate, pmt, date) = 0
Die Gleichung wird anhand einer vereinfachten Version der Newton-Methode aufgelöst.
Syntax:
RangeXIRR(values, dates[, Expression])
Rückgabe Datentyp: numerisch
Argumente:
- dates: Ein Zahlungszeitpunkt oder eine Reihe von Zahlungszeitpunkten für die Cashflow-Zahlungen.
- values: Eine Zahlung oder eine Reihe von Zahlungen, die geplanten Zahlungszeitpunkten entsprechen. Jeder Wert kann ein einzelner Wert oder eine Reihe von Werten sein, wie sie von einer Inter-Record-Funktion mit einem optionalen dritten Parameter ausgegeben wird. Die Funktion benötigt mindestens einen positiven und einen negativen Wert, um ein Ergebnis berechnen zu können.
- Expression: Optionale Formeln oder Felder, in denen die zu messenden Daten enthalten sind.
Beschränkungen:
Textwerte, NULL-Werte und fehlende Werte werden ignoriert.
Alle Beträge werden auf ein 365-Tage-Jahr hochgerechnet.
Beispiel 1:
RangeXIRR(-2500,'2008-01-01',2750,'2008-09-01') liefert 0.1532.
Beispiel 2:
Fügen Sie Ihrem Dokument das Beispielskript hinzu und führen Sie sie aus. Fügen Sie einem Arbeitsblatt in Ihrem Dokument dann mindestens diejenigen Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.
RangeTab3:
LOAD *,
recno() as RangeID,
RangeXIRR(Field1,Field2,Field3) as RangeXIRR;
LOAD * INLINE [
Field1|Field2|Field3
10|5|-6000
2|NULL|7000
8|'abc'|8000
18|11|9000
5|5|9000
9|4|2000
] (delimiter is '|');
Die resultierende Tabelle zeigt die zurückgegebenen Werte von RangeXIRR für jeden der Datensätze in der Tabelle an:
RangeID | RangeXIRR |
---|---|
1 | - |
2 | 0.5893 |
3 | 0.5089 |
4 | 0.4476 |
5 | 0.4476 |
6 | 2.5886 |