QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
juquadraticengine.hpp
Go to the documentation of this file.
1/* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
3/*
4 Copyright (C) 2004 Neil Firth
5 Copyright (C) 2007 StatPro Italia srl
6
7 This file is part of QuantLib, a free-software/open-source library
8 for financial quantitative analysts and developers - http://quantlib.org/
9
10 QuantLib is free software: you can redistribute it and/or modify it
11 under the terms of the QuantLib license. You should have received a
12 copy of the license along with this program; if not, please email
13 <quantlib-dev@lists.sf.net>. The license is also available online at
14 <http://quantlib.org/license.shtml>.
15
16 This program is distributed in the hope that it will be useful, but WITHOUT
17 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 FOR A PARTICULAR PURPOSE. See the license for more details.
19*/
20
21/*! \file juquadraticengine.hpp
22 \brief Ju quadratic (1999) approximation engine
23*/
24
25#ifndef quantlib_ju_quadratic_engine_hpp
26#define quantlib_ju_quadratic_engine_hpp
27
30
31namespace QuantLib {
32
33 //! Pricing engine for American options with Ju quadratic approximation
34 /*! Reference:
35 An Approximate Formula for Pricing American Options,
36 Journal of Derivatives Winter 1999,
37 Ju, N.
38
39 \warning Barone-Adesi-Whaley critical commodity price
40 calculation is used, it has not been modified to see
41 whether the method of Ju is faster. Ju does not say
42 how he solves the equation for the critical stock
43 price, e.g. Newton method. He just gives the
44 solution. The method of BAW gives answers to the
45 same accuracy as in Ju (1999).
46
47 \ingroup vanillaengines
48
49 \test the correctness of the returned value is tested by
50 reproducing results available in literature.
51 */
53 : public VanillaOption::engine {
54 public:
55 JuQuadraticApproximationEngine(ext::shared_ptr<GeneralizedBlackScholesProcess>);
56 void calculate() const override;
57
58 private:
59 ext::shared_ptr<GeneralizedBlackScholesProcess> process_;
60 };
61
62}
63
64
65#endif
Black-Scholes processes.
Pricing engine for American options with Ju quadratic approximation.
ext::shared_ptr< GeneralizedBlackScholesProcess > process_
Definition: any.hpp:35
Vanilla option on a single asset.