heston basket mulipath generation

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

heston basket mulipath generation

Jason Bowsher
Hi All
 
Am trying to create a heston basket that I can use for sa structured product.
 
If I try
 

std::vector<boost::shared_ptr<StochasticProcess1D> > processes(3);

processes[0] = hestonProcess1;

processes[0] = hestonProcess1;

processes[2] = hestonProcess2;

processes[1] = hestonProcess3;

 

The compile fails with

cannot convert from 'QuantLib::HestonProcess *const ' to 'QuantLib::StochasticProcess1D *'

 

Because StocasicProcess1D is not in the HestonProcess.

 

If I change the HestonProcess header from:

 

class HestonProcess : public StochasticProcess1D {

to

class HestonProcess : public StochasticProcess{

Quantlib compile fails becuase of Xo, drift and diffusion expected by

QuantLib::StochasticProcess1D

'QuantLib::Real QuantLib::StochasticProcess1D::drift(QuantLib::Time,QuantLib::Real) const' : is abstract

uantlib compil

My question is, is it possible to generate multipaths for the heston process.  If so should this be done using a StochasticProcess1D vector and then a StochasticProcessArray or is there a better way without having to change the quantlib library code.

If StochasticProcess1D vector is the way to do it can anyone suggest what needs to be changed in the HestonProcess.hpp and cpp file to get it working as I am not a C++ developer.

 

Thanks for any help.

 

Jason

 


--
Be Yourself @ mail.com!
Choose From 200+ Email Addresses
Get a Free Account at www.mail.com!

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: heston basket mulipath generation

Frank Hövermann
Nachricht
Hi Jason,
yes it is possible, if you wish I could provide you with a preliminary test class for which use is definitely on your own risk. I used it already but still have to test it for different properties.
 
Rgds
Frank
-----Ursprüngliche Nachricht-----
Von: Jason Bowsher [mailto:[hidden email]]
Gesendet: Freitag, 3. Oktober 2008 15:12
An: [hidden email]
Betreff: [Quantlib-users] heston basket mulipath generation

Hi All
 
Am trying to create a heston basket that I can use for sa structured product.
 
If I try
 

std::vector<boost::shared_ptr<StochasticProcess1D> > processes(3);

processes[0] = hestonProcess1;

processes[0] = hestonProcess1;

processes[2] = hestonProcess2;

processes[1] = hestonProcess3;

 

The compile fails with

cannot convert from 'QuantLib::HestonProcess *const ' to 'QuantLib::StochasticProcess1D *'

 

Because StocasicProcess1D is not in the HestonProcess.

 

If I change the HestonProcess header from:

 

class HestonProcess : public StochasticProcess1D {

to

class HestonProcess : public StochasticProcess{

Quantlib compile fails becuase of Xo, drift and diffusion expected by

QuantLib::StochasticProcess1D

'QuantLib::Real QuantLib::StochasticProcess1D::drift(QuantLib::Time,QuantLib::Real) const' : is abstract

uantlib compil

My question is, is it possible to generate multipaths for the heston process.  If so should this be done using a StochasticProcess1D vector and then a StochasticProcessArray or is there a better way without having to change the quantlib library code.

If StochasticProcess1D vector is the way to do it can anyone suggest what needs to be changed in the HestonProcess.hpp and cpp file to get it working as I am not a C++ developer.

 

Thanks for any help.

 

Jason

 


--
Be Yourself @ mail.com!
Choose From 200+ Email Addresses
Get a Free Account at www.mail.com!

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: heston basket mulipath generation

Jason Bowsher
In reply to this post by Jason Bowsher
A preliminary test class would be much appreciated with own risk.
 
a helpful starting point.
 
Regards
 
Jason

----- Original Message -----
From: "Frank Hövermann"
To: "'Jason Bowsher'" , [hidden email]
Subject: AW: [Quantlib-users] heston basket mulipath generation
Date: Sun, 5 Oct 2008 12:03:09 +0200

Hi Jason,
yes it is possible, if you wish I could provide you with a preliminary test class for which use is definitely on your own risk. I used it already but still have to test it for different properties.
 
Rgds
Frank
-----Ursprüngliche Nachricht-----
Von: Jason Bowsher [mailto:[hidden email]]
Gesendet: Freitag, 3. Oktober 2008 15:12
An: [hidden email]
Betreff: [Quantlib-users] heston basket mulipath generation

Hi All
 
Am trying to create a heston basket that I can use for sa structured product.
 
If I try
 

std::vector<boost::shared_ptr<StochasticProcess1D> > processes(3);

processes[0] = hestonProcess1;

processes[0] = hestonProcess1;

processes[2] = hestonProcess2;

processes[1] = hestonProcess3;

 

The compile fails with

cannot convert from 'QuantLib::HestonProcess *const ' to 'QuantLib::StochasticProcess1D *'

 

Because StocasicProcess1D is not in the HestonProcess.

 

If I change the HestonProcess header from:

 

class HestonProcess : public StochasticProcess1D {

to

class HestonProcess : public StochasticProcess{

Quantlib compile fails becuase of Xo, drift and diffusion expected by

QuantLib::StochasticProcess1D

'QuantLib::Real QuantLib::StochasticProcess1D::drift(QuantLib::Time,QuantLib::Real) const' : is abstract

uantlib compil

My question is, is it possible to generate multipaths for the heston process.  If so should this be done using a StochasticProcess1D vector and then a StochasticProcessArray or is there a better way without having to change the quantlib library code.

If StochasticProcess1D vector is the way to do it can anyone suggest what needs to be changed in the HestonProcess.hpp and cpp file to get it working as I am not a C++ developer.

 

Thanks for any help.

 

Jason

 


--
Be Yourself @ mail.com!
Choose From 200+ Email Addresses
Get a Free Account at www.mail.com!

--
Be Yourself @ mail.com!
Choose From 200+ Email Addresses
Get a Free Account at www.mail.com!

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: heston basket mulipath generation

Luigi Ballabio
In reply to this post by Jason Bowsher
On Fri, 2008-10-03 at 13:11 +0000, Jason Bowsher wrote:

> Am trying to create a heston basket that I can use for sa structured
> product.
>  
> If I try
>  
> std::vector<boost::shared_ptr<StochasticProcess1D> > processes(3);
>
> processes[0] = hestonProcess1;
> processes[2] = hestonProcess2;
> processes[1] = hestonProcess3;
>
>  
>
> The compile fails with
>
> cannot convert from 'QuantLib::HestonProcess *const ' to
> 'QuantLib::StochasticProcess1D *'

Yes, Heston is not a 1-D process.  It is 2-D (it evolves both the
underlying and its volatility.)
>

> My question is, is it possible to generate multipaths for the heston
> process.  If so should this be done using a StochasticProcess1D vector
> and then a StochasticProcessArray or is there a better way without
> having to change the quantlib library code.

At this time, it's not possible without writing some new code.  You'll
need to write a process class that describes the Heston basket.  It
would have to include some logic so that it takes into account the
correlations between the individual processes.

Luigi


--

Zawinski's Law:
Every program attempts to expand until it can read mail. Those
programs which cannot so expand are replaced by ones which can.



-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users