diff --git a/OREAnalytics/doc/orea.doxy b/OREAnalytics/doc/orea.doxy index 75a2b00cc8..7e99269821 100644 --- a/OREAnalytics/doc/orea.doxy +++ b/OREAnalytics/doc/orea.doxy @@ -103,7 +103,7 @@ WARN_LOGFILE = #--------------------------------------------------------------------------- INPUT = ./pages \ ../orea \ - ../test + ../test INPUT_ENCODING = UTF-8 FILE_PATTERNS = *.docs \ *.hpp \ @@ -157,7 +157,6 @@ HTML_EXTRA_FILES = images/favicon.png images/logo-analytics@2x.png HTML_COLORSTYLE_HUE = 220 HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 -HTML_TIMESTAMP = NO HTML_DYNAMIC_SECTIONS = YES HTML_INDEX_NUM_ENTRIES = 100 GENERATE_DOCSET = NO @@ -188,7 +187,6 @@ ENUM_VALUES_PER_LINE = 4 TREEVIEW_WIDTH = 250 EXT_LINKS_IN_WINDOW = NO FORMULA_FONTSIZE = 12 -FORMULA_TRANSPARENT = YES USE_MATHJAX = YES MATHJAX_FORMAT = HTML-CSS MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest @@ -219,7 +217,6 @@ PDF_HYPERLINKS = YES USE_PDFLATEX = YES LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO -LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain #--------------------------------------------------------------------------- # Configuration options related to the RTF output @@ -230,7 +227,6 @@ COMPACT_RTF = NO RTF_HYPERLINKS = NO RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = -RTF_SOURCE_CODE = NO #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- @@ -250,7 +246,6 @@ XML_PROGRAMLISTING = NO #--------------------------------------------------------------------------- GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook -DOCBOOK_PROGRAMLISTING = NO #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- @@ -278,7 +273,7 @@ SKIP_FUNCTION_MACROS = YES # Configuration options related to external references #--------------------------------------------------------------------------- TAGFILES = ../../QuantExt/doc/quantext.tag=../../../QuantExt/doc/html \ - ../../OREData/doc/ored.tag=../../../OREData/doc/html + ../../OREData/doc/ored.tag=../../../OREData/doc/html GENERATE_TAGFILE = orea.tag ALLEXTERNALS = NO EXTERNAL_GROUPS = NO @@ -286,13 +281,10 @@ EXTERNAL_PAGES = NO #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- -CLASS_DIAGRAMS = YES DIA_PATH = HIDE_UNDOC_RELATIONS = NO HAVE_DOT = YES DOT_NUM_THREADS = 0 -DOT_FONTNAME = Helvetica -DOT_FONTSIZE = 10 DOT_FONTPATH = CLASS_GRAPH = YES COLLABORATION_GRAPH = NO @@ -314,9 +306,8 @@ MSCFILE_DIRS = DIAFILE_DIRS = PLANTUML_JAR_PATH = PLANTUML_INCLUDE_PATH = -DOT_GRAPH_MAX_NODES = 20 +DOT_GRAPH_MAX_NODES = 150 MAX_DOT_GRAPH_DEPTH = 2 -DOT_TRANSPARENT = NO DOT_MULTI_TARGETS = NO GENERATE_LEGEND = YES DOT_CLEANUP = YES diff --git a/OREAnalytics/doc/pages/groups.docs b/OREAnalytics/doc/pages/groups.docs index a2877045ac..a46f0de04d 100644 --- a/OREAnalytics/doc/pages/groups.docs +++ b/OREAnalytics/doc/pages/groups.docs @@ -32,3 +32,15 @@ /*! \defgroup analytics Analytics Grouping of all analytic related classes, functions and files */ + +/*! \defgroup app Application + Grouping of all top level application related classes, functions and files +*/ + +/*! \defgroup engine Engines + Grouping of all analytics engine related classes, functions and files +*/ + +/*! \defgroup tests Tests + Grouping of all test suite related classes, functions and files +*/ diff --git a/OREAnalytics/orea/aggregation/creditmigrationhelper.hpp b/OREAnalytics/orea/aggregation/creditmigrationhelper.hpp index 4e7fd542b3..fc2d0df3aa 100644 --- a/OREAnalytics/orea/aggregation/creditmigrationhelper.hpp +++ b/OREAnalytics/orea/aggregation/creditmigrationhelper.hpp @@ -18,7 +18,7 @@ /*! \file aggregation/creditmigrationhelper.hpp \brief Credit migration helper class - \ingroup engine + \ingroup analytics */ #pragma once diff --git a/OREAnalytics/orea/aggregation/creditsimulationparameters.hpp b/OREAnalytics/orea/aggregation/creditsimulationparameters.hpp index 0c2b765b23..2684a1731f 100644 --- a/OREAnalytics/orea/aggregation/creditsimulationparameters.hpp +++ b/OREAnalytics/orea/aggregation/creditsimulationparameters.hpp @@ -18,7 +18,7 @@ /*! \file aggregation/creditsimulationparameters.hpp \brief Credit simulation parameter class - \ingroup engine + \ingroup analytics */ #pragma once diff --git a/OREAnalytics/orea/aggregation/dimcalculator.hpp b/OREAnalytics/orea/aggregation/dimcalculator.hpp index 3669f9a0b4..68d5da4169 100644 --- a/OREAnalytics/orea/aggregation/dimcalculator.hpp +++ b/OREAnalytics/orea/aggregation/dimcalculator.hpp @@ -69,7 +69,8 @@ class DynamicInitialMarginCalculator { Size horizonCalendarDays = 14, //! Actual t0 IM by netting set used to scale the DIM evolution, no scaling if the argument is omitted const std::map& currentIM = std::map(), - Size dimCubeDepth = 1); + //! Depth of the DIM cube, default is 1 + Size dimCubeDepth = 1); virtual ~DynamicInitialMarginCalculator() {} diff --git a/OREAnalytics/orea/aggregation/dimhelper.hpp b/OREAnalytics/orea/aggregation/dimhelper.hpp index 3468d5ed27..401c960c1a 100644 --- a/OREAnalytics/orea/aggregation/dimhelper.hpp +++ b/OREAnalytics/orea/aggregation/dimhelper.hpp @@ -16,10 +16,9 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/dim/dimhelper.hpp +/*! \file orea/aggregation/dimhelper.hpp \brief Dynamic initial margin helper - - \ingroup dim + \ingroup analytics */ #pragma once diff --git a/OREAnalytics/orea/aggregation/dynamicsimmcalculator.hpp b/OREAnalytics/orea/aggregation/dynamicsimmcalculator.hpp index 698f0dabdb..bb540e2cb3 100644 --- a/OREAnalytics/orea/aggregation/dynamicsimmcalculator.hpp +++ b/OREAnalytics/orea/aggregation/dynamicsimmcalculator.hpp @@ -52,8 +52,10 @@ class DynamicSimmCalculator : public ore::analytics::DynamicInitialMarginCalcula QuantLib::Real quantile = 0.99, //! VaR holding period in calendar days QuantLib::Size horizonCalendarDays = 14, - const std::map& currentIM = std::map(), - const Size& simmCubeDepth = 4); + //! Actual t0 IM by netting set used to scale the DIM evolution, no scaling if the argument is omitted + const std::map& currentIM = std::map(), + //! SIMM cube depth, default 4 + const Size& simmCubeDepth = 4); const std::map& unscaledCurrentDIM() const override; void build() override; diff --git a/OREAnalytics/orea/aggregation/exposurecalculator.hpp b/OREAnalytics/orea/aggregation/exposurecalculator.hpp index 0d3bad0339..cbb54b97aa 100644 --- a/OREAnalytics/orea/aggregation/exposurecalculator.hpp +++ b/OREAnalytics/orea/aggregation/exposurecalculator.hpp @@ -69,7 +69,9 @@ class ExposureCalculator { //! Flag to indicate exposure evaluation with dynamic credit const bool multiPath, //! Flag to indicate flipped xva calculation - const bool flipViewXVA, const bool exposureProfilesUseCloseOutValues_ = false, + const bool flipViewXVA, + //! Use close-out values for exposure profiles + const bool exposureProfilesUseCloseOutValues = false, //! Continue with the calculation if possible when there is an error bool continueOnError = false, //! use double precision cube diff --git a/OREAnalytics/orea/aggregation/postprocess.hpp b/OREAnalytics/orea/aggregation/postprocess.hpp index b6da0b2e2a..d835b40b04 100644 --- a/OREAnalytics/orea/aggregation/postprocess.hpp +++ b/OREAnalytics/orea/aggregation/postprocess.hpp @@ -59,7 +59,7 @@ using namespace data; - Basel Effective Expected Exposure, EEE_B: max( EEE_B(t-1), EE_B(t)) - Basel Effective Expected Positive Exposure, EEPE_B - Potential Future Exposure, PFE: q-Quantile of the distribution of - - Time-Weighted Exposure (only on netting set level): 1 / T SUM_i=0^T EPE(t) \DELTA(t) + - Time-Weighted Exposure (only on netting set level): 1 / T SUM_i=0^T EPE(t) DELTA(t) 2) Dynamic Initial Margin via regression diff --git a/OREAnalytics/orea/aggregation/simmhelper.hpp b/OREAnalytics/orea/aggregation/simmhelper.hpp index 0649043663..efc96897bf 100644 --- a/OREAnalytics/orea/aggregation/simmhelper.hpp +++ b/OREAnalytics/orea/aggregation/simmhelper.hpp @@ -18,8 +18,7 @@ /*! \file orea/aggregation/simmhelper.hpp \brief Dynamic initial margin helper returning Simple SIMM - - \ingroup dim + \ingroup analytics */ #pragma once diff --git a/OREAnalytics/orea/app/analytics/analyticfactory.hpp b/OREAnalytics/orea/app/analytics/analyticfactory.hpp index e5354c3ac5..7c69404925 100644 --- a/OREAnalytics/orea/app/analytics/analyticfactory.hpp +++ b/OREAnalytics/orea/app/analytics/analyticfactory.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/app/analytics/analyticsfactory.hpp +/*! \file orea/app/analytics/analyticfactory.hpp \brief Analytics Factory \ingroup analytics */ diff --git a/OREAnalytics/orea/app/analytics/bacvaanalytic.hpp b/OREAnalytics/orea/app/analytics/bacvaanalytic.hpp index 2d1b69fd5b..289b449918 100644 --- a/OREAnalytics/orea/app/analytics/bacvaanalytic.hpp +++ b/OREAnalytics/orea/app/analytics/bacvaanalytic.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file oreap/app/analytics/bacvaanalytic.hpp +/*! \file orea/app/analytics/bacvaanalytic.hpp \brief ORE BACVA Analytic */ #pragma once diff --git a/OREAnalytics/orea/app/analytics/pnlexplainanalytic.hpp b/OREAnalytics/orea/app/analytics/pnlexplainanalytic.hpp index 786356d3d2..ef58908882 100644 --- a/OREAnalytics/orea/app/analytics/pnlexplainanalytic.hpp +++ b/OREAnalytics/orea/app/analytics/pnlexplainanalytic.hpp @@ -16,8 +16,8 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/app/pnlexplainanalytic.hpp - \brief ORE Analytics Manager +/*! \file orea/app/analytics/pnlexplainanalytic.hpp + \brief ORE P&L Explain Analytic */ #pragma once diff --git a/OREAnalytics/orea/app/analytics/portfoliodetailsanalytic.hpp b/OREAnalytics/orea/app/analytics/portfoliodetailsanalytic.hpp index a1fff81f08..037d39b390 100644 --- a/OREAnalytics/orea/app/analytics/portfoliodetailsanalytic.hpp +++ b/OREAnalytics/orea/app/analytics/portfoliodetailsanalytic.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/app/portfoliodetailsanalytic.hpp +/*! \file orea/app/analytics/portfoliodetailsanalytic.hpp \brief Pricing Analytic */ diff --git a/OREAnalytics/orea/app/analytics/pricinganalytic.hpp b/OREAnalytics/orea/app/analytics/pricinganalytic.hpp index cabe65450e..beba2d9a1e 100644 --- a/OREAnalytics/orea/app/analytics/pricinganalytic.hpp +++ b/OREAnalytics/orea/app/analytics/pricinganalytic.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/app/pricinganalytic.hpp +/*! \file orea/app/analytics/pricinganalytic.hpp \brief Pricing Analytic */ diff --git a/OREAnalytics/orea/app/analytics/scenariogenerationanalytic.hpp b/OREAnalytics/orea/app/analytics/scenariogenerationanalytic.hpp index 380ac7332c..9ebf9cb7bf 100644 --- a/OREAnalytics/orea/app/analytics/scenariogenerationanalytic.hpp +++ b/OREAnalytics/orea/app/analytics/scenariogenerationanalytic.hpp @@ -16,8 +16,8 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/app/analytics/scenariogeneratorsanalytic.hpp - \brief ORE Scenario Generator Analytics +/*! \file orea/app/analytics/scenariogenerationanalytic.hpp + \brief ORE Scenario Generation Analytics */ #pragma once diff --git a/OREAnalytics/orea/cube/sensitivitycube.hpp b/OREAnalytics/orea/cube/sensitivitycube.hpp index 9e5d762091..1dcf81e41b 100644 --- a/OREAnalytics/orea/cube/sensitivitycube.hpp +++ b/OREAnalytics/orea/cube/sensitivitycube.hpp @@ -18,7 +18,7 @@ /*! \file orea/cube/sensitivitycube.hpp \brief holds a grid of NPVs for a list of trades under various scenarios - \ingroup Cube + \ingroup cube */ #pragma once diff --git a/OREAnalytics/orea/engine/saccrcalculator.hpp b/OREAnalytics/orea/engine/saccrcalculator.hpp index 9f8fa56f23..ed1efe3c32 100644 --- a/OREAnalytics/orea/engine/saccrcalculator.hpp +++ b/OREAnalytics/orea/engine/saccrcalculator.hpp @@ -3,7 +3,7 @@ All rights reserved. */ -/*! \file orea/engine/saccr.hpp +/*! \file orea/engine/saccrcalculator.hpp \brief Class for holding SA-CCR trade data */ diff --git a/OREAnalytics/orea/engine/saccrcrifgenerator.hpp b/OREAnalytics/orea/engine/saccrcrifgenerator.hpp index 97a290bc6c..2a26c44d6a 100644 --- a/OREAnalytics/orea/engine/saccrcrifgenerator.hpp +++ b/OREAnalytics/orea/engine/saccrcrifgenerator.hpp @@ -3,7 +3,7 @@ All rights reserved. */ -/*! \file orepcapital/orea/saccrcrifgenerator.hpp +/*! \file orea/engine/saccrcrifgenerator.hpp \brief Class that generates a SA-CCR CRIF report */ diff --git a/OREAnalytics/orea/engine/saccrtradedata.hpp b/OREAnalytics/orea/engine/saccrtradedata.hpp index f1154b2551..852a8a8c05 100644 --- a/OREAnalytics/orea/engine/saccrtradedata.hpp +++ b/OREAnalytics/orea/engine/saccrtradedata.hpp @@ -3,7 +3,7 @@ All rights reserved. */ -/*! \file orepcapital/orea/engine/saccrtradedata.hpp +/*! \file orea/engine/saccrtradedata.hpp \brief Class for holding SA-CCR trade data */ diff --git a/OREAnalytics/orea/engine/simpledynamicsimm.hpp b/OREAnalytics/orea/engine/simpledynamicsimm.hpp index 0b74055b2f..ddc53f791c 100644 --- a/OREAnalytics/orea/engine/simpledynamicsimm.hpp +++ b/OREAnalytics/orea/engine/simpledynamicsimm.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/engine/simpleim.hpp +/*! \file orea/engine/simpledynamicsimm.hpp \brief simple im model for dynamic im calculations */ diff --git a/OREAnalytics/orea/scenario/scenarioloader.hpp b/OREAnalytics/orea/scenario/scenarioloader.hpp index 218657e3f5..801387ab47 100644 --- a/OREAnalytics/orea/scenario/scenarioloader.hpp +++ b/OREAnalytics/orea/scenario/scenarioloader.hpp @@ -16,8 +16,8 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/scenario/historicalscenarioloader.hpp - \brief historical scenario loader +/*! \file orea/scenario/scenarioloader.hpp + \brief scenario loader \ingroup scenario */ diff --git a/OREAnalytics/orea/simm/crifmarket.hpp b/OREAnalytics/orea/simm/crifmarket.hpp index fd4ed65d6d..3921748765 100644 --- a/OREAnalytics/orea/simm/crifmarket.hpp +++ b/OREAnalytics/orea/simm/crifmarket.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orepsimm/orea/crifmarket.hpp +/*! \file orea/simm/crifmarket.hpp \brief Market used when generating CRIF file */ diff --git a/OREAnalytics/orea/simm/portfoliomodifier.hpp b/OREAnalytics/orea/simm/portfoliomodifier.hpp index b9fd7afc4c..a0ef93cf15 100644 --- a/OREAnalytics/orea/simm/portfoliomodifier.hpp +++ b/OREAnalytics/orea/simm/portfoliomodifier.hpp @@ -32,7 +32,7 @@ namespace ore { namespace analytics { /*! Modify the \p portfolio by applying the various SIMM exemptions outlined in the - document SIMM Cross-Currency Swap Treatment, February 27, 2017<\em> + document SIMM Cross-Currency Swap Treatment, February 27, 2017 Returns a pair of sets (s1,s2), where s1 contains the trade ids that were removed and s2 conatins the trade ids that were modified. */ diff --git a/OREData/doc/ored.doxy b/OREData/doc/ored.doxy index 7926148e55..82e3783bbf 100644 --- a/OREData/doc/ored.doxy +++ b/OREData/doc/ored.doxy @@ -63,7 +63,7 @@ HIDE_FRIEND_COMPOUNDS = NO HIDE_IN_BODY_DOCS = YES INTERNAL_DOCS = NO CASE_SENSE_NAMES = NO -HIDE_SCOPE_NAMES = YES +HIDE_SCOPE_NAMES = NO HIDE_COMPOUND_REFERENCE= NO SHOW_INCLUDE_FILES = YES SHOW_GROUPED_MEMB_INC = NO @@ -155,7 +155,6 @@ HTML_EXTRA_FILES = images/favicon.png images/logo-data@2x.png HTML_COLORSTYLE_HUE = 220 HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 -HTML_TIMESTAMP = NO HTML_DYNAMIC_SECTIONS = YES HTML_INDEX_NUM_ENTRIES = 100 GENERATE_DOCSET = NO @@ -186,7 +185,6 @@ ENUM_VALUES_PER_LINE = 4 TREEVIEW_WIDTH = 250 EXT_LINKS_IN_WINDOW = NO FORMULA_FONTSIZE = 12 -FORMULA_TRANSPARENT = YES USE_MATHJAX = YES MATHJAX_FORMAT = HTML-CSS MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest @@ -217,7 +215,6 @@ PDF_HYPERLINKS = YES USE_PDFLATEX = YES LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO -LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain #--------------------------------------------------------------------------- # Configuration options related to the RTF output @@ -228,7 +225,6 @@ COMPACT_RTF = NO RTF_HYPERLINKS = NO RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = -RTF_SOURCE_CODE = NO #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- @@ -248,7 +244,6 @@ XML_PROGRAMLISTING = NO #--------------------------------------------------------------------------- GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook -DOCBOOK_PROGRAMLISTING = NO #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- @@ -283,13 +278,10 @@ EXTERNAL_PAGES = NO #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- -CLASS_DIAGRAMS = YES DIA_PATH = HIDE_UNDOC_RELATIONS = NO HAVE_DOT = YES DOT_NUM_THREADS = 0 -DOT_FONTNAME = Helvetica -DOT_FONTSIZE = 10 DOT_FONTPATH = CLASS_GRAPH = YES COLLABORATION_GRAPH = NO @@ -311,9 +303,8 @@ MSCFILE_DIRS = DIAFILE_DIRS = PLANTUML_JAR_PATH = PLANTUML_INCLUDE_PATH = -DOT_GRAPH_MAX_NODES = 80 +DOT_GRAPH_MAX_NODES = 150 MAX_DOT_GRAPH_DEPTH = 2 -DOT_TRANSPARENT = NO DOT_MULTI_TARGETS = NO GENERATE_LEGEND = YES DOT_CLEANUP = YES diff --git a/OREData/ored/configuration/conventions.hpp b/OREData/ored/configuration/conventions.hpp index 40c83d8bf2..acb0a7eb50 100644 --- a/OREData/ored/configuration/conventions.hpp +++ b/OREData/ored/configuration/conventions.hpp @@ -110,7 +110,7 @@ std::ostream& operator<<(std::ostream& out, Convention::Type type); //! Repository for currency dependent market conventions /*! - \ingroup market + \ingroup configuration */ class Conventions : public XMLSerializable { public: diff --git a/OREData/ored/marketdata/basecorrelationcurve.hpp b/OREData/ored/marketdata/basecorrelationcurve.hpp index 39f613dabb..0f53d4fbd0 100644 --- a/OREData/ored/marketdata/basecorrelationcurve.hpp +++ b/OREData/ored/marketdata/basecorrelationcurve.hpp @@ -66,6 +66,7 @@ class BaseCorrelationCurve { std::vector remainingNames; }; + /// \cond struct QuoteData { struct LessReal { bool operator()(const Real& lhs, const Real& rhs) const { return !close_enough(lhs, rhs) && lhs < rhs; } @@ -84,6 +85,7 @@ class BaseCorrelationCurve { map atp; map, Handle, LessDataKey> data; }; + /// \endcond QuoteData loadQuotes(const QuantLib::Date& asof, const BaseCorrelationCurveConfig& config, const MarketDatum::QuoteType quoteType, const Loader& loader) const; diff --git a/OREData/ored/model/inflation/infjybuilder.hpp b/OREData/ored/model/inflation/infjybuilder.hpp index 3c2a806552..331be39c93 100644 --- a/OREData/ored/model/inflation/infjybuilder.hpp +++ b/OREData/ored/model/inflation/infjybuilder.hpp @@ -46,6 +46,7 @@ class InfJyBuilder : public QuantExt::ModelBuilder { \param data Jarrow Yildrim inflation model description \param configuration Market configuration to use \param referenceCalibrationGrid The reference calibration grid + \param donCalibrate If true, do not perform calibration */ InfJyBuilder(const QuantLib::ext::shared_ptr& market, const QuantLib::ext::shared_ptr& data, const std::string& configuration = Market::defaultConfiguration, diff --git a/OREData/ored/portfolio/builders/callablebond.hpp b/OREData/ored/portfolio/builders/callablebond.hpp index 8169b84d2d..ad3cdd0991 100644 --- a/OREData/ored/portfolio/builders/callablebond.hpp +++ b/OREData/ored/portfolio/builders/callablebond.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file oredportfolio/builders/callablebond.hpp */ +/*! \file ored/portfolio/builders/callablebond.hpp */ #pragma once diff --git a/OREData/ored/scripting/models/blackscholescg.hpp b/OREData/ored/scripting/models/blackscholescg.hpp index a6fa5f9d02..45fac48a28 100644 --- a/OREData/ored/scripting/models/blackscholescg.hpp +++ b/OREData/ored/scripting/models/blackscholescg.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file ored/scripting/models/blackscholescgbase.hpp +/*! \file ored/scripting/models/blackscholescg.hpp \brief black scholes model base class for n underlyings (fx, equity or commodity) \ingroup utilities */ diff --git a/OREData/ored/scripting/paylog.hpp b/OREData/ored/scripting/paylog.hpp index a55374e4ea..3335b6bfee 100644 --- a/OREData/ored/scripting/paylog.hpp +++ b/OREData/ored/scripting/paylog.hpp @@ -18,7 +18,7 @@ /*! \file ored/scripting/paylog.hpp \brief repository for cashflows generated by the PAYLOG() function - \ingroup scripting + \ingroup utilities */ #pragma once diff --git a/OREData/ored/scripting/utilities.hpp b/OREData/ored/scripting/utilities.hpp index 85a2e1ba6c..33f4605bd0 100644 --- a/OREData/ored/scripting/utilities.hpp +++ b/OREData/ored/scripting/utilities.hpp @@ -160,21 +160,21 @@ std::ostream& operator<<(std::ostream& o, const IndexInfo& i); /*! This method tries to parse an commodity index name used in the scripting context + \verbatim 0) COMM-name 1) COMM-name-YYYY-MM-DD 2) COMM-name-YYYY-MM - === 3) CMMM-name#N#D#Cal 4) COMM-name#N#D 5) COMM-name#N - === 6) COMM-name!N + \endverbatim Here 0) - 2) are corresponding to the usual ORE conventions while 3) - 6) are specific to the scripting module: Expressions of the form 3) - 5) are resolved to one of the forms 1) and 2) using a given commodity future expiry calculator as follows: - 3) COMM-name#N#D#Cal is resolved to the (N+1)th future with expiry greater than the given obsDate advanced by D + 3) COMM-name\#N\#D\#Cal is resolved to the (N+1)th future with expiry greater than the given obsDate advanced by D business days w.r.t. Calendar Cal, N >= 0 4) as 3), Cal is taken as the commodity index's fixing calendar 5) as 4), D is set to 0 if not given @@ -195,16 +195,17 @@ QuantLib::ext::shared_ptr parseScriptedCommodityIndex( const QuantLib::Date& obsDate = Date()); /*! This method tries to parse an inflation index name used in the scripting context - + \verbatim 1) EUHICPXT 2) EUHICPXT#F 3) EUHICPXT#L + \endverbatim Here 1) is the original form used in ORE. This represents a non-interpolated index. 2,3) is the extended form including a flag indicating the interpolation F (flat, =1) or L (linear) The function returns a ql inflation index accounting for the interpolation (but without ts attached), - and the ORE index name without the #F, #L suffix. + and the ORE index name without the \#F, \#L suffix. */ std::tuple, std::string, bool> parseScriptedInflationIndex(const std::string& indexName); diff --git a/OREData/ored/utilities/databuilders.hpp b/OREData/ored/utilities/databuilders.hpp index a7bec95e2d..aa2ca3b569 100644 --- a/OREData/ored/utilities/databuilders.hpp +++ b/OREData/ored/utilities/databuilders.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file orea/app/initbuilders.hpp +/*! \file ored/utilities/databuilders.hpp \brief add builders to factories */ diff --git a/OREData/ored/utilities/dategrid.hpp b/OREData/ored/utilities/dategrid.hpp index 1e7098a781..7f4480729a 100644 --- a/OREData/ored/utilities/dategrid.hpp +++ b/OREData/ored/utilities/dategrid.hpp @@ -18,7 +18,7 @@ /*! \file ored/utilities/dategrid.hpp \brief The date grid class - \ingroup simulation + \ingroup utilities */ #pragma once @@ -33,7 +33,7 @@ namespace data { //! Simulation Date Grid /*! Utility for building a simulation date grid. - \ingroup simulation + \ingroup utilities */ class DateGrid { public: diff --git a/QuantExt/doc/pages/groups.docs b/QuantExt/doc/pages/groups.docs index 5b56ebd135..56dbfd9cd9 100644 --- a/QuantExt/doc/pages/groups.docs +++ b/QuantExt/doc/pages/groups.docs @@ -17,6 +17,21 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ +/*! \defgroup datetime Date and time calculations + Grouping of all date and time related classes, functions and files + @{ +*/ + +/*! \defgroup calendars Calendars + Grouping of all calendar related classes, functions and files +*/ + +/*! \defgroup daycounters Day counters + Grouping of all day counter related classes, functions and files +*/ + +/*! @} */ + /*! \defgroup currencies Currencies and FX rates Grouping of all currency related classes, functions and files */ @@ -25,10 +40,41 @@ Grouping of all index related classes, functions and files */ +/*! \defgroup lattices Lattice methods + Grouping of additional lattice methods over and above those in QuantLib +*/ + /*! \defgroup engines Pricing engines Grouping of all engine related classes, functions and files + @{ */ +/*! \defgroup asianengines Asian option engines */ + +/*! \defgroup barrierengines Barrier option engines */ + +/*! \defgroup basketengines Basket option engines */ + +/*! \defgroup bondengines Basket option engines */ + +/*! \defgroup capfloorengines Cap/floor engines */ + +/*! \defgroup cliquetengines Cliquet option engines */ + +/*! \defgroup forwardengines Forward option engines */ + +/*! \defgroup inflationcapfloorengines Inflation cap/floor engines */ + +/*! \defgroup lookbackengines Lookback option engines */ + +/*! \defgroup quantoengines Quanto option engines */ + +/*! \defgroup swaptionengines Swaption engines */ + +/*! \defgroup vanillaengines Vanilla option engines */ + +/*! @} */ + /*! \defgroup cashflows Cashflows Grouping of all cashflow related classes, functions and files */ @@ -37,10 +83,21 @@ Grouping of all instrument related classes, functions and files */ -/*! \defgroup termstructures Term Structures +/*! \defgroup termstructures Term structures Grouping of all term structure related classes, functions and files + @{ */ +/*! \defgroup yieldtermstructures Interest-rate term structures */ + +/*! \defgroup defaultprobabilitytermstructures Default-probability term structures */ + +/*! \defgroup inflationtermstructures Inflation term structures */ + +/*! \defgroup correlationtermstructures Correlation term structures */ + +/*! @} */ + /*! \defgroup methods Methods Grouping of all method related classes, functions and files */ @@ -55,8 +112,13 @@ /*! \defgroup math Math tools Grouping of all math related classes, functions and files + @{ */ +/*! \defgroup interpolations Interpolations and corresponding traits */ + +/*! @} */ + /*! \defgroup models Models Grouping of all model related classes, functions and files @{ @@ -67,3 +129,7 @@ */ /*! @} */ + +/*! \defgroup utilities Utilities + Grouping of all ultility classes, functions and files +*/ diff --git a/QuantExt/doc/quantext.doxy b/QuantExt/doc/quantext.doxy index eeffd469ba..bc4fd1c12d 100644 --- a/QuantExt/doc/quantext.doxy +++ b/QuantExt/doc/quantext.doxy @@ -64,7 +64,7 @@ HIDE_FRIEND_COMPOUNDS = NO HIDE_IN_BODY_DOCS = YES INTERNAL_DOCS = NO CASE_SENSE_NAMES = NO -HIDE_SCOPE_NAMES = YES +HIDE_SCOPE_NAMES = NO HIDE_COMPOUND_REFERENCE= NO SHOW_INCLUDE_FILES = YES SHOW_GROUPED_MEMB_INC = NO @@ -103,7 +103,7 @@ WARN_LOGFILE = #--------------------------------------------------------------------------- INPUT = ./pages \ ../qle \ - ../test + ../test INPUT_ENCODING = UTF-8 FILE_PATTERNS = *.docs \ *.hpp \ @@ -157,7 +157,6 @@ HTML_EXTRA_FILES = images/favicon.png images/logo-qle@2x.png HTML_COLORSTYLE_HUE = 220 HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 -HTML_TIMESTAMP = NO HTML_DYNAMIC_SECTIONS = YES HTML_INDEX_NUM_ENTRIES = 100 GENERATE_DOCSET = NO @@ -188,7 +187,6 @@ ENUM_VALUES_PER_LINE = 4 TREEVIEW_WIDTH = 250 EXT_LINKS_IN_WINDOW = NO FORMULA_FONTSIZE = 12 -FORMULA_TRANSPARENT = YES USE_MATHJAX = YES MATHJAX_FORMAT = HTML-CSS MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest @@ -219,7 +217,6 @@ PDF_HYPERLINKS = YES USE_PDFLATEX = YES LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO -LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain #--------------------------------------------------------------------------- # Configuration options related to the RTF output @@ -230,7 +227,6 @@ COMPACT_RTF = NO RTF_HYPERLINKS = NO RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = -RTF_SOURCE_CODE = NO #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- @@ -250,7 +246,6 @@ XML_PROGRAMLISTING = NO #--------------------------------------------------------------------------- GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook -DOCBOOK_PROGRAMLISTING = NO #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- @@ -285,13 +280,10 @@ EXTERNAL_PAGES = NO #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- -CLASS_DIAGRAMS = YES DIA_PATH = HIDE_UNDOC_RELATIONS = NO HAVE_DOT = YES DOT_NUM_THREADS = 0 -DOT_FONTNAME = Helvetica -DOT_FONTSIZE = 10 DOT_FONTPATH = CLASS_GRAPH = YES COLLABORATION_GRAPH = NO @@ -313,9 +305,8 @@ MSCFILE_DIRS = DIAFILE_DIRS = PLANTUML_JAR_PATH = PLANTUML_INCLUDE_PATH = -DOT_GRAPH_MAX_NODES = 20 +DOT_GRAPH_MAX_NODES = 100 MAX_DOT_GRAPH_DEPTH = 2 -DOT_TRANSPARENT = NO DOT_MULTI_TARGETS = NO GENERATE_LEGEND = YES DOT_CLEANUP = YES diff --git a/QuantExt/qle/instruments/bondrepo.hpp b/QuantExt/qle/instruments/bondrepo.hpp index 1938d1cc28..3844008858 100644 --- a/QuantExt/qle/instruments/bondrepo.hpp +++ b/QuantExt/qle/instruments/bondrepo.hpp @@ -70,6 +70,4 @@ class BondRepo : public QuantLib::Instrument { void setupExpired() const override; }; -//! %Arguments for Bond repo - } // namespace QuantExt diff --git a/QuantExt/qle/instruments/equityforward.hpp b/QuantExt/qle/instruments/equityforward.hpp index 7bd212da6c..0b6e5c4628 100644 --- a/QuantExt/qle/instruments/equityforward.hpp +++ b/QuantExt/qle/instruments/equityforward.hpp @@ -57,13 +57,13 @@ class EquityForward : public Instrument { const Date& maturityDate, //! Strike const Real& strike, - // Payment Date + //! Payment Date const Date& payDate = Date(), - // Payment Currency + //! Payment Currency const Currency payCcy = Currency(), - // FX Index used for fx conversion + //! FX Index used for fx conversion const QuantLib::ext::shared_ptr& fxIndex = nullptr, - // Fixing Date for a fx conversion if paymentCurrency != currency + //! Fixing Date for a fx conversion if paymentCurrency != currency const Date& fixingDate = Date()); //! \name Instrument interface //@{ diff --git a/QuantExt/qle/instruments/forwardbond.hpp b/QuantExt/qle/instruments/forwardbond.hpp index 7dc1ba6aac..5695fb54a6 100644 --- a/QuantExt/qle/instruments/forwardbond.hpp +++ b/QuantExt/qle/instruments/forwardbond.hpp @@ -54,7 +54,7 @@ class ForwardBond : public Instrument { const bool settlementDirty, const Real compensationPayment, const Date compensationPaymentDate, const bool isLong, const Real bondNotional = 1.0, const Real dv01 = Null()); - //! \Name Instrument interface + //! \name Instrument interface //@{ bool isExpired() const override; void setupArguments(PricingEngine::arguments*) const override; diff --git a/QuantExt/qle/instruments/outperformanceoption.hpp b/QuantExt/qle/instruments/outperformanceoption.hpp index ced4334e07..2d687b57eb 100644 --- a/QuantExt/qle/instruments/outperformanceoption.hpp +++ b/QuantExt/qle/instruments/outperformanceoption.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file ple/instruments/outperformanceoption.hpp +/*! \file qle/instruments/outperformanceoption.hpp \brief outperformance option */ diff --git a/QuantExt/qle/instruments/syntheticcdo.hpp b/QuantExt/qle/instruments/syntheticcdo.hpp index da3f00eb44..39cc655921 100644 --- a/QuantExt/qle/instruments/syntheticcdo.hpp +++ b/QuantExt/qle/instruments/syntheticcdo.hpp @@ -101,7 +101,7 @@ using namespace QuantLib; The pricing algorithm allows for varying notional amounts and default termstructures of the underlyings. - \ingroup credit + \ingroup instruments \todo Investigate and fix cases \f$ E_{i+1} < E_i. \f$ */ diff --git a/QuantExt/qle/interpolators/optioninterpolator2d.hpp b/QuantExt/qle/interpolators/optioninterpolator2d.hpp index 892939b0a4..b65fb3b7c4 100644 --- a/QuantExt/qle/interpolators/optioninterpolator2d.hpp +++ b/QuantExt/qle/interpolators/optioninterpolator2d.hpp @@ -66,7 +66,6 @@ class OptionInterpolatorBase { }; //! Option surface interpolator -//! \ingroup interpolators template class OptionInterpolator2d : public OptionInterpolatorBase { diff --git a/QuantExt/qle/models/blackscholesmodelwrapper.hpp b/QuantExt/qle/models/blackscholesmodelwrapper.hpp index a0440b363a..778abb03d1 100644 --- a/QuantExt/qle/models/blackscholesmodelwrapper.hpp +++ b/QuantExt/qle/models/blackscholesmodelwrapper.hpp @@ -18,7 +18,7 @@ /*! \file models/blackscholesmodelwrapper.hpp \brief wrapper around a vector of BS processes - \ingroup utilities + \ingroup models */ #pragma once diff --git a/QuantExt/qle/models/hwpiecewiseparametrization.hpp b/QuantExt/qle/models/hwpiecewiseparametrization.hpp index 459fef2714..6be9c702c4 100644 --- a/QuantExt/qle/models/hwpiecewiseparametrization.hpp +++ b/QuantExt/qle/models/hwpiecewiseparametrization.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file hwcpiecewisearametrization.hpp +/*! \file hwpiecewiseparametrization.hpp \brief Hull White n factor parametrization with piecewise constant reversion and vol \ingroup models */ diff --git a/QuantExt/qle/models/hwpiecewisestatisticalparametrization.hpp b/QuantExt/qle/models/hwpiecewisestatisticalparametrization.hpp index e7e9124125..3bef8c1ae0 100644 --- a/QuantExt/qle/models/hwpiecewisestatisticalparametrization.hpp +++ b/QuantExt/qle/models/hwpiecewisestatisticalparametrization.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file hwcpiecewisearametrization.hpp +/*! \file hwpiecewisestatisticalparametrization.hpp \brief Hull White n factor parametrization with piecewise constant reversion and vol \ingroup models */ diff --git a/QuantExt/qle/pricingengines/cpicapfloorengines.hpp b/QuantExt/qle/pricingengines/cpicapfloorengines.hpp index db2464b1f1..103259cd40 100644 --- a/QuantExt/qle/pricingengines/cpicapfloorengines.hpp +++ b/QuantExt/qle/pricingengines/cpicapfloorengines.hpp @@ -37,7 +37,7 @@ /*! \file cpicapfloorengines.hpp \brief Extended version of the QuantLib engine, strike adjustment for seasoned CPI Cap/Floor pricing - \ingroup PricingEngines + \ingroup engines */ #ifndef quantext_cpicapfloorengines_hpp diff --git a/QuantExt/qle/pricingengines/discountingcommodityforwardengine.hpp b/QuantExt/qle/pricingengines/discountingcommodityforwardengine.hpp index 901bfdd313..5ed4bef47a 100644 --- a/QuantExt/qle/pricingengines/discountingcommodityforwardengine.hpp +++ b/QuantExt/qle/pricingengines/discountingcommodityforwardengine.hpp @@ -47,6 +47,7 @@ class DiscountingCommodityForwardEngine : public CommodityForward::engine { \param includeSettlementDateFlows If true (false), cashflows on the forward maturity are (are not) included in the NPV. \param npvDate Discount to this date. If not given, is set to the evaluation date + \param npvFxConversion FX rate for NPV conversion. */ DiscountingCommodityForwardEngine(const QuantLib::Handle& discountCurve, QuantLib::ext::optional includeSettlementDateFlows = QuantLib::ext::nullopt, diff --git a/QuantExt/qle/pricingengines/discountingfxforwardengine.hpp b/QuantExt/qle/pricingengines/discountingfxforwardengine.hpp index ab2b313acb..515a419786 100644 --- a/QuantExt/qle/pricingengines/discountingfxforwardengine.hpp +++ b/QuantExt/qle/pricingengines/discountingfxforwardengine.hpp @@ -39,7 +39,7 @@ namespace QuantExt { to the correct fx forward legs. The evaluation date is the reference date of either discounting curve (which must be equal). - \ingroup engines + \ingroup engines */ class DiscountingFxForwardEngine : public FxForward::engine { public: @@ -51,9 +51,7 @@ class DiscountingFxForwardEngine : public FxForward::engine { The market spot rate quote, given as units of ccy1 for one unit of ccy2. The spot rate must be given w.r.t. a settlement equal to the npv date. - \param includeSettlementDateFlows, settlementDate - If includeSettlementDateFlows is true (false), cashflows - on the settlementDate are (not) included in the NPV. + \param settlementDate If not given the settlement date is set to the npv date. \param npvDate diff --git a/QuantExt/qle/pricingengines/numericlgmcallablebondengine.hpp b/QuantExt/qle/pricingengines/numericlgmcallablebondengine.hpp index 2db0d0f8a2..57621ad1a3 100644 --- a/QuantExt/qle/pricingengines/numericlgmcallablebondengine.hpp +++ b/QuantExt/qle/pricingengines/numericlgmcallablebondengine.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file fdlgmcallablebondengine.hpp */ +/*! \file numericlgmcallablebondengine.hpp */ #pragma once diff --git a/QuantExt/qle/termstructures/averagefuturepricehelper.hpp b/QuantExt/qle/termstructures/averagefuturepricehelper.hpp index 5d2b91e7ba..6280e44c8d 100644 --- a/QuantExt/qle/termstructures/averagefuturepricehelper.hpp +++ b/QuantExt/qle/termstructures/averagefuturepricehelper.hpp @@ -57,6 +57,9 @@ class AverageFuturePriceHelper : public PriceHelper { \param dailyExpiryOffset If set to \c Null(), this is ignored. If set to a positive integer, it is the number of business days on the \c index calendar to offset each daily expiry date on each pricing date. + \param offPeakPowerData Optional data for off-peak power averaging futures. Contains the Holiday calendar + number of offpeak hours on a workday. Used to compute the average hourly price from + the daily price fixings. */ AverageFuturePriceHelper(const QuantLib::Handle& price, const QuantLib::ext::shared_ptr& index, diff --git a/QuantExt/qle/termstructures/parametricvolatilitysmilesection.hpp b/QuantExt/qle/termstructures/parametricvolatilitysmilesection.hpp index d56a0c0bd0..361b4ee9de 100644 --- a/QuantExt/qle/termstructures/parametricvolatilitysmilesection.hpp +++ b/QuantExt/qle/termstructures/parametricvolatilitysmilesection.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file paramtricvolatilitysmilesection.hpp +/*! \file parametricvolatilitysmilesection.hpp \brief smile section based on parametric volatility \ingroup termstructures */ diff --git a/QuantExt/qle/termstructures/scenario.hpp b/QuantExt/qle/termstructures/scenario.hpp index a6a4917859..dee1c7a956 100644 --- a/QuantExt/qle/termstructures/scenario.hpp +++ b/QuantExt/qle/termstructures/scenario.hpp @@ -16,9 +16,9 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file scenario/scenario.hpp +/*! \file qle/termstructures/scenario.hpp \brief Scenario class - \ingroup scenario + \ingroup termstructures */ #pragma once @@ -45,8 +45,6 @@ using QuantLib::Size; using std::string; //! Data types stored in the scenario class -/*! \ingroup scenario - */ class RiskFactorKey { public: //! Risk Factor types @@ -128,8 +126,6 @@ inline bool operator!=(const RiskFactorKey& lhs, const RiskFactorKey& rhs) { ret This base class provides the interface to add and retrieve data to and from a scenario. Concrete simple and memory optimized "compact" scenario classes are derived from this. - - \ingroup scenario */ class Scenario { public: diff --git a/QuantExt/qle/utilities/serializationdate.hpp b/QuantExt/qle/utilities/serializationdate.hpp index 4b7e4e03c4..230190162e 100644 --- a/QuantExt/qle/utilities/serializationdate.hpp +++ b/QuantExt/qle/utilities/serializationdate.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file ored/utilities/serializationdate.hpp +/*! \file qle/utilities/serializationdate.hpp \brief support for QuantLib::Date serialization \ingroup utilities */ diff --git a/QuantExt/qle/utilities/serializationperiod.hpp b/QuantExt/qle/utilities/serializationperiod.hpp index 1bfae912ad..a6f7b4d403 100644 --- a/QuantExt/qle/utilities/serializationperiod.hpp +++ b/QuantExt/qle/utilities/serializationperiod.hpp @@ -16,7 +16,7 @@ FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ -/*! \file ored/utilities/serializationperiod.hpp +/*! \file qle/utilities/serializationperiod.hpp \brief support for QuantLib::Period serialization \ingroup utilities */