Page 1 of 1

Finding the ATM Strike Price of a Vanilla Option

Posted: July 12th, 2012, 4:03 pm
by JRobinson
I would like to find the at-the-money (ATM) strike price of a vanilla option given the underlying price, the implied volatility, the risk-free rate, the dividend yield, and the time-to-expiration of some option on the underlier. I think this is called the implied ATM Strike Price.My best solution so far uses the Secant Method to find the strike. I also use the Black-Scholes delta formula to calculate my initial guesses for the ATM strike. Here's my process:1) Use Black-Scholes to estimate the ATM strike. This uses the fact that an ATM option has a delta of 0.5 for calls and -0.5 for puts. The formula is:X = exp( ln(forward) + (impVol ^ 2 / 2 * T) )X = strikeT = the time-to-expiration in yearsS = the underlying stock priceRf = the risk-free rateforward = S * exp(( Rf - DivYield) * T )2) Double the strike price (X) from the previous step to use a guess that is definitely higher than the ATM strike price. Call this X0. Halve the strike price to use as a guess that is definitely lower than the ATM strike price. Call this X2.3) Start the Secant Method: Calculate the delta using strike price X0, subtract 0.5 from it, and call this D0. Calculate the delta at X2, subtract 0.5 from it, and call this D2. Fit a line to (X0, D0) and (X2, D2). The x-intercept will be between X0 and X2. Call the x-intercept X1.3a) If D0 is within an epsilon of zero, X0 is the ATM strike price. Return X0. If D2 is within an epsilon of zero, X2 is the ATM strike price. Return X2.4) Calculate the delta using strike price X1, subtract 0.5 from it, and call this D1.4a) If D1 is within an epsilon of zero, X1 is the ATM strike price. Return X1.5) Fit a line to (X0, D0) and (X1, D1). Call the slope of this line M01. Fit a line to (X1, D1) and (X2, D2). Call the slope of this line M12.6) The line with the steeper slope will have a slope with a higher absolute value: Max( Abs(M01), Abs(M12) ). Use the x-coordinates of this line as the new X0 and X2. Go to step 3.Notes:* In steps 3 and 4, I'd add 0.5 for puts options rather than subtract 0.5.* I initially tried to use the Newton-Raphson root-finding method but I ran into problems when calculating tangent lines for strikes that were far from the ATM strike. Due to rounding, my tangent lines were flat. In reality, the tangent lines have some non-zero slope, but my precision couldn't handle numbers that small apparently. This is why I settled on a root-finding method that involves two points that clearly bracket the root.* I think that my method is actually a modification of the Secant Method. The graphs that I have been drawing in my notebook look similar to the graph on the Wikipedia page: http://en.wikipedia.org/wiki/Secant_method* I am using an extended trinomial model to calculate deltas.* I haven't decided if I should round my result to zero or one decimal places. Less volatile stocks may have option strikes every $0.50, so the ATM strike might be $9.50.Is there a better way to determine the ATM strike price of a vanilla option using the information I'm given?

Finding the ATM Strike Price of a Vanilla Option

Posted: July 12th, 2012, 4:19 pm
by acastaldo
QuoteThis uses the fact that an ATM option has a delta of 0.5 for calls and -0.5 for putsHmm, I thought the definition of ATM was just K=S

Finding the ATM Strike Price of a Vanilla Option

Posted: July 12th, 2012, 5:11 pm
by JRobinson
Maybe "fact" was too strong a word. The delta of vanilla ATM call options is about 0.5 (-0.5 for puts). I am setting the delta to exactly 0.5 and solving for the strike price. I'm simply asking if my method of solving for the strike price is a good one.

Finding the ATM Strike Price of a Vanilla Option

Posted: July 12th, 2012, 5:24 pm
by JRobinson
I got a little ahead of myself. I need to be able to solve for a strike given *any* delta, not just a delta of 0.5. For example, what is the closest strike price for a an option with a delta of 0.25? I'll have an implied volatility, a time-to-expiration, a risk-free rate, and an underlying stock price.As far as I know, I'll need to solve for this. I'm wondering what is the best method for doing so.

Finding the ATM Strike Price of a Vanilla Option

Posted: July 13th, 2012, 6:49 pm
by Collector
QuoteOriginally posted by: JRobinsonI got a little ahead of myself. I need to be able to solve for a strike given *any* delta, not just a delta of 0.5. For example, what is the closest strike price for a an option with a delta of 0.25? I'll have an implied volatility, a time-to-expiration, a risk-free rate, and an underlying stock price.As far as I know, I'll need to solve for this. I'm wondering what is the best method for doing so.This is in my articles Know Your Weapon 1 and 2, I think it is in 1, which is free to download somewhere here on Wilmott! (naturally also in both my books).yes this is often useful, u have the delta and want to find the strike, it is actually the way for example OTC FX options is quoted...but useful also for other options of course...