Klasa EKS_kredit

In [1]:
import platform
In [2]:
platform.platform()
Out[2]:
'Linux-4.19.2-1-MANJARO-x86_64-with-arch-Manjaro-Linux'
In [3]:
platform.python_version()
Out[3]:
'3.7.1'

Klasa EKS_kredit određuje postotnu godišnju kamatnu stopu i efektivnu kamatnu stopu te izrađuje pripadnu otplatnu tablicu za kredit s jednakim anuitetima. Klasa se instancira na sljedeći način.

EKS_kredit(K,p,n,m,datum,interval,druge_uplate,druge_isplate,isplata_kredita,TSP)

Slijedi opis parametara s kojima se klasa instancira.

  • K - visina kredita
  • p - godišnja kamatna stopa
  • n - vrijeme trajanja kredita, tj. ukupni broj plaćenih anuiteta
  • m - koliko se puta razdoblje vraćanja anuiteta javlja u godini. Na primjer, ako su anuiteti mjesečni, tada je n=12.
  • datum - datum odobrenja kredita. To je uređena trojka oblika (dan,mjesec,godina)
  • interval - interval unutar kojeg se traži postotna godišnja kamatna stopa. To je uređeni par oblika (a0,b0).
  • druge_uplate - rječnik u kojemu su navedene druge uplate vezane uz kredit. Po defaultu je prazni rječnik. Na primjer, ako imamo da je uplata u trećem razdoblju jednaka 200 i u devetom razdoblju 450, tada napišemo {3:200,9:450}.
  • druge_isplate - rječnik u kojemu su navedene druge isplate vezane uz kredit. Funkcionira na isti način kao i druge_uplate.
  • isplata_kredita - rječnik u kojemu su navedeni iznosi tranša ukoliko se kredit isplaćuje u dijelovima. Funkcionira na isti način kao i druge_uplate.
  • TSP - rječnik u kojemu su navedeni novčani tokovi vezani uz sigurnosni polog. Funkcionira na isti način kao i druge_uplate.

Za određivanje postotne godišnje stope koristi se funkcija bisect iz modula scipy. Za prikazivanje otplatne tablice unutar jupyter notebooka koristi se modul ipy_table. Stoga uz standardnu distribuciju pythona trebaju biti instalirani spomenuti dodatni moduli.

Ukoliko se klasa ne uspije instancirati i pritom javi grešku

ValueError: f(a) and f(b) must have different signs

tada je potrebno promijeniti interval (a0,b0) unutar kojeg se traži postotna godišnja stopa. U većini slučajeva interval (0,20) bude dobar ako je postotna godišnja stopa manja od 20%. U iznimnim slučajevima treba promijeniti granice ovisno o tome koliku postotnu godišnju stopu možemo očekivati.

Učitavanje modula

Datoteka EKS_kredit.py mora biti u radnom direktoriju ili nekom "globalnom" direktoriju.

In [4]:
from EKS_kredit import *

Opcija koja jupyter notebooku govori da sve izlaze s manje od 200 linija prikazuje direktno u prozoru preglednika. Na taj način veće otplatne tablice neće prikazivati u posebnom manjem umetnutom prozoru.

In [5]:
%%javascript
IPython.OutputArea.auto_scroll_threshold = 200;

Primjer 1

In [6]:
kredit1=EKS_kredit(55000,7.45,48,12,(1,1,2016),(0,20),{},{},{},{})

anuitet

In [7]:
kredit1.anuitet
Out[7]:
1328.56

postotna godišnja stopa

In [8]:
kredit1.PGS
Out[8]:
7.707844857524151

efektivna kamatna stopa

In [9]:
kredit1.EKS
Out[9]:
7.707844857524151

otplatna tablica

