LMM and finite difference methods

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

LMM and finite difference methods

Joseph Wang
Here is a silly question.  Why is it that LMM methods are used only with
Monte Carlo and not with finite difference methods.  I'm probably
missing something very fundamental, but it seems mathematically possible
to write a FDM engine that calculates the forward curve.

So what is it that I don't understand......




Reply | Threaded
Open this post in threaded view
|

Re: LMM and finite difference methods

Luigi Ballabio
On 11/15/2005 07:01:27 AM, Joseph Wang wrote:
> Here is a silly question.  Why is it that LMM methods are used only  
> with Monte Carlo and not with finite difference methods.

It's still a work in progress. Klaus began contributing the process  
class as it's kind of self-contained, but he's still working on other  
code using the model.

Later,
        Luigi

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

There are no rules of architecture for a castle in the clouds.
-- Gilbert K. Chesterton



Reply | Threaded
Open this post in threaded view
|

Re: LMM and finite difference methods

Ferdinando M. Ametrano-3
In reply to this post by Joseph Wang
On 11/15/05, Joseph Wang <[hidden email]> wrote:
> Here is a silly question.  Why is it that LMM methods are used only with
> Monte Carlo and not with finite difference methods.

LMM are intrinsically high-dimension. If you model the 30-year yield
curve as a strip of 6-month forward libor you have 60 factors. FD with
more than 3 factors are less efficient than MC, and very hard (almost
impossible?) to implement.

> I'm probably
> missing something very fundamental, but it seems mathematically possible
> to write a FDM engine that calculates the forward curve.

Many banks do not actually evolve 60 factors, but use factor analysis
(PCA) to reduce dimensionality and evolve just 2 or 3 main factors. It
might be possible to use FD for such a reduced version of LMM and a FD
implementation of reduced-dimension LMM would be great as it could
easily account for American exercise.
The lack of literature on this topic suggests me that a) it must be
undisclosed proprietary leading edge stuff, or that b) implementation
details (i.e. boundary conditions) must be so complex to make the
implementation unfeasible

ciao -- Nando


Reply | Threaded
Open this post in threaded view
|

Re: LMM and finite difference methods

Luigi Ballabio
On 11/15/2005 10:21:39 AM, Ferdinando Ametrano wrote:
> On 11/15/05, Joseph Wang <[hidden email]> wrote:
> > Here is a silly question.  Why is it that LMM methods are used only
> > with Monte Carlo and not with finite difference methods.
>
> LMM are intrinsically high-dimension. If you model the 30-year yield
> curve as a strip of 6-month forward libor you have 60 factors. FD  
> with more than 3 factors are less efficient than MC, and very hard  
> (almost impossible?) to implement.

Ok, so that was your question.

Note to self: don't answer email before coffee.

Later,
        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.



Reply | Threaded
Open this post in threaded view
|

RE: LMM and finite difference methods

cuchulainn
In reply to this post by Luigi Ballabio
Re: [Quantlib-users] LMM and finite difference methods
If we van find the SDE then we use Ito?
 


From: [hidden email] on behalf of Luigi Ballabio
Sent: Tue 15/11/2005 08:50
To: Joseph Wang
Cc: [hidden email]
Subject: Re: [Quantlib-users] LMM and finite difference methods


On 11/15/2005 07:01:27 AM, Joseph Wang wrote:
> Here is a silly question.  Why is it that LMM methods are used only 
> with Monte Carlo and not with finite difference methods.

It's still a work in progress. Klaus began contributing the process 
class as it's kind of self-contained, but he's still working on other 
code using the model.

Later,
        Luigi

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

There are no rules of architecture for a castle in the clouds.
-- Gilbert K. Chesterton



-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_idv28&alloc_id845&op=ick
_______________________________________________
Quantlib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

Reply | Threaded
Open this post in threaded view
|

RE: LMM and finite difference methods

cuchulainn
In reply to this post by Joseph Wang
[Quantlib-users] LMM and finite difference methods
Not silly at all IMO
 


From: [hidden email] on behalf of Joseph Wang
Sent: Tue 15/11/2005 07:01
To: [hidden email]
Subject: [Quantlib-users] LMM and finite difference methods

Here is a silly question.  Why is it that LMM methods are used only with
Monte Carlo and not with finite difference methods.  I'm probably
missing something very fundamental, but it seems mathematically possible
to write a FDM engine that calculates the forward curve.

So what is it that I don't understand......




-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628&alloc_id=16845&op=click
_______________________________________________
Quantlib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

Reply | Threaded
Open this post in threaded view
|

RE: LMM and finite difference methods

cuchulainn
In reply to this post by Ferdinando M. Ametrano-3
Re: [Quantlib-users] LMM and finite difference methods
FDM is easy on paper in n dims. But how do you construct a n-dimensional tensor space. It's kind of mind-boggling.
 
n= 3 I have
 
vector<Matrix<T >
 
DD


From: [hidden email] on behalf of Ferdinando Ametrano
Sent: Tue 15/11/2005 10:21
To: Joseph Wang
Cc: [hidden email]
Subject: Re: [Quantlib-users] LMM and finite difference methods

On 11/15/05, Joseph Wang <[hidden email]> wrote:
> Here is a silly question.  Why is it that LMM methods are used only with
> Monte Carlo and not with finite difference methods.

LMM are intrinsically high-dimension. If you model the 30-year yield
curve as a strip of 6-month forward libor you have 60 factors. FD with
more than 3 factors are less efficient than MC, and very hard (almost
impossible?) to implement.

> I'm probably
> missing something very fundamental, but it seems mathematically possible
> to write a FDM engine that calculates the forward curve.

Many banks do not actually evolve 60 factors, but use factor analysis
(PCA) to reduce dimensionality and evolve just 2 or 3 main factors. It
might be possible to use FD for such a reduced version of LMM and a FD
implementation of reduced-dimension LMM would be great as it could
easily account for American exercise.
The lack of literature on this topic suggests me that a) it must be
undisclosed proprietary leading edge stuff, or that b) implementation
details (i.e. boundary conditions) must be so complex to make the
implementation unfeasible

ciao -- Nando


-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_idv28&alloc_id845&op=ick
_______________________________________________
Quantlib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

Reply | Threaded
Open this post in threaded view
|

RE: LMM and finite difference methods

cuchulainn
In reply to this post by Luigi Ballabio
Re: [Quantlib-users] LMM and finite difference methods
 

> don't answer email before coffee.
 
And a ciggy as well!
 

 

From: [hidden email] on behalf of Luigi Ballabio
Sent: Tue 15/11/2005 10:36
To: Joseph Wang
Cc: [hidden email]
Subject: Re: [Quantlib-users] LMM and finite difference methods


On 11/15/2005 10:21:39 AM, Ferdinando Ametrano wrote:
> On 11/15/05, Joseph Wang <[hidden email]> wrote:
> > Here is a silly question.  Why is it that LMM methods are used only
> > with Monte Carlo and not with finite difference methods.
>
> LMM are intrinsically high-dimension. If you model the 30-year yield
> curve as a strip of 6-month forward libor you have 60 factors. FD 
> with more than 3 factors are less efficient than MC, and very hard 
> (almost impossible?) to implement.

Ok, so that was your question.

Note to self: don't answer email before coffee.

Later,
        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 JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_idv28&alloc_id845&op=ick
_______________________________________________
Quantlib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

Reply | Threaded
Open this post in threaded view
|

Re: LMM and finite difference methods

Joseph Wang
One of the nice things about not being employed in QF is that you can
actually talk about what you are doing :-) :-) :-)

Right now, I've become interested in interest rate models because I
think the following algorithm is viable.....

1) Look at the prices of non-deliverable currency forwards for the RMB
in Singapore/Hong Kong
2) Use the interest rate parity formula to calculate the effective
interest rate
3) Look at the price of currency forwards in Shanghai
4) Use the difference to calculate a "convenience yield" which
quantifies the effect of capital controls

At this point you then have the information you need to calculate the
prices for any RMB derivative you want.  The important thing is that the
effective interest rate is appears to be a more or less a log normal
with a defined volatility which is *not* true for the quoted interest
rates (which follow a Poission process and are really hard to get into a
continuous model).  So one thing to do then is to look at the price of
non-deliverable swaps to see if they make sense that that involves
understanding  the LMM model.

Now that you have a currency forward model, you can create a whole new
set of derivatives that cater to the PRC domestic market (i.e. a
security that is linked to the NYSE Standard and Poor 500).  I call
these Chinese Overseas Linked Securities (COLS) and the hopefully the
effective result of this will be to diversify the content of PRC savings
so that it isn't all going to treasury bonds and mortgage backed
securities.  (Also, another idea is to use depository receipts to allow
PRC savers to invest in PRC companies that are listed in Hong Kong and
New York.  I call these DCDR domestic Chinese depository receipts).

The only difficulty now is to convince a headhunter or investment bank
to take me seriously :-) :-) :-)

It doesn't help that my cover letters sound like an investment scam.

---------

Dear Major Investment Bank,

My name is DR. JOSEPH WANG.  I have a DOCTORATE OF PHILOSOPHY in
THEORETICAL ASTROPHYSICS specializing in FINITE DIFFERENCE METHODS.  I
am currently working on the QUANTLIB software package.  I have recently
began developing quantitative models of Chinese Reminbi Currency
Forwards that I believe will create the basis for a market for
derivative securities worth $1,000,000,000,000 (ONE TRILLION DOLLARS),
which will allow domestic savers in China access overseas markets
despite CAPITAL CONTROLS.  Let me assure you that what I am proposing is
PERFECTLY LEGAL, and that the proper bureaucratic approvals for these
DERVIATIVE SECURITIES will be received.  Let me also assure you that I
am an HONEST MAN, and that I intend to consider the possibility of
SYSTEMATIC INSTABILITY in the capital markets due to our efforts.

Unfortunately because of the difficulties in DEVELOPING and LISTING new
derivative securities in the People's Republic of China, I am unable to
access these funds, and I require the assistance of a MAJOR INVESTMENT
BANK, doing business or planning to do business in China with access to
RENMINBI.  I propose a situation that will be advantageous to both of
us.  When you issue these derivative securities that you can recoup some
of your effect by charging underwriting and commission fees.  In return,
I ask only that you provide me a small fraction of said fees as salary
for my services as a  QUANTITATIVE ANALYST.  As an immediate sign of
your GOOD FAITH, I request that you send me an AIRLINE ticket and
LODGING so that I may visit your CORPORATE HEADQUARTERS so that we may
discuss the terms of our arrangement.

Your UTMOST CONFIDENTIALITY and DISCRETION in this matter is appreciated.

Sincerely,

DR. JOSEPH WANG






Reply | Threaded
Open this post in threaded view
|

Re: [Unsure] Re: LMM and finite difference methods

Luigi Ballabio
On 11/15/2005 04:18:05 PM, Joseph Wang wrote:
>
> It doesn't help that my cover letters sound like an investment scam.
>
> [ hilarious cover letter snipped ]

Joe,
        this was great. My spam filters actually marked your post as  
"unsure" :)

Later,
        Luigi


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

Use every man after his desert, and who shall scape whipping?
-- Hamlet, Act II, scene II



Reply | Threaded
Open this post in threaded view
|

Re: LMM and finite difference methods

Joseph Wang
In reply to this post by Ferdinando M. Ametrano-3
Ferdinando Ametrano wrote:

>
>LMM are intrinsically high-dimension. If you model the 30-year yield
>curve as a strip of 6-month forward libor you have 60 factors. FD with
>more than 3 factors are less efficient than MC, and very hard (almost
>impossible?) to implement.
>
>  
>
The idea I had was to use Komogorov's equation to write a PDE for the
probability distribution functions for each of the factors.  You then
have a large number of interacting parallel PDE's to difference.  Messy,
but not impossible.  FDM's tend break down when you have systems that
are heavily path dependent, but I don't see the path dependence in the LMM.

Also you might be able to simplify even further.  Instead of trying to
calculate the whole PDF for each of the 60 PDE's you write down the
evolution equations of the moments of each PDE.  What should make this
tractable is that as time passes the higher order terms will get damped
down (unlike the CFD problem).

This gives you a large number of ODE's.  At that point things start
looking like a nuclear reaction matrix.

There are a large number of problems in the world that seem easy, but
when you brute force try to solve them the obvious way, you start
hitting a brick wall (turbulence and quantum gravity fall into this
category).  I was just wondering if someone can describe the brick wall
to me before I crash into it.  It may be some path dependence that I
don't see.  Or maybe the factors are coupled in such a way that one
can't disintangle them into more or less separate difference equations.

>The lack of literature on this topic suggests me that a) it must be
>undisclosed proprietary leading edge stuff, or that b) implementation
>details (i.e. boundary conditions) must be so complex to make the
>implementation unfeasible
>  
>
LMM also seems pretty recent as models go.





Reply | Threaded
Open this post in threaded view
|

Re: LMM and finite difference methods

Naoufel El Bachir
In reply to this post by Joseph Wang
In Fact, I think there has been a few papers dealing with finite differences for LMM.
But apart from the issue of dimensionality, I remember MC has the advantage that you can evolve each forward rate under its martingale measure, while if you are using FDM, you need to stick to one measure which means that your drifts for most forward rates will be quite messy and will probably need some approximations.
 
Naoufel



Here is a silly question. Why is it that LMM methods are used only with
Monte Carlo and not with finite difference methods. I'm probably
missing something very fundamental, but it seems mathematically possible
to write a FDM engine that calculates the forward curve.

So what is it that I don't understand......




To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre.
Reply | Threaded
Open this post in threaded view
|

Re: lmm process

Klaus Spanderen
In reply to this post by Joseph Wang
Enrico Michelotti wrote:

>1- Why th first forward is set to start at time zero and not at any time?
>If you have a general schedule not starting today? Do I need to interpolate
>rates?

At the time being it is more important for me to get various volatility and
correlation parameterizations working. Supporting non matching accrual
periods should IMO be implemented after a "real" calibration of libor forward
models is working.

>2- The simulated forwards are very good (and also caplets) for maturities
>shorter than 5y-8y. But if the mk caplet volatility is not well behaved (or
>sufficiently smooth) the process crasches during the costruction of lambdas:
>In fact if vol2 = vol(i)*vol(i)*t(i) is smaller then vol1 =
>vol(i-1)*vol(i-1)*t(i-1) then l = vol2- vol1 <0 and sqrt(l/delta(i-1))
>crashes. Dou you have any ideas? Do you think could be possible to use a
>parametric version of caplet volatility?

The caplet volatility boostrapping is known to be "sensitive" if the caplet
volatility is not sufficiently smooth;-(

In my current version the lmm process can be parameterized using different
volatility and correlation models including the caplet volatility
bootstrapping but also parametric versions are available. (see  e.g.
http://www.exoticderivatives.com/Mas_papers.html). For the parametric
versions we need the calibration facility working and that is what I'm
currently working on (calibration helper stuff etc.). Hopefully I get this
stuff ready before 0.3.12 is out.

>3- Why does the drift function take the deltas instead the accrual periods? I
>think it should use the accrual period instead, due to the fact that: P(ti,
>ti+1) = 1/(1+ delta(i)*Fi) and the delta should be the accrual period on
>which the forward is built.

At the beginning I followed the Hull White article
(www.rotman.utoronto.ca/~amackay/fin/libormktmodel2.pdf) where the deltas are
defined as the time periods between the reset dates. I fixed this imprecision
for the CapletLiborMarketModelProcess::discountBond method but I've missed
the drift method.  For non-pathological situations one will hardly recognize
the difference in a Monte-Carlo simulation. I ran some examples with millions
of paths and didn't get differences bigger than the MC error. Thanks for the
hint, I'll fix this with the next version.

cheers
_______________________________________________________
Klaus Spanderen
Hubertustal 13f
48734 Reken (Germany)
Email: [hidden email]
(remove NOSPAM from the address)
http://www.spanderen.de