• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Brownian motion

Joined
11/11/09
Messages
52
Points
18
hi
any idea how to solve this prob :
P(B3<B1<B2)
where Bt is a standard Brownian motion.
thanks
 
Assuming B1, B2 and B3 are iid BM, you should be able to answer this by appealing to symmetry. P(B1<B2<B3) = P(B1<B3<B2) = ... Six such permutations, hence the answer is 1/6.
 
thanks koupparis
but are they iid ? we have
B1 ~ N (0 , 1)
B2 ~ N (0 , 2)
B3 ~ N (0 , 3)
!!
 
Ahh OK that's different. Didn't know you were implying that. Seems that the problem can then be simplified a little. Recall B_t - B_s ~ N(0,t-s). Try to work it from there.
 
thanks koupparis
but are they iid ? we have
B1 ~ N (0 , 1)
B2 ~ N (0 , 2)
B3 ~ N (0 , 3)
!!

If the variables are normally distributed then it has already been assumed that they should follow some distribution. In this case the model fitted is the normal distribution. While analyzing the data, what do you do first??? Check if they are iid to fit some model of distribution. If they are not iid and for example you concluded they are time series (like stock prices) then what model are you applying???
That wouldn't be a statistical distribution but try to find some dependence on time. In your particular case the normal distribution is already gives so they are identically independently distributed random variables.
 
They are not identically distributed Tsotne. I think this is more of a number/theoretical exercise than a real application. This is just a simple integral that needs to be computed.
 
They are not identically distributed Tsotne. I think this is more of a number/theoretical exercise than a real application. This is just a simple integral that needs to be computed.
first I tried the integral method by conditioning on ... but it gets nasty by having the CDF of normal distribution as the integrand of a double integral. so we need approximation and ...
 
They are not identically distributed Tsotne. I think this is more of a number/theoretical exercise than a real application. This is just a simple integral that needs to be computed.

It's a simple integral that needs to be computed provided that we already have been given that integral and care not with the background. When you say that it's not a real application I completely agree since in real application you have to define whether the data you are analyzing is iid or time series or neither in order to fit the model. I got your point you are true.
 
first I tried the integral method by conditioning on ... but it gets nasty by having the CDF of normal distribution as the integrand of a double integral. so we need approximation and ...

Do you have trouble in computing the double integral or need some kind of approximation algorithms?
 
Untitled.png
 
Do you have trouble in computing the double integral or need some kind of approximation algorithms?
I think I have to compute this integral
Untitled.png

it needs some approx., but my profs. said that you should get a specific number ....
 
P(B3<B2 | B2>B1, B1>B3) =1 since you already know that condition already B3<B1<B2.

So if you write P(B3<B2) * P(B2>B1, B1>B3) which is your outcome in line 3 of code, that's gonna break since the assumption is false. So you are not gonna get any frictional number in the probability. N(0) = 0.2667 is not reachable from the first part of the statement. Not sure though...
redface.png
 
BTW, why not using MC integral evaluation method for approximation purpose since you have integral to evaluate on unbounded scale?!
 
P(B3<B2 | B2>B1, B1>B3) =1 since you already know that condition already B3<B1<B2.

So if you write P(B3<B2) * P(B2>B1, B1>B3) which is your outcome in line 3 of code, that's gonna break since the assumption is false. So you are not gonna get any frictional number in the probability. N(0) = 0.2667 is not reachable from the first part of the statement. Not sure though...:oops:

you are right. I have to change the order and try again
why N(0) = 0.2667?? it is 0.5
 
why N(0) = 0.2667?? it is 0.5

If we took my version of path than that'd be 0.2667 but as I said I'm not sure if it's true...
As for Monte Carlo method for integration, Ill upload the PDF here. In Brownian cases it's very common to use multiple integrals and so it's useful (especially its fast when coding) but now in your case since you are evaluating on one dimension than any approximation algorithms are possible.
As for unbounded integrals the way is to rescale the integrand into manageable scale of [-1,1] as Gauss-Legendre algorithm does and integrate over that integral.
 

Attachments

  • mc5nc.pdf
    913 KB · Views: 31
I dont know about the method!!! :)
BTW, Im currently programming the MC integration in C++/C#. Made quite a big code and seems hard to maintain. Ill do the checking tomorrow and I'll upload it here if needed since that'll give much flexibility in numerical integration over multiple dimensions.
 
Hm, cool problem.
...but the answer I initially had was wrong. Too bad, really.
 
Okay, as it turns out the original post had the right idea, but after a crazy day my execution was a little off.

As I understand the problem, (B_1) is a bit of a red herring. We're looking essentially for the probability that the second Brownian increment (x=B_2-B_1 > 0) and then the third Brownian increment (y = B_3-B_2 < -x). Given (x), the probability (P(y < -x) = N(-x)); all we have to do is integrate over all (x) that satisfy the initial condition, weighted by the probability of that outcome, to get the answer.

In other words, we want to evaluate the integral:
(\int_{0}^{+\infty} N'(x)N(-x) dx)

By symmetry, we see that...
(\int_{0}^{+\infty} N'(x)N(-x) dx = \int_{0}^{+\infty} N'(x)[1-N(x)] dx)
(=\int_{0}^{+\infty}N'(x)dx - \int_{0}^{+\infty} N'(x)N(x)dx = \frac{1}{2} - \int_{0}^{+\infty} N'(x)N(x)dx)

That second integral can be done pretty easily (try it by parts) and is equal to (\frac{3}{8}), giving the eventual answer of (\frac{1}{8}).

That final answer actually makes intuitive sense. After all, the simple probability that (x > 0) and then (y < 0) is (\frac{1}{4}). Now, take some path (i) satisfying this condition, and suppose arbitrarily that (x_i > -y_i); then in this case our condition is not satisfied. However, for each such path we can identify an equally probable path by just swapping the values (x_{i'} = -y_i, y_{i'} = -x_i) that does satisfy the condition.

So, among our universe of (\frac{1}{4}) of all possible paths, there is a one-to-one correspondence between paths that satisfy the desired conditions and ones that don't. Since the set of paths ending exactly at zero is of zero measure, we conclude that the probability of satisfying the condition we want is (\frac{1}{8}).
 
Back
Top