In [10]:
kredit1.otplatna_tablica()
Out[10]:
kdatumanuitetkamateotplatna  kvotaostatak  dugadruge  uplatedruge  isplateisplata  kreditaNNTDNNTDIKTSPDTSP
01/1/2016550000.000.0055000-55000.00-55000.00550000.000.00
11/2/20161328.56341.46987.1054012.900.000.000.001328.561320.210.000.000.00
21/3/20161328.56335.33993.2353019.670.000.000.001328.561312.440.000.000.00
31/4/20161328.56329.16999.4052020.270.000.000.001328.561304.190.000.000.00
41/5/20161328.56322.961005.6051014.670.000.000.001328.561296.260.000.000.00
51/6/20161328.56316.721011.8450002.830.000.000.001328.561288.110.000.000.00
61/7/20161328.56310.431018.1348984.700.000.000.001328.561280.270.000.000.00
71/8/20161328.56304.111024.4547960.260.000.000.001328.561272.220.000.000.00
81/9/20161328.56297.751030.8146929.450.000.000.001328.561264.220.000.000.00
91/10/20161328.56291.351037.2145892.240.000.000.001328.561256.530.000.000.00
101/11/20161328.56284.911043.6544848.600.000.000.001328.561248.630.000.000.00
111/12/20161328.56278.441050.1243798.470.000.000.001328.561241.040.000.000.00
121/1/20171328.56271.921056.6442741.830.000.000.001328.561233.230.000.000.00
131/2/20171328.56265.361063.2041678.620.000.000.001328.561225.480.000.000.00
141/3/20171328.56258.751069.8140608.820.000.000.001328.561218.520.000.000.00
151/4/20171328.56252.111076.4539532.370.000.000.001328.561210.860.000.000.00
161/5/20171328.56245.431083.1338449.240.000.000.001328.561203.490.000.000.00
171/6/20171328.56238.711089.8537359.390.000.000.001328.561195.930.000.000.00
181/7/20171328.56231.941096.6236262.770.000.000.001328.561188.650.000.000.00
191/8/20171328.56225.131103.4335159.340.000.000.001328.561181.180.000.000.00
201/9/20171328.56218.281110.2834049.060.000.000.001328.561173.750.000.000.00
211/10/20171328.56211.391117.1732931.890.000.000.001328.561166.610.000.000.00
221/11/20171328.56204.451124.1131807.780.000.000.001328.561159.280.000.000.00
231/12/20171328.56197.471131.0930676.690.000.000.001328.561152.220.000.000.00
241/1/20181328.56190.451138.1129538.580.000.000.001328.561144.980.000.000.00
251/2/20181328.56183.391145.1728393.410.000.000.001328.561137.780.000.000.00
261/3/20181328.56176.281152.2827241.120.000.000.001328.561131.320.000.000.00
271/4/20181328.56169.121159.4426081.690.000.000.001328.561124.210.000.000.00
281/5/20181328.56161.921166.6424915.050.000.000.001328.561117.370.000.000.00
291/6/20181328.56154.681173.8823741.170.000.000.001328.561110.340.000.000.00
301/7/20181328.56147.391181.1722560.000.000.000.001328.561103.590.000.000.00
311/8/20181328.56140.061188.5021371.500.000.000.001328.561096.650.000.000.00
321/9/20181328.56132.681195.8820175.620.000.000.001328.561089.760.000.000.00
331/10/20181328.56125.261203.3018972.320.000.000.001328.561083.130.000.000.00
341/11/20181328.56117.791210.7717761.550.000.000.001328.561076.320.000.000.00
351/12/20181328.56110.271218.2916543.260.000.000.001328.561069.770.000.000.00
361/1/20191328.56102.711225.8515317.400.000.000.001328.561063.040.000.000.00
371/2/20191328.5695.101233.4614083.940.000.000.001328.561056.360.000.000.00
381/3/20191328.5687.441241.1212842.820.000.000.001328.561050.360.000.000.00
391/4/20191328.5679.731248.8311593.990.000.000.001328.561043.760.000.000.00
401/5/20191328.5671.981256.5810337.410.000.000.001328.561037.410.000.000.00
411/6/20191328.5664.181264.389073.030.000.000.001328.561030.880.000.000.00
421/7/20191328.5656.331272.237800.800.000.000.001328.561024.610.000.000.00
431/8/20191328.5648.431280.136520.670.000.000.001328.561018.170.000.000.00
441/9/20191328.5640.481288.085232.590.000.000.001328.561011.770.000.000.00
451/10/20191328.5632.491296.073936.510.000.000.001328.561005.610.000.000.00
461/11/20191328.5624.441304.122632.390.000.000.001328.56999.290.000.000.00
471/12/20191328.5616.341312.221320.180.000.000.001328.56993.210.000.000.00
481/1/20201328.378.201320.180.000.000.000.001328.37986.830.000.000.00

