QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
LongstaffSchwartzMultiPathPricer Class Reference

Longstaff-Schwarz path pricer for early exercise options. More...

#include <ql/experimental/mcbasket/longstaffschwartzmultipathpricer.hpp>

Inheritance diagram for LongstaffSchwartzMultiPathPricer:

Public Member Functions

 LongstaffSchwartzMultiPathPricer (const ext::shared_ptr< PathPayoff > &payoff, const std::vector< Size > &timePositions, std::vector< Handle< YieldTermStructure > > forwardTermStructure, Array discounts, Size polynomialOrder, LsmBasisSystem::PolynomialType polynomialType)
Real operator() (const MultiPath &multiPath) const override
virtual void calibrate ()

Protected Member Functions

PathInfo transformPath (const MultiPath &path) const

Protected Attributes

bool calibrationPhase_ = true
const ext::shared_ptr< PathPayoffpayoff_
std::unique_ptr< Array[]> coeff_
std::unique_ptr< Real[]> lowerBounds_
const std::vector< SizetimePositions_
const std::vector< Handle< YieldTermStructure > > forwardTermStructures_
const Array dF_
std::vector< PathInfo > paths_
const std::vector< std::function< Real(Array)> > v_

Additional Inherited Members

Public Types inherited from PathPricer< MultiPath >
typedef Real result_type

Detailed Description

Longstaff-Schwarz path pricer for early exercise options.

References:

Francis Longstaff, Eduardo Schwartz, 2001. Valuing American Options by Simulation: A Simple Least-Squares Approach, The Review of Financial Studies, Volume 14, No. 1, 113-147

Tests
the correctness of the returned value is tested by reproducing results available in web/literature

Member Function Documentation

◆ operator()()

Real operator() ( const MultiPath & multiPath) const
overridevirtual