From: Samy Hocini on
Hello everyone,

I am using the convhulln function in order to approximate the price of an American option.
There's a hole program between the use of convhulln and the final output, which is the price of the option, but the thing is, when I vary the value of one parameter of m y function, the price explodes (values such 10e4...) and I suspect that the origin of this is somewhere in the convhulln function, and more precisely I suspect that it is due to the fact that some facets of the convex hull may be very similar.

Do you know a way to solve that or to understand why the value explodes sometimes ?

I have tried to look to the precision options of qhull, like QJ or Qt but it didn't help me that much since the final price doesn't really change when I change the precision options.

Maybe someone knows a little bit better about the precision options of qhull ?

Tell me if you need more details about my program, I haven't developed that much because it is quite complicated for someone not familiar with the financial maths area.

Thank you for your help.

Samy.
From: John D'Errico on
"Samy Hocini" <masy07(a)wanadoo.fr> wrote in message <i1q3gb$75v$1(a)fred.mathworks.com>...
> Hello everyone,
>
> I am using the convhulln function in order to approximate the price of an American option.
> There's a hole program between the use of convhulln and the final output, which is the price of the option, but the thing is, when I vary the value of one parameter of m y function, the price explodes (values such 10e4...) and I suspect that the origin of this is somewhere in the convhulln function, and more precisely I suspect that it is due to the fact that some facets of the convex hull may be very similar.
>
> Do you know a way to solve that or to understand why the value explodes sometimes ?
>

How can we possibly know why your code explodes,
what it does?

The crystal ball is foggy these days.


> I have tried to look to the precision options of qhull, like QJ or Qt but it didn't help me that much since the final price doesn't really change when I change the precision options.
>
> Maybe someone knows a little bit better about the precision options of qhull ?

The options of the convex hull are immaterial.

Does the code fail to produce the convex hull?
If no failure was seen, then those options will
not help you. When problems arise with a convex
hull anyway, it is generally a problem with your
data. Precision is not the issue.

So perhaps you should look at your data. Do you
have replicate points? Or points that are so near
replicated that they are essentially replicates?

Do you have collinear points? Perhaps many
coplanar points?

Are you getting warnings? This is usually a signal
that one of the things I mentioned above exist.

John
From: Samy Hocini on
> The options of the convex hull are immaterial.
>
> Does the code fail to produce the convex hull?
> If no failure was seen, then those options will
> not help you. When problems arise with a convex
> hull anyway, it is generally a problem with your
> data. Precision is not the issue.

The code does not fail to produce the convex hull.

> So perhaps you should look at your data. Do you
> have replicate points? Or points that are so near
> replicated that they are essentially replicates?
>
> Do you have collinear points? Perhaps many
> coplanar points?
The data I use are points generated by the Gilles Pagès and Jacques Printems quantization grid of the standard normal distribution.
So do you think I can still have replicate or coplanar points ?

> Are you getting warnings? This is usually a signal
> that one of the things I mentioned above exist.
I don't get any warnings...

In fact it's when I vary the number of points of whom I want to determine the convex hull that it can explode...sorry, I don't know why I didn't tell you that before.

So if p is this number of points, p is also the number of rows of the input matrix, and depending on the value of this parameter, the price of the option can explode.


(I'm using Matlab 7.5.0 R2007b).

Samy.
From: John D'Errico on
"Samy Hocini" <masy07(a)wanadoo.fr> wrote in message <i1qs3v$p3i$1(a)fred.mathworks.com>...
> > The options of the convex hull are immaterial.
> >
> > Does the code fail to produce the convex hull?
> > If no failure was seen, then those options will
> > not help you. When problems arise with a convex
> > hull anyway, it is generally a problem with your
> > data. Precision is not the issue.
>
> The code does not fail to produce the convex hull.

So then building the convex hull is not the problem.

The resulting convex hull is causing problems for you.
But that is merely a function of your data. Garbage in,
garbage out.


> > So perhaps you should look at your data. Do you
> > have replicate points? Or points that are so near
> > replicated that they are essentially replicates?
> >
> > Do you have collinear points? Perhaps many
> > coplanar points?
> The data I use are points generated by the Gilles Pagès and Jacques Printems quantization grid of the standard normal distribution.
> So do you think I can still have replicate or coplanar points ?

Surely you can determine whether there are replicate
points? What is the distance to the nearest neighbor
for any given point?

Compute the are of the resulting triangles. Are there
degenerate simplexes in the hull?

John
From: Samy Hocini on
> Surely you can determine whether there are replicate
> points? What is the distance to the nearest neighbor
> for any given point?

The mean distance between two points is 1.0183 when I have 100 points in 3D.
What do you think about that ? Can some points be considered as replicated in this case ?

> Compute the area of the resulting triangles.
How do I do this please ?

>Are there degenerate simplexes in the hull?
How do I know if there are degenerate simplexes ?

Thanks for your help.

Samy.