Primjer 2

In [11]:
kredit2=EKS_kredit(300000,10.75,72,12,(31,1,2008),(0,20),{0:23893.75},{},{},{0:30000})

anuitet

In [12]:
kredit2.anuitet
Out[12]:
5671.89

postotna godišnja stopa

In [13]:
kredit2.PGS
Out[13]:
14.802350443420664

efektivna kamatna stopa

In [14]:
kredit2.EKS
Out[14]:
16.447056048245184

otplatna tablica

In [15]:
kredit2.otplatna_tablica()
Out[15]:
kdatumanuitetkamateotplatna  kvotaostatak  dugadruge  uplatedruge  isplateisplata  kreditaNNTDNNTDIKTSPDTSP
031/1/200830000023893.750.00300000-276106.25-276106.253000003000030000
129/2/20085671.892687.502984.39297015.610.000.000.005671.895610.020.000.000.00
231/3/20085671.892660.763011.13294004.480.000.000.005671.895544.630.000.000.00
330/4/20085671.892633.793038.10290966.390.000.000.005671.895482.080.000.000.00
431/5/20085671.892606.573065.32287901.070.000.000.005671.895418.180.000.000.00
530/6/20085671.892579.113092.78284808.290.000.000.005671.895357.060.000.000.00
631/7/20085671.892551.413120.48281687.810.000.000.005671.895294.620.000.000.00
731/8/20085671.892523.453148.44278539.370.000.000.005671.895232.900.000.000.00
830/9/20085671.892495.253176.64275362.730.000.000.005671.895173.870.000.000.00
931/10/20085671.892466.793205.10272157.630.000.000.005671.895113.560.000.000.00
1030/11/20085671.892438.083233.81268923.820.000.000.005671.895055.870.000.000.00
1131/12/20085671.892409.113262.78265661.040.000.000.005671.894996.940.000.000.00
1231/1/20095671.892379.883292.01262369.030.000.000.005671.894938.700.000.000.00
1328/2/20095671.892350.393321.50259047.530.000.000.005671.894886.680.000.000.00
1431/3/20095671.892320.633351.26255696.270.000.000.005671.894829.720.000.000.00
1530/4/20095671.892290.613381.28252315.000.000.000.005671.894775.230.000.000.00
1631/5/20095671.892260.323411.57248903.430.000.000.005671.894719.580.000.000.00
1730/6/20095671.892229.763442.13245461.300.000.000.005671.894666.330.000.000.00
1831/7/20095671.892198.923472.97241988.330.000.000.005671.894611.940.000.000.00
1931/8/20095671.892167.813504.08238484.260.000.000.005671.894558.190.000.000.00
2030/9/20095671.892136.423535.47234948.790.000.000.005671.894506.760.000.000.00
2131/10/20095671.892104.753567.14231381.650.000.000.005671.894454.230.000.000.00
2230/11/20095671.892072.793599.10227782.550.000.000.005671.894403.980.000.000.00
2331/12/20095671.892040.553631.34224151.210.000.000.005671.894352.650.000.000.00
2431/1/20105671.892008.023663.87220487.340.000.000.005671.894301.920.000.000.00
2528/2/20105671.891975.203696.69216790.650.000.000.005671.894256.600.000.000.00
2631/3/20105671.891942.083729.81213060.850.000.000.005671.894206.990.000.000.00
2730/4/20105671.891908.673763.22209297.630.000.000.005671.894159.530.000.000.00
2831/5/20105671.891874.963796.93205500.690.000.000.005671.894111.040.000.000.00
2930/6/20105671.891840.943830.95201669.750.000.000.005671.894064.660.000.000.00
3031/7/20105671.891806.623865.27197804.480.000.000.005671.894017.290.000.000.00
3131/8/20105671.891772.003899.89193904.590.000.000.005671.893970.460.000.000.00
3230/9/20105671.891737.063934.83189969.760.000.000.005671.893925.670.000.000.00
3331/10/20105671.891701.813970.08185999.680.000.000.005671.893879.910.000.000.00
3430/11/20105671.891666.254005.64181994.040.000.000.005671.893836.140.000.000.00
3531/12/20105671.891630.364041.53177952.520.000.000.005671.893791.430.000.000.00
3631/1/20115671.891594.164077.73173874.780.000.000.005671.893747.240.000.000.00
3728/2/20115671.891557.634114.26169760.520.000.000.005671.893707.770.000.000.00
3831/3/20115671.891520.774151.12165609.400.000.000.005671.893664.550.000.000.00
3930/4/20115671.891483.584188.31161421.100.000.000.005671.893623.210.000.000.00
4031/5/20115671.891446.064225.83157195.270.000.000.005671.893580.980.000.000.00
4130/6/20115671.891408.214263.68152931.590.000.000.005671.893540.580.000.000.00
4231/7/20115671.891370.014301.88148629.710.000.000.005671.893499.310.000.000.00
4331/8/20115671.891331.474340.42144289.300.000.000.005671.893458.520.000.000.00
4430/9/20115671.891292.594379.30139910.000.000.000.005671.893419.500.000.000.00
4531/10/20115671.891253.364418.53135491.470.000.000.005671.893379.650.000.000.00
4630/11/20115671.891213.784458.11131033.360.000.000.005671.893341.520.000.000.00
4731/12/20115671.891173.844498.05126535.310.000.000.005671.893302.570.000.000.00
4831/1/20125671.891133.554538.34121996.960.000.000.005671.893264.080.000.000.00
4929/2/20125671.891092.894579.00117417.960.000.000.005671.893228.470.000.000.00
5031/3/20125671.891051.874620.02112797.940.000.000.005671.893190.840.000.000.00
5130/4/20125671.891010.484661.41108136.530.000.000.005671.893154.850.000.000.00
5231/5/20125671.89968.724703.17103433.360.000.000.005671.893118.070.000.000.00
5330/6/20125671.89926.594745.3098688.070.000.000.005671.893082.900.000.000.00
5431/7/20125671.89884.084787.8193900.260.000.000.005671.893046.960.000.000.00
5531/8/20125671.89841.194830.7089069.560.000.000.005671.893011.450.000.000.00
5630/9/20125671.89797.914873.9884195.580.000.000.005671.892977.470.000.000.00
5731/10/20125671.89754.254917.6479277.940.000.000.005671.892942.770.000.000.00
5830/11/20125671.89710.204961.6974316.250.000.000.005671.892909.570.000.000.00
5931/12/20125671.89665.755006.1469310.110.000.000.005671.892875.660.000.000.00
6031/1/20135671.89620.905050.9964259.120.000.000.005671.892842.140.000.000.00
6128/2/20135671.89575.655096.2459162.890.000.000.005671.892812.200.000.000.00
6231/3/20135671.89530.005141.8954021.000.000.000.005671.892779.420.000.000.00
6330/4/20135671.89483.945187.9548833.050.000.000.005671.892748.070.000.000.00
6431/5/20135671.89437.465234.4343598.620.000.000.005671.892716.040.000.000.00
6530/6/20135671.89390.575281.3238317.300.000.000.005671.892685.390.000.000.00
6631/7/20135671.89343.265328.6332988.670.000.000.005671.892654.090.000.000.00
6731/8/20135671.89295.525376.3727612.300.000.000.005671.892623.160.000.000.00
6830/9/20135671.89247.365424.5322187.770.000.000.005671.892593.570.000.000.00
6931/10/20135671.89198.775473.1216714.650.000.000.005671.892563.340.000.000.00
7030/11/20135671.89149.745522.1511192.490.000.000.005671.892534.420.000.000.00
7131/12/20135671.89100.275571.625620.870.000.000.005671.892504.880.000.000.00
7231/1/20145671.2250.355620.870.000.000.000.005671.222475.390.000.000.00
In [ ]: