abcd.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) 2006, 2007 Ferdinando Ametrano
5  Copyright (C) 2007 Chiara Fornarola
6  Copyright (C) 2006, 2007 Marco Bianchetti
7  Copyright (C) 2006, 2007 Cristina Duminuco
8  Copyright (C) 2006, 2007 Giorgio Facchinetti
9 
10  This file is part of QuantLib, a free-software/open-source library
11  for financial quantitative analysts and developers - http://quantlib.org/
12 
13  QuantLib is free software: you can redistribute it and/or modify it
14  under the terms of the QuantLib license. You should have received a
15  copy of the license along with this program; if not, please email
16  <quantlib-dev@lists.sf.net>. The license is also available online at
17  <http://quantlib.org/license.shtml>.
18 
19  This program is distributed in the hope that it will be useful, but WITHOUT
20  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
21  FOR A PARTICULAR PURPOSE. See the license for more details.
22 */
23 
24 #ifndef qla_abcd_hpp
25 #define qla_abcd_hpp
26 
27 #include <oh/libraryobject.hpp>
28 #include <ql/types.hpp>
29 
30 namespace QuantLib {
31  class AbcdFunction;
32  class AbcdCalibration;
33  class Quote;
34  class EndCriteria;
35  class OptimizationMethod;
36 }
37 
38 namespace QuantLibAddin {
39  class AbcdFunction :
40  public ObjectHandler::LibraryObject<QuantLib::AbcdFunction> {
41  public:
43  const boost::shared_ptr<ObjectHandler::ValueObject>& properties,
44  QuantLib::Real a,
45  QuantLib::Real b,
46  QuantLib::Real c,
47  QuantLib::Real d,
48  bool permanent);
49  };
50 
52  public ObjectHandler::LibraryObject<QuantLib::AbcdCalibration> {
53  public:
55  const boost::shared_ptr<ObjectHandler::ValueObject>& properties,
56  const std::vector<QuantLib::Time>& times,
57  const std::vector<QuantLib::Volatility>& blackVols,
58  QuantLib::Real a,
59  QuantLib::Real b,
60  QuantLib::Real c,
61  QuantLib::Real d,
62  bool aIsFixed,
63  bool bIsFixed,
64  bool cIsFixed,
65  bool dIsFixed,
66  bool vegaWeighted = false,
67  const boost::shared_ptr<QuantLib::EndCriteria> endCriteria
68  = boost::shared_ptr<QuantLib::EndCriteria>(),
69  const boost::shared_ptr<QuantLib::OptimizationMethod> method
70  = boost::shared_ptr<QuantLib::OptimizationMethod>(),
71  bool permanent = false);
72  };
73 }
74 
75 #endif
Definition: abcd.hpp:39
Definition: abcd.hpp:51
AbcdFunction(const boost::shared_ptr< ObjectHandler::ValueObject > &properties, QuantLib::Real a, QuantLib::Real b, QuantLib::Real c, QuantLib::Real d, bool permanent)
Definition: abcd.hpp:38
AbcdCalibration(const boost::shared_ptr< ObjectHandler::ValueObject > &properties, const std::vector< QuantLib::Time > &times, const std::vector< QuantLib::Volatility > &blackVols, QuantLib::Real a, QuantLib::Real b, QuantLib::Real c, QuantLib::Real d, bool aIsFixed, bool bIsFixed, bool cIsFixed, bool dIsFixed, bool vegaWeighted=false, const boost::shared_ptr< QuantLib::EndCriteria > endCriteria=boost::shared_ptr< QuantLib::EndCriteria >(), const boost::shared_ptr< QuantLib::OptimizationMethod > method=boost::shared_ptr< QuantLib::OptimizationMethod >(), bool permanent=false)
Definition: abcd.hpp:30