Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
analyticlgmcdsoptionengine.hpp
Go to the documentation of this file.
1/*
2 Copyright (C) 2017 Quaternion Risk Management Ltd
3 All rights reserved.
4
5 This file is part of ORE, a free-software/open-source library
6 for transparent pricing and risk analysis - http://opensourcerisk.org
7
8 ORE is free software: you can redistribute it and/or modify it
9 under the terms of the Modified BSD License. You should have received a
10 copy of the license along with this program.
11 The license is also available online at <http://opensourcerisk.org>
12
13 This program is distributed on the basis that it will form a useful
14 contribution to risk analytics and model standardisation, but WITHOUT
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
16 FITNESS FOR A PARTICULAR PURPOSE. See the license for more details.
17*/
18
19/*! \file analyticlgmcdsoptionengine.hpp
20 \brief analytic lgm cds option engine
21 \ingroup engines
22*/
23
24#ifndef quantext_lgm_cdsoptionengine_hpp
25#define quantext_lgm_cdsoptionengine_hpp
26
29
30namespace QuantExt {
31//! analytic lgm cds option engine
32//! \ingroup engines
33/*! Reference: Modern Derivatives Pricing and Credit Exposure Analysis by Lichters, Stamm and Gallagher, 15.1 */
35public:
36 AnalyticLgmCdsOptionEngine(const QuantLib::ext::shared_ptr<CrossAssetModel>& model, const Size index, const Size ccy,
37 const Real recoveryRate,
38 const Handle<YieldTermStructure>& termStructure = Handle<YieldTermStructure>());
39 void calculate() const override;
40
41private:
42 Real Ei(const Real w, const Real strike, const Size i) const;
43 Real lambdaStarHelper(const Real lambda) const;
44 const QuantLib::ext::shared_ptr<CrossAssetModel> model_;
45 const Size index_, ccy_;
46 const Real recoveryRate_;
47 const Handle<YieldTermStructure> termStructure_;
48 mutable Array G_, t_;
49 mutable Real tex_;
50};
51
52} // namespace QuantExt
53
54#endif
CDS option, removed requirements (rec must knock out, no upfront amount), that should be taken care o...
Real Ei(const Real w, const Real strike, const Size i) const
const QuantLib::ext::shared_ptr< CrossAssetModel > model_
const Handle< YieldTermStructure > termStructure_
base class for swaption engines
Definition: cdsoption.hpp:130
cross asset model