||Thinking inside the box|
Mon, 18 Feb 2013
The discount curve building code in QuantLib has shown some overly large numerical instabilities. We have used the same example parameters (taken from the Swap example in QuantLib) for years; it currently fails to solve for a rate at some term further out the curve. So I made the decistion to disable this just in the examples in order to not upset the CRAN testing framework. The examples now use a flat curve instead. I also updated one function to silence some new warnings from R-devel about symbols from another packages's namespace (in this case rgl, and it is just for surface plots, a purely cosmetic function).Sun, 02 Dec 2012
Bryan Lewis had suggested to enable
another pricing engine for American Options in order to get (at least some)
Greeks. This is now supported by picking
Mon, 12 Sep 2011R> library(RQuantLib) R> example(AmericanOption) AmrcnOR> # simple call with unnamed parameters AmrcnOR> AmericanOption("call", 100, 100, 0.02, 0.03, 0.5, 0.4) Concise summary of valuation for AmericanOption value delta gamma vega theta rho divRho 11.3648 NA NA NA NA NA NA AmrcnOR> # simple call with some explicit parameters AmrcnOR> AmericanOption("put", strike=100, volatility=0.4, 100, 0.02, 0.03, 0.5) Concise summary of valuation for AmericanOption value delta gamma vega theta rho divRho 10.9174 NA NA NA NA NA NA AmrcnOR> # simple call with unnamed parameters, using Crank-Nicolons AmrcnOR> AmericanOption("put", strike=100, volatility=0.4, 100, 0.02, 0.03, 0.5, engine="CrankNicolson") Concise summary of valuation for AmericanOption value delta gamma vega theta rho divRho 10.9173 -0.4358 0.0140 NA NA NA NA R>
Thanks to Helmut Heiming who noticed a side-effec t from the
Thanks to the help by Brian Ripley (who compiled QuantLib for 64 bit Windows), Josh Ulrich (who did the same for 32 bit Windows, and arranged the Windows builds) and Uwe Ligges (who runs win-builder for R) we once again have Windows binaries as well as the usual source distribution (and Debian binaries).
The only other change was minor fix to the documentation files. We had found that the pdf reference manual build would break for Uwe and
Kurt (using A4 paper settings) but not myself (using letter). Uwe finally tracked that down: we had some arguments to
There are only two changes to two files where an explicit conversion as per Rcpp::as<double> was called for. A Debian archive rebuild had triggered one of those fails to build from source bug reports as the compiler version seems to be more finicky now than when version 0.3.5 was uploaded in November. No other changes were made.Tue, 30 Nov 2010
Most of the changes were made two and four weeks ago: first in response to some warnings triggered by R 2.12.0 on the included manual pages which needed a brush-up, and then again is some consolidation of manual pages and some other minor tweaks. The release was then held back at CRAN as we noticed that manual pages, when collated to a single large document, triggered a segmentation fault in the latex compiler. Oddly enough only in Europe (if the a4paper option was used) and not here (where I use uspaper). Long story short, this turns out to be a bug in the latex toolchain (which we reported as Debian bug report 604754) which is apparently is known but has no known fix yet (a sample file was supplied with the bug report if you want to take a look).
With that, special thanks go to Kurt Hornik and Brian Ripley on the R Core team who made a change to how R processes the manual which made it resilient to the latex bug so that normal release of the package could proceed (and the shiny manual is available too).Mon, 09 Aug 2010
This follows the 0.3.3 release from last week and has again a number of internal changes. All uses of objects from external namespaces are now explicit as I removed the remaining using namespace QuantLib;. This makes things a little more verbose, but should be much clearer to read, especially for those not yet up to speed on whether a given object comes from any one of the Boost, QuantLib or Rcpp namespaces. We also generalized an older three-dimensional plotting function used for option surfaces -- which had already been used in the demo() code -- and improved the code underlying this: arrays of option prices and analytics given two input vectors are now computed at the C++ level for a nice little gain in efficiency. This also illustrates the possible improvements from working with the new Rcpp API that is now used throughout the package,
Full changelog details, examples and more details about this package are at my RQuantLib page.Wed, 04 Aug 2010
Many of the changes in this new version are internal. The code was re-written using the new Rcpp API throughout, and the build system was further simplified using the LinkingTo: mechanism. The arithmetic average-price asian option pricer was added. A few other code updates were made as well.
Full changelog details, examples and more details about this package are at my RQuantLib page.