- java.lang.Object
-
- net.finmath.fouriermethod.models.BlackScholesModel
-
- All Implemented Interfaces:
CharacteristicFunctionModel,Model
public class BlackScholesModel extends Object implements CharacteristicFunctionModel
Implements the characteristic function of a Black Scholes model.- Version:
- 1.0
- Author:
- Christian Fries, Alessandro Gnoatto
-
-
Constructor Summary
Constructors Constructor Description BlackScholesModel(double initialValue, double riskFreeRate, double volatility)Create a Black Scholes model (characteristic function)BlackScholesModel(double initialValue, double riskFreeRate, double discountRate, double volatility)Create a Black Scholes model (characteristic function)BlackScholesModel(LocalDate referenceDate, double initialValue, DiscountCurve discountCurveForForwardRate, DiscountCurve discountCurveForDiscountRate, double volatility)Create a Black Scholes model (characteristic function)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CharacteristicFunctionapply(double time)Returns the characteristic function of X(t), where X isthisstochastic process.DiscountCurvegetDiscountCurveForDiscountRate()DiscountCurvegetDiscountCurveForForwardRate()doublegetDiscountRate()doublegetInitialValue()LocalDategetReferenceDate()doublegetRiskFreeRate()doublegetVolatility()StringtoString()
-
-
-
Constructor Detail
-
BlackScholesModel
public BlackScholesModel(LocalDate referenceDate, double initialValue, DiscountCurve discountCurveForForwardRate, DiscountCurve discountCurveForDiscountRate, double volatility)
Create a Black Scholes model (characteristic function)- Parameters:
referenceDate- The date representing the time t = 0. All other double times are followingFloatingpointDate.initialValue- \( S_{0} \) - spot - initial value of SdiscountCurveForForwardRate- The curve specifying \( t \mapsto exp(- r^{\text{c}}(t) \cdot t) \) - with \( r^{\text{c}}(t) \) the risk free ratediscountCurveForDiscountRate- The curve specifying \( t \mapsto exp(- r^{\text{d}}(t) \cdot t) \) - with \( r^{\text{d}}(t) \) the discount ratevolatility- \( \sigma \) the volatility level
-
BlackScholesModel
public BlackScholesModel(double initialValue, double riskFreeRate, double discountRate, double volatility)Create a Black Scholes model (characteristic function)- Parameters:
initialValue- \( S_{0} \) - spot - initial value of SriskFreeRate- \( r^{\text{c}} \) - the risk free ratediscountRate- \( r^{\text{d}} \) - the discount ratevolatility- \( \sigma \) the volatility level
-
BlackScholesModel
public BlackScholesModel(double initialValue, double riskFreeRate, double volatility)Create a Black Scholes model (characteristic function)- Parameters:
initialValue- \( S_{0} \) - spot - initial value of SriskFreeRate- \( r^{\text{c}} \) - the risk free ratevolatility- \( \sigma \) the volatility level
-
-
Method Detail
-
apply
public CharacteristicFunction apply(double time)
Description copied from interface:CharacteristicFunctionModelReturns the characteristic function of X(t), where X isthisstochastic process.- Specified by:
applyin interfaceCharacteristicFunctionModel- Parameters:
time- The time at which the stochastic process is observed.- Returns:
- The characteristic function of X(t).
-
getReferenceDate
public LocalDate getReferenceDate()
- Returns:
- the referenceDate
-
getInitialValue
public double getInitialValue()
- Returns:
- the initialValue
-
getDiscountCurveForForwardRate
public DiscountCurve getDiscountCurveForForwardRate()
- Returns:
- the discountCurveForForwardRate
-
getRiskFreeRate
public double getRiskFreeRate()
- Returns:
- the riskFreeRate
-
getDiscountCurveForDiscountRate
public DiscountCurve getDiscountCurveForDiscountRate()
- Returns:
- the discountCurveForDiscountRate
-
getDiscountRate
public double getDiscountRate()
- Returns:
- the discountRate
-
getVolatility
public double getVolatility()
- Returns:
- the volatility
-
-