How would I price an option when the underlying security is unable to trade above a certain price? I assumed this would be as simple as restricting the limits of integration of the PDF to B (the barrier) instead of infinity but it doesn't work.

For example, if the present price is 30, the barrier is 40, and the strike is 35 then the option price will never exceed $5. If the strike exceeds the barrier the call option is always worthless.

After 5 days and numerous attempts it works for all all possible prices, barriers and strikes

Define barrier to be $p_d$

Strike $p_s$

Present price $p_1$


$p_s \le p_b$

if $p_b \le p_s$ the option is worthless

The barrier has two effects: it makes calls cheaper for all strikes and it can restrict the maximum call price from $p_1$ to something less

But the barrier itself is not a barrier option meaning that the option doesn't become worthless if it's crossed.

The maximum call price $m$ is:



Where H is the heaviside function

This can be tested plugging in various barriers, strikes, and initial prices. If $p_1=30,p_s=35,p_d=40$ then $m=5$

In general, if $p_1 \le p_d-p_s$ then $m=p_1$

And otherwise $m=p_d-p_s$

Between the strike and the barrier you have a restricted black-scholes :



$\int_{p_s}^{p_b}{\frac{e^{-rt}(y-p_s)}{ay\sqrt{2\pi}}\exp{\left[-\frac{(\ln(y) - u)^2}{2a^2 }\right]}}\,dy$

As $p_b \to \infty$ you have the classic black-scholes.

As $\alpha,r,t \to \infty$ it goes to zero and the maximum theroetical price $m$ takes over. Otherwise the call is somewhere in-between.

Probability of expiring above the barrier:

$N(d_1)=\int_{p_d}^{\infty}{\frac{e^{-rt}}{p_1a\sqrt{2\pi}}\exp{\left[-\frac{(\ln(y) - u)^2}{2a^2 }\right]}}\,dy$

And a probability below it: $1-N(d_1)$

Evaluating the integrals and substituting:

$\begin{align} d_1 &= \frac{1}{\alpha\sqrt{t}}\left[\ln\left(\frac{p_1}{p_d}\right) + \left(r + \frac{\alpha^{2}}{2}\right)t\right] \\ d_2 &= \frac{1}{\alpha\sqrt{t}}\left[\ln\left(\frac{p_1}{p_d}\right) + \left(r - \frac{\alpha^{2}}{2}\right)t\right] \\ d_3 &= \frac{1}{\alpha\sqrt{t}}\left[\ln\left(\frac{p_1}{p_s}\right) + \left(r + \frac{\alpha^{2}}{2}\right)t\right] \\ d_4 &= \frac{1}{\alpha\sqrt{t}}\left[\ln\left(\frac{p_1}{p_s}\right) + \left(r - \frac{\alpha^{2}}{2}\right)t\right] \\ \end{align} $

The call is:


  • $\begingroup$ Why didn't it work? $\endgroup$
    – Bob Jansen
    Commented Jan 18, 2014 at 19:32
  • $\begingroup$ Just to be sure: the price can not reach a certain level. Your setting is different from a knock-out option, where the price is unbounded, but the option becomes worthless. $\endgroup$
    – Richi Wa
    Commented Jan 20, 2014 at 12:15
  • $\begingroup$ What was the solution? $\endgroup$
    – user1157
    Commented Jan 23, 2014 at 10:05
  • $\begingroup$ three integrals...i'll post it soon $\endgroup$
    – quantus
    Commented Jan 23, 2014 at 10:11
  • $\begingroup$ Wouldn't you need to specify the process of the security for this? To get specific answers it might also help to describe what kind of options you would like to consider and last but not least what you mean by "to price", e.g. explicit expression an anlytic solution or an approximation. $\endgroup$
    – g g
    Commented Jan 23, 2014 at 12:51

2 Answers 2


Well first we would have to write a stochastic process taking values on a bounded space in the real numbers. Check out the dynamics proposed by Detemple, Garcia and Rindisbacher (2003). They call it the NMRCEV process see equation 23 page 12. Essentially just think of it as an extended CEV Ornstein-Uhlenbeck process which is bounded.

A slightly easier dynamics to use might be something like, assume the risk neutral dynamics are given by something

$$ dS_t = (\kappa(1_{S_t < 0} - 1_{S_t > U}) + r) dt + \sigma dW_t(1_{S_t > 0}1_{S_t < U}) $$

I think that creates an absorbing state at the upper barrier for any non-zero interest rate but that may or may not be desirable. For anything resembling no arbitrage, it's likely required. You can price with and without $r$ and see the difference.

Then you could just use Monte Carlo simulation to price the option or better yet under the right assumptions there is no reason you couldn't write those expectations as integrals of the standard normal density.


There is something called a 'capped option' which does have a restricted domain. There are a couple versions of this, some of which use the method of images combined with automatic exercise at the barrier. It doesn't tell you how existing options behave under the introduction of a barrier in the context of put call parity


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.