AmericanBinomPut_Greeks

Purpose

Computes Delta, Gamma, Theta, Vega, and Rho for American put options using the binomial method.

Format

{ d, g, t, v, rh } = AmericanBinomPut_Greeks(S0, K, r, div, tau, sigma, N)
Parameters:
  • S0 (scalar) – current price.
  • K (Mx1 vector) – strike prices.
  • r (scalar) – risk free rate.
  • div (scalar) – continuous dividend yield.
  • tau (scalar) – elapsed time to exercise in annualized days of trading.
  • sigma (scalar) – volatility.
  • N (scalar) – number of time segments. A higher number of time segments will increase accuracy at the expense of increased computation time.
Returns:
  • d (Mx1 vector) – delta.
  • g (Mx1 vector) – gamma.
  • t (Mx1 vector) – theta.
  • v (Mx1 vector) – vega.
  • rh (Mx1 vector) – rho.

Global Input

_fin_thetaType scalar, if 1, one day look ahead, else, infinitesmal. Default = 0.
_fin_epsilon scalar, finite difference stepsize. Default = 1e-8.

Examples

S0 = 305;
K = 300;
r = .08;
div = 0;
sigma = .25;
tau = .33;

print AmericanBinomPut_Greeks(S0, K, r, 0, tau, sigma, 60);

produces

 -0.37483952
0.0031359210
  0.99863719
   65.800721
  -31.075062

Remarks

The binomial method of Cox, Ross, and Rubinstein (“Option pricing: a simplified approach,” Journal of Financial Economics, 7:229:264) as described in Options, Futures, and other Derivatives by John C. Hull is the basis of this procedure.