1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429
|
\name{NEWS}
\title{News for Package \pkg{RQuantLib}}
\newcommand{\ghpr}{\href{https://github.com/eddelbuettel/rquantlib/pull/#1}{##1}}
\newcommand{\ghit}{\href{https://github.com/eddelbuettel/rquantlib/issues/#1}{##1}}
\newcommand{\ghrp}{\href{https://github.com/#1}{##1}}
\section{Changes in \pkg{RQuantLib} version 0.4.26 (2025-04-24)}{
\itemize{
\item Use system QuantLib (if found by pkg-config) on Windows too (Tomas
Kalibera in \ghpr{192})
\item Accommodate same test changes for schedules in QuantLib 1.38
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.25 (2025-03-24)}{
\itemize{
\item Support macOS 14 with a new compiler flag (Jeroen in \ghpr{190})
\item Correct two bashisms in \code{configure.ac}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.24 (2024-07-31)}{
\itemize{
\item Updated detection of QuantLib libraries in configure
\item The minimum version has been increased to QuantLib 1.25, and
DESCRIPTION has been updated to state it too
\item The dividend case for vanilla options still accommodates deprecated
older QuantLib versions if needed (up to QuantLib 1.25)
\item The configure script now uses \code{PKG_CXXFLAGS} and
\code{PKG_LIBS} internally, and shows the values it sets
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.23 (2024-07-23)}{
\itemize{
\item Adjustments for QuantLib 1.35 and removal of deprecated code
(in utility functions and dividend case of vanilla options)
\item Adjustments for new changes in QuantLib 1.35
\item Refactoring most C++ files making more use of both \code{auto} and
\code{make_shared} to simplify and shorten expressions
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.22 (2024-04-25)}{
\itemize{
\item Small code cleanup removing duplicate R code
\item Small improvements to C++ compilation flags
\item Robustify internal version comparison to accommodate RC releases
\item Adjustments to two C++ files for QuantLib 1.34
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.21 (2024-02-01)}{
\itemize{
\item Generalize macOS build to universal build (Jeroen in \ghpr{179})
\item Generalize Windows build to arm64 (Jeroen in \ghpr{181})
\item Generalize version string use to support \code{cmake} use (Jeroen
in \ghpr{181} fixing \ghit{180})
\item Minor update to \code{ci.yaml} github action (Dirk)
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.20 (2023-11-26)}{
\itemize{
\item Correct three help pages with stray curly braces
\item Correct two printf format strings
\item Comment-out explicit selection of C++14
\item Wrap one example inside \code{if (interactive())} to not exceed
total running time limit at CRAN checks
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.19 (2023-08-07)}{
\itemize{
\item Three calendaring / schedule tests were adjusted for slightly
changed values under QuantLib 1.31
\item Several checks in the \code{configure} script have been updated to
reflect current versions of packages.
\item Five examples no longer run because, even while extremely short,
use of (too many default) threads was seen.
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.18 (2023-05-01)}{
\itemize{
\item Use of several \code{rgl} functions was updated to a new naming
scheme in the package (kindly contributed by Duncan Murdoch in \ghpr{174})
\item A default argument is now given for option surface plots
\item Changed call from SwaptionVolCube1 to SabrSwaptionVolatilityCube
(conditional on using QuantLib 1.30 or later)
\item Some other deprecation warnings were tweaked as in QL test file
\item Builds for macOS and Windows were updated with more library build
(changes kindly contributed by Jeron Ooms in \ghpr{176} and \ghpr{175})
\item Some remaining \code{throw} calls were replace by \code{Rcpp::stop}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.17 (2022-10-25)}{
\itemize{
\item Switch compilation to C++14 which is required by QuantLib 1.28
and, while standard with R 4.2.*, may be needed for R 4.1.*
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.16 (2022-05-05)}{
\itemize{
\item Documentationn for daycounters was updated and extended (Kai Lin)
\item Deprecated daycounters were approtiately updated (Kai Lin)
\item One example parameterization was changed to avoid error (Dirk)
\item The Docker files were updated
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.15 (2022-01-19)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Calendar support has been updated and completed to current
QuantLib standards (Dirk in \ghpr{161})
\item More daycounters have been added (Kai Lin in \ghpr{163}
fixing \ghit{162}, \ghit{164})
\item The bonds pricers were update to changes in QuantLib 1.25 (Dirk)
}
\item Changes in \pkg{RQuantLib} package and setup:
\itemize{
\item Some package metadata was removed from the README.md (Dirk)
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.14 (2021-10-06)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Several new calendars were added (Dirk in \ghpr{159} closing
\ghit{155})
}
\item Changes in \pkg{RQuantLib} package and setup:
\itemize{
\item Docker containers are now updated on a monthly schedule via
GitHub Actions
\item The \code{configure} files were updated to the standard of
version 2.69 following a CRAN request
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.13 (2021-09-02)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Small updates to \code{DESCRIPTION} and \code{README.md}
\item Switch CI use to \href{https://eddelbuettel.github.io/r-ci/}{r-ci}
\item An eleven-year old typo was correct in a manual page (Dirk in
\ghpr{156} fixing \ghit{155} with thanks to @klin133)
\item Daycount convention calls deprecated in QuantLib 1.23 were
updated (Dirk in \ghpr{157})
\item Updated remaining http:// URLs in documentation to https://
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.12 (2020-04-01)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Calls deprecated-in-QuantLib 1.18 were updated (Dirk in
\ghpr{146}).
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.11 (2020-01-15)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item The 'Null' calendar without weekends or holidays is now
recognized.
\item The package now uses \pkg{tinytest} for unit tests (Dirk in
\ghpr{140}).
\item Calls deprecated-in-QuantLib 1.17 were updated (Dirk in
\ghpr{144}).
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.10 (2019-08-07)}{
\itemize{
\item Changes in \pkg{RQuantLib} build system:
\itemize{
\item The \code{src/Makevars.win} and \code{tools/winlibs.R} file
get QuantLib 1.16 for either toolchain (Jeroes in \ghpr{136}).
\item The custom Docker container now downloads QuantLib from
Debian unstable to get release 1.16 (from yesterday, no less)
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.9 (2019-05-15)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Completed switch to \code{QuantLib::ext} namespace wrappers
for either \code{shared_ptr} use started in 0.4.8.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.8 (2019-03-17)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Source code supports Boost \code{shared_ptr} and C+11
\code{shared_ptr} via \code{QuantLib::ext} namespace like upstream.
}
\item Changes in \pkg{RQuantLib} build system:
\itemize{
\item The \code{configure.ac} file no longer upsets \code{R CMD
check}; the change does not actually change \code{configure}.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.7 (2018-12-10)}{
\itemize{
\item Changes in \pkg{RQuantLib} tests:
\itemize{
\item Thanks to the updated \ghrp{rwinlib/quantlib} Windows
library provided by Josh, all tests that previously exhibited
issues have been re-enabled (Dirk in \ghpr{126}).
}
\item Changes in \pkg{RQuantLib} documentation:
\itemize{
\item The \code{CallableBonds} example now sets an evaluation date
(\ghit{124}).
\item Thanks to the updated \ghrp{rwinlib/quantlib} Windows
library provided by Josh, examples that were set to \code{dontrun}
are re-activated (Dirk in \ghpr{126}). \code{AffineSwaption}
remains the sole holdout.
}
\item Changes in \pkg{RQuantLib} build system:
\itemize{
\item The \code{src/Makevars.win} file was updated to reflect the
new layout used by the upstream build.
\item The \code{-DBOOST_NO_AUTO_PTR} compilation flag is now set.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.6 (2018-11-25)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item The code was updated for release 1.14 of QuantLib.
\item The code was updated for Boost 1.67 or later (\ghpr{120}
fixing \ghit{119}, Debian bug report #911957) to support
\item Fewer examples and tests are running on Windows.
\item Corrected bond function documentation to use
\code{dayCounter} instead of \code{accruedDayCounter}.
\item Two new functions \code{addHolidays} and
\code{removeHolidays} enable custom local holiday management
(\ghit{115}).
\item Corrected bond function documentation to use
\code{dayCounter} instead of \code{accruedDayCounter}.
\item Travis CI now uses a custom Docker container, also added a
deployment container building on the testing container.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.5 (2018-08-10)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item The old \code{rquantlib.h} header is deprecated and moved to
a subdirectory. (Some OS confuse it with \code{RQuantLib.h} which
Rcpp Attributes like to be the same name as the package.)
(Dirk in \ghpr{100} addressing \ghit{99}).
\item The files in \code{src/} now include
\code{rquantlib_internal.h} directly.
\item Several \sQuote{unused variable} warnings have been taken
care of.
\item The Windows build has been updated, and now uses an external
QuantLib library from 'rwinlib' (Jeroen Ooms in \ghpr{105}).
\item Three curve-building example are no longer running by
default as win32 has seen some numerical issues.
\item Two \code{Rcpp::compileAttributes} generated files have been
updated.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.4 (2017-11-07)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Equity options can now be analyzed via discrete dividends
through two vectors of dividend dates and values (Francois
Cocquemas in \ghpr{73} fixing \ghit{72})
\item Some package and dependency information was updated in files
\code{DESCRIPTION} and \code{NAMESPACE}.
\item The new \code{Date(time)Vector} classes introduced with Rcpp
0.12.8 are now used when available.
\item Minor corrections were applied to \code{BKTree}, to vanilla
options for the case of intraday time stamps, to the
\code{SabrSwaption} documentation, and to bond utilities for the
most recent QuantLib release.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.3 (2016-08-19)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Discount curve creation has been made more general by
allowing additional arguments for day counter and fixed and
floating frequency (contributed by Terry Leitch in \ghpr{31},
plus some work by Dirk in \ghpr{32}).
\item Swap leg parameters are now in combined variable and allow
textual description (Terry Leitch in \ghpr{34} and \ghpr{35})
\item BermudanSwaption has been modfied to take option expiration
and swap tenors in order to enable more general swaption structure
pricing; a more general search for the swaptions was developed to
accomodate this. Also, a DiscountCurve is allowed as an
alternative to market quotes to reduce computation time for a
portfolio on a given valuation date (Terry Leitch in \ghpr{42}
closing issue \ghpr{41}).
\item A new AffineSwaption model was added with similar interface
to BermudanSwaption but allowing for valuation of a European
exercise swaption utlizing the same affine methods available in
BermudanSwaption. AffineSwaption will also value a Bermudan
swaption, but does not take rate market quotes to build a term
structure and a DiscountCurve object is required (Terry Leitch in
\ghpr{43}).
\item Swap tenors can now be defined up to 100 years (Terry Leitch
in \ghpr{48} fising issue \ghit{46}).
\item Additional (shorter term) swap tenors are now defined
(Guillaume Horel in \ghpr{49}, \ghpr{54}, \ghpr{55}).
\item New SABR swaption pricer (Terry Leitch in \ghpr{60} and
\ghpr{64}, small follow-up by Dirk in \ghpr{65}).
\item Use of Travis CI has been updated and switch to maintained
fork of deprecated mainline.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.2 (2015-12-30)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item Intra-day times are now available if QuantLib 1.7 or later is
used, and has been configured with \code{--enable-intraday}
\item New helper functions \code{getQuantLibVersion()} and
\code{getQuantLibCapabilties()}
\item New package startup code detects and warns about outdated
QuantLib versions, or missing intra-day capability, unless not
interactive.
\item The missing \code{Monthly} parameter has been added to
\code{matchFrequency} (fixing issue ticket \ghit{19})
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.1 (2015-09-11)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item A simple \CRANpkg{shiny} application is now included in the
directory \code{shiny/DiscountCurve/} and accessible via the new
demo function \code{ShinyDiscountCurve}.
\item The option surface plotting example in \code{arrays.R} now
checks for \CRANpkg{rgl} by using \code{requireNamespace}.
\item The files \code{NAMESPACE} and \code{DESCRIPTION} have been
updated to reflect all the suggestions of \code{R CMD check}.
\item The Travis CI tests now use binary Debian packages for all
package dependencies making the tests a little faster.
}
}
}
\section{Changes in \pkg{RQuantLib} version 0.4.0 (2014-12-01)}{
\itemize{
\item Changes in \pkg{RQuantLib} code:
\itemize{
\item All function interfaces have been rewritten using \CRANpkg{Rcpp}
Attributes. No \code{SEXP} remain in the function signatures. This
make the code shorter, more readable and more easily extensible.
\item The header files have been reorganized so that plugin use is
possible. An \code{impl.h} files is imported once for each compilation
unit: for RQuantLib from the file \code{src/dates.cpp} directory, from
a sourced file via a \code{#define} set by the plugin wrapper.
\item \code{as<>()} and \code{wrap()} converters have added for
QuantLib Date types.
\item Plugin support has been added, allowing more ad-hoc use via Rcpp
Attributes.
\item Several Fixed Income functions have been added, and/or
rewritten to better match the QuantLib signatures; this was done
mostly by Michele Salvadore.
\item Several Date and Calendar functions have been added.
\item Calendar support has been greatly expanded thanks to Danilo
Dias da Silva.
\item Exported curve objects are now more parsimonious and advance
entries in the \code{table} object roughly one business month at a
time.
\item The \code{DiscountCurve} and \code{Bond} curve construction
has been fixed via a corrected evaluation date and omitted the
two-year swap rate, as suggested by Luigi Ballabio.
\item The \code{NAMESPACE} file has a tighter rule for export of
\code{*.default} functions, as suggested by Bill Dunlap
\item Builds now use OpenMP where available.
\item The package now depends on QuantLib 1.4.0 or later.
}
\item Changes in \pkg{RQuantLib} tests:
\itemize{
\item New unit tests for dates have been added.
\item C++ code for the unit tests has also been converted to
\CRANpkg{Rcpp} Attributes use; a helper function
\code{unitTestSetup()} has been added.
\item Continuous Integration via Travis is now enabled from the
GitHub repo.
}
\item Changes in \pkg{RQuantLib} documentation:
\itemize{
\item This NEWS file has been added. Better late than never, as
they say.
}
}
}
|