Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv16039/qlo
Modified Files:
enumclassctors.cpp enumclassctors.hpp termstructures.cpp
termstructures.hpp
Log Message:
exporting PiecewiseYield alternatives
Index: termstructures.hpp
===================================================================
RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/termstructures.hpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** termstructures.hpp 27 Jun 2006 09:54:19 -0000 1.8
--- termstructures.hpp 24 Jul 2006 15:45:24 -0000 1.9
***************
*** 42,46 ****
const QuantLib::Calendar &calendar,
const std::vector<std::string> &handlesRateHelper,
! const QuantLib::DayCounter &dayCounter);
};
--- 42,48 ----
const QuantLib::Calendar &calendar,
const std::vector<std::string> &handlesRateHelper,
! const QuantLib::DayCounter &dayCounter,
! const std::string& traitsID,
! const std::string& interpolatorID);
};
Index: termstructures.cpp
===================================================================
RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/termstructures.cpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** termstructures.cpp 4 Jul 2006 17:07:56 -0000 1.14
--- termstructures.cpp 24 Jul 2006 15:45:24 -0000 1.15
***************
*** 39,44 ****
const QuantLib::Calendar &calendar,
const std::vector<std::string> &handlesRateHelper,
! const QuantLib::DayCounter &dayCounter) {
!
std::vector<boost::shared_ptr<QuantLib::RateHelper> > rateHelpersQL;
std::vector<std::string>::const_iterator i;
--- 39,46 ----
const QuantLib::Calendar &calendar,
const std::vector<std::string> &handlesRateHelper,
! const QuantLib::DayCounter &dayCounter,
! const std::string& traitsID,
! const std::string& interpolatorID)
! {
std::vector<boost::shared_ptr<QuantLib::RateHelper> > rateHelpersQL;
std::vector<std::string>::const_iterator i;
***************
*** 72,76 ****
libraryObject_ = Create<boost::shared_ptr<QuantLib::YieldTermStructure> >()
! ("Discount", "LogLinear", nDays, calendar, rateHelpersQL, dayCounter);
/*
--- 74,78 ----
libraryObject_ = Create<boost::shared_ptr<QuantLib::YieldTermStructure> >()
! (traitsID, interpolatorID, nDays, calendar, rateHelpersQL, dayCounter);
/*
Index: enumclassctors.cpp
===================================================================
RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** enumclassctors.cpp 21 Jul 2006 18:19:17 -0000 1.7
--- enumclassctors.cpp 24 Jul 2006 15:45:24 -0000 1.8
***************
*** 378,381 ****
--- 378,395 ----
/* *** YieldTermStructure *** */
+ //Discount based yield term structures
+ boost::shared_ptr<QuantLib::YieldTermStructure> DISCOUNT_LINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::Discount,
+ QuantLib::Linear>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
boost::shared_ptr<QuantLib::YieldTermStructure> DISCOUNT_LOGLINEAR_PiecewiseYieldCurve(
const long &nDays,
***************
*** 391,394 ****
--- 405,501 ----
1.0e-6));
}
+ boost::shared_ptr<QuantLib::YieldTermStructure> DISCOUNT_CUBIC_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::Discount,
+ QuantLib::Cubic>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
+ //ZeroYield based yield term structures
+ boost::shared_ptr<QuantLib::YieldTermStructure> ZEROYIELD_LINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::ZeroYield,
+ QuantLib::Linear>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
+ boost::shared_ptr<QuantLib::YieldTermStructure> ZEROYIELD_LOGLINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::ZeroYield,
+ QuantLib::LogLinear>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
+ boost::shared_ptr<QuantLib::YieldTermStructure> ZEROYIELD_CUBIC_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::ZeroYield,
+ QuantLib::Linear>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
+ //ForwardRate based yield term structures
+ boost::shared_ptr<QuantLib::YieldTermStructure> FORWARDRATE_LINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::ForwardRate,
+ QuantLib::Linear>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
+ boost::shared_ptr<QuantLib::YieldTermStructure> FORWARDRATE_LOGLINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::ForwardRate,
+ QuantLib::LogLinear>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
+ boost::shared_ptr<QuantLib::YieldTermStructure> FORWARDRATE_CUBIC_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter) {
+ return boost::shared_ptr<QuantLib::YieldTermStructure>(
+ new QuantLib::PiecewiseYieldCurve<QuantLib::ForwardRate,
+ QuantLib::Linear>(
+ nDays, calendar,
+ rateHelpers,
+ dayCounter,
+ 1.0e-6));
+ }
}
Index: enumclassctors.hpp
===================================================================
RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.hpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** enumclassctors.hpp 21 Jul 2006 18:19:17 -0000 1.7
--- enumclassctors.hpp 24 Jul 2006 15:45:24 -0000 1.8
***************
*** 139,142 ****
--- 139,148 ----
/* *** YieldTermStructure *** */
+ //Discount based yield term structures
+ boost::shared_ptr<QuantLib::YieldTermStructure> DISCOUNT_LINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
boost::shared_ptr<QuantLib::YieldTermStructure> DISCOUNT_LOGLINEAR_PiecewiseYieldCurve(
const long &nDays,
***************
*** 144,147 ****
--- 150,191 ----
const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
const QuantLib::DayCounter &dayCounter);
+ boost::shared_ptr<QuantLib::YieldTermStructure> DISCOUNT_CUBIC_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
+ //ZeroYield based yield term structures
+ boost::shared_ptr<QuantLib::YieldTermStructure> ZEROYIELD_LINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
+ boost::shared_ptr<QuantLib::YieldTermStructure> ZEROYIELD_LOGLINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
+ boost::shared_ptr<QuantLib::YieldTermStructure> ZEROYIELD_CUBIC_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
+ //ForwardRate based yield term structures
+ boost::shared_ptr<QuantLib::YieldTermStructure> FORWARDRATE_LINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
+ boost::shared_ptr<QuantLib::YieldTermStructure> FORWARDRATE_LOGLINEAR_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
+ boost::shared_ptr<QuantLib::YieldTermStructure> FORWARDRATE_CUBIC_PiecewiseYieldCurve(
+ const long &nDays,
+ const QuantLib::Calendar &calendar,
+ const std::vector<boost::shared_ptr<QuantLib::RateHelper> > &rateHelpers,
+ const QuantLib::DayCounter &dayCounter);
+
}
|