用python计算债券YTM

numpy_financial提供了一个计算irr的函数,输入参数是一个数组,里面每一项是现金流,只需要构造现金流数组作为输入参数即可,irr函数的输出就是irr。

代码如下:

def iy(n, pmt = 0, fv = 0, pv = 0):
    values = []
    values.append(-pv)
    for i in range(n):
        values.append(pmt)
    values[-1] += fv
    iy = npf.irr(values)
    return round(iy, 6) * 100
print(iy(4, 3, 100, 100))

 

你可能感兴趣的:(量化交易,python,债券YTM)