25#ifndef quantext_crcirpp_hpp
26#define quantext_crcirpp_hpp
28#include <ql/experimental/credit/cdsoption.hpp>
29#include <ql/stochasticprocess.hpp>
30#include <ql/termstructures/defaulttermstructure.hpp>
35#include <ql/math/distributions/chisquaredistribution.hpp>
53 Real
zeroBond(Real t, Real T, Real y)
const;
62 Real
zeroBondOption(Real eval_t, Real expiry_T, Real maturity_tau, Real strike_k, Real y_t, Real w);
64 Handle<DefaultProbabilityTermStructure>
defaultCurve(std::vector<Date> dateGrid = std::vector<Date>())
const;
66 const QuantLib::ext::shared_ptr<CrCirppParametrization>
parametrization()
const;
67 const QuantLib::ext::shared_ptr<StochasticProcess>
stateProcess()
const;
69 Real
A(Real t, Real T)
const;
70 Real
B(Real t, Real T)
const;
93 QL_REQUIRE(
stateProcess_ != NULL,
"stateProcess has null pointer in CIR++ stateProcess!");
Cox-Ingersoll-Ross ++ credit model class.
const QuantLib::ext::shared_ptr< StochasticProcess > stateProcess() const
Real density(Real x, Real t)
Real zeroBondOption(Real eval_t, Real expiry_T, Real maturity_tau, Real strike_k, Real y_t, Real w)
Real A(Real t, Real T) const
Real densityForwardMeasure(Real x, Real t)
Real cumulativeForwardMeasure(Real x, Real t)
void generateArguments() override
Real zeroBond(Real t, Real T, Real y) const
Real cumulative(Real x, Real t)
QuantLib::ext::shared_ptr< CrCirppParametrization > parametrization_
QuantLib::ext::shared_ptr< CrCirppStateProcess > stateProcess_
Handle< DefaultProbabilityTermStructure > defaultCurve(std::vector< Date > dateGrid=std::vector< Date >()) const
Real B(Real t, Real T) const
Real survivalProbability(Real t, Real T, Real y) const
const QuantLib::ext::shared_ptr< CrCirppParametrization > parametrization() const
Calibrated model class with linkable parameters.
CIR++ model state process.
calibrated model class with linkable parameters