Hi Everyone-
In the process of writing up a formal proposal for the class Peter and I are enrolled in, we have started to understand the structure and history of QuantLib. One question which is not obvious to us is where there is a list of the QuantLibXL functions. More importantly, we figured it is crucial to know which functions we want to implement to a GNUmericAddIn. Could someone please clarify this for us? My personal intution tells me that QuantLibXL is capable of using every function built in to QuantLib, but I'm not completely certain on this. Thanks for all of your help! Best Wishes, David Brown |
Hi David
> One question which is not obvious to us is where > there is a list of the QuantLibXL functions. I list them below. The code to register them is in source file QuantLibXL\qlxl\xlAutoOpen.cpp. I generated the list below by loading QuantLibXL into Excel and running some VBA code to interrogate Application.RegisteredFunctions. NB QuantLibXL may be superceded by QuantLibAddin. My thought is to redesign QuantLibAddin to support separate modules, and then have one module which is a port of QuantLibXL. > More importantly, we > figured it is crucial to know which functions we want to implement to > a GNUmericAddIn. Are you thinking of writing a QuantLib Gnumeric plugin?? Jody, the maintainer of Gnumeric, and I are talking about extending QuantLibAddin to support Gnumeric - she's looking at the details now and we're waiting to hear back from her. Regards Eric mean RR variance RR standardDeviation RR skewness RR kurtosis RR min RR max RR semiDeviation RR semiVariance RR downsideDeviation RR downsideVariance RR percentile RRR valueAtRisk RRR topPercentile RRR potentialUpside RRR expectedShortfall RRR shortfall RRR averageShortfall RRR regret RRR gaussianDownsideDeviation RRR gaussianDownsideVariance RRR gaussianPercentile RRRR gaussianValueAtRisk RRRR gaussianTopPercentile RRRR gaussianPotentialUpside RRRR gaussianExpectedShortfall RRRR gaussianShortfall RRRR gaussianAverageShortfall RRRR gaussianRegret RRRR xlholidayList RRRRR xlaccrualDays RRRR xlaccrualFactor RRRRRR xlEuropeanOption RRRRRRRRRR xlEuropeanOption_FD RRRRRRRRRRR xlEuropeanOption_MC RRRRRRRRRRR xlCliquetOption RRRRRRRRRR xlCliquetOption_MC RRRRRRRRRRRRRRRRRRR xlPerformanceOption RRRRRRRRRR xlPerformanceOption_MC RRRRRRRRRRR xlAmericanOption_FD RRRRRRRRRRR xlQuantoEuropeanOption RRRRRRRRRRRRR xlForwardEuropeanOption RRRRRRRRRRR xlPerformanceEuropeanOption RRRRRRRRRRR xlinterpolate RRRRRRRRRRRR xlinterpolate2D RRRRRRRR xlprimeNumbers RR xleigenVectors RR xleigenValues RR xlpseudoSQRT RRR xlrankReducedSQRT RRRRR xlCholesky RRR xlmatrixProduct RRR xlmatrixTranspose RR xlrand R! xlrandomize RR xlRandomNumberGenerator RRRRR xlGaussianRandomNumberGenerator RRRRR xlPathGenerator RRRRRRRRRRR xlBrownianBridge RRRRRRRRRRR xlCovFromCorr RRR xlCorrFromCov RR xlVolsFromCov RR xlCombin RRR xlBinomDist RRRRR xlPeizerPratt RRR xlPoisson RRRR xlnormInv RRRR xlnormSInv RR xlnormDist RRRRR xlnormSDist RR xlBlackVol RRRRRRRR xlLocalVol RRRRRRRRRR xlDiscount RRRRR xlZero RRRRR xlForward RRRRRR xlQLversion R! xlQLhexversion R! xlXLWversion R! xlXLWhexversion R! xlQLXLversion R! xlQLXLhexversion R! |
Hi Dave
I trust it's OK with you that I cc quantlib-dev in this response to your attached message; the answers to your questions (some of which were provided in Nando's earlier message) might be interesting for others. On Thu, 10 Feb 2005 09:22:41 -0500, David Brown <[hidden email]> wrote: > Eric- > > We want to do whatever can contribute to the project. I saw the > intent of QuantLibAddIn and it makes sense to me, we just thought that > it wasn't coming along becuse it only had three functiosn listed in > the webpages you sent us. QuantLibXL appeared more developed, which > it may be. QuantLibXL is mature, QuantLibAddin is a few weeks old and just getting ready for a first release which I would describe as a prototype. The QuantLibAddin design doc shows three functions in order to illustrate the design; at the moment in the latest CVS snapshot there are a dozen or so functions. > Just to get this straight: QuantLibAddIn is going to do away with > QuantLibXL by taking all of it's functionality. Yes, QuantLibAddin will be extended to support all functions currently present in QuantLibXL and the goal will be complete backward compatibility, so that a spreadsheet based on QuantLibXL can load QuantLibAddin and see the same results. > Moreover, your intent > is to imbed all of the functions that QuantLibXL has and find a slick > way of only having to write the functiosn once. Instead of writing > the functions multiple times, you are going to instead use multiple > 'interfacing' formats which will achieve what you desire. In the existing QuantLibAddin design, functions are defined once in a core C++ library, which is further wrapped in platform-specific functionality for target platforms. The source code for these platform-specific addins is generated automatically based on the function definitions, so I'd say the 'slick way of only writing functions once' is already implemented. :) > The list of interfaces given enough time wil be: > 1) Excel 2) OO Spreadsheet 3) GNUmeric 4)FpML 5) C++ 6) C etc > > Am I correct in my thinking here? The existing prototype supports Excel, OO, C, and C++. Gnumeric support is in the works. The design could be extended to support any platform that understands C++, and isn't limited to spreadsheets. I wouldn't list FpML among the target platforms for QuantLibAddin. QuantLibAddin clients on all target platforms - an Excel spreadsheet, a standalone C++ executable, whatever - will all be able to serialize/deserialize QuantLib objects to/from FpML using the design already explained earlier in this thread. > In other words, FpML input would only be one of the many inputs that > QuantLibAddIn handles. (Is this correct?) I'd say there are two ways QuantLibAddin could construct a QuantLib::Instrument - 1) by calling its usual constructor 2) by calling the new constructor which accepts a TermSheet > I noticed that the QuantLibXL cell calls all started with QL. Did > the name QL get cut out when you compiled a list of all functions? The method I used listed the function's name as it appears in the list of symbols exported by the DLL - the spreadsheet addin gives each of these symbols an alias which is the QL_xxx. > Best Wishes, > David Brown Best Regards Eric |
For info I revise (retract!) comments I made below to reflect feedback
from Nando: > > Just to get this straight: QuantLibAddIn is going to do away with > > QuantLibXL by taking all of it's functionality. > Yes, QuantLibAddin will be extended to support all functions currently > present in QuantLibXL and the goal will be complete backward > compatibility, so that a spreadsheet based on QuantLibXL can load > QuantLibAddin and see the same results. No. QuantLibXL won't be ported to QuantLibAddin. If QuantLibXL support is discontinued the last version will always be available and people who need backward compatibility can just use that. Where sensible QuantLibXL functionality may be replicated in QuantLibAddin, possibly with a revised interface. Regards, Eric |
Free forum by Nabble | Edit this page |