RangeXIRR — функция скрипта
RangeXIRR() возвращает внутреннюю ставку доходов для расписания потоков денежных средств, которые не обязательно периодические. Для вычисления внутренней ставки доходов для серии периодических потоков денежных средств необходимо использовать функцию RangeIRR.
В Qlik функционал XIRR (функции XIRR() и RangeXIRR()) использует следующее уравнение, решение которого становится значением Rate, чтобы определить правильное значение XIRR:
XNPV(Rate, pmt, date) = 0
Для решения уравнения используется упрощенная версия метода Ньютона.
Синтаксис:
RangeXIRR(values, dates[, Expression])
Возвращаемые типы данных: числовое значение
Аргументы:
- dates: Дата платежа или расписание дат платежей, соответствующие потоку денежных средств.
- values: Поток денежных средств или серия потоков, соответствующие расписанию платежей по датам. Каждое значение может быть одиночным значением или диапазоном значений, возвращаемым функцией между записями с третьим дополнительным параметром. Серия значений должна содержать по крайней мере одно положительное и отрицательное значения.
- Expression: Дополнительные выражения или поля, содержащие диапазон значений для измерения.
Ограничения:
Текстовые значения, значения NULL и отсутствующие значения игнорируются.
Все платежи учитываются на основе года с 365 днями.
Пример 1:
RangeXIRR(-2500,'2008-01-01',2750,'2008-09-01') возвращает 0.1532.
Пример 2:
Добавьте образец скрипта в свой документ и запустите. Затем добавьте на лист документа как минимум поля, указанные в столбце с результатами, чтобы увидеть результаты.
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 '|');
Результирующая таблица показывает возвращенные значения функции RangeXIRR для каждой записи в таблице:
RangeID | RangeXIRR |
---|---|
1 | - |
2 | 0.5893 |
3 | 0.5089 |
4 | 0.4476 |
5 | 0.4476 |
6 | 2.5886 |