Class Bond
java.lang.Object
net.finmath.montecarlo.AbstractMonteCarloProduct
net.finmath.montecarlo.interestrate.products.AbstractTermStructureMonteCarloProduct
net.finmath.montecarlo.interestrate.products.Bond
- All Implemented Interfaces:
Product, TermStructureMonteCarloProduct, MonteCarloProduct
This class implements the valuation of a zero coupon bond, P(T).
- Version:
- 1.1
- Author:
- Christian Fries
-
Constructor Summary
ConstructorsConstructorDescriptionBond(double maturity) Bond(LocalDateTime referenceDate, double maturity) Create a zero coupon bond with maturity T. -
Method Summary
Modifier and TypeMethodDescriptiondoublegetValue(double evaluationTime, TermStructureMonteCarloSimulationModel model) This method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime.voidsetMaturity(double maturity) toString()Methods inherited from class AbstractTermStructureMonteCarloProduct
getFactorDrift, getValue, getValueForModifiedData, getValuesMethods inherited from class AbstractMonteCarloProduct
getCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedDataMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface MonteCarloProduct
getCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData
-
Constructor Details
-
Bond
Create a zero coupon bond with maturity T. Here T is specified as a double offset to a given reference date \( t = 0 \).- Parameters:
referenceDate- The date corresponding to \( t = 0 \).maturity- The maturity given as double (following theFloatingpointDateconvention as an offset to referenceDate.
-
Bond
public Bond(double maturity) - Parameters:
maturity- The maturity given as double.
-
-
Method Details
-
getValue
public RandomVariable getValue(double evaluationTime, TermStructureMonteCarloSimulationModel model) throws CalculationException This method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime. Note: For a lattice this is often the value conditional to evalutationTime, for a Monte-Carlo simulation this is the (sum of) value discounted to evaluation time. Cashflows prior evaluationTime are not considered.- Specified by:
getValuein interfaceTermStructureMonteCarloProduct- Specified by:
getValuein classAbstractTermStructureMonteCarloProduct- Parameters:
evaluationTime- The time on which this products value should be observed.model- The model used to price the product.- Returns:
- The random variable representing the value of the product discounted to evaluation time
- Throws:
CalculationException- Thrown if the valuation fails, specific cause may be available via thecause()method.
-
getMaturity
public double getMaturity()- Returns:
- Returns the maturity.
-
setMaturity
public void setMaturity(double maturity) - Parameters:
maturity- The maturity to set.
-
toString
- Overrides:
toStringin classAbstractMonteCarloProduct
-