Copy > #odobreni iznos
> p <- 10000
> #kamatna stopa - godisnja
> ir.y <- 0.0599
> #kamatna stopa - mjesecna
> ir.m <- ir.y / 12
> #rocnost (broj mjeseci)
> m <- 5 * 12
> #trosak obrade kredita
> lc <- 150
> #mjesecni anuitet
> a <- p * ir.m /( 1 - (1 + ir.m) ^ (-m) )
> a
[1] 193.2815
> #provjera izracuna mjesecnog anuiteta
> sum(rep(a, m) / cumprod(1 + rep(ir.m, m)))
[1] 10000
stats FinancialMath FinCal tvm
Copy > #definisati optimizacionu funkciju
> opt.foo <- function(principal, anuity, maturity, ir, cost) {
+ cf <- rep(anuity, maturity)
+ df <- cumprod(1 + rep(ir, maturity))
+ opt.array <- sum(cf / df) - (principal - cost)
+ return(opt.array)
+ }
> #izracunati efektivnu kamatnu stopu
> eir <- uniroot(f = opt.foo,
+ principal = p,
+ anuity = a,
+ maturity = m,
+ cost = lc,
+ interval = c(0, 1))$root
> #mjesecna efektivna kamatna stopa
> eir
[1] 0.005515214
> #godisnja efektivna kamatna stopa
> eir * 12
[1] 0.06618257
> #provjera izracuna mjesecne efektivne kamatne stope
> sum(rep(a, m) / cumprod(1 + rep(eir, m)))
[1] 9850.453
Copy > #narednu komandu izvrsiti ukoliko FinancialMath paket vec nije instaliran
> #install.packages("FinancialMath")
> library(FinancialMath)
> #izracun efektivne kamatne stope
> eir <- min(IRR(cf0 = p - lc, cf = rep(a, m), times = 1:m))
> #mjesecna efektivna kamatna stopa
> eir
[1] 0.005516816
> #godisnja efektivna kamatna stopa
> eir * 12
[1] 0.0662018
> #provjera izracuna mjesecne efektivne kamatne stope
> sum(rep(a, m) / cumprod(1 + rep(eir, m)))
[1] 9850
Copy > #narednu komandu izvrsiti ukoliko FinCal paket vec nije instaliran
> #install.packages("FinCal")
> library(FinCal)
> #izracun efektivne kamatne stope
> eir <- FinCal::irr(cf = c(-(p - lc), rep(a, m)))
> #mjesecna efektivna kamatna stopa
> eir
[1] 0.005513456
> #godisnja efektivna kamatna stopa
> eir * 12
[1] 0.06616147
> #provjera izracuna mjesecne efekitivne kamatne stope
> sum(rep(a, m) / cumprod(1 + rep(eir, m)))
[1] 9850.95
Copy > #narednu komandu izvrsiti ukoliko tvm paket vec nije instaliran
> #install.packages("tvm")
> library(tvm)
> #izracun efektivne kamatne stope
> eir <- tvm::irr(cf = c(-(p - lc), rep(a, m)), ts = 0:m)
> #mjesecna efektivna kamatna stopa
> eir
[1] 0.005516563
> #godisnja efektivna kamatna stopa
> eir * 12
[1] 0.06619875
> #provjera izracuna mjesecne efektivne kamatne stope
> sum(rep(a, m) / cumprod(1 + rep(eir, m)))
[1] 9850.072