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
Optional. Объект, указывающий значение, которое вы оцениваете, будет возвращено 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 попыток, он завершается ошибкой.