Exemplo n.º 1
0
def fv(*args):
    rate, nper, pmt, pv = args[0], args[1], args[2], 0
    return scipy.fv(rate, nper, pmt, pv)
Exemplo n.º 2
0
# -*- coding: utf-8 -*-
"""
Created on Tue Jul 28 22:22:27 2020

@author: yomer
"""
import scipy as sp

# 미래가치 구하기 : 연금리 10%, 100달러 예금 2년 후
print(sp.fv(0.1, 2, 0, 100))

# 현재가치 구하기 : 금리1.45%, 횟수5, 미래가치 234
print(sp.pv(0.0145, 5, 0, 234))


Exemplo n.º 3
0
"""
  Name     : c10_01.py
  Book     : Python for Finance (2nd ed.)
  Publisher: Packt Publishing Ltd. 
  Author   : Yuxing Yan
  Date     : 6/6/2017
  email    : [email protected]
             [email protected]
"""

import scipy as ps

pv = 100
APR = 0.08
rate = APR / 2.0
n = 2
nper = n * 2
fv = ps.fv(rate, nper, 0, pv)
print(fv)
# 앞의 문제를 다시 보자.
""" 년이자율 예시: 원금(현재가치) 1000을 년이자율 5%인 계좌에 5년 동안 저축했다고 하자.
 이자가 1년에 한번 복리로 계산된다면 5년 후 이 저축계좌의 미래가치는 얼마
인가?
"""
import scipy as sp
import numpy as np
help(sp.fv)
help(np.fv)

pv = 1000
r = 0.05
n = 5
m = 1
FV_sp = sp.fv(
    r, n, 0, -pv
)  # fv(rate, nper, pmt, pv, when='end') #NOTE pmt 중간에 현금흐름이 있는 경우 # when 기초 기준인가 기말기준 인가
# NOTE fv는 빠져나간다는 관점으로 Pv가 마이너스이다.
print(FV_sp)
FV_np = np.fv(r, n, 0, -pv)
print(FV_np)

#%% 앞서 직접 작성한 경우와 정확히 동일한 결과!
""" 반기이자율 예시: 원금(현재가치) 1000원을 년이자율 5%인 계좌에 5년 동안 저축했다고 하자.
 이자가 6개월에 한번 복리로 계산된다면 5년 후 이 저축계좌의 미래가치는 얼
마인가?
"""
pv = 1000
r = 0.05
n = 5
m = 2
import statsmodels.api as sm
import networkx as nx
from math import exp,sqrt
%matplotlib inline


#### 선물 ####
#1 선물 기본가격계산

pv = 100
apr = 0.08
rate = apr /2 # semi annual 환산
n = 2
nper = n*2 #semi annual 환산

fv = sp.fv(rate, nper, 0, pv)
print(fv)

#2 exp와 주기 환산한 이자율 연속복리 구하기

rc = 2 * sp.log(1+0.04)
print(sp.exp(rc/2)-1)

#3 파운드와 미국 달러로 필요한 금액 구하기

amount = 5
r_foreign = 0.02
T = 3./12.
exchangeRateToday = 1.25 #환율
poundToday = 5* sp.exp(-r_foreign*T)
print("Pound needed today = ", poundToday)
Exemplo n.º 6
0
def calc_cumu_ret(ret, v0, c):
    ret_list = ret.tolist()
    for r in ret_list:
        v0 = sp.fv(r, 1, -c, -v0)
    return (v0)
Exemplo n.º 7
0
import scipy as sp

n = float(raw_input('N = '))
iy = float(raw_input('I/Y = '))
pv = float(raw_input('PV = '))
pmt = float(raw_input('PMT = '))
fv = float(raw_input('FV = '))
sol = raw_input('Solve for (n,iy,pv,pmt,fv): ')

if sol == "n":
    print("N = %f" % sp.nper(iy, pmt, pv, fv))
if sol == "iy":
    print("I/Y = %f" % sp.rate(n, pmt, pv, fv))
if sol == "pv":
    print("PV = %f" % sp.pv(iy, n, pmt, fv))
if sol == "pmt":
    print("PMT = %f" % sp.pmt(iy, n, pv, fv))
if sol == "fv":
    print("FV = %f" % sp.fv(iy, n, pmt, pv))
'''
print 'N = %f, ' % n
print 'I/Y = %f, ' % iy
print 'PV = %f, ' % pv
print 'PMT = %f, ' % pmt
print 'FV = %f, ' % fv
'''
Exemplo n.º 8
0
import scipy as sp

'''
每期利息率为:0.05
期数:1
每月等额收支:-600
初始投入:0
支付时点:begin
求:终值
'''
fv1 = sp.fv(0.05, 1, -600, 0,when='begin')
print(fv1)

'''
缴纳养老金:
无初始投入
每月初存入固定金额
30*12个月后共有本息和多少
'''
fv2 = sp.fv(0.05/12,30*12,-600,0,when='begin')
print(fv2)
Exemplo n.º 9
0
Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 21:26:53) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> import scipy as sp
>>> sp.fv(.0025,25,0,5000)
-5322.057184363162
>>> import scipy as sp
>>> sp.pv(.0541/2,20,55,0,1)
-863.7816463604273
>>> import scipy as sp
>>> sp.pmt(.0312,5,2400)
-525.8478442817194
>>>