Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
oredtestmarket.hpp
Go to the documentation of this file.
1/*
2 Copyright (C) 2016 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
22#include <ql/quotes/simplequote.hpp>
23#include <ql/termstructures/credit/flathazardrate.hpp>
24#include <ql/termstructures/credit/piecewisedefaultcurve.hpp>
25#include <ql/termstructures/voltermstructure.hpp>
26#include <ql/termstructures/yield/flatforward.hpp>
27#include <ql/termstructures/yield/piecewiseyieldcurve.hpp>
28#include <ql/termstructures/yield/ratehelpers.hpp>
29#include <ql/time/calendars/nullcalendar.hpp>
30#include <ql/time/calendars/target.hpp>
31#include <ql/time/daycounters/actual360.hpp>
32#include <ql/time/daycounters/actualactual.hpp>
34#include <ql/termstructures/credit/defaultprobabilityhelpers.hpp>
36
37using namespace QuantLib;
38using namespace ore::data;
39using std::pair;
40using std::vector;
41
42//! Simple flat market setup to be used in the test suite, plain copy from OREAP test suite
43/*!
44 \ingroup tests
45*/
47public:
48 OredTestMarket(Date asof, bool swapVolCube = false);
49
50private:
51 Handle<YieldTermStructure> flatRateYts(Real forward);
52
53 Handle<BlackVolTermStructure> flatRateFxv(Volatility forward);
54 Handle<YieldTermStructure> flatRateDiv(Real dividend);
55 Handle<QuantLib::SwaptionVolatilityStructure> flatRateSvs(Volatility forward,
56 VolatilityType type = ShiftedLognormal, Real shift = 0.0);
57 Handle<QuantExt::CreditCurve> flatRateDcs(Volatility forward);
58 Handle<OptionletVolatilityStructure> flatRateCvs(Volatility vol, VolatilityType type = Normal, Real shift = 0.0);
59};
Simple flat market setup to be used in the test suite, plain copy from OREAP test suite.
Handle< OptionletVolatilityStructure > flatRateCvs(Volatility vol, VolatilityType type=Normal, Real shift=0.0)
Handle< QuantExt::CreditCurve > flatRateDcs(Volatility forward)
Handle< YieldTermStructure > flatRateYts(Real forward)
Handle< BlackVolTermStructure > flatRateFxv(Volatility forward)
Handle< QuantLib::SwaptionVolatilityStructure > flatRateSvs(Volatility forward, VolatilityType type=ShiftedLognormal, Real shift=0.0)
Handle< YieldTermStructure > flatRateDiv(Real dividend)
Market Implementation.
Definition: marketimpl.hpp:53
Map text representations to QuantLib/QuantExt types.
An implementation of the Market class that stores the required objects in maps.
Map text representations to QuantLib/QuantExt types.