Поделиться через


Financial.Rate(Double, Double, Double, Double, DueDate, Double) Метод

Определение

Возвращает значение, определяющее процентную ставку за период для аннуитета.

public static double Rate (double NPer, double Pmt, double PV, double FV = 0, Microsoft.VisualBasic.DueDate Due = Microsoft.VisualBasic.DueDate.EndOfPeriod, double Guess = 0.1);
static member Rate : double * double * double * double * Microsoft.VisualBasic.DueDate * double -> double
Public Function Rate (NPer As Double, Pmt As Double, PV As Double, Optional FV As Double = 0, Optional Due As DueDate = Microsoft.VisualBasic.DueDate.EndOfPeriod, Optional Guess As Double = 0.1) As Double

Параметры

NPer
Double

Обязательный. Общее количество периодов платежей аннуитета. Например, при ежемесячных выплатах ссуды за автомобиль на протяжении 4 лет общее количество периодов оплаты будет равно 4 x 12 (или 48).

Pmt
Double

Обязательный. Платеж за каждый период. Обычно платежи содержат основную сумму и проценты, которые не изменяются на протяжении периода действия аннуитета.

PV
Double

Обязательный. Значение, задающее текущую сумму (или значение на сегодняшний день) серии будущих платежей или поступлений. Например, если для покупки автомобиля взят заем, то эта сумма представляет собой текущее значение предстоящих ежемесячных платежей за автомобиль.

FV
Double

Необязательный элемент. Значение, задающее требуемую будущую сумму или баланс наличности после уплаты последнего платежа. Например, будущее значение ссуды равно $0, поcкольку такова будет ее величина после последней выплаты. Но если требуется собрать за 18 лет сумму в $50 000 на образование детей, то будущая сумма будет равна $50 000. Если этот аргумент опущен, используется значение 0.

Due
DueDate

Необязательный элемент. Объект типа DueDate, указывающий время выплат. Этот аргумент должен равняться либо DueDate.EndOfPeriod, если выплаты должны производиться в конце периода, либо DueDate.BegOfPeriod в случае оплаты в начале периода. Если аргумент не указан, принимается значение DueDate.EndOfPeriod.

Guess
Double

Необязательный элемент. Оцениваемое значение, возвращаемое функцией Rate. Если этот параметр опущен, используется значение Guess, равное 0,1 (10 процентам).

Возвращаемое значение

Процентная ставка за период для аннуитета.

Исключения

NPer<= 0.

Примеры

В этом примере функция используется Rate для вычисления процентной ставки кредита с учетом общего числа платежей (TotPmts), суммы платежа по кредиту (Payment), текущей стоимости или основной суммы кредита (PVal), будущей стоимости кредита (FVal), числа, указывающего, должен ли платеж производиться в начале или конце периода платежа (PayType). и приближение ожидаемой процентной ставки (Guess).

Sub TestRate()
    Dim PVal, Payment, TotPmts, APR As Double
    Dim PayType As DueDate

    ' Define percentage format.
    Dim Fmt As String = "##0.00"
    Dim Response As MsgBoxResult
    ' Usually 0 for a loan.
    Dim FVal As Double = 0
    ' Guess of 10 percent.
    Dim Guess As Double = 0.1
    PVal = CDbl(InputBox("How much did you borrow?"))
    Payment = CDbl(InputBox("What's your monthly payment?"))
    TotPmts = CDbl(InputBox("How many monthly payments do you have to make?"))
    Response = MsgBox("Do you make payments at the end of the month?", MsgBoxStyle.YesNo)
    If Response = MsgBoxResult.No Then
        PayType = DueDate.BegOfPeriod
    Else
        PayType = DueDate.EndOfPeriod
    End If
    APR = (Rate(TotPmts, -Payment, PVal, FVal, PayType, Guess) * 12) * 100

    MsgBox("Your interest rate is " & Format(CInt(APR), Fmt) & " percent.")
End Sub

Комментарии

Аннуитет — это ряд фиксированных денежных платежей, выполненных за определенный период времени. Аннуитетом может быть кредит (например, ипотека на жилье) или инвестиции (например, ежемесячный накопительный план).

Для всех аргументов выплата денежных средств (например, вкладов в сбережения) представлена отрицательными числами; полученные денежные средства (например, чеки дивидендов) представлены положительными числами.

Rate вычисляется путем итерации. Начиная со значения Guess, Rate циклически выполняет вычисление, пока результат не будет точным в пределах 0,00001 процента. Если Rate не удается найти результат после 20 попыток, он завершается ошибкой. Если ваше предположение равно 10 процентам и Rate не удается, попробуйте использовать другое значение для Guess.

Применяется к

См. также раздел