|
From: CK T. <tun...@ya...> - 2016-07-22 10:31:00
|
What you need is to create several of the DayCounter subclasses for different implementations that you need such as Actual365CNAnnual Actual365CNQuarterly Actual365CNMonthly .... And then provide public function to create the above instances DayCounter& DayCounter::Actual365CN(const Frequency f) > 杨拓 <yan...@12...> : > > Dear Quantlib, > > I'm a Quantlib user from China. I was doing some calculation of yield about fixed coupon bond. As we all know, the day counter is the basis of yield calcutation of Bond. > > Quantlib provieds such as ACT/ACT including ISDA, ISMA and ABF, ACT365 and so on. But, I found that these international day count convention is not applicable for China. > > The China inter bank day count convention is as folows. The year fraction is t/TS, where t is the actual number of accrued interest days, and TS is the actual number of current period of interest days. > > This is different from ISDA, which considering the interest frequency. There are several examples: > > 1、the issue date is 2009/8/15,maturity date is 2011/8/15,settlement date is 2009/9/15,frequency is annual, the year fraction is 1+(2010/8/15-2009/9/15)/365=1+334/365=1.9151 > > 2、the issue date is 2009/8/15,maturity date is 2012/8/15,settlement date is 2011/9/15,frequency is annual, the year fraction is (2012/8/15-2011/9/15)/366=335/366=0.9153 > > 3、the issue date is 2011/8/15,maturity date is 2012/8/15,settlement date is 2012/1/1,frequency is Quarterly, the year fraction is 0.5+(2012/2/15-2012/1/1)/(2012/2/15-2011/11/15)=0.5+45/92*0.25=0.6223 > > > > If I want to calculate the year fraction according to China inter bank day count convention, I must use the additional arguement of interest frequency. > > As I know, the all day counter class in Quantlib is inherited from Impl class, but this class only have the vitual yearfraction function as > > virtual Time yearFraction(const Date& d1, const Date& d2, const Date& refPeriodStart, const Date& refPeriodEnd) const = 0; It only have arguement about date. > > If I want to rewrite the day counter class for China, I must change the interface of Impl, but this will cause that I will change all the day counter class in Quantlib. > > Can you give me some suggestions about how to write another day counter class for China condition and have the less change in other class. > > I will very appreciate it if you can help me. > > Thank you very much! > > > > > > -- > Best Regards! > Tuo Yang > Beijing University of Posts and Telecommuncations, BUPT > Xitucheng Road #10, Beijing > Tel:(+86) 152-0136-1443 > E-Mail:yan...@12... > ------------------------------------------------------------------------------ > What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic > patterns at an interface-level. Reveals which users, apps, and protocols are > consuming the most bandwidth. Provides multi-vendor support for NetFlow, > J-Flow, sFlow and other flows. Make informed decisions using capacity planning > reports.http://sdm.link/zohodev2dev > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users |