Financial.IRR(Double[], Double) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, определяющее внутреннюю ставку доходности для ряда периодических денежных потоков (платежей и поступлений).
public static double IRR (ref double[] ValueArray, double Guess = 0.1);
static member IRR : Double[] * double -> double
Public Function IRR (ByRef ValueArray As Double(), Optional Guess As Double = 0.1) As Double
Параметры
- ValueArray
- Double[]
Обязательный. Массив значений типа Double, определяющий значения денежных операций. Этот массив должен содержать по крайней мере одно отрицательное значение (платеж) и одно положительное значение (поступление).
- Guess
- Double
Необязательный элемент. Объект, задающий значение, которое будет возвращено функцией IRR
. Если этот параметр опущен, используется значение Guess
, равное 0,1 (10 процентам).
Возвращаемое значение
Внутренняя ставка доходности для ряда периодических денежных потоков (платежей и поступлений).
Исключения
Недопустимые значения аргументов массива, или Guess
<= –1.
Примеры
В этом примере функция возвращает внутреннюю норму прибыли для ряда из пяти денежных потоков, IRR
содержащихся в массиве Values()
. Первый элемент массива представляет собой отрицательный денежный поток, представляющий затраты на запуск бизнеса. Оставшиеся четыре денежных потока представляют собой положительные денежные потоки за последующие четыре года. Guess
— это предполагаемая внутренняя норма прибыли.
' Define money format.
Dim MoneyFmt As String = "###,##0.00"
' Define percentage format.
Dim PercentFmt As String = "#0.00"
Dim values(4) As Double
' Business start-up costs.
values(0) = -70000
' Positive cash flows reflecting income for four successive years.
values(1) = 22000
values(2) = 25000
values(3) = 28000
values(4) = 31000
' Use the IRR function to calculate the rate of return.
' Guess starts at 10 percent.
Dim Guess As Double = 0.1
' Calculate internal rate.
Dim CalcRetRate As Double = IRR(values, Guess) * 100
' Display internal return rate.
MsgBox("The internal rate of return for these cash flows is " &
Format(CalcRetRate, CStr(PercentFmt)) & " percent.")
Комментарии
Внутренняя ставка прибыли — это процентная ставка, полученная для инвестиций, состоящая из платежей и поступлений, которые происходят через регулярные интервалы.
Функция IRR
использует порядок значений в массиве для интерпретации порядка платежей и поступлений. Не забудьте ввести значения платежа и квитанции в правильной последовательности. Денежный поток за каждый период не требуется фиксировать, так как это касается аннуитета.
IRR
вычисляется с помощью итерации. Начиная со значения Guess
, IRR
циклически выполняет вычисление, пока результат не будет точным до 0,00001 процента. Если IRR
после 20 попыток не удается найти результат, произойдет сбой.