the LMM in QuantLib

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

the LMM in QuantLib

Mark joshi
Dear All,

I have started working on the LMM in QuantLib again. The main new addition is the Giles--Glasserman
smoking adjoints method for delta and vega computation.

I'd be interested in any feedback users have.
eg
1) what's buggy? (if anything)
2) what features do you need that are missing?
3) do you find it hard to use?
4) if you aren't using it why not?

For those who are finding it hard to follow the details, I will be doing a course in London in February on the QuantLib implementation of the LIBOR Market Model, we will do the whole thing from theory through to the C++ code. Book by Sep 30th for a special very early bird discount.

http://www.moneyscience.com/Events_Noticeboard/article558


best

Mark


--
Quant Job Interview Questions and Answers is now out: www.markjoshi.com

Assoc Prof Mark Joshi
Centre for Actuarial Studies
University of Melbourne
My website is www.markjoshi.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: the LMM in QuantLib

javit
Mark,

It sounds interesting. I haven't used it yet. Currently, I am tied up with some projects. But, as soon as I shape things up, I would like to check it out. Do you have some material which may help to read the source code?

Thank you,
Javit

Mark joshi wrote
Dear All,

I have started working on the LMM in QuantLib again. The main new addition
is the Giles--Glasserman
smoking adjoints method for delta and vega computation.

I'd be interested in any feedback users have.
eg
1) what's buggy? (if anything)
2) what features do you need that are missing?
3) do you find it hard to use?
4) if you aren't using it why not?

For those who are finding it hard to follow the details, I will be doing a
course in London in February on the QuantLib implementation of the LIBOR
Market Model, we will do the whole thing from theory through to the C++
code. Book by Sep 30th for a special very early bird discount.

http://www.moneyscience.com/Events_Noticeboard/article558


best

Mark


--
Quant Job Interview Questions and Answers is now out: www.markjoshi.com

Assoc Prof Mark Joshi
Centre for Actuarial Studies
University of Melbourne
My website is www.markjoshi.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
QuantLib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: the LMM in QuantLib

Mark joshi-2
In reply to this post by Mark joshi
At the moment, the main thing I am doing to assist users is running the course in February which will discuss the C++ code:

http://www.moneyscience.com/Events_Noticeboard/article558

regards

Mark


------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Mark,

It sounds interesting. I haven't used it yet. Currently, I am tied up with some projects. But, as soon as I shape things up, I would like to check it out. Do you have some material which may help to read the source code?

Thank you,
Javit


Mark joshi wrote:
>
> Dear All,
>
> I have started working on the LMM in QuantLib again. The main new
> addition is the Giles--Glasserman smoking adjoints method for delta
> and vega computation.
>
> I'd be interested in any feedback users have.
> eg
> 1) what's buggy? (if anything)
> 2) what features do you need that are missing?
> 3) do you find it hard to use?
> 4) if you aren't using it why not?
>
> For those who are finding it hard to follow the details, I will be
> doing a course in London in February on the QuantLib implementation of
> the LIBOR Market Model, we will do the whole thing from theory through
> to the C++ code. Book by Sep 30th for a special very early bird discount.
>
> http://www.moneyscience.com/Events_Noticeboard/article558
>

>
> best
>
> Mark
>
>
> --
> Quant Job Interview Questions and Answers is now out:
> www.markjoshi.com
>
> Assoc Prof Mark Joshi
> Centre for Actuarial Studies
> University of Melbourne
> My website is www.markjoshi.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
>
>


-----
Cavit (Javit) Hafizoglu
mailto:[hidden email] mailto:[hidden email]
--
View this message in context: http://www.nabble.com/the-LMM-in-QuantLib-tp19262300p19318695.html
Sent from the quantlib-users mailing list archive at Nabble.com.





--
Quant Job Interview Questions and Answers is now out: www.markjoshi.com

Assoc Prof Mark Joshi
Centre for Actuarial Studies
University of Melbourne
My website is www.markjoshi.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: the LMM in QuantLib

willshaw
In reply to this post by Mark joshi
Hi, Mark,

