@@ -464,7 +464,7 @@ XvaAnalyticImpl::classicRun(const QuantLib::ext::shared_ptr<Portfolio>& portfoli
464464 classicPortfolio_->add (trade);
465465 QL_REQUIRE (analytic ()->market (), " today's market not set" );
466466 QuantLib::ext::shared_ptr<EngineFactory> factory = engineFactory ();
467- classicPortfolio_->build (factory, " analytic/" + label ());
467+ classicPortfolio_->build (factory, " analytic/" + label (), true , inputs_-> useAtParCouponsTrades () );
468468 Date maturityDate = inputs_->asof ();
469469 if (inputs_->portfolioFilterDate () != Null<Date>())
470470 maturityDate = inputs_->portfolioFilterDate ();
@@ -592,7 +592,8 @@ void XvaAnalyticImpl::buildClassicCube(const QuantLib::ext::shared_ptr<Portfolio
592592 analytic ()->configurations ().todaysMarketParams , inputs_->marketConfig (" simulation" ),
593593 analytic ()->configurations ().simMarketParams , false , false , QuantLib::ext::make_shared<ScenarioFilter>(),
594594 inputs_->refDataManager (), inputs_->iborFallbackConfig (), true , false , false , cubeFactory, {},
595- cptyCubeFactory, " xva-simulation" , offsetScenario_);
595+ cptyCubeFactory, " xva-simulation" , offsetScenario_, inputs_->useAtParCouponsCurves (),
596+ inputs_->useAtParCouponsTrades ());
596597
597598 engine.setAggregationScenarioData (scenarioData_);
598599 engine.registerProgressIndicator (progressBar);
@@ -663,7 +664,8 @@ void XvaAnalyticImpl::buildAmcPortfolio() {
663664 if (inputs_->amcTradeTypes ().find (trade->tradeType ()) != inputs_->amcTradeTypes ().end ()) {
664665 if (inputs_->amcCg () != XvaEngineCG::Mode::CubeGeneration) {
665666 auto t = trade;
666- auto [ft, success] = buildTrade (t, factory, " analytic/" + label (), false , true , true );
667+ auto [ft, success] =
668+ buildTrade (t, factory, " analytic/" + label (), false , true , true , inputs_->useAtParCouponsTrades ());
667669 if (success)
668670 amcPortfolio_->add (trade);
669671 else
@@ -731,7 +733,8 @@ void XvaAnalyticImpl::amcRun(bool doClassicRun, bool continueOnCalibrationError,
731733 inputs_->xvaCgUseRedBlocks (), inputs_->xvaCgUseExternalComputeDevice (),
732734 inputs_->xvaCgExternalDeviceCompatibilityMode (), inputs_->xvaCgUseDoublePrecisionForExternalCalculation (),
733735 inputs_->xvaCgExternalComputeDevice (), inputs_->xvaCgUsePythonIntegration (),
734- inputs_->xvaCgUsePythonIntegrationDynamicIm (), true , true , true , " xva analytic" );
736+ inputs_->xvaCgUsePythonIntegrationDynamicIm (), true , true , true , inputs_->useAtParCouponsCurves (),
737+ inputs_->useAtParCouponsTrades (), " xva analytic" );
735738
736739 engine.registerProgressIndicator (progressBar);
737740 engine.registerProgressIndicator (progressLog);
@@ -793,7 +796,8 @@ void XvaAnalyticImpl::amcRun(bool doClassicRun, bool continueOnCalibrationError,
793796 inputs_->marketConfig (" simulation" ), inputs_->amcPathDataInput (), inputs_->amcPathDataOutput (),
794797 inputs_->amcIndividualTrainingInput (), inputs_->amcIndividualTrainingOutput (),
795798 inputs_->refDataManager (), inputs_->iborFallbackConfig (), true , cubeFactory, offsetScenario_,
796- simMarketParams, continueOnCalibrationError, allowModelFallbacks);
799+ simMarketParams, continueOnCalibrationError, allowModelFallbacks, inputs_->useAtParCouponsCurves (),
800+ inputs_->useAtParCouponsTrades ());
797801
798802 amcEngine.registerProgressIndicator (progressBar);
799803 amcEngine.registerProgressIndicator (progressLog);
@@ -1016,7 +1020,8 @@ void XvaAnalyticImpl::runAnalytic(const QuantLib::ext::shared_ptr<ore::data::InM
10161020 inputs_->xvaCgUseRedBlocks (), inputs_->xvaCgUseExternalComputeDevice (),
10171021 inputs_->xvaCgExternalDeviceCompatibilityMode (), inputs_->xvaCgUseDoublePrecisionForExternalCalculation (),
10181022 inputs_->xvaCgExternalComputeDevice (), inputs_->xvaCgUsePythonIntegration (),
1019- inputs_->xvaCgUsePythonIntegrationDynamicIm (), true , true , true , " xva analytic" );
1023+ inputs_->xvaCgUsePythonIntegrationDynamicIm (), true , true , true , inputs_->useAtParCouponsCurves (),
1024+ inputs_->useAtParCouponsTrades (), " xva analytic" );
10201025
10211026 engine.run ();
10221027
0 commit comments