Click or drag to resize

MonteCarlo Class

Implementation of Monte-Carlo methods for option valuation. Custom option style and price model are feasible.
Inheritance Hierarchy
SystemObject
  FinMath.DerivativesOptionValuation
    FinMath.DerivativesMonteCarlo

Namespace:  FinMath.Derivatives
Assembly:  FinMath (in FinMath.dll) Version: 2.4.7-0a995bd0ea1854c2c868ec3f8dae606c5777e170
Syntax
C#
public class MonteCarlo : OptionValuation

The MonteCarlo type exposes the following members.

Constructors
  NameDescription
Public methodMonteCarlo
Constructor without parameters. Acceleration is disabled.
Public methodMonteCarlo(Boolean, Int32)
Constructor that defines which greeks should be saved for fast recomputation. Note that at each query for any of saveable greeks all of them will be computed if needed.
Top
Properties
  NameDescription
Public propertyBasisFunctions
Number of basis functions for least square approximation.
Public propertyCharm
Charm, or delta decay, measures the instantaneous rate of change of delta over the passage of time.
(Inherited from OptionValuation.)
Public propertyColor
Color, or gamma decay, measures the rate of change of gamma over the passage of time.
(Inherited from OptionValuation.)
Public propertyDelta
Delta measures the rate of change of option value with respect to changes in the underlying asset's price.
(Inherited from OptionValuation.)
Public propertyExercisePayoutFunction
Exercise payout function for custom option style.
Public propertyExpectedReturn
Expected return of the underlying asset. Used for geometric brownian price model.
Public propertyGamma
Gamma measures the rate of change in the delta with respect to changes in the underlying price.
(Inherited from OptionValuation.)
Public propertynextPrice
Next price function. Used for custom price model.
Public propertynextVolatility
Next volatility function. Used for custom price model.
Public propertyOptionStyle
Option style.
(Inherited from OptionValuation.)
Public propertyOptionType
Type of option.
(Inherited from OptionValuation.)
Public propertyPriceModel
Price model used for price paths generation.
Public propertyPricePaths
Number of price paths.
Public propertyRandomGenerator
Random generator used for prices paths generation.
Public propertyRho
Rho, the derivative of the option value with respect to the risk free rate.
(Inherited from OptionValuation.)
Public propertySpeed
Speed measures the rate of change in Gamma with respect to changes in the underlying price.
(Inherited from OptionValuation.)
Public propertySteps
Number of time steps.
Public propertyStockPrice
Stock price of the underlying asset.
(Inherited from OptionValuation.)
Public propertyStrikePrice
Strike price of the underlying asset.
(Inherited from OptionValuation.)
Public propertyTheta
Theta measures the sensitivity of the value of the derivative to the passage of time: the "time decay".
(Inherited from OptionValuation.)
Public propertyTimeToMaturity
Time to the expiration date measured in years.
(Inherited from OptionValuation.)
Public propertyValue
Value of the option.
(Inherited from OptionValuation.)
Public propertyVanna
Vanna, the second derivative of the option value with respect to the volatility.
(Inherited from OptionValuation.)
Public propertyVega
Vega, the derivative of the option value with respect to the volatility of the underlying asset.
(Inherited from OptionValuation.)
Public propertyVolatility
Volatility of the underlying asset.
(Inherited from OptionValuation.)
Public propertyZomma
Zomma measures the rate of change of gamma with respect to changes in volatility.
(Inherited from OptionValuation.)
Top
Methods
  NameDescription
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public methodGetAnnualDividendYield
Get annual dividend yield.
(Inherited from OptionValuation.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetRiskFreeRate
Get risk-free interest rate.
(Inherited from OptionValuation.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodInitByVolatility
Initializes object by option parameters.
Public methodRecomputeValue
Forces to compute value of option using new prices paths.
Public methodSetAccelerationGranularity
Sets acceleration granularity. Clears all computed values.
(Inherited from OptionValuation.)
Public methodSetAccelerationMemoryUsage
Changes acceleration RAM usage. Clears all computed values.
Public methodSetAnnualDividendYield
Set annual dividend yield (e.g. value 0.02 means that yearly dividends income equals to 2 % of the underlying asset stock price). All computed values are forgotten after this change.
(Inherited from OptionValuation.)
Public methodSetCustomOptionPayoutFunction
Sets custom option payout function. This function is used if and only if option style is OptionStyle.Other. Clears all computed values.
Public methodSetCustomPriceModelFunctions
Sets custom price model functions. This functions are used if and only if price model is PriceModel.Other. Clears all computed values.
Public methodSetRiskFreeRate
Set risk-free interest rate (e.g. value 0.02 means that yearly risk-free income equals to 2 % of initial money amount if there is no capitalization of interest). All computed values are forgotten after this change.
(Inherited from OptionValuation.)
Public methodSpecifyExpectedReturn
Sets custom expected return for geometric brownian price model. Clears all computed values.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodUpdate
Updates option parameters.
(Inherited from OptionValuation.)
Public methodUpdateByOptionPrice(Double, Double)
Updates option parameters.
(Inherited from OptionValuation.)
Public methodUpdateByOptionPrice(Double, Double, Double)
Updates option parameters.
(Inherited from OptionValuation.)
Public methodUpdateByOptionPrice(Double, Double, Double, Double)
Updates option parameters.
(Inherited from OptionValuation.)
Public methodUpdateByVolatility(Double, Double)
Updates option parameters.
(Inherited from OptionValuation.)
Public methodUpdateByVolatility(Double, Double, Double)
Updates option parameters.
(Inherited from OptionValuation.)
Public methodUpdateByVolatility(Double, Double, Double, Double)
Updates option parameters.
(Inherited from OptionValuation.)
Top
See Also