probability distribution formula?

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

  1. xpsyuvz

    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).
     
  2. 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.
     
  3. xpsyuvz

    xpsyuvz

    petefern,

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

    For anyone interested: I also found another calculator here:
    http://www.hoadley.net/options/barrierprobs.aspx
    (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.
     
  4. 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 ?
     
  5. gbos

    gbos

    Probability formulas in the attached pdf file...
     
    • gbm.pdf
      File size:
      101.3 KB
      Views:
      570
  6. gbos

    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
     
  7. gbos

    Brilliant ! Many thanks.
     
  8. 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?
     
  9. 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