Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
sensitivityperformanceplus.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 test/sensitivityperformanceplus.hpp
20 \brief Extended sensitivity preformance test
21 \ingroup tests
22*/
23
24#pragma once
25
26#include <boost/test/unit_test.hpp>
27
28namespace testsuite {
29
30//! Sensitivity Performance tests
31/*!
32 This is a performance test for the zero rate sensitivities generation
33 in ORE+. It is almost identical to the test in ORE, but it instead makes
34 use of oreplus::sensitivity::SensitivityAnalysis (which uses a DeltaScenarioFactory)
35 \ingroup tests
36*/
38public:
39 //! Test performance of sensitivities run ("None" observation mode)
40 static void testSensiPerformanceNoneObs();
41 //! Test performance of sensitivities run ("Disable" observation mode)
43 //! Test performance of sensitivities run ("Defer" observation mode)
44 static void testSensiPerformanceDeferObs();
45 //! Test performance of sensitivities run ("Unregister" observation mode)
47
48 //! Test performance of sensitivities run (including cross-gammas) ("None" observation mode)
50 //! Test performance of sensitivities run (including cross-gammas) ("Disable" observation mode)
52 //! Test performance of sensitivities run (including cross-gammas) ("Defer" observation mode)
54 //! Test performance of sensitivities run (including cross-gammas) ("Unregister" observation mode)
56
57 //! Test performance of sensitivities run with lots of buckets ("None" observation mode)
59 //! Test performance of sensitivities run with lots of buckets ("Disable" observation mode)
61 //! Test performance of sensitivities run with lots of buckets ("Defer" observation mode)
63 //! Test performance of sensitivities run with lots of buckets ("Unregister" observation mode)
65
66 //! Test performance of sensitivities run for a large portfolio ("None" observation mode)
68 //! Test performance of sensitivities run for a large portfolio ("Disable" observation mode)
70 //! Test performance of sensitivities run for a large portfolio ("Defer" observation mode)
72 //! Test performance of sensitivities run for a large portfolio ("Unregister" observation mode)
74
75 //! Test performance of sensitivities run for a large portfolio, with lots of buckets ("None" observation mode)
77 //! Test performance of sensitivities run for a large portfolio, with lots of buckets ("Disable" observation mode)
79 //! Test performance of sensitivities run for a large portfolio, with lots of buckets ("Defer" observation mode)
81 //! Test performance of sensitivities run for a large portfolio, with lots of buckets ("Unregister" observation
82 // mode)
84
85 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio ("None" observation mode)
87 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio ("Disable" observation
88 // mode)
90 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio ("Defer" observation mode)
92 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio ("Unregister" observation
93 // mode)
95
96 //! Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio, with lots of
97 // buckets ("None" observation mode)
99 //! Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio, with lots of
100 // buckets ("Disable" observation mode)
102 //! Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio, with lots of
103 // buckets ("Defer" observation mode)
105 //! Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio, with lots of
106 // buckets ("Unregister" observation mode)
108
109 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio, with lots of buckets
110 //("None" observation mode)
112 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio, with lots of buckets
113 //("Disable" observation mode)
115 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio, with lots of buckets
116 //("Defer" observation mode)
118 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio, with lots of buckets
119 //("Unregister" observation mode)
121 //! Test performance of sensitivities run (including cross-gammas) for a large portfolio, using the BackTest
122 //! sensitivity setup
123 //("None" observation mode)
125 static boost::unit_test_framework::test_suite* suite();
126};
127} // namespace testsuite
static void testSensiPerformanceDisableObs()
Test performance of sensitivities run ("Disable" observation mode)
static void testSensiPerformanceCrossGammaNoneObs()
Test performance of sensitivities run (including cross-gammas) ("None" observation mode)
static void testSensiPerformanceBigPortfolioBigScenarioDisableObs()
Test performance of sensitivities run for a large portfolio, with lots of buckets ("Disable" observat...
static void testSensiPerformanceBigScenarioCrossGammaUnregisterObs()
Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio,...
static void testSensiPerformanceBigPortfolioBigScenarioDeferObs()
Test performance of sensitivities run for a large portfolio, with lots of buckets ("Defer" observatio...
static void testSensiPerformanceUnregisterObs()
Test performance of sensitivities run ("Unregister" observation mode)
static void testSensiPerformanceDeferObs()
Test performance of sensitivities run ("Defer" observation mode)
static void testSensiPerformanceBigPortfolioCrossGammaUnregisterObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio ("Unregister" ob...
static void testSensiPerformanceBigPortfolioBigScenarioCrossGammaUnregisterObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio,...
static void testSensiPerformanceNoneObs()
Test performance of sensitivities run ("None" observation mode)
static void testSensiPerformanceBigPortfolioNoneObs()
Test performance of sensitivities run for a large portfolio ("None" observation mode)
static void testSensiPerformanceBigScenarioDeferObs()
Test performance of sensitivities run with lots of buckets ("Defer" observation mode)
static void testSensiPerformanceBigScenarioNoneObs()
Test performance of sensitivities run with lots of buckets ("None" observation mode)
static void testSensiPerformanceBigPortfolioDeferObs()
Test performance of sensitivities run for a large portfolio ("Defer" observation mode)
static boost::unit_test_framework::test_suite * suite()
static void testSensiPerformanceBigPortfolioBigScenarioCrossGammaDeferObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio,...
static void testSensiPerformanceBigPortfolioUnregisterObs()
Test performance of sensitivities run for a large portfolio ("Unregister" observation mode)
static void testSensiPerformanceBigPortfolioBigScenarioCrossGammaNoneObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio,...
static void testSensiPerformanceBigScenarioCrossGammaDeferObs()
Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio,...
static void testSensiPerformanceBigScenarioUnregisterObs()
Test performance of sensitivities run with lots of buckets ("Unregister" observation mode)
static void testSensiPerformanceBigPortfolioCrossGammaDeferObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio ("Defer" observa...
static void testSensiPerformanceBigPortfolioBigScenarioUnregisterObs()
Test performance of sensitivities run for a large portfolio, with lots of buckets ("Unregister" obser...
static void testSensiPerformanceBigPortfolioCrossGammaNoneObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio ("None" observat...
static void testSensiPerformanceBigPortfolioCrossGammaDisableObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio ("Disable" obser...
static void testSensiPerformanceBigScenarioCrossGammaDisableObs()
Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio,...
static void testSensiPerformanceBigPortfolioBigScenarioNoneObs()
Test performance of sensitivities run for a large portfolio, with lots of buckets ("None" observation...
static void testSensiPerformanceCrossGammaUnregisterObs()
Test performance of sensitivities run (including cross-gammas) ("Unregister" observation mode)
static void testSensiPerformanceCrossGammaDeferObs()
Test performance of sensitivities run (including cross-gammas) ("Defer" observation mode)
static void testSensiPerformanceBigScenarioCrossGammaNoneObs()
Test performance of sensitivities run (including cross-gammas) for a single-trade portfolio,...
static void testSensiPerformanceCrossGammaDisableObs()
Test performance of sensitivities run (including cross-gammas) ("Disable" observation mode)
static void testSensiPerformanceBigPortfolioBigScenarioCrossGammaDisableObs()
Test performance of sensitivities run (including cross-gammas) for a large portfolio,...
static void testSensiPerformanceBigScenarioDisableObs()
Test performance of sensitivities run with lots of buckets ("Disable" observation mode)
static void testSensiPerformanceBigPortfolioDisableObs()
Test performance of sensitivities run for a large portfolio ("Disable" observation mode)