XIRR
XIRR() возвращает агрегированную внутреннюю ставку доходов для графика потоков денежных средств (не обязательно периодических), представленных парными числами в выражениях, выданных элементами pmt и date, повторяемыми в измерениях диаграммы. Все платежи учитываются на основе года с 365 днями.
В Qlik функционал XIRR (функции XIRR() и RangeXIRR()) использует следующее уравнение, решение которого становится значением Rate, чтобы определить правильное значение XIRR:
XNPV(Rate, pmt, date) = 0
Для решения уравнения используется упрощенная версия метода Ньютона.
Синтаксис:
XIRR([TOTAL [<fld {,fld}>]] pmt, date)
Возвращаемые типы данных: числовое значение
Аргументы:
- pmt: Платежи. Выражение или поле, содержащее потоки денежных средств, соответствующих графику платежей, представленному в элементе date.
- date: Выражение или поле, содержащее график дат, соответствующих потоку денежных средств, представленному в элементе pmt.
- TOTAL: Если слово TOTAL стоит перед аргументами функции, вычисление выполняется по всем возможным значениям, указанным в текущих выборках, а не только в тех, которые относятся к значению текущего измерения, т. е. измерения диаграммы игнорируются. После префикса TOTAL может быть указан список, включающий одно или несколько имен полей в угловых скобках <fld>. Эти имена полей должны быть поднабором переменных измерений диаграммы.
Ограничения:
Элементы pmt и date не должны содержать функции агрегирования, если только внутреннее агрегирование не содержит префикс TOTAL. Для получения более расширенных вложенных агрегирований необходимо использовать расширенную функцию Aggr вместе с заданным измерением.
Текстовые значения, значения NULL и отсутствующие значения в какой-либо или обеих частях пары значений приводят к игнорированию всей пары значений.
Примеры и результаты:
XIRR(Payments, Date): 0.5385.
Данные, используемые в примерах:
Cashflow:
LOAD 2013 as Year, * inline [
Date|Discount|Payments
2013-01-01|0.1|-10000
2013-03-01|0.1|3000
2013-10-30|0.1|4200
2014-02-01|0.2|6800
] (delimiter is '|');