Financial.Rate(Double, Double, Double, Double, DueDate, Double) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí hodnotu určující úrokovou sazbu za období anuity.
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
Parametry
- NPer
- Double
Required. Celkový počet platebních období v anuitě. Například když měsíčně splácíte půjčku na auto na čtyři roky, vaše půjčka má celkem 4 * 12 (neboli 48) platebních období.
- Pmt
- Double
Required. Platba, která se má provést každé období. Splátky obvykle obsahují jistinu a úrok, který se v průběhu anuity nemění.
- PV
- Double
Required. Aktuální hodnota nebo hodnota dnes série budoucích plateb nebo příjmů. Když si například půjčíte peníze na nákup auta, částka půjčky představuje současnou hodnotu pro věřitele měsíčních plateb za auto, které budete provádět.
- FV
- Double
Optional. Budoucí hodnota nebo peněžní zůstatek, který chcete provést po dokončení konečné platby. Například budoucí hodnota půjčky je \$0, protože je její hodnota po konečné splátce. Pokud ale chcete ušetřit \50 000 dolarů za 18 let pro vzdělání vašeho dítěte, pak \$50,000 je budoucí hodnota. Pokud argument vynecháte, jako jeho hodnota se bude předpokládat 0.
- Due
- DueDate
Optional. Objekt typu DueDate , který určuje, kdy jsou platby splatné. Tento argument musí být buď DueDate.EndOfPeriod v případě, že jsou platby splatné na konci platebního období, nebo DueDate.BegOfPeriod pokud jsou platby splatné na začátku období. Pokud tento parametr vynecháte, DueDate.EndOfPeriod předpokládá se.
- Guess
- Double
Optional. Hodnota, kterou odhadnete, je vrácena Ratehodnotou . Pokud tento parametr vynecháte, Guess je 0,1 (10 procent).
Návraty
Úroková sazba za období anuity.
Výjimky
NPer
<= 0.
Příklady
Tento příklad používá Rate funkci k výpočtu úrokové sazby půjčky s ohledem na celkový počet plateb (TotPmts), výši splátky půjčky (Payment), současnou hodnotu nebo jistinu půjčky (PVal), budoucí hodnotu půjčky (FVal), číslo, které určuje, zda je platba splatná na začátku nebo na konci platebního období (PayType), aproximace očekávané úrokové sazby (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
Poznámky
Anuita představuje řadu hotovostních plateb v pevné výši prováděných za určité časové období. Anuita může být půjčka (třeba hypotéka na nemovitost) nebo investice (jako je plán měsíčních úspor).
Pokud provádíte platby jako spoření, udejte argumenty jako záporná čísla. Pokud obdržíte platby (třeba bonusy), zadejte argumenty jako kladná čísla.
Rate se vypočítá iterací. Počínaje hodnotou , GuessRate cyklicky prochází výpočet, dokud výsledek není přesný na hodnotu 0,00001 %. Pokud Rate po 20 pokusech nenajdete výsledek, nezdaří se. Pokud je váš odhad 10 procent a Rate selže, zkuste jinou hodnotu .Guess