Tài chính doanh nghiệp - Topic 13B: Bsm option greeks and dynamic delta hedging

Dynamic hedging is an active hedging strategy where the delta positions are adjusted continuously (or at least daily) Since option gamma’s are nonzero, the deltas will change as the underlying stock price changes.

pptx30 trang | Chia sẻ: huyhoang44 | Lượt xem: 486 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Tài chính doanh nghiệp - Topic 13B: Bsm option greeks and dynamic delta hedging, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Financial Modeling Topic #13b: BSM option Greeks and Dynamic Delta HedgingL. Gattis1Learning ObjectivesCompute and utilize BSM greeks to estimate value changeUnderstand the risks of option trading strategiesSimulated dynamic hedging strategies of options23Trade: Buy or Sell the 615 MAR Call?Buy the call If you believe the implied volatility (and option price) are too low (Cheap) and you estimate the volatility will be closer to 28.99%If you buy the call at the implied volatility of 18.67%, you are now long volatility (option price will increase if vol estimates rise) and long the stock (call prices will rise if the underlying spot price rises)You could hedge the stock price risk by short selling shares of the underlying stock and leaving only exposure to volatility Short SalesShort sales involve (1) borrowing shares (usually from your broker)(2) selling the shares now to another party(3) buying the shares back at a later date(4) returning the borrowed sharesIf the price falls after you sell the shares, you profit because it is cheaper to buy them back and return to the share lenderExample: Short selling your friends Maserati 4Delta Hedging an OptionDelta hedging is the taking of a position in the option and the stock to hedge stock price risk and only take on volatility risk.Specifically, you delta hedge an option by taking a position (buy or short sell) a number of shares that has the same stock price sensitivity as the option.“Delta” is a term for the sensitivity of the option price with respect to changes in the underlying stock price. It is calculated by taking the first derivative of the BSM formula (BSCALL or BSPUT) w.r.t. the spot price of the underlying stock.For example, an ATM call option may have a delta of 0.5This means that if the underlying stock price increases by $1, the option will increase by $0.50So, you hedge the price risk of an option of 100 shares by shorting 50 shares of the stock.56BSM Option GreeksThe BSM greeks are partial derivatives of the BSM formula with respect to option parameters where C is the value of the option.Delta: C/sGamma 2C/s2Vega: C/vTheta: C/tRho: C/rWhat happens to option price when one input changes?Delta (D): change in option price when stock price increases by $1Gamma (G): change in delta when stock price increases by $1Vega (): change in option price when volatility increases by 1%Theta (q): change in option price when maturity decreases by 1 dayRho (r): change in option price when interest rate increases by 1%Black-Scholes-Merton FunctionsFunction BSCall(s, k, v, r, t, d) d_1 = (Application.Ln(s / k) + (r - d + (v ^ 2) / 2) * t) / (v * t ^ 0.5) nd1 = Application.NormSDist(d_1) d_2 = d_1 - v * t ^ 0.5 nd2 = Application.NormSDist(d_2)BSCall = s * Exp(-d * t) * nd1 - k * Exp(-r * t) * nd2End FunctionFunction BSPut(s, k, v, r, t, d) d_1 = (Application.Ln(s / k) + (r - d + (v ^ 2) / 2) * t) / (v * t ^ 0.5) minus_nd1 = Application.NormSDist(-d_1) d_2 = d_1 - v * t ^ 0.5 minus_nd2 = Application.NormSDist(-d_2)BSPut = -s * Exp(-d * t) * minus_nd1 + k * Exp(-r * t) * minus_nd2End Function78Implied Volatility VBA Functions Using a “Do While” LoopFunction putvol(s, k, r, t, d, mkt)hivol = 1 lovol = 0 Do While (hivol - lovol) > 0.0001 If BSPut(s, k, (hivol + lovol) / 2, r, t, d) > mkt Then 'if bsput > Mkt price hivol = (hivol + lovol) / 2 'lower vol Else: lovol = (hivol + lovol) / 2 'raise vol End If Loopputvol = (hivol + lovol) / 2End FunctionFunction callvol(s, k, r, t, d, mkt)hivol = 1 lovol = 0 Do While (hivol - lovol) > 0.0001 If BScall(s, k, (hivol + lovol) / 2, r, t, d) > mkt Then 'if bscall value is too high hivol = (hivol + lovol) / 2 'lower vol Else: lovol = (hivol + lovol) / 2 'raise vol End If Loopcallvol = (hivol + lovol) / 2End FunctionGreeks VBAFunction d1(s, k, v, r, t, d) d1 = (Application.Ln(s / k) + (r - d + (v ^ 2) / 2) * t) / (v * t ^ 0.5)End FunctionFunction d2(s, k, v, r, t, d) d2 = d1(s, k, v, r, t, d) - v * t ^ 0.5End FunctionFunction n_d1(s, k, v, r, t, d) n_d1 = Application.NormSDist(d1(s, k, v, r, t, d))End FunctionFunction n_d2(s, k, v, r, t, d) n_d2 = Application.NormSDist(d2(s, k, v, r, t, d))End FunctionFunction minus_n_d1(s, k, v, r, t, d) minus_n_d1 = Application.NormSDist(-d1(s, k, v, r, t, d))End FunctionFunction minus_n_d2(s, k, v, r, t, d) minus_n_d2 = Application.NormSDist(-d2(s, k, v, r, t, d))End FunctionFunction BSCallDelta(s, k, v, r, t, d) BSCallDelta = Exp(-d * t) * n_d1(s, k, v, r, t, d)End FunctionFunction BSPutDelta(s, k, v, r, t, d) BSPutDelta = BSCallDelta(s, k, v, r, t, d) - Exp(-d * t)End FunctionFunction BSCallGamma(s, k, v, r, t, d) BSCallGamma = Exp(-d * t) * StdNorm(d1(s, k, v, r, t, d)) / (s * v * t ^ 0.5)End FunctionFunction StdNorm(z) StdNorm = Exp(-z ^ 2 / 2) / (2 * Application.Pi) ^ 0.5End FunctionFunction BSPutGamma(s, k, v, r, t, d) BSPutGamma = BSCallGamma(s, k, v, r, t, d)End FunctionFunction BSCallVega(s, k, v, r, t, d) BSCallVega = Exp(-d * t) * s * t ^ 0.5 * StdNorm(d1(s, k, v, r, t, d)) / 100End FunctionFunction BSPutVega(s, k, v, r, t, d) BSPutVega = BSCallVega(s, k, v, r, t, d)End FunctionFunction BSCallRho(s, k, v, r, t, d) BSCallRho = t * k * Exp(-r * t) * n_d2(s, k, v, r, t, d) / 100End FunctionFunction BSPutRho(s, k, v, r, t, d) BSPutRho = BSCallRho(s, k, v, r, t, d) - t * k * Exp(-r * t) / 100End FunctionFunction BSCallTheta(s, k, v, r, t, d) BSCallTheta = (d * Exp(-d * t) * s * n_d1(s, k, v, r, t, d) - r * Exp(-r * t) * k * n_d2(s, k, v, r, t, d) _ - k * Exp(-r * t) * v * StdNorm(d2(s, k, v, r, t, d)) / (2 * t ^ 0.5)) / 252End FunctionFunction BSPutTheta(s, k, v, r, t, d) BSPutTheta = BSCallTheta(s, k, v, r, t, d) _ + (r * Exp(-r * t) * k - d * Exp(-d * t) * s) / 252End Function10Compute BS Option Values, Implied vols, and Option Greeks by inserting functions11Option GreeksCSΔ>0, Γ>0PSΔ0DeltaAndGamma12Using Greeks to estimate option price changesC1= C0 +Δ*(S1-S0) “duration” +Г*(.5*(S1-S0)^2) “convexity” +*(v1-v0)*100 +q*(days) +r*(r1-r0)*100 What is the change in price of the $615, 13-day call in 1 day if the stock price increases $1, volatility decreases 1.5% and the Treasury rate increases 0.5%? Use the Greeks.13Return Attribution: Using Greeks to allocate profits to risk sources$.02 difference due to interaction terms and higher order derivatives14Delta-Hedging Option PositionsDelta hedging a option involves maintaining a position of Δ shares to offset the risk of directional stock price changes. Delta hedging is also employed to profit from volatility bets. (betting that realized stock return volatility will be greater or less than the BS implied)Example: If you believe a call option is undervalued because the implied volatility is low (and option is cheap) compared to your estimate using GARCH, EWMA or another modelYou could buy (long) the call and profit if the call price rises when the price begins to reflect higher expected volatilityHowever, the call price may decline if the price of the underlying stock price declines.You now have two bets: Long Volatility and Long the StockYou can hedge the stock price risk by taking an offsetting position in the stock (Short sell delta shares of the underlying stock for a long call position)The option delta is the “hedge ratio”: number of shares of the underlying stock to short for each option position.15One-Day Delta Hedging with 1σ stock change Long 1 (Cheap) Call Option on 100 shares16One-Day Delta Hedging with 1σ stock change Long 1 (Cheap) Call Option on 100 sharesDelta Hedging and VolatilityIn the example, you are long the call and short the stockThe net position is delta-neutral (little exposure to stock price direction)However, the option has gamma (curvature / positive gamma adjustment) and the stock does notSo for large stock price changes in any direction-- the option gamma will benefit the positionWhen volatility is zero, the position loses theta daily (time value)The break even price change is approximately a 1SD daily change (theta = gamma adjustment)Stock PriceProfit+C-S0614.27C-S607Dynamic HedgingDynamic hedging is an active hedging strategy where the delta positions are adjusted continuously (or at least daily)Since option gamma’s are nonzero, the deltas will change as the underlying stock price changes.1819Dynamic Delta Hedging to Maturity: Actual Realized Stock Prices Copy Into Excel- Result: Overpaid for the option (18.67% implied Vol), realized = 15.1%, Lost money- Buying an option and delta hedging is a bet that volatility will be lower than implied20If realized vol was higher than implied, earn delta hedging profits.Dynamic Delta Hedging to Maturity: Theoretical Results if Realized volatility equal to 28.99% EstimateThis is a theoretical set of prices where the realized volatility is high (28.98%) and the delta hedging policy results in a profit.Delta Hedged ProfitsIn the last example the implied volatility was 18.67% and market price of call was $10.05Your estimated volatility of 28.99% returned a BSM model price of $15.80Buying and call and delta hedging the position, allowed you to profit from the higher realized volatilityThe delta hedged position profited each day when the change in stock prices was > 1σ.Most of the profit was made in 2 volatile days2122Delta-Hedging SimulationSimulate daily stock prices until maturity using Cont. Comp. GBM: Where h = 1/252, and Z~N(0,1)Assume you take a position in delta shares daily, “rebalancing” delta after each days stock price change (and decay)Assume realized volatility is the implied volatilityWe will later vary realized volatility to see your exposure to volatilityCompute the daily profits = Stock, Option, InterestLast day: calculate call payoff -max(St-K,0)*(100 shares) for callSimulate 1,000 times and compute the average cumulative profit23Simulation Macro and StocksimSub simul1000()Dim iFor i = 1 To 1000Cells(i + 1, 15) = Cells(11, 13)Cells(1, 15) = 1000 - iNext iEnd Sub'This is the continuous compounding version of GBM Stock SimFunction stocksim_cont(st, r, d, sd, h, z)stocksim_cont = st * Exp((r - d - 0.5 * sd ^ 2) * h + sd * z * h ^ 0.5)End Function24Dynamic Hedge Simulation Realized = Implied Vol / BreakevenEarn Profits when Change is > 1SD Move of 7.27 (long Vol)25Dynamic Hedge Simulation Realized = 2 x Implied VolDelta Hedge PositionsBuy Call / Short DeltaShort Sell Δ SharesSell Call / Long DeltaBuy Δ sharesBuy Put / Short DeltaBuy Δ SharesSell Put / Long DeltaShort Sell Δ Shares26Buying Options: Bet that option is undervalued. Profit if realized volatility > impliedSelling (“Writing”) Options: Bet that option is overvalued. Profit if realized volatility impliedSelling (“Writing”) Options: Bet that option is overvalued. Profit if realized volatility < impliedLearning ObjectivesCompute and utilize BSM greeks to estimate value changeUnderstand the risks of option trading strategiesSimulated dynamic hedging strategies of options30

Các file đính kèm theo tài liệu này:

  • pptxfinmod_13b_bsm_greeks_and_dynamic_delta_hedging_5275.pptx
Tài liệu liên quan