BlackCalculator Class Reference

Black 1976 calculator class. More...

`#include <ql/pricingengines/blackcalculator.hpp>`

Inheritance diagram for BlackCalculator:
[legend]

## Public Member Functions

| BlackCalculator (const boost::shared_ptr< StrikedTypePayoff > &payoff, Real forward, Real stdDev, Real discount=1.0)
| BlackCalculator (Option::Type optionType, Real strike, Real forward, Real stdDev, Real discount=1.0)
Real | value () const
Real | deltaForward () const
virtual Real | delta (Real spot) const
Real | elasticityForward () const
virtual Real | elasticity (Real spot) const
Real | gammaForward () const
virtual Real | gamma (Real spot) const
virtual Real | theta (Real spot, Time maturity) const
virtual Real | thetaPerDay (Real spot, Time maturity) const
Real | vega (Time maturity) const
Real | rho (Time maturity) const
Real | dividendRho (Time maturity) const
Real | itmCashProbability () const
Real | itmAssetProbability () const
Real | strikeSensitivity () const
Real | alpha () const
Real | beta () const

## Protected Member Functions

void | initialize (const boost::shared_ptr< StrikedTypePayoff > &p)

## Protected Attributes

Real | strike_
Real | forward_
Real | stdDev_
Real | discount_
Real | variance_
Real | d1_
Real | d2_
Real | alpha_
Real | beta_
Real | DalphaDd1_
Real | DbetaDd2_
Real | n_d1_
Real | cum_d1_
Real | n_d2_
Real | cum_d2_
Real | x_
Real | DxDs_
Real | DxDstrike_

## Friends

class | Calculator

## Detailed Description

Black 1976 calculator class.

Bug:
  When the variance is null, division by zero occur during the calculation of delta, delta forward, gamma, gamma forward, rho, dividend rho, vega, and strike sensitivity.

Examples:
  DiscreteHedging.cpp.

## Member Function Documentation

Real deltaForward | ( |  | ) | const

Sensitivity to change in the underlying forward price.

virtual Real delta | ( | Real | spot | ) | const

virtual

Sensitivity to change in the underlying spot price.

Real elasticityForward | ( |  | ) | const

Sensitivity in percent to a percent change in the underlying forward price.

virtual Real elasticity | ( | Real | spot | ) | const

virtual

Sensitivity in percent to a percent change in the underlying spot price.

Real gammaForward | ( |  | ) | const

Second order derivative with respect to change in the underlying forward price.

virtual Real gamma | ( | Real | spot | ) | const

virtual

Second order derivative with respect to change in the underlying spot price.

virtual Real theta | ( | Real | spot,
|  | Time | maturity
| ) |  | const

virtual

Sensitivity to time to maturity.

Real thetaPerDay | ( | Real | spot,
|  | Time | maturity
| ) |  | const

virtual

Sensitivity to time to maturity per day, assuming 365 day per year.

Real vega | ( | Time | maturity | ) | const

Sensitivity to volatility.

Real rho | ( | Time | maturity | ) | const

Sensitivity to discounting rate.

Real dividendRho | ( | Time | maturity | ) | const

Sensitivity to dividend/growth rate.

Real itmCashProbability | ( |  | ) | const

Probability of being in the money in the bond martingale measure, i.e. N(d2). It is a risk-neutral probability, not the real world one.

Real itmAssetProbability | ( |  | ) | const

Probability of being in the money in the asset martingale measure, i.e. N(d1). It is a risk-neutral probability, not the real world one.

Real strikeSensitivity | ( |  | ) | const

Sensitivity to strike.