Skip to content

Commit 57846cb

Browse files
authored
Merge pull request #167 from klin333/master
change deprecated Actual365NoLeap() to Actual365Fixed(Actual365Fixed::NoLeap)
2 parents 7ef7974 + a6e96de commit 57846cb

4 files changed

Lines changed: 25 additions & 11 deletions

File tree

ChangeLog

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
2022-03-15 Kai Lin <klin441@gmail.com>
2+
3+
* src/utils.cpp (getDayCounter): change deprecated Actual365NoLeap()
4+
to Actual365Fixed(Actual365Fixed::NoLeap)
5+
* man/Enum.Rd: associated documentation change
6+
* man/BondUtilities.Rd: remove mentions of daycounter deprecation,
7+
remove mentions of compiler directives RQUANTLIB_USE_ACTUAL365NOLEAP
8+
and RQUANTLIB_USE_ACTUALACTUAL
9+
110
2021-11-30 Kai Lin <klin441@gmail.com>
211

312
* man/Enum.Rd: Update and extend documentation for DayCounter

man/BondUtilities.Rd

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,17 @@ matchParams(params)
4545
\details{
4646
The QuantLib documentation should be consulted for details.
4747

48-
Note that \code{Actual365NoLeap} is deprecated as of QuantLib 1.11 and
49-
no longer supported by default. It can be reinstated by defining
50-
\code{RQUANTLIB_USE_ACTUAL365NOLEAP}.
51-
52-
Also note that \code{ActualActual} is deprecated as of QuantLib 1.23
53-
and no longer supported by default. It can be reinstated by
54-
defining \code{RQUANTLIB_USE_ACTUALACTUAL}.
48+
Note that \code{Actual365NoLeap} is soft deprecated as of QuantLib 1.11 and hard deprecated as of
49+
QuantLib 1.16. For users on QuantLib 1.16 or later, use of the RQuantLib daycounter enum with a
50+
value of severn will result in \code{Actual365Fixed(Actual365Fixed::NoLeap)} which is functionally
51+
equivalent to \code{Actual365NoLeap}. Previously RQuantLib allowed users to retain
52+
\code{Actual365NoLeap} via defining \code{RQUANTLIB_USE_ACTUAL365NOLEAP}, but this is no longer
53+
required.
5554

55+
Also note that \code{ActualActual} without explicit convention specification is hard deprecated
56+
as of QuantLib 1.23. This is only soft-deprecated in RQuantLib by explicitly passing in the same
57+
default convention. Previously RQuantLib allowed users to define
58+
\code{RQUANTLIB_USE_ACTUALACTUAL}, but this is no longer required.
5659
}
5760
\references{\url{https://www.quantlib.org/} for details on \code{QuantLib}.}
5861
\author{Khanh Nguyen \email{knguyen@cs.umb.edu} for the \R interface;

man/Enum.Rd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Reference for parameters when constructing a bond
1515
\code{4} \tab OneDayCounter \cr
1616
\code{5} \tab SimpleDayCounter \cr
1717
\code{6} \tab Thirty360 (NB: soft deprecated, defaults to Thirty360.BondBasis) \cr
18-
\code{7} \tab Actual365NoLeap (NB: deprecated) \cr
18+
\code{7} \tab Actual365Fixed.NoLeap (NB: Actual365NoLeap if QuantLib version < 1.16) \cr
1919
\code{8} \tab ActualActual.ISMA \cr
2020
\code{9} \tab ActualActual.Bond \cr
2121
\code{10} \tab ActualActual.ISDA \cr

src/utils.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -377,9 +377,11 @@ QuantLib::DayCounter getDayCounter(const double n){
377377
return QuantLib::SimpleDayCounter();
378378
else if (n==6)
379379
return QuantLib::Thirty360(QuantLib::Thirty360::BondBasis); // reasonable default for back compatibility
380-
#ifdef RQUANTLIB_USE_ACTUAL365NOLEAP
381-
else if (n==7)
382-
return QuantLib::Actual365NoLeap();
380+
else if (n==7)
381+
#if QL_HEX_VERSION >= 0x011600f0 && !defined(RQUANTLIB_USE_ACTUAL365NOLEAP)
382+
return QuantLib::Actual365Fixed(QuantLib::Actual365Fixed::NoLeap);
383+
#else
384+
return QuantLib::Actual365NoLeap();
383385
#endif
384386
else if (n==8)
385387
return QuantLib::ActualActual(QuantLib::ActualActual::ISMA);

0 commit comments

Comments
 (0)