It seems that exerciseTimes are the same as rateTimes and evolutionTimes in the QuantLib code, although they should be different, especially the exerciseTimes, which usually are 10 - 30 business days before rateTimes. I'm referring to the classes such as MarketModelExerciseValue, MarketModelMultiProduct, LongstaffSchwartzExerciseStrategy. I also note that in collectNodeData, the node data are collected at evolutionTimes/rateTimes instead of exerciseTimes. But I think it should be exerciseTimes.

Even we can choose evolutionTimes different from rateTimes and let exerciseTimes = evolutionTimes, the constructors of MarketModelExerciseValue and MarketModelMultiProduct have hard-coded rateTimes = evolutionTimes (except for the last rateTimes of course).


Mark joshi wrote
Dear All,

I have started working on the LMM in QuantLib again. The main new addition
is the Giles--Glasserman
smoking adjoints method for delta and vega computation.

I'd be interested in any feedback users have.
eg
1) what's buggy? (if anything)
2) what features do you need that are missing?
3) do you find it hard to use?
4) if you aren't using it why not?

For those who are finding it hard to follow the details, I will be doing a
course in London in February on the QuantLib implementation of the LIBOR
Market Model, we will do the whole thing from theory through to the C++
code. Book by Sep 30th for a special very early bird discount.

http://www.moneyscience.com/Events_Noticeboard/article558


best

Mark


--
Quant Job Interview Questions and Answers is now out: www.markjoshi.com

Assoc Prof Mark Joshi
Centre for Actuarial Studies
University of Melbourne
My website is www.markjoshi.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
QuantLib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: the LMM in QuantLib

Mark joshi-2
In reply to this post by Mark joshi
I am a bit mystified by this comment.

MarketModelExerciseValue and MarketModelMultiProduct don't have constructors
since they are empty base classes. The code is written to run off
EvolutionDescriptions
where the evolution times and rate times are distinct concepts. There
are certainly
examples of MarketModelMultiProduct s with only one evolution time,
for example, in the code.

You can also specify which evolution times are exercise times.  So you
can merge rate times
and exercise dates to get the set of evolution times for example.

For early exercise, you need to be able to collect data at
non-exercise times as well as exercise times in case
coupons have path-dependence affected by non-exercise times.

regards

mark



------------------------------------------------------------------------------------------------
To: [hidden email]
Date: Wed, 10 Sep 2008 21:10:36 -0700 (PDT)
Subject: Re: [Quantlib-users] the LMM in QuantLib

Hi, Mark,

It seems that exerciseTimes are the same as rateTimes and evolutionTimes in
the QuantLib code, although they should be different, especially the
exerciseTimes, which usually are 10 - 30 business days before rateTimes. I'm
referring to the classes such as MarketModelExerciseValue,
MarketModelMultiProduct, LongstaffSchwartzExerciseStrategy. I also note that
in collectNodeData, the node data are collected at evolutionTimes/rateTimes
instead of exerciseTimes. But I think it should be exerciseTimes.

Even we can choose evolutionTimes different from rateTimes and let
exerciseTimes = evolutionTimes, the constructors of MarketModelExerciseValue
and MarketModelMultiProduct have hard-coded rateTimes = evolutionTimes
(except for the last rateTimes of course).



Mark joshi wrote:

>
> Dear All,
>
> I have started working on the LMM in QuantLib again. The main new addition
> is the Giles--Glasserman
> smoking adjoints method for delta and vega computation.
>
> I'd be interested in any feedback users have.
> eg
> 1) what's buggy? (if anything)
> 2) what features do you need that are missing?
> 3) do you find it hard to use?
> 4) if you aren't using it why not?
>
> For those who are finding it hard to follow the details, I will be doing a
> course in London in February on the QuantLib implementation of the LIBOR
> Market Model, we will do the whole thing from theory through to the C++
> code. Book by Sep 30th for a special very early bird discount.
>
> http://www.moneyscience.com/Events_Noticeboard/article558
>
>
> best
>
> Mark
>
>
> --
> Quant Job Interview Questions and Answers is now out: www.markjoshi.com
>
> Assoc Prof Mark Joshi
> Centre for Actuarial Studies
> University of Melbourne
> My website is www.markjoshi.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: the LMM in QuantLib

Mark joshi
I am a bit mystified by this comment.

MarketModelExerciseValue and MarketModelMultiProduct don't have constructors
since they are empty base classes. The code is written to run off
EvolutionDescriptions where the evolution times and rate times are
distinct concepts. There
are certainly examples of MarketModelMultiProduct s with only one
evolution time,
for example, in the code.

You can also specify which evolution times are exercise times.  So you
can merge rate times and exercise dates to get the set of evolution
times for example.

For early exercise, you need to be able to collect data at
non-exercise times as well
as exercise times in case coupons have path-dependence affected by
non-exercise times.

regards

mark



------------------------------------------------------------------------------------------------
To: [hidden email]
Date: Wed, 10 Sep 2008 21:10:36 -0700 (PDT)
Subject: Re: [Quantlib-users] the LMM in QuantLib

Hi, Mark,

It seems that exerciseTimes are the same as rateTimes and evolutionTimes in
the QuantLib code, although they should be different, especially the
exerciseTimes, which usually are 10 - 30 business days before rateTimes. I'm
referring to the classes such as MarketModelExerciseValue,
MarketModelMultiProduct, LongstaffSchwartzExerciseStrategy. I also note that
in collectNodeData, the node data are collected at evolutionTimes/rateTimes
instead of exerciseTimes. But I think it should be exerciseTimes.

Even we can choose evolutionTimes different from rateTimes and let
exerciseTimes = evolutionTimes, the constructors of MarketModelExerciseValue
and MarketModelMultiProduct have hard-coded rateTimes = evolutionTimes
(except for the last rateTimes of course).
- Hide quoted text -



Mark joshi wrote:

>
> Dear All,
>
> I have started working on the LMM in QuantLib again. The main new addition
> is the Giles--Glasserman
> smoking adjoints method for delta and vega computation.
>
> I'd be interested in any feedback users have.
> eg
> 1) what's buggy? (if anything)
> 2) what features do you need that are missing?
> 3) do you find it hard to use?
> 4) if you aren't using it why not?
>
> For those who are finding it hard to follow the details, I will be doing a
> course in London in February on the QuantLib implementation of the LIBOR
> Market Model, we will do the whole thing from theory through to the C++
> code. Book by Sep 30th for a special very early bird discount.
>
> http://www.moneyscience.com/Events_Noticeboard/article558
>
>
> best
>
> Mark
>
>
> --
> Quant Job Interview Questions and Answers is now out: www.markjoshi.com
>
> Assoc Prof Mark Joshi
> Centre for Actuarial Studies
> University of Melbourne
> My website is www

-------------------------------------------------------------------------
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: the LMM in QuantLib

willshaw
In reply to this post by Mark joshi-2
Sorry. I actually mean the derived classes of MarketModelExerciseValue and MarketModelMultiProduct.
Although i can choose different evolution times in derived class of MarketModel, the evolution defined in constructor such as MultiProductMultiStep, BermudanSwaptionExerciseValue, is the same as ratetimes. This can cause isBasisTime in collectNodeData to be all "false" if I use different evolution times for dataProvider such as SwapBasisSystem. isProductTime, isRebateTime, isControlTime, isExerciseTime are guranteed to be true since they are all from rate times.


<quote author="Mark joshi-2">
I am a bit mystified by this comment.

MarketModelExerciseValue and MarketModelMultiProduct don't have constructors
since they are empty base classes. The code is written to run off
EvolutionDescriptions
where the evolution times and rate times are distinct concepts. There
are certainly
examples of MarketModelMultiProduct s with only one evolution time,
for example, in the code.

You can also specify which evolution times are exercise times.  So you
can merge rate times
and exercise dates to get the set of evolution times for example.

For early exercise, you need to be able to collect data at
non-exercise times as well as exercise times in case
coupons have path-dependence affected by non-exercise times.

regards

mark