XIRR Funkcja skryptu | Qlik Cloud Pomoc
Przeskocz do zawartości głównej Przejdź do treści uzupełniającej

XIRR Funkcja skryptu

Funkcja XIRR() zwraca zagregowany wewnętrzny współczynnik zwrotu (roczny) dotyczący harmonogramu przepływów pieniężnych (niekoniecznie okresowych) reprezentowanych przez liczby zestawione w pary w wyrażeniach pmt i date iterowanych względem wielu rekordów określonych przez klauzulę group by. Wszystkie płatności są obejmowane upustem na podstawie roku zawierającego 365 dni.

Funkcjonalność Qlik dotycząca XIRR (funkcje XIRR() i RangeXIRR()) stosuje następujące równanie w celu uzyskania wartości Rate i ustalenia prawidłowej wartości XIRR:

XNPV(Rate, pmt, date) = 0

Równanie rozwiązuje się przy użyciu uproszczonej wersji metody Newtona.

Składnia:  

XIRR(pmt, date )

Typ zwracanych danych: liczbowy

Argumenty
Argument Opis
pmt

Płatności. Wyrażenie lub pole zawierające płatności w ramach przepływów pieniężnych odpowiadające harmonogramowi płatności podanemu argumentem date.

date Wyrażenie lub pole zawierające harmonogram dat odpowiadających płatnościom w ramach przepływów pieniężnych podanym argumentem pmt.

Podczas pracy z tą funkcją obowiązują następujące ograniczenia:

  • Wartości tekstowe, wartości NULL i wartości brakujące w dowolnej albo obydwu częściach pary danych spowodują pominięcie całej pary danych.

  • Ta funkcja wymaga co najmniej jednej ważnej płatności ujemnej i co najmniej jednej ważnej płatności dodatniej (z odpowiednimi prawidłowymi datami). Jeśli te płatności nie zostaną podane, zwracana jest wartość NULL.

W pracy z tą funkcją mogą Ci pomóc poniższe tematy:

Informacja

Aby uzyskać informacje o ostatnich aktualizacjach bazowego algorytmu używanego przez tę funkcję, zobacz artykuł pomocy technicznej Poprawka i aktualizacja funkcji XIRR.

Przykład

Interpretacja wartości zwracanej przez XIRR

Funkcjonalność XIRR jest zwykle wykorzystywana do analizy inwestycji, gdzie na początku jest płatność wychodząca (ujemna), a później seria mniejszych płatności przychodzących (dodatnich). Oto uproszczony przykład z tylko jedną płatnością ujemną i jedną płatnością dodatnią:

Cashflow:

LOAD * inline [

Date|Payments

2023-01-01|-100

2024-01-01|110

] (delimiter is '|');

 

Dokonujemy pierwszej wpłaty w wysokości 100 i dokładnie po roku otrzymujemy z powrotem 110. Oznacza to wskaźnik zwrotu w wysokości 10% rocznie. XIRR(Payments, Date) zwraca wartość 0,1.

Wartość zwracana przez funkcję XIRR może być dodatnia lub ujemna. W przypadku inwestycji wynik ujemny oznacza, że inwestycja przynosi straty. Kwotę zysku lub straty można łatwo obliczyć, agregując sumy w polu płatności.

W powyższym przykładzie pożyczamy swoje pieniądze na rok. Wskaźnik zwrotu może być traktowany jako odsetki. Z funkcjonalności XIRR można też korzystać, będąc po drugiej stronie transakcji (na przykład, jeśli jest się pożyczkobiorcą zamiast pożyczkodawcą).

Rozważmy ten przykład:

Cashflow:

LOAD * inline [

Date|Payments

2023-01-01|100

2024-01-01|-110

] (delimiter is '|');

 

Jest taki sam jak pierwszy przykład, ale odwrócony. Tutaj pożyczamy 100 na rok i spłacamy to z odsetkami 10%. W tym przykładzie obliczenie XIRR zwraca 0,1 (10%), czyli taką samą wartość jak w pierwszym przykładzie.

Zauważmy, że w pierwszym przykładzie otrzymaliśmy zysk 10, a w drugim straciliśmy 10, ale wartość zwracana przez funkcjonalność XIRR jest dodatnia w obu tych przykładach. Jest tak dlatego, że funkcja XIRR oblicza ukryte oprocentowanie, niezależnie od tego, po której stronie jesteś w transakcji.

Ograniczenia związane z wieloma rozwiązaniami

Funkcjonalność XIRR Qlik jest określona przez następujące równanie, w którym rozwiązywana jest wartość Rate:

XNPV(Rate, pmt, date) = 0

Czasami równanie to może mieć więcej niż jedno rozwiązanie. Nazywa się to „problemem wielu wskaźników zwrotu” i jest spowodowane nietypowym strumieniem przepływów pieniężnych (zwanym także niekonwencjonalnym przepływem pieniężnym). Poniższy skrypt ładowania pokazuje tego przykład:

Cashflow:

LOAD * inline [

Date|Payments

2021-01-01|-200

2022-01-01|500

2023-01-01|-250

] (delimiter is '|');

 

W tym przykładzie jest jedno rozwiązanie ujemne i jedno rozwiązanie dodatnie (Rate= –0,3 i Rate= 0,8). XIRR() zwróci 0,8.

Kiedy funkcja XIRR Qlik szuka rozwiązania, zaczyna od Rate = 0 i stopniowo zwiększa wskaźnik, aż znajdzie rozwiązanie. Jeśli istnieje więcej niż jedno dodatnie rozwiązanie, zwróci pierwsze, na które napotka. Jeśli nie uda jej się znaleźć dodatniego rozwiązania, wyzeruje z powrotem Rate i zacznie szukać rozwiązania w kierunku ujemnym.

Należy zauważyć, że „normalny” strumień przepływów pieniężnych ma tylko jedno rozwiązanie. „Normalny” strumień przepływów pieniężnych oznacza, że wszystkie płatności z tym samym znakiem (dodatnim lub ujemnym) znajdują się w ciągłej grupie.

Czy ta strona była pomocna?

Jeżeli natkniesz się na problemy z tą stroną lub jej zawartością — literówkę, brakujący krok lub błąd techniczny — daj nam znać!