RangeXIRR — функция скрипта
Последнее обновление: 26.11.2025
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 |