Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
zerotoparshift.hpp
Go to the documentation of this file.
1/*
2 Copyright (C) 2024 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 orea/engine/zerotoparshift.hpp
20 \brief applies a zero scenario and return the par instrument shifts
21 \ingroup simulation
22*/
23
24#pragma once
26
27namespace ore {
28namespace analytics {
29
31public:
33 const QuantLib::Date& asof,
34 const QuantLib::ext::shared_ptr<ore::analytics::ScenarioSimMarketParameters>& simMarketParams,
35 const ore::analytics::SensitivityScenarioData& sensitivityData,
36 const std::set<ore::analytics::RiskFactorKey::KeyType>& typesDisabled,
37 const std::set<ore::analytics::RiskFactorKey::KeyType>& parTypes,
38 const std::set<ore::analytics::RiskFactorKey>& relevantRiskFactors, const bool continueOnError,
39 const std::string& marketConfiguration, const QuantLib::ext::shared_ptr<ScenarioSimMarket>& simMarket);
40
42 const QuantLib::ext::shared_ptr<ScenarioSimMarket>& simMarket);
43
44 std::unordered_map<RiskFactorKey, double> parShifts(QuantLib::ext::shared_ptr<Scenario> scenario) const;
45
46private:
47 std::unordered_map<RiskFactorKey, double> parRates() const;
48
50 ext::shared_ptr<ScenarioSimMarket> simMarket_;
51 std::unordered_map<RiskFactorKey, double> baseValues_;
52};
53
54} // namespace analytics
55} // namespace ore
Description of sensitivity shift scenarios.
std::unordered_map< RiskFactorKey, double > parRates() const
ext::shared_ptr< ScenarioSimMarket > simMarket_
std::unordered_map< RiskFactorKey, double > parShifts(QuantLib::ext::shared_ptr< Scenario > scenario) const
ParSensitivityInstrumentBuilder::Instruments instruments_
std::unordered_map< RiskFactorKey, double > baseValues_
Date asof(14, Jun, 2018)