gpt4 book ai didi

quantlib - 如何使用 quantlib、quantlib-swig 和 python 获取简单固定债券的息票支付日期

转载 作者:行者123 更新时间:2023-12-03 05:13:03 32 4
gpt4 key购买 nike

我正在尝试在 ubuntu 13.04 中使用 quantlib-swig (1.2) 学习 quantlib (1.3) 和 python 绑定(bind)。作为初学者,我尝试使用 30/360 欧洲日计数器确定一个非常简单的债券的付款日期,如下所示

from QuantLib import *

faceValue = 100.0
doi = Date(31, August, 2000)
dom = Date(31, August, 2008)
coupons = [0.05]

dayCounter = Thirty360(Thirty360.European)

schedule = Schedule(doi, dom, Period(Semiannual),
India(),
Unadjusted, Unadjusted,
DateGeneration.Backward, False)

以下是我的问题:

计划对象的哪种方法将为我提供付款日期?
我需要在哪里指定 dayCounter 对象以便正确计算日期?

使用 Dimitri Reiswich 的演示文稿,我尝试模仿 C++ 代码,但 Schedule.dates() 返回错误,因为没有这样的方法。

此固定利率债券的付款日期为(通过使用 oocalc 获得)

2001 年 2 月 28 日; 2001 年 8 月 31 日
2002 年 2 月 28 日; 2002年8月31日
2003 年 2 月 28 日; 2003年8月31日
2004 年 2 月 29 日; 2004年8月31日
2005 年 2 月 28 日; 2005年8月31日
2006 年 2 月 28 日; 2006年8月31日
2007 年 2 月 28 日; 2007年8月31日
2008 年 2 月 29 日; 2008 年 8 月 31 日

如何使用 python 和 quantlib 获取这个简单债券的付款日期?有人可以帮忙吗?

问候

K

最佳答案

如果您想查看刚刚生成的计划,您可以对其进行迭代:

>>> for d in schedule: print d
...
August 31st, 2000
February 28th, 2001
August 31st, 2001
February 28th, 2002
August 31st, 2002
February 28th, 2003
August 31st, 2003
February 29th, 2004
August 31st, 2004
February 28th, 2005
August 31st, 2005
February 28th, 2006
August 31st, 2006
February 28th, 2007
August 31st, 2007
February 29th, 2008
August 31st, 2008

如果你想存储它们,或者调用list(schedule)。但是,您确定这些是付款日期吗?它们是应计计算的开始日期和结束日期;但其中一些是在周六或周日,债券将在下一个工作日支付。如果您实例化债券并检索优惠券,您可以看到效果:

>>> settlement_days = 3
>>> bond = FixedRateBond(settlement_days, faceValue, schedule, coupons, dayCounter)
>>> for c in bond.cashflows():
... print c.date()
...
February 28th, 2001
August 31st, 2001
February 28th, 2002
September 2nd, 2002
February 28th, 2003
September 1st, 2003
March 1st, 2004
August 31st, 2004
February 28th, 2005
August 31st, 2005
February 28th, 2006
August 31st, 2006
February 28th, 2007
August 31st, 2007
February 29th, 2008
September 1st, 2008
September 1st, 2008

(也就是说,除非周六和周日不应该是印度日历的假期。如果您认为不应该,请向 QuantLib 提交错误报告)。

关于quantlib - 如何使用 quantlib、quantlib-swig 和 python 获取简单固定债券的息票支付日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21111986/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com