ET News & Sponsor Info
General Topics
Technical Topics
Brokerage Firms
Tools of the Trade
Trading for a Living
Community Lounge
Site Support

# probability distribution formula?

Discussion in 'Options' started by xpsyuvz, Jan 25, 2005.

1. ### xpsyuvz

I'm looking for a math formula that can give me the probability that a stock price will reach (or move beyond) a certain target price within a certain time frame.

I'm imagining this formula would be something a "one touch" exotic option calculator would use. Where is takes into consideration things like:
Current stock price
Target strike price
Volatility
Risk Free interest
Time duration
etc.

Can anybody help me with this? (I would also be interested in free or low cost calculators that can do this, but I think in the end I also want the actual formula).

3. ### bundlemaker

In order to create a probablity function you need to analyze a frequency distribution. There is no one formula to do this. You can run any number of statistical studies on the distribution, and you can vary how you define the distribution. This is really what auction market theory (what Market Profile has evolved into) is all about. But, it's not nearly as simple as just coming up with "the" formula to determine probablity of something happening. I'd recommend studying statistics, probablity, and game theory; and start getting comfortable with Excel.

4. ### xpsyuvz

petefern,

Actually that calculator was pretty much what I'm looking for, so thanks.

For anyone interested: I also found another calculator here:
(Unfortunately it only let's you calculate a few times per hour -- as its only a demo.)

I noticed that the two calculators give quite different values for the "probability of touching a barrier at any time during the period". I think the hoadley one is more accurate -- as I believe this probability should be about double the "probability of finishing above the target". (The optionvue gave me numbers that seemed way too high.)

bundlemaker,
Yeah, I guess a "single" formula would be too easy...

That auction market theory stuff sounds interesting - I'll have to look into that.

5. ### Profitaker

I too am looking for a formula that will calculate a probability that a stock / index price will âtouchâ a level at ANYTIME given Spot price / Target price / Time to Exp / Volatility. The calculator links above are useful, but not what Iâm looking for â I need the formula(s).

There is such a formula â if not then the only way that either of those on-line calculators could produce a probability figure would be using Monte-Carlo simulation, and theyâre far too quick for that to be the case.

Any pointers ?

6. ### gbos

Probability formulas in the attached pdf file...

File size:
101.3 KB
Views:
526
7. ### gbos

Also this is the basic code implementation of the formulas....

Regards

Function snorm(z As Double) as double
Dim pi as double
pi=3.14159265358979
Dim a1 as double,a2 as double,a3 as double,a4 as double,a5 as double,k as double,w as double
a1 = 0.31938153
a2 = -0.356563782
a3 = 1.781477937
a4 = -1.821255978
a5 = 1.330274429
If 0 > z Then w = -1 Else w = 1
k = 1 / (1 + 0.2316419 * w * z)
snorm = 0.5 + w * (0.5 - 1 / Sqr(2 * pi) * Exp(-z ^ 2 / 2) * (a1 * k + a2 * k ^ 2 + a3 * k ^ 3 + a4 * k ^ 4 + a5 * k ^ 5))
End Function

' m drift
' s standard deviation
' t time
' H up barrier
' L down barrier
' K1,K2 barriers
' ST starting price

' ProbPTBB probability at time t the price is below the barrier
' ProbPTUB probability at time t the price is above the barrier
' ProbMaxPTUB probability at any time until t max price is crossing above the up barrier
' ProbMaxPTBB probability at any time until t max price is below the barrier
' ProbMinPTBB probability at any time until t min price is crossing bellow the down barrier
' ProbMinPTUB probability at any time until t min price is above the down barrier
' ProbFPBBMaxPTUB probability final price is below K1 and max price is crossing above the up barrier
' ProbFPUBMinPTBB probability final price is above K2 and min price is crossing below the down barrier

Function ProbPTBB(m as double, s as double, t as double, H as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbPTBB=snorm((log(H/ST)-MM*t)/(s*sqr(t)))
End Function

Function ProbPTUB(m as double, s as double, t as double, H as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbPTUB=1-snorm((log(H/ST)-MM*t)/(s*sqr(t)))
End Function

Function ProbMaxPTUB(m as double, s as double, t as double, H as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbMaxPTUB=snorm((-log(H/ST)+MM*t)/(s*sqr(t)))+((H/ST)^(2*MM/s^2))*snorm((-log(H/ST)-MM*t)/(s*sqr(t)))
End Function

Function ProbMaxPTBB(m as double, s as double, t as double, H as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbMaxPTBB=1-(snorm((-log(H/ST)+MM*t)/(s*sqr(t)))+((H/ST)^(2*MM/s^2))*snorm((-log(H/ST)-MM*t)/(s*sqr(t))))
End Function

Function ProbMinPTBB(m as double, s as double, t as double, L as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbMinPTBB=snorm((log(L/ST)-MM*t)/(s*sqr(t)))+((L/ST)^(2*MM/s^2))*snorm((log(L/ST)+MM*t)/(s*sqr(t)))
End Function

Function ProbMinPTUB(m as double, s as double, t as double, L as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbMinPTUB=1-(snorm((log(L/ST)-MM*t)/(s*sqr(t)))+((L/ST)^(2*MM/s^2))*snorm((log(L/ST)+MM*t)/(s*sqr(t))))
End Function

Function ProbFPBBMaxPTUB(m as double, s as double, t as double, H as double, K1 as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbFPBBMaxPTUB=((H/ST)^(2*MM/s^2))*snorm((log(K1/ST)-2*log(H/ST)-MM*t)/(s*sqr(t)))
End Function

Function ProbFPUBMinPTBB(m as double, s as double, t as double, L as double, K2 as double, ST as double) as double
Dim MM as double
MM=m-s^2/2
ProbFPUBMinPTBB=((L/ST)^(2*MM/s^2))*snorm((-log(K2/ST)+2*log(L/ST)+MM*t)/(s*sqr(t)))
End Function

8. ### Profitaker

gbos

Brilliant ! Many thanks.

9. ### nonprophet

There's a simple formula for so-called "confidence intervals":

expected range =
(#st.devs) * stock * (annualized) volatility * sqrt(#days/365)

e.g.
1 st.dev
stock at \$30
volatility 40%
1 day

exp. range = 1*30*0.4*0.052 = 0.63

So this stock would be expected to trade within +/- 0.63 points the following 1 day, with a 1 st.dev (= 67%) confidence.

Of course there is a choice of input volatility: historical volatility (which lookback period?) or stock's options IV?

10. ### nononsense

Hi gbos,

Thank you for the formula and the interesting pointers.

In your formula, I believe that you assume that the underlying process of the issue is Brownian Motion. Is this valid for let's say index futures in a short timeframe (0.5 to 1min)?

How do you actually get at your formula for your snorm function? Correct me if I am wrong, but I thought that in computing the different probabilities you dropped one or two terms as compared to Thorp.

Thank you,
nononsense

#10     Mar 13, 2005
WHILE YOU'RE HERE, TAKE A MINUTE TO VISIT SOME OF OUR SPONSORS: