Re: QuantLibXL

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: QuantLibXL

Ferdinando M. Ametrano-2
Hi Deming

you wrote:
>QuantLibXL no longer compiles when I installed QuantLib 0.3.1 version. Did
>I do something wrong or this is something that you are already aware of?
Yes, it doesn't compile. QuantLibXL has never been released officially,
neither as 0.3.0 neither as 0.3.1
There has been a version on the CVS in synch with 0.3.0, but there is not a
version in synch with 0.3.1

>  Could you please provide some hints on how to fix this?
The current CVS version of QuantLib and QuantLibXL are in synch, so you
should check them out of the CVS (see http://quantlib.org/cvs.html)
I will try next week to make a CVS snapshot available at
http://quantlib.org/snapshot.html, but I'm not sure I will have time enough
to do it

Anyway QuantLibXL will be officially released with the next release of
QuantLib (0.3.2 or 0.4.0),  in 4/8 weeks I guess


------------
ciao -- Nando



Reply | Threaded
Open this post in threaded view
|

RE: Re: QuantLibXL

Zhuang, Deming
Hi, Nando:

with CVS version of QuantLib and QuantLibXL, I am able to build QuantLibXL.xll. However, some of the examples in  the workbooks directory (also from CVS) do not work properly with the newly built QuantLibXL.xll. For example, in quanto.xls, the worksheet Quant vs Plain works fine. In the Greeks, Quanto and shifted S(delta) work, but not the rest. In Haug, Quanto, shifted S and shifted time work, but not the rest. This is really bizarre because they all call the same function qlQuantoEuropeanOption() and I do not see anything obviously wrong with the parameters passed to the function. Using debugger to stepping through the code does not help either: in the case that QuantLibXL.xll dose not return a value, the following statements in engines.cpp are skipped entirely for no apparent reasons:

        arguments->dividendTS = QlXlfOper(xldividendYield) .AsTermStructure(valueDate);
        arguments->riskFreeTS = QlXlfOper(xlriskFree).AsTermStructure(valueDate);
        arguments->resetDate = QlXlfOper(xlresetDate).AsDate();
        arguments->exercise = EuropeanExercise(QlXlfOper(xlmaturityDate).AsDate());
        arguments->volTS = QlXlfOper(xlvolatility).AsBlackVolTermStructure(valueDate);

        arguments->validate();
        forwardEngine->calculate();

        const VanillaOptionResults* vResults =
            dynamic_cast<const VanillaOptionResults*>(
                forwardEngine->results());
        double results[7];
        results[0] = vResults->value;
        results[1] = vResults->delta;
        results[2] = vResults->gamma;
        results[3] = vResults->theta;
        results[4] = vResults->vega;
        results[5] = vResults->rho;
        results[6] = vResults->dividendRho;

        return XlfOper(1,7,results);

Are these examples in synch with CVS version of QuantLib and QuantLibXL? Any hints on how to fix the problems?

Many thanks,

Deming



-----Original Message-----
From: [hidden email]
[mailto:[hidden email]]On Behalf Of
Ferdinando Ametrano
Sent: Saturday, February 15, 2003 7:50 AM
To: Deming Zhuang
Cc: [hidden email]
Subject: [Quantlib-users] Re: QuantLibXL


Hi Deming

you wrote:
>QuantLibXL no longer compiles when I installed QuantLib 0.3.1 version. Did
>I do something wrong or this is something that you are already aware of?
Yes, it doesn't compile. QuantLibXL has never been released officially,
neither as 0.3.0 neither as 0.3.1
There has been a version on the CVS in synch with 0.3.0, but there is not a
version in synch with 0.3.1

>  Could you please provide some hints on how to fix this?
The current CVS version of QuantLib and QuantLibXL are in synch, so you
should check them out of the CVS (see http://quantlib.org/cvs.html)
I will try next week to make a CVS snapshot available at
http://quantlib.org/snapshot.html, but I'm not sure I will have time enough
to do it

Anyway QuantLibXL will be officially released with the next release of
QuantLib (0.3.2 or 0.4.0),  in 4/8 weeks I guess


------------
ciao -- Nando






Reply | Threaded
Open this post in threaded view
|

RE: Re: QuantLibXL

Ferdinando M. Ametrano-2
In reply to this post by Ferdinando M. Ametrano-2
Zhuang, Deming wrote:
>with CVS version of QuantLib and QuantLibXL, I am able to build
>QuantLibXL.xll. However, some of the examples in  the workbooks directory
>(also from CVS) do not work properly with the newly built QuantLibXL.xll.
Yes, I know it. It's because I'm in the middle of switching QuantLibXL from
the old pricer approach to the new pricing engines approach (see
http://quantlib.org/quep/quep005.html)

>  For example, in quanto.xls, the worksheet Quant vs Plain works fine. In
> the Greeks, Quanto and shifted S(delta) work, but not the rest. In Haug,
> Quanto, shifted S and shifted time work, but not the rest.
I know that. There is more than that: the results are not verified yet,
since I was more concerned to have the pricing engine framework up and
running than with the actual output number. I know I've adopted a few quick
and dirty solutions that need to be polished up.

I will probably get back to the result verification in 2 weeks, when done
with the first draft of the pricing engine framework.

I'm sorry for all these problems, but hey ... you're not assumed to rely on
a software that has never been released officially ;-)

Last but not least, I'm also considering about switching QuantLibXL from
xlw to libXLL

------------
ciao -- Nando