quantlibaddin-cvs Mailing List for QuantLibAddin (Page 28)
Brought to you by:
ericehlers,
nando
You can subscribe to this list here.
| 2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(51) |
Jun
(320) |
Jul
(210) |
Aug
(272) |
Sep
(169) |
Oct
(232) |
Nov
(138) |
Dec
(109) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(101) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Mario P. <mar...@us...> - 2006-09-12 08:01:38
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv29947/qlo Modified Files: swaptionvolstructure.cpp Log Message: SmileSection independence day Index: swaptionvolstructure.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/swaptionvolstructure.cpp,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** swaptionvolstructure.cpp 12 Sep 2006 07:31:17 -0000 1.27 --- swaptionvolstructure.cpp 12 Sep 2006 08:01:33 -0000 1.28 *************** *** 26,29 **** --- 26,30 ---- #include <ql/Volatilities/swaptionconstantvol.hpp> #include <ql/Volatilities/swaptionvolcube.hpp> + #include <ql/Volatilities/smilesection.hpp> |
|
From: Chiara F. <chi...@us...> - 2006-09-11 18:15:24
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv4285/gensrc/metadata Modified Files: enumclasses.xml Log Message: Added strings specific for receiving Euribor 2y, 5y, 10y, 15y, 20y and 30 y swap index from MGX Index: enumclasses.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumclasses.xml,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** enumclasses.xml 11 Sep 2006 16:49:00 -0000 1.17 --- enumclasses.xml 11 Sep 2006 18:15:12 -0000 1.18 *************** *** 732,735 **** --- 732,766 ---- <libraryClass>QuantLib::EuriborSwapFixA30Y</libraryClass> </EnumerationDefinition> + <!-- Strings specific for receiving MGX data --> + <EnumerationDefinition> + <string>EURIBSW2Y ISFX2</string> + <value>EURIBORSWAPFIXA_2Y</value> + <libraryClass>QuantLib::EuriborSwapFixA2Y</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EURBSW5Y ISFX2</string> + <value>EURIBORSWAPFIXA_5Y</value> + <libraryClass>QuantLib::EuriborSwapFixA5Y</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EURBSW10Y ISFX2</string> + <value>EURIBORSWAPFIXA_10Y</value> + <libraryClass>QuantLib::EuriborSwapFixA10Y</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EURBSW15Y ISFX2</string> + <value>EURIBORSWAPFIXA_15Y</value> + <libraryClass>QuantLib::EuriborSwapFixA15Y</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EURBSW20Y ISFX2</string> + <value>EURIBORSWAPFIXA_20Y</value> + <libraryClass>QuantLib::EuriborSwapFixA20Y</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EURBSW30Y ISFX2</string> + <value>EURIBORSWAPFIXA_30Y</value> + <libraryClass>QuantLib::EuriborSwapFixA30Y</libraryClass> + </EnumerationDefinition> </EnumerationDefinitions> </Enumeration> |
|
From: Chiara F. <chi...@us...> - 2006-09-11 17:27:55
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv16434/gensrc/metadata Modified Files: enumtypes.xml Log Message: added new string for QuantLib daycounter in order to receive Murex Rate Convention Index: enumtypes.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumtypes.xml,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** enumtypes.xml 7 Sep 2006 21:27:37 -0000 1.18 --- enumtypes.xml 11 Sep 2006 17:27:51 -0000 1.19 *************** *** 795,798 **** --- 795,820 ---- </EnumerationDefinition> + <!-- Strings specific for receiving Murex exports--> + <EnumerationDefinition> + <string>LIN 30/360</string> + <value>QuantLib::Thirty360(QuantLib::Thirty360::EurobondBasis)</value> + </EnumerationDefinition> + <EnumerationDefinition> + <string>LIN ACT/360</string> + <value>QuantLib::Actual360()</value> + </EnumerationDefinition> + <EnumerationDefinition> + <string>LIN ACT/365</string> + <value>QuantLib::Actual365Fixed()</value> + </EnumerationDefinition> + <EnumerationDefinition> + <string>LIN ACT/ACT</string> + <value>QuantLib::ActualActual(QuantLib::ActualActual::AFB)</value> + </EnumerationDefinition> + <EnumerationDefinition> + <string>LIN ACTACT ISDA</string> + <value>QuantLib::ActualActual(QuantLib::ActualActual::ISDA)</value> + </EnumerationDefinition> + </EnumerationDefinitions> </Enumeration> |
|
From: Katiuscia M. <kma...@us...> - 2006-09-11 16:49:07
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv32110/gensrc/metadata Modified Files: enumclasses.xml Log Message: bug fixed Index: enumclasses.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumclasses.xml,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** enumclasses.xml 11 Sep 2006 11:11:33 -0000 1.16 --- enumclasses.xml 11 Sep 2006 16:49:00 -0000 1.17 *************** *** 527,531 **** <EnumerationDefinition> <string>EUR LIBOR 1W</string> ! <value>EURLIBOR_1W</value> <libraryClass>QuantLib::EurliborSW</libraryClass> </EnumerationDefinition> --- 527,531 ---- <EnumerationDefinition> <string>EUR LIBOR 1W</string> ! <value>EURLIBOR_SW</value> <libraryClass>QuantLib::EurliborSW</libraryClass> </EnumerationDefinition> |
|
From: Katiuscia M. <kma...@us...> - 2006-09-11 11:11:38
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21127/qlo Modified Files: enumclassctors.cpp enumclassctors.hpp Log Message: renamed family index EURLibor to Eurlibor to be consistent with family index Euribor. Renamed also 1WK and 2WK to SW and 2W. Index: enumclassctors.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.cpp,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** enumclassctors.cpp 8 Sep 2006 08:58:58 -0000 1.23 --- enumclassctors.cpp 11 Sep 2006 11:11:33 -0000 1.24 *************** *** 512,584 **** EuriborHandle::instance().handleYieldTermStructure())); } ! /* *** EURLibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_1WK() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor1WK( EuriborHandle::instance().handleYieldTermStructure())); } ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2WK() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor2WK( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor1M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_2M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor2M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_3M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor3M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_4M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor4M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_5M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor5M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_6M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor6M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_7M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor7M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_8M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor8M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_9M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor9M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_10M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor10M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_11M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor11M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1Y() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor1Y( EuriborHandle::instance().handleYieldTermStructure())); } --- 512,584 ---- EuriborHandle::instance().handleYieldTermStructure())); } ! /* *** EurLibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_SW() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EurliborSW( EuriborHandle::instance().handleYieldTermStructure())); } ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2W() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor2W( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor1M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_2M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor2M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_3M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor3M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_4M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor4M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_5M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor5M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_6M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor6M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_7M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor7M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_8M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor8M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_9M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor9M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_10M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor10M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_11M() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor11M( EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1Y() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::Eurlibor1Y( EuriborHandle::instance().handleYieldTermStructure())); } Index: enumclassctors.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.hpp,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** enumclassctors.hpp 7 Sep 2006 15:40:57 -0000 1.21 --- enumclassctors.hpp 11 Sep 2006 11:11:33 -0000 1.22 *************** *** 198,204 **** boost::shared_ptr<QuantLib::Index> EURIBOR365_11M(); boost::shared_ptr<QuantLib::Index> EURIBOR365_1Y(); ! /* *** EURLibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_1WK(); ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2WK(); boost::shared_ptr<QuantLib::Index> EURLIBOR_1M(); boost::shared_ptr<QuantLib::Index> EURLIBOR_2M(); --- 198,204 ---- boost::shared_ptr<QuantLib::Index> EURIBOR365_11M(); boost::shared_ptr<QuantLib::Index> EURIBOR365_1Y(); ! /* *** Eurlibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_SW(); ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2W(); boost::shared_ptr<QuantLib::Index> EURLIBOR_1M(); boost::shared_ptr<QuantLib::Index> EURLIBOR_2M(); |
|
From: Katiuscia M. <kma...@us...> - 2006-09-11 11:11:37
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21127/gensrc/metadata Modified Files: enumclasses.xml Log Message: renamed family index EURLibor to Eurlibor to be consistent with family index Euribor. Renamed also 1WK and 2WK to SW and 2W. Index: enumclasses.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumclasses.xml,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** enumclasses.xml 7 Sep 2006 15:40:08 -0000 1.15 --- enumclasses.xml 11 Sep 2006 11:11:33 -0000 1.16 *************** *** 521,657 **** <!-- QuantLib::EurLibor --> <EnumerationDefinition> ! <string>EURLibor1W</string> ! <value>EURLIBOR_1WK</value> ! <libraryClass>QuantLib::EURLibor1WK</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1W</string> ! <value>EURLIBOR_1WK</value> ! <libraryClass>QuantLib::EURLibor1WK</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor2W</string> ! <value>EURLIBOR_2WK</value> ! <libraryClass>QuantLib::EURLibor2WK</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor1M</string> <value>EURLIBOR_1M</value> ! <libraryClass>QuantLib::EURLibor1M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1M</string> <value>EURLIBOR_1M</value> ! <libraryClass>QuantLib::EURLibor1M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor2M</string> <value>EURLIBOR_2M</value> ! <libraryClass>QuantLib::EURLibor2M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 2M</string> <value>EURLIBOR_2M</value> ! <libraryClass>QuantLib::EURLibor2M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor3M</string> <value>EURLIBOR_3M</value> ! <libraryClass>QuantLib::EURLibor3M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 3M</string> <value>EURLIBOR_3M</value> ! <libraryClass>QuantLib::EURLibor3M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor4M</string> <value>EURLIBOR_4M</value> ! <libraryClass>QuantLib::EURLibor4M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 4M</string> <value>EURLIBOR_4M</value> ! <libraryClass>QuantLib::EURLibor4M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor5M</string> <value>EURLIBOR_5M</value> ! <libraryClass>QuantLib::EURLibor5M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 5M</string> <value>EURLIBOR_5M</value> ! <libraryClass>QuantLib::EURLibor5M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor6M</string> <value>EURLIBOR_6M</value> ! <libraryClass>QuantLib::EURLibor6M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 6M</string> <value>EURLIBOR_6M</value> ! <libraryClass>QuantLib::EURLibor6M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor7M</string> <value>EURLIBOR_7M</value> ! <libraryClass>QuantLib::EURLibor7M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 7M</string> <value>EURLIBOR_7M</value> ! <libraryClass>QuantLib::EURLibor7M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor8M</string> <value>EURLIBOR_8M</value> ! <libraryClass>QuantLib::EURLibor8M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 8M</string> <value>EURLIBOR_8M</value> ! <libraryClass>QuantLib::EURLibor8M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor9M</string> <value>EURLIBOR_9M</value> ! <libraryClass>QuantLib::EURLibor9M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 9M</string> <value>EURLIBOR_9M</value> ! <libraryClass>QuantLib::EURLibor9M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor10M</string> <value>EURLIBOR_10M</value> ! <libraryClass>QuantLib::EURLibor10M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 10M</string> <value>EURLIBOR_10M</value> ! <libraryClass>QuantLib::EURLibor10M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor11M</string> <value>EURLIBOR_11M</value> ! <libraryClass>QuantLib::EURLibor11M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 11M</string> <value>EURLIBOR_11M</value> ! <libraryClass>QuantLib::EURLibor11M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>EURLibor1Y</string> <value>EURLIBOR_1Y</value> ! <libraryClass>QuantLib::EURLibor1Y</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1Y</string> <value>EURLIBOR_1Y</value> ! <libraryClass>QuantLib::EURLibor1Y</libraryClass> </EnumerationDefinition> --- 521,657 ---- <!-- QuantLib::EurLibor --> <EnumerationDefinition> ! <string>EurliborSW</string> ! <value>EURLIBOR_SW</value> ! <libraryClass>QuantLib::EurliborSW</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1W</string> ! <value>EURLIBOR_1W</value> ! <libraryClass>QuantLib::EurliborSW</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor2W</string> ! <value>EURLIBOR_2W</value> ! <libraryClass>QuantLib::Eurlibor2W</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor1M</string> <value>EURLIBOR_1M</value> ! <libraryClass>QuantLib::Eurlibor1M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1M</string> <value>EURLIBOR_1M</value> ! <libraryClass>QuantLib::Eurlibor1M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor2M</string> <value>EURLIBOR_2M</value> ! <libraryClass>QuantLib::Eurlibor2M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 2M</string> <value>EURLIBOR_2M</value> ! <libraryClass>QuantLib::Eurlibor2M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor3M</string> <value>EURLIBOR_3M</value> ! <libraryClass>QuantLib::Eurlibor3M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 3M</string> <value>EURLIBOR_3M</value> ! <libraryClass>QuantLib::Eurlibor3M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor4M</string> <value>EURLIBOR_4M</value> ! <libraryClass>QuantLib::Eurlibor4M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 4M</string> <value>EURLIBOR_4M</value> ! <libraryClass>QuantLib::Eurlibor4M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor5M</string> <value>EURLIBOR_5M</value> ! <libraryClass>QuantLib::Eurlibor5M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 5M</string> <value>EURLIBOR_5M</value> ! <libraryClass>QuantLib::Eurlibor5M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor6M</string> <value>EURLIBOR_6M</value> ! <libraryClass>QuantLib::Eurlibor6M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 6M</string> <value>EURLIBOR_6M</value> ! <libraryClass>QuantLib::Eurlibor6M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor7M</string> <value>EURLIBOR_7M</value> ! <libraryClass>QuantLib::Eurlibor7M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 7M</string> <value>EURLIBOR_7M</value> ! <libraryClass>QuantLib::Eurlibor7M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor8M</string> <value>EURLIBOR_8M</value> ! <libraryClass>QuantLib::Eurlibor8M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 8M</string> <value>EURLIBOR_8M</value> ! <libraryClass>QuantLib::Eurlibor8M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor9M</string> <value>EURLIBOR_9M</value> ! <libraryClass>QuantLib::Eurlibor9M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 9M</string> <value>EURLIBOR_9M</value> ! <libraryClass>QuantLib::Eurlibor9M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor10M</string> <value>EURLIBOR_10M</value> ! <libraryClass>QuantLib::Eurlibor10M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 10M</string> <value>EURLIBOR_10M</value> ! <libraryClass>QuantLib::Eurlibor10M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor11M</string> <value>EURLIBOR_11M</value> ! <libraryClass>QuantLib::Eurlibor11M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 11M</string> <value>EURLIBOR_11M</value> ! <libraryClass>QuantLib::Eurlibor11M</libraryClass> </EnumerationDefinition> <EnumerationDefinition> ! <string>Eurlibor1Y</string> <value>EURLIBOR_1Y</value> ! <libraryClass>QuantLib::Eurlibor1Y</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1Y</string> <value>EURLIBOR_1Y</value> ! <libraryClass>QuantLib::Eurlibor1Y</libraryClass> </EnumerationDefinition> |
|
From: Eric E. <eri...@us...> - 2006-09-08 10:40:59
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv17283/qlo Modified Files: calendarfactory.cpp typefactory.hpp Log Message: calendar factory Index: calendarfactory.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/calendarfactory.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** calendarfactory.cpp 7 Sep 2006 21:27:37 -0000 1.1 --- calendarfactory.cpp 8 Sep 2006 10:40:53 -0000 1.2 *************** *** 17,27 **** #include <oh/objhandlerdefines.hpp> - #include <algorithm> - #include <vector> #include <boost/regex.hpp> #include <qlo/typefactory.hpp> namespace QuantLibAddin { bool Create<QuantLib::Calendar>::parseID(const std::string &id) { // strip out whitespace --- 17,59 ---- #include <oh/objhandlerdefines.hpp> #include <boost/regex.hpp> #include <qlo/typefactory.hpp> + #include <set> namespace QuantLibAddin { + /* Calendar factory - accept a string, and return either a + QuantLib::Calendar or a QuantLib::JointCalendar as appropriate + */ + + QuantLib::Calendar Create<QuantLib::Calendar>::operator()(const std::string &id) { + // Is this an ID for a Calendar or a JointCalendar? + if (parseID(id)) { + // It's a JointCalendar. Does the requested JointCalendar already exist? + if (checkType(fullID)) { + // It does - return it. + return *(static_cast<QuantLib::Calendar*>(this->getType(fullID))); + } else { + // It doesn't - create it, add it to the registry, and return it. + QuantLib::Calendar *jointCalendar = makeJointCalendar(); + registerType(fullID, jointCalendar); + return *jointCalendar; + } + } else { + // the ID is for a Calendar - return it + return *(static_cast<QuantLib::Calendar*>(this->getType(id))); + } + } + + /* + Accept a string and test whether it's the ID of a joint calendar. + A JointCalendar ID is in a format such as + UnitedKingdom::Exchange^UnitedStates::Settlement + - there may be 2, 3 or 4 calendars + - a calendar name may consist of letters and colons (:) + - the calendar names are delimited by one of two characters: + ^ - QuantLib::JoinHolidays + + - QuantLib::JoinBusinessDays + */ bool Create<QuantLib::Calendar>::parseID(const std::string &id) { // strip out whitespace *************** *** 29,33 **** std::string idStrip = boost::regex_replace(id, regex_whitespace, ""); ! // parse the ID static boost::regex jointCalendarID( "([\\w:]+)(\\+|\\^)([\\w:]+)(?:\\2([\\w:]+))?(?:\\2([\\w:]+))?"); --- 61,65 ---- std::string idStrip = boost::regex_replace(id, regex_whitespace, ""); ! // parse the ID. static boost::regex jointCalendarID( "([\\w:]+)(\\+|\\^)([\\w:]+)(?:\\2([\\w:]+))?(?:\\2([\\w:]+))?"); *************** *** 36,54 **** return false; ! // derive the inputs to the JointCalendar constructor ! calendarIDs.push_back(m[1]); ! if (m[2] == "+") ! jointCalendarRule = QuantLib::JointCalendarRule(QuantLib::JoinBusinessDays); ! else // "^" jointCalendarRule = QuantLib::JointCalendarRule(QuantLib::JoinHolidays); ! calendarIDs.push_back(m[3]); if (m[5].matched) { ! calendarIDs.push_back(m[4]); ! calendarIDs.push_back(m[5]); } else if (m[4].matched) { ! calendarIDs.push_back(m[4]); } else if (m[3].matched) { ; } else { QL_FAIL("the string '" << id << --- 68,97 ---- return false; ! // Derive the inputs to the JointCalendar constructor. ! ! // Add the calendar IDs to a set where they will be uniquely sorted. ! std::set<std::string> calendarIdSet; ! ! // Given that the regex succeeded, we are guaranteed :-) to have ! // m[1] - the ID of the first calendar ! // m[2] - the delimiter ! // m[3] - the ID of the second calendar ! calendarIdSet.insert(m[1]); ! if (m[2] == "^") jointCalendarRule = QuantLib::JointCalendarRule(QuantLib::JoinHolidays); ! else // "+" ! jointCalendarRule = QuantLib::JointCalendarRule(QuantLib::JoinBusinessDays); ! calendarIdSet.insert(m[3]); + // we may have a 3rd or a 3rd & 4th calendar if (m[5].matched) { ! calendarIdSet.insert(m[4]); ! calendarIdSet.insert(m[5]); } else if (m[4].matched) { ! calendarIdSet.insert(m[4]); } else if (m[3].matched) { ; + // given that the regex succeeded, we can't arrive here + // so the test below is just a paranoid sanity check } else { QL_FAIL("the string '" << id << *************** *** 56,74 **** } ! // set the key equal to the list of sorted, delimited IDs ! std::sort(calendarIDs.begin(), ! calendarIDs.end()); std::ostringstream s; ! s << calendarIDs[0]; ! unsigned int i = 1; ! while (i < calendarIDs.size()) { ! s << m[2] << calendarIDs[i]; i++; } fullID = s.str(); return true; } QuantLib::Calendar *Create<QuantLib::Calendar>::makeJointCalendar2() { QuantLib::Calendar *calendar1 = --- 99,137 ---- } ! // set the key "fullID" equal to the list of sorted, delimited IDs ! // and transfer the IDs from the set to a vector ! std::set<std::string>::const_iterator i = calendarIdSet.begin(); std::ostringstream s; ! s << *i; ! calendarIDs.push_back(*i); ! i++; ! while (i != calendarIdSet.end()) { ! calendarIDs.push_back(*i); ! s << m[2] << *i; i++; } fullID = s.str(); + // if the list of calendars contained duplicates, + // we may end up with just one value, which is invalid + QL_REQUIRE(calendarIDs.size() > 1, "the string '" << id << + "' is not a valid joint calendar identifier"); + return true; } + QuantLib::Calendar *Create<QuantLib::Calendar>::makeJointCalendar() { + switch (calendarIDs.size()) { + case 2: + return makeJointCalendar2(); + case 3: + return makeJointCalendar3(); + case 4: + return makeJointCalendar4(); + default: + QL_FAIL("error creating calendar"); + } + } + QuantLib::Calendar *Create<QuantLib::Calendar>::makeJointCalendar2() { QuantLib::Calendar *calendar1 = *************** *** 113,150 **** } - void Create<QuantLib::Calendar>::resetParameters() { - calendarIDs.clear(); - fullID = ""; - jointCalendarRule = QuantLib::JointCalendarRule(); - } - - QuantLib::Calendar Create<QuantLib::Calendar>::operator()(const std::string &id) { - resetParameters(); - if (parseID(id)) { - if (checkType(fullID)) { - return *(static_cast<QuantLib::Calendar*>(this->getType(fullID))); - } else { - QuantLib::Calendar *jointCalendar; - switch (calendarIDs.size()) { - case 2: - jointCalendar = makeJointCalendar2(); - break; - case 3: - jointCalendar = makeJointCalendar3(); - break; - case 4: - jointCalendar = makeJointCalendar4(); - break; - default: - QL_FAIL("error creating calendar"); - } - registerType(fullID, jointCalendar); - return *jointCalendar; - } - } else { - return *(static_cast<QuantLib::Calendar*>(this->getType(id))); - } - } - } --- 176,179 ---- Index: typefactory.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/typefactory.hpp,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -d -r1.36 -r1.37 *** typefactory.hpp 8 Sep 2006 09:02:02 -0000 1.36 --- typefactory.hpp 8 Sep 2006 10:40:53 -0000 1.37 *************** *** 121,126 **** QuantLib::JointCalendarRule jointCalendarRule; std::string fullID; - void resetParameters(); bool parseID(const std::string &id); QuantLib::Calendar *makeJointCalendar2(); QuantLib::Calendar *makeJointCalendar3(); --- 121,126 ---- QuantLib::JointCalendarRule jointCalendarRule; std::string fullID; bool parseID(const std::string &id); + QuantLib::Calendar *makeJointCalendar(); QuantLib::Calendar *makeJointCalendar2(); QuantLib::Calendar *makeJointCalendar3(); |
|
From: Giorgio F. <gi...@us...> - 2006-09-08 10:05:10
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv2511/qlo Modified Files: swaptionvolstructure.cpp swaptionvolstructure.hpp Log Message: Index: swaptionvolstructure.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/swaptionvolstructure.cpp,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** swaptionvolstructure.cpp 6 Sep 2006 14:27:44 -0000 1.25 --- swaptionvolstructure.cpp 8 Sep 2006 10:05:07 -0000 1.26 *************** *** 143,147 **** const boost::shared_ptr<QuantLib::Xibor>& iborIndexShortTenor, const QuantLib::Matrix& parametersGuess, ! std::vector<bool> isParameterFixed) { libraryObject_ = boost::shared_ptr<QuantLib::Extrapolator>( --- 143,149 ---- const boost::shared_ptr<QuantLib::Xibor>& iborIndexShortTenor, const QuantLib::Matrix& parametersGuess, ! std::vector<bool> isParameterFixed, ! bool isAtmCalibrated ! ) { libraryObject_ = boost::shared_ptr<QuantLib::Extrapolator>( *************** *** 161,165 **** iborIndexShortTenor, parametersGuess, ! isParameterFixed)); const boost::shared_ptr<QuantLib::SwaptionVolatilityCubeBySabr> volCube = boost::dynamic_pointer_cast<QuantLib::SwaptionVolatilityCubeBySabr>(libraryObject_); --- 163,169 ---- iborIndexShortTenor, parametersGuess, ! isParameterFixed, ! isAtmCalibrated ! )); const boost::shared_ptr<QuantLib::SwaptionVolatilityCubeBySabr> volCube = boost::dynamic_pointer_cast<QuantLib::SwaptionVolatilityCubeBySabr>(libraryObject_); *************** *** 236,238 **** --- 240,249 ---- } + VarianceSmileSection::VarianceSmileSection( + const boost::shared_ptr<QuantLib::SwaptionVolatilityCubeBySabr>& cubeBySabr, + const double expiry, + const double length) { + libraryObject_ = cubeBySabr->smileSection(expiry,length); + } + } Index: swaptionvolstructure.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/swaptionvolstructure.hpp,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** swaptionvolstructure.hpp 8 Sep 2006 09:40:23 -0000 1.22 --- swaptionvolstructure.hpp 8 Sep 2006 10:05:07 -0000 1.23 *************** *** 103,107 **** const boost::shared_ptr<QuantLib::Xibor>& iborIndexShortTenor, const QuantLib::Matrix& parametersGuess, ! std::vector<bool> isParameterFixed); const std::vector<std::vector<boost::any> > getSparseSabrParameters() --- 103,109 ---- const boost::shared_ptr<QuantLib::Xibor>& iborIndexShortTenor, const QuantLib::Matrix& parametersGuess, ! std::vector<bool> isParameterFixed, ! bool isAtmCalibrated ! ); const std::vector<std::vector<boost::any> > getSparseSabrParameters() *************** *** 129,134 **** }; ! } --- 131,143 ---- }; + class VarianceSmileSection: public ObjHandler::LibraryObject<QuantLib::VarianceSmileSection>{ + public: + VarianceSmileSection( + const boost::shared_ptr<QuantLib::SwaptionVolatilityCubeBySabr>& cubeBySabr, + const double expiry, + const double length); + }; ! } |
|
From: Giorgio F. <gi...@us...> - 2006-09-08 10:05:09
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv2511/gensrc/metadata Modified Files: interpolation.xml swaptionvolstructure.xml Log Message: Index: interpolation.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/interpolation.xml,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** interpolation.xml 4 Sep 2006 19:21:04 -0000 1.32 --- interpolation.xml 8 Sep 2006 10:05:06 -0000 1.33 *************** *** 474,478 **** </Member> ! <!-- <Member name='qlSABRInterpolationEndCriteria' libraryClass='SABRInterpolation'> <description>Returns the optimization end criteria of the SABR fit</description> --- 474,478 ---- </Member> ! <Member name='qlSABRInterpolationEndCriteria' libraryClass='SABRInterpolation'> <description>Returns the optimization end criteria of the SABR fit</description> *************** *** 490,494 **** </ReturnValue> </Member> ! --> <!-- Interpolation2D interface --> --- 490,494 ---- </ReturnValue> </Member> ! <!-- Interpolation2D interface --> Index: swaptionvolstructure.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/swaptionvolstructure.xml,v retrieving revision 1.48 retrieving revision 1.49 diff -C2 -d -r1.48 -r1.49 *** swaptionvolstructure.xml 6 Sep 2006 14:27:44 -0000 1.48 --- swaptionvolstructure.xml 8 Sep 2006 10:05:06 -0000 1.49 *************** *** 574,577 **** --- 574,582 ---- <description>if TRUE parameter guess is not calibrated.</description> </Parameter> + <Parameter name='isAtmCalibrated'> + <type>bool</type> + <tensorRank>scalar</tensorRank> + <description>if TRUE the cube is calibrated to atm matrix .</description> + </Parameter> </Parameters> </ParameterList> *************** *** 665,670 **** </ReturnValue> </Member> - </Functions> </Category> --- 670,726 ---- </ReturnValue> </Member> + + <!-- VarianceSmileSection constructors --> + + <Constructor name='qlVarianceSmileSection'> + <libraryFunction>VarianceSmileSection</libraryFunction> + <functionCategory>QuantLib</functionCategory> + <supportedPlatforms> + <supportedPlatform>excel</supportedPlatform> + </supportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='volCubeBySabr' libraryClass='SwaptionVolatilityCubeBySabr'> + <type>string</type> + <tensorRank>scalar</tensorRank> + <description>Swaption volatility cube by Sabr</description> + </Parameter> + <Parameter name='expiry'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>expiry</description> + </Parameter> + <Parameter name='swapLength'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>smile's underlying swap length</description> + </Parameter> + </Parameters> + </ParameterList> + </Constructor> + + <Member name='qlVolatilityFromSmile' libraryClass='VarianceSmileSection'> + <description>Return the volatility from VarianceSmileSection</description> + <libraryFunction>volatility</libraryFunction> + <supportedPlatforms> + <supportedPlatform>excel</supportedPlatform> + </supportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='strike'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>strike</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + </Functions> </Category> |
|
From: Mario P. <mar...@us...> - 2006-09-08 09:40:27
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv24652/qlo Modified Files: swaptionvolstructure.hpp Log Message: work in progress... Index: swaptionvolstructure.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/swaptionvolstructure.hpp,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** swaptionvolstructure.hpp 6 Sep 2006 14:27:44 -0000 1.21 --- swaptionvolstructure.hpp 8 Sep 2006 09:40:23 -0000 1.22 *************** *** 61,65 **** }; ! class SwaptionVolatilityCubeByLinear : public SwaptionVolatilityStructure { public: SwaptionVolatilityCubeByLinear( --- 61,69 ---- }; ! ! class SwaptionVolatilityCube : public SwaptionVolatilityStructure { ! }; ! ! class SwaptionVolatilityCubeByLinear : public SwaptionVolatilityCube { public: SwaptionVolatilityCubeByLinear( *************** *** 82,86 **** std::vector<std::vector<boost::any> > getVolCube(QuantLib::Matrix & volCube); ! class SwaptionVolatilityCubeBySabr : public SwaptionVolatilityStructure { public: SwaptionVolatilityCubeBySabr( --- 86,90 ---- std::vector<std::vector<boost::any> > getVolCube(QuantLib::Matrix & volCube); ! class SwaptionVolatilityCubeBySabr : public SwaptionVolatilityCube { public: SwaptionVolatilityCubeBySabr( |
|
From: Chiara F. <chi...@us...> - 2006-09-08 09:02:05
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv8711/qlo Modified Files: typefactory.hpp Log Message: EurLiborHandle and Euribor365Handle removed Index: typefactory.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/typefactory.hpp,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** typefactory.hpp 7 Sep 2006 21:27:37 -0000 1.35 --- typefactory.hpp 8 Sep 2006 09:02:02 -0000 1.36 *************** *** 3,7 **** Copyright (C) 2005 Plamen Neykov Copyright (C) 2006 Eric Ehlers - Copyright (C) 2006 Chiara Fornarola This file is part of QuantLib, a free-software/open-source library --- 3,6 ---- *************** *** 270,302 **** QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; }; ! // a singleton to store the Handle<YieldTermStructure> ! // shared by all enumerated Euribor365 classes ! class Euribor365Handle : public QuantLib::Singleton<Euribor365Handle> { ! friend class QuantLib::Singleton<Euribor365Handle>; ! public: ! const QuantLib::Handle<QuantLib::YieldTermStructure> &handleYieldTermStructure() const { ! return handleYieldTermStructure_; ! } ! void linkEuribor365Handle(boost::shared_ptr<QuantLib::YieldTermStructure> yieldTermStructure) { ! handleYieldTermStructure_.linkTo(yieldTermStructure); ! } ! private: ! QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; ! }; ! // a singleton to store the Handle<YieldTermStructure> ! // shared by all enumerated EURLibor classes ! class EURLiborHandle : public QuantLib::Singleton<EURLiborHandle> { ! friend class QuantLib::Singleton<EURLiborHandle>; ! public: ! const QuantLib::Handle<QuantLib::YieldTermStructure> &handleYieldTermStructure() const { ! return handleYieldTermStructure_; ! } ! void linkEURLiborHandle(boost::shared_ptr<QuantLib::YieldTermStructure> yieldTermStructure) { ! handleYieldTermStructure_.linkTo(yieldTermStructure); ! } ! private: ! QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; ! }; ! ///* *** Index *** */ typedef boost::shared_ptr<QuantLib::Index>(*IndexConstructor)(); --- 269,273 ---- QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; }; ! ///* *** Index *** */ typedef boost::shared_ptr<QuantLib::Index>(*IndexConstructor)(); |
|
From: Chiara F. <chi...@us...> - 2006-09-08 08:59:01
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv7454/qlo Modified Files: enumclassctors.cpp Log Message: EurLiborHandle and Euribor365Handle replaced by EuriborHandle<YieldTermStructure>. EuriborHandle is the Handle to Libor Term Structure Index: enumclassctors.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.cpp,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** enumclassctors.cpp 7 Sep 2006 15:40:56 -0000 1.22 --- enumclassctors.cpp 8 Sep 2006 08:58:58 -0000 1.23 *************** *** 440,514 **** return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_SW( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_2W() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_2W( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_3W() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_3W( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_1M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_1M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_2M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_2M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_3M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_3M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_4M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_4M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_5M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_5M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_6M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_6M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_7M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_7M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_8M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_8M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_9M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_9M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_10M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_10M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_11M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_11M( ! Euribor365Handle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_1Y() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_1Y( ! Euribor365Handle::instance().handleYieldTermStructure())); } /* *** EURLibor *** */ --- 440,514 ---- return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_SW( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_2W() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_2W( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_3W() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_3W( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_1M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_1M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_2M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_2M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_3M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_3M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_4M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_4M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_5M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_5M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_6M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_6M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_7M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_7M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_8M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_8M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_9M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_9M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_10M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_10M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_11M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_11M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURIBOR365_1Y() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::Euribor365_1Y( ! EuriborHandle::instance().handleYieldTermStructure())); } /* *** EURLibor *** */ *************** *** 516,585 **** return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor1WK( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_2WK() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor2WK( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor1M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_2M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor2M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_3M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor3M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_4M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor4M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_5M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor5M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_6M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor6M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_7M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor7M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_8M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor8M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_9M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor9M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_10M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor10M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_11M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor11M( ! EURLiborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1Y() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor1Y( ! EURLiborHandle::instance().handleYieldTermStructure())); } /* *** EuriborSwapFixA *** */ --- 516,585 ---- return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor1WK( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_2WK() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor2WK( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor1M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_2M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor2M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_3M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor3M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_4M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor4M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_5M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor5M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_6M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor6M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_7M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor7M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_8M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor8M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_9M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor9M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_10M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor10M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_11M() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor11M( ! EuriborHandle::instance().handleYieldTermStructure())); } boost::shared_ptr<QuantLib::Index> EURLIBOR_1Y() { return boost::shared_ptr<QuantLib::Index>( new QuantLib::EURLibor1Y( ! EuriborHandle::instance().handleYieldTermStructure())); } /* *** EuriborSwapFixA *** */ |
|
From: Eric E. <eri...@us...> - 2006-09-08 08:23:14
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv24998 Modified Files: todo.csv Log Message: document requests from ferdinando & katiuscia Index: todo.csv =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/todo.csv,v retrieving revision 1.48 retrieving revision 1.49 diff -C2 -d -r1.48 -r1.49 *** todo.csv 5 Sep 2006 17:35:09 -0000 1.48 --- todo.csv 8 Sep 2006 08:23:11 -0000 1.49 *************** *** 1,9 **** project,subproject,task,status,priority,comp date,comment ! gensrc,Design,Extend loop functionality to Procedure class,,,, QLA,Enumerations,EuriborSwapFixA - fix design problems,,1,, OH,Design,ohLastErrorMessage() - analyze a better approach for error handling and diagnostics,,1,, OH,Design,ohDummyObject() to create an empty object for demo purposes,,1,, ! QLA,Enumerations,"enumeration as return value (string) ï¾ should be same as the input value ï¾ Period, DayCounter",,1,, all,General Support,NSIS installers - uninstall old app before installing new,,2,, gensrc,Design,remove platform-specific configuration/code from core gensrc app,,2,, --- 1,15 ---- project,subproject,task,status,priority,comp date,comment ! QLA,General Support,bring the C Addin and QuantLibXLDynamic up to date,,,, ! QLA,Design,right-click error messages - allow user to click anywhere in the range,,,, ! QLA,Design,loop functions: 1) template 2) Procedures 3) error per iteration,,,, ! QLA,Documentation,segregate documentation for QLA / QLXL / OH,,,, ! QLA,Design,right-click enumerations: implement proper design using hidden sheet,,,, ! QLA,Design,enumeration aliases - map multiple strings to single enum value,,,, ! QLA,Enumerations,EuriborSwapFixA - fix design problems,,1,, OH,Design,ohLastErrorMessage() - analyze a better approach for error handling and diagnostics,,1,, OH,Design,ohDummyObject() to create an empty object for demo purposes,,1,, ! QLA,Enumerations,"enumeration as return value (string) should be same as the input value Period, DayCounter",,1,, all,General Support,NSIS installers - uninstall old app before installing new,,2,, gensrc,Design,remove platform-specific configuration/code from core gensrc app,,2,, *************** *** 15,25 **** QLA,Design,"add support to take a QL object, wrap it in a QLA object, and store it in the OH repository",,3,, QLA,Design,use Excel SmartTags to allow interrogation of objects,,3,, ! QLA,Docs,"autogenerate documentation for datatype, default value, platform",,3,,organize docs appropriately for OH/QLA/QLXL QLA,Enumerations,enums as function inputs: optional description suffixed with generic description taken from enum metadata,,3,, QLA,Functions,port old QLXL functionality into new QLXL,,3,, QLA,General Support,"C++ examples - add VOs, NPV calculations",,3,, ! QLA,gensrc,replace Serializer class with Reader class ï¾ since we will never DeSerialize anything,,3,, QLA,VBA framework,design for real-time live feed,,3,, ! QLA,VBA framework,menu options to load/unload XLL/XLA ï¾ implement as toggle,in progress,3,, OH,Design,"""reflection"" - support member functions dynamically",,4,, OH,Design,Object to hold reference to CallingRange so we can support Object->isOrphaned() etc.,,4,, --- 21,31 ---- QLA,Design,"add support to take a QL object, wrap it in a QLA object, and store it in the OH repository",,3,, QLA,Design,use Excel SmartTags to allow interrogation of objects,,3,, ! QLA,Docs,"autogenerate documentation for datatype, default value, platform, loop",,3,,organize docs appropriately for OH/QLA/QLXL QLA,Enumerations,enums as function inputs: optional description suffixed with generic description taken from enum metadata,,3,, QLA,Functions,port old QLXL functionality into new QLXL,,3,, QLA,General Support,"C++ examples - add VOs, NPV calculations",,3,, ! QLA,gensrc,replace Serializer class with Reader class since we will never DeSerialize anything,,3,, QLA,VBA framework,design for real-time live feed,,3,, ! QLA,VBA framework,menu options to load/unload XLL/XLA implement as toggle,in progress,3,, OH,Design,"""reflection"" - support member functions dynamically",,4,, OH,Design,Object to hold reference to CallingRange so we can support Object->isOrphaned() etc.,,4,, |
|
From: Eric E. <eri...@us...> - 2006-09-07 21:27:42
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv13364/qlo Modified Files: Makefile.am typefactory.hpp Added Files: calendarfactory.cpp Removed Files: calendar.cpp calendar.hpp Log Message: calendar factory --- NEW FILE: calendarfactory.cpp --- /* Copyright (C) 2006 The QuantLib Group This file is part of QuantLib, a free-software/open-source library for financial quantitative analysts and developers - http://quantlib.org/ QuantLib is free software: you can redistribute it and/or modify it under the terms of the QuantLib license. You should have received a copy of the license along with this program; if not, please email qua...@li... The license is also available online at http://quantlib.org/html/license.html This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ #include <oh/objhandlerdefines.hpp> #include <algorithm> #include <vector> #include <boost/regex.hpp> #include <qlo/typefactory.hpp> namespace QuantLibAddin { bool Create<QuantLib::Calendar>::parseID(const std::string &id) { // strip out whitespace static boost::regex regex_whitespace("\\s"); std::string idStrip = boost::regex_replace(id, regex_whitespace, ""); // parse the ID static boost::regex jointCalendarID( "([\\w:]+)(\\+|\\^)([\\w:]+)(?:\\2([\\w:]+))?(?:\\2([\\w:]+))?"); boost::smatch m; if (!boost::regex_match(idStrip, m, jointCalendarID)) return false; // derive the inputs to the JointCalendar constructor calendarIDs.push_back(m[1]); if (m[2] == "+") jointCalendarRule = QuantLib::JointCalendarRule(QuantLib::JoinBusinessDays); else // "^" jointCalendarRule = QuantLib::JointCalendarRule(QuantLib::JoinHolidays); calendarIDs.push_back(m[3]); if (m[5].matched) { calendarIDs.push_back(m[4]); calendarIDs.push_back(m[5]); } else if (m[4].matched) { calendarIDs.push_back(m[4]); } else if (m[3].matched) { ; } else { QL_FAIL("the string '" << id << "' is not a valid joint calendar identifier"); } // set the key equal to the list of sorted, delimited IDs std::sort(calendarIDs.begin(), calendarIDs.end()); std::ostringstream s; s << calendarIDs[0]; unsigned int i = 1; while (i < calendarIDs.size()) { s << m[2] << calendarIDs[i]; i++; } fullID = s.str(); return true; } QuantLib::Calendar *Create<QuantLib::Calendar>::makeJointCalendar2() { QuantLib::Calendar *calendar1 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[0])); QuantLib::Calendar *calendar2 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[1])); return new QuantLib::JointCalendar( *calendar1, *calendar2, jointCalendarRule); } QuantLib::Calendar *Create<QuantLib::Calendar>::makeJointCalendar3() { QuantLib::Calendar *calendar1 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[0])); QuantLib::Calendar *calendar2 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[1])); QuantLib::Calendar *calendar3 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[2])); return new QuantLib::JointCalendar( *calendar1, *calendar2, *calendar3, jointCalendarRule); } QuantLib::Calendar *Create<QuantLib::Calendar>::makeJointCalendar4() { QuantLib::Calendar *calendar1 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[0])); QuantLib::Calendar *calendar2 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[1])); QuantLib::Calendar *calendar3 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[2])); QuantLib::Calendar *calendar4 = static_cast<QuantLib::Calendar*>(this->getType(calendarIDs[3])); return new QuantLib::JointCalendar( *calendar1, *calendar2, *calendar3, *calendar4, jointCalendarRule); } void Create<QuantLib::Calendar>::resetParameters() { calendarIDs.clear(); fullID = ""; jointCalendarRule = QuantLib::JointCalendarRule(); } QuantLib::Calendar Create<QuantLib::Calendar>::operator()(const std::string &id) { resetParameters(); if (parseID(id)) { if (checkType(fullID)) { return *(static_cast<QuantLib::Calendar*>(this->getType(fullID))); } else { QuantLib::Calendar *jointCalendar; switch (calendarIDs.size()) { case 2: jointCalendar = makeJointCalendar2(); break; case 3: jointCalendar = makeJointCalendar3(); break; case 4: jointCalendar = makeJointCalendar4(); break; default: QL_FAIL("error creating calendar"); } registerType(fullID, jointCalendar); return *jointCalendar; } } else { return *(static_cast<QuantLib::Calendar*>(this->getType(id))); } } } Index: typefactory.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/typefactory.hpp,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** typefactory.hpp 7 Sep 2006 15:40:57 -0000 1.34 --- typefactory.hpp 7 Sep 2006 21:27:37 -0000 1.35 *************** *** 32,35 **** --- 32,36 ---- #include <ql/CashFlows/cmscoupon.hpp> #include <ql/CashFlows/conundrumpricer.hpp> + #include <ql/Calendars/jointcalendar.hpp> #include <oh/exception.hpp> *************** *** 78,81 **** --- 79,87 ---- return false; } + + void registerType(const std::string& id, void *type) { + typename RegistryClass::TypeMapPtr type_map = getTypeMap(); + (*type_map)[id] = type; + } private: const typename RegistryClass::TypeMapPtr &getTypeMap() { *************** *** 94,97 **** --- 100,105 ---- /* *** Enumerated Types *** */ + + /* *** Generic *** */ template<typename T> class Create : private RegistryManager<T, EnumTypeRegistry> { *************** *** 103,106 **** --- 111,132 ---- }; + /* *** Calendar *** */ + template<> + class Create<QuantLib::Calendar> : + private RegistryManager<QuantLib::Calendar, EnumTypeRegistry> { + public: + QuantLib::Calendar operator()(const std::string& id); + using RegistryManager<QuantLib::Calendar, EnumTypeRegistry>::checkType; + private: + std::vector<std::string> calendarIDs; + QuantLib::JointCalendarRule jointCalendarRule; + std::string fullID; + void resetParameters(); + bool parseID(const std::string &id); + QuantLib::Calendar *makeJointCalendar2(); + QuantLib::Calendar *makeJointCalendar3(); + QuantLib::Calendar *makeJointCalendar4(); + }; + /* *** Enumerated Classes *** */ *************** *** 244,248 **** QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; }; ! // a singleton to store the Handle<YieldTermStructure> // shared by all enumerated Euribor365 classes class Euribor365Handle : public QuantLib::Singleton<Euribor365Handle> { --- 270,274 ---- QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; }; ! // a singleton to store the Handle<YieldTermStructure> // shared by all enumerated Euribor365 classes class Euribor365Handle : public QuantLib::Singleton<Euribor365Handle> { --- calendar.hpp DELETED --- Index: Makefile.am =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/Makefile.am,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile.am 28 Aug 2006 10:05:25 -0000 1.3 --- Makefile.am 7 Sep 2006 21:27:37 -0000 1.4 *************** *** 14,18 **** baseinstruments.hpp \ bonds.hpp \ ! calendar.hpp \ capfloor.hpp \ capletvolstructure.hpp \ --- 14,18 ---- baseinstruments.hpp \ bonds.hpp \ ! calendarfactory.cpp \ capfloor.hpp \ capletvolstructure.hpp \ *************** *** 58,62 **** vcconfig.hpp \ vo_bonds.hpp \ - vo_calendar.hpp \ vo_capfloor.hpp \ vo_capletvolstructure.hpp \ --- 58,61 ---- *************** *** 88,92 **** barrieroption.cpp \ bonds.cpp \ - calendar.cpp \ capfloor.cpp \ capletvolstructure.cpp \ --- 87,90 ---- *************** *** 125,129 **** vanillaswap.cpp \ vo_bonds.cpp \ - vo_calendar.cpp \ vo_capfloor.cpp \ vo_capletvolstructure.cpp \ --- 123,126 ---- --- calendar.cpp DELETED --- |
|
From: Eric E. <eri...@us...> - 2006-09-07 21:27:41
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv13364 Modified Files: QuantLibObjects.vcproj QuantLibObjects_vc8.vcproj Log Message: calendar factory Index: QuantLibObjects_vc8.vcproj =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/QuantLibObjects_vc8.vcproj,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -d -r1.40 -r1.41 *** QuantLibObjects_vc8.vcproj 31 Aug 2006 14:57:23 -0000 1.40 --- QuantLibObjects_vc8.vcproj 7 Sep 2006 21:27:37 -0000 1.41 *************** *** 346,349 **** --- 346,353 ---- </File> <File + RelativePath="qlo\calendarfactory.cpp" + > + </File> + <File RelativePath="qlo\typefactory.hpp" > *************** *** 374,385 **** </File> <File - RelativePath=".\qlo\vo_calendar.cpp" - > - </File> - <File - RelativePath=".\qlo\vo_calendar.hpp" - > - </File> - <File RelativePath=".\qlo\vo_capfloor.cpp" > --- 378,381 ---- *************** *** 859,874 **** </Filter> <Filter - Name="Calendars" - > - <File - RelativePath="qlo\calendar.cpp" - > - </File> - <File - RelativePath="qlo\calendar.hpp" - > - </File> - </Filter> - <Filter Name="PricingEngines" > --- 855,858 ---- Index: QuantLibObjects.vcproj =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/QuantLibObjects.vcproj,v retrieving revision 1.32 retrieving revision 1.33 diff -C2 -d -r1.32 -r1.33 *** QuantLibObjects.vcproj 31 Aug 2006 15:00:47 -0000 1.32 --- QuantLibObjects.vcproj 7 Sep 2006 21:27:37 -0000 1.33 *************** *** 347,350 **** --- 347,353 ---- </File> <File + RelativePath="qlo\calendarfactory.cpp"> + </File> + <File RelativePath="qlo\typefactory.hpp"> </File> *************** *** 369,378 **** </File> <File - RelativePath=".\qlo\vo_calendar.cpp"> - </File> - <File - RelativePath=".\qlo\vo_calendar.hpp"> - </File> - <File RelativePath=".\qlo\vo_capfloor.cpp"> </File> --- 372,375 ---- *************** *** 717,730 **** </Filter> <Filter - Name="Calendars" - Filter=""> - <File - RelativePath="qlo\calendar.cpp"> - </File> - <File - RelativePath="qlo\calendar.hpp"> - </File> - </Filter> - <Filter Name="PricingEngines" Filter=""> --- 714,717 ---- |
|
From: Eric E. <eri...@us...> - 2006-09-07 21:27:41
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv13364/gensrc/metadata Modified Files: calendar.xml enumtypes.xml Log Message: calendar factory Index: enumtypes.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumtypes.xml,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** enumtypes.xml 5 Sep 2006 17:35:43 -0000 1.17 --- enumtypes.xml 7 Sep 2006 21:27:37 -0000 1.18 *************** *** 949,967 **** </EnumerationDefinitions> </Enumeration> - - <Enumeration> - <type>QuantLib::JointCalendarRule</type> - <constructor>true</constructor> - <EnumerationDefinitions> - <EnumerationDefinition> - <string>JoinHolidays</string> - <value>QuantLib::JoinHolidays</value> - </EnumerationDefinition> - <EnumerationDefinition> - <string>JoinBusinessDays</string> - <value>QuantLib::JoinBusinessDays</value> - </EnumerationDefinition> - </EnumerationDefinitions> - </Enumeration> <Enumeration> --- 949,952 ---- Index: calendar.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/calendar.xml,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** calendar.xml 4 Sep 2006 19:21:04 -0000 1.23 --- calendar.xml 7 Sep 2006 21:27:37 -0000 1.24 *************** *** 3,10 **** <displayName>Calendar</displayName> <xlFunctionWizardCategory>QuantLib - Date</xlFunctionWizardCategory> ! <includes> ! <include>qlo/calendar.hpp</include> ! <include>qlo/vo_calendar.hpp</include> ! </includes> <copyright> Copyright (C) 2006 Eric Ehlers --- 3,7 ---- <displayName>Calendar</displayName> <xlFunctionWizardCategory>QuantLib - Date</xlFunctionWizardCategory> ! <includes/> <copyright> Copyright (C) 2006 Eric Ehlers *************** *** 13,17 **** <Functions> ! <EnumerationMember name='qlCalendarName' libraryType='QuantLib::Calendar'> <description>returns the name of the given calendar</description> <libraryFunction>name</libraryFunction> --- 10,14 ---- <Functions> ! <EnumerationMember name='qlCalendarName' enumeration='QuantLib::Calendar'> <description>returns the name of the given calendar</description> <libraryFunction>name</libraryFunction> *************** *** 28,32 **** </EnumerationMember> ! <EnumerationMember name='qlCalendarIsBusinessDay' libraryType='QuantLib::Calendar'> <description>returns TRUE if the date is a business day for the given calendar</description> <libraryFunction>isBusinessDay</libraryFunction> --- 25,29 ---- </EnumerationMember> ! <EnumerationMember name='qlCalendarIsBusinessDay' enumeration='QuantLib::Calendar'> <description>returns TRUE if the date is a business day for the given calendar</description> <libraryFunction>isBusinessDay</libraryFunction> *************** *** 49,53 **** </EnumerationMember> ! <EnumerationMember name='qlCalendarIsHoliday' libraryType='QuantLib::Calendar'> <description>returns TRUE if the date is a holiday for the given calendar</description> <libraryFunction>isHoliday</libraryFunction> --- 46,50 ---- </EnumerationMember> ! <EnumerationMember name='qlCalendarIsHoliday' enumeration='QuantLib::Calendar'> <description>returns TRUE if the date is a holiday for the given calendar</description> <libraryFunction>isHoliday</libraryFunction> *************** *** 70,74 **** </EnumerationMember> ! <EnumerationMember name='qlCalendarIsEndOfMonth' libraryType='QuantLib::Calendar'> <description>returns TRUE if the date is last business day for the month in the given calendar</description> <libraryFunction>isEndOfMonth</libraryFunction> --- 67,71 ---- </EnumerationMember> ! <EnumerationMember name='qlCalendarIsEndOfMonth' enumeration='QuantLib::Calendar'> <description>returns TRUE if the date is last business day for the month in the given calendar</description> <libraryFunction>isEndOfMonth</libraryFunction> *************** *** 91,95 **** </EnumerationMember> ! <EnumerationMember name='qlCalendarEndOfMonth' libraryType='QuantLib::Calendar'> <description>returns the last business day in the given calendar of the month to which the given date belongs</description> <libraryFunction>endOfMonth</libraryFunction> --- 88,92 ---- </EnumerationMember> ! <EnumerationMember name='qlCalendarEndOfMonth' enumeration='QuantLib::Calendar'> <description>returns the last business day in the given calendar of the month to which the given date belongs</description> <libraryFunction>endOfMonth</libraryFunction> *************** *** 112,116 **** </EnumerationMember> ! <EnumerationMember name='qlCalendarAddHoliday' libraryType='QuantLib::Calendar'> <description>adds an holiday to the given calendar</description> <libraryFunction>addHoliday</libraryFunction> --- 109,113 ---- </EnumerationMember> ! <EnumerationMember name='qlCalendarAddHoliday' enumeration='QuantLib::Calendar'> <description>adds an holiday to the given calendar</description> <libraryFunction>addHoliday</libraryFunction> *************** *** 133,137 **** </EnumerationMember> ! <EnumerationMember name='qlCalendarRemoveHoliday' libraryType='QuantLib::Calendar'> <description>removes an holiday from the given calendar</description> <libraryFunction>removeHoliday</libraryFunction> --- 130,134 ---- </EnumerationMember> ! <EnumerationMember name='qlCalendarRemoveHoliday' enumeration='QuantLib::Calendar'> <description>removes an holiday from the given calendar</description> <libraryFunction>removeHoliday</libraryFunction> *************** *** 163,167 **** <ParameterList> <Parameters> ! <Parameter name='calendar' libraryType='QuantLib::Calendar'> <type>string</type> <tensorRank>scalar</tensorRank> --- 160,164 ---- <ParameterList> <Parameters> ! <Parameter name='calendar' enumeration='QuantLib::Calendar'> <type>string</type> <tensorRank>scalar</tensorRank> *************** *** 191,195 **** </Procedure> ! <EnumerationMember name='qlCalendarAdjust' libraryType='QuantLib::Calendar'> <description>Adjusts a non-business day to the appropriate near business day according to a given calendar with respect to the given convention.</description> <libraryFunction>adjust</libraryFunction> --- 188,192 ---- </Procedure> ! <EnumerationMember name='qlCalendarAdjust' enumeration='QuantLib::Calendar'> <description>Adjusts a non-business day to the appropriate near business day according to a given calendar with respect to the given convention.</description> <libraryFunction>adjust</libraryFunction> *************** *** 217,221 **** </EnumerationMember> ! <EnumerationMember name='qlCalendarAdvance' libraryType='QuantLib::Calendar' loopParameter='period'> <description>advances a date according to a given calendar</description> <libraryFunction>advance</libraryFunction> --- 214,218 ---- </EnumerationMember> ! <EnumerationMember name='qlCalendarAdvance' enumeration='QuantLib::Calendar' loopParameter='period'> <description>advances a date according to a given calendar</description> <libraryFunction>advance</libraryFunction> *************** *** 253,277 **** </EnumerationMember> - <Constructor name='qlJointCalendar'> - <libraryFunction>JointCalendar</libraryFunction> - <supportedPlatforms> - <supportedPlatform>excel</supportedPlatform> - </supportedPlatforms> - <ParameterList> - <Parameters> - <Parameter name='jointCalendarRule' enumeration='QuantLib::JointCalendarRule' default='"JoinHolidays"'> - <type>string</type> - <tensorRank>scalar</tensorRank> - <description>JoinHolidays/JoinBusinessDays</description> - </Parameter> - <Parameter name='calendars' enumeration='QuantLib::Calendar'> - <type>string</type> - <tensorRank>vector</tensorRank> - <description>list of two, three or four calendars to join</description> - </Parameter> - </Parameters> - </ParameterList> - </Constructor> - </Functions> </Category> --- 250,253 ---- |
|
From: Chiara F. <chi...@us...> - 2006-09-07 15:41:02
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22664/qlo Modified Files: enumclassctors.cpp enumclassctors.hpp typefactory.hpp Log Message: Euribor365 indexes esposed to excel Index: enumclassctors.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.cpp,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** enumclassctors.cpp 7 Sep 2006 13:28:32 -0000 1.21 --- enumclassctors.cpp 7 Sep 2006 15:40:56 -0000 1.22 *************** *** 436,439 **** --- 436,515 ---- EuriborHandle::instance().handleYieldTermStructure())); } + /* *** Euribor365 *** */ + boost::shared_ptr<QuantLib::Index> EURIBOR365_SW() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_SW( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_2W() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_2W( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_3W() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_3W( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_1M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_1M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_2M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_2M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_3M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_3M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_4M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_4M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_5M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_5M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_6M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_6M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_7M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_7M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_8M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_8M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_9M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_9M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_10M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_10M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_11M() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_11M( + Euribor365Handle::instance().handleYieldTermStructure())); + } + boost::shared_ptr<QuantLib::Index> EURIBOR365_1Y() { + return boost::shared_ptr<QuantLib::Index>( + new QuantLib::Euribor365_1Y( + Euribor365Handle::instance().handleYieldTermStructure())); + } /* *** EURLibor *** */ boost::shared_ptr<QuantLib::Index> EURLIBOR_1WK() { Index: enumclassctors.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.hpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** enumclassctors.hpp 7 Sep 2006 13:28:32 -0000 1.20 --- enumclassctors.hpp 7 Sep 2006 15:40:57 -0000 1.21 *************** *** 182,185 **** --- 182,201 ---- boost::shared_ptr<QuantLib::Index> EURIBOR_11M(); boost::shared_ptr<QuantLib::Index> EURIBOR_1Y(); + /* *** Euribor365 *** */ + boost::shared_ptr<QuantLib::Index> EURIBOR365_SW(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_2W(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_3W(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_1M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_2M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_3M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_4M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_5M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_6M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_7M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_8M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_9M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_10M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_11M(); + boost::shared_ptr<QuantLib::Index> EURIBOR365_1Y(); /* *** EURLibor *** */ boost::shared_ptr<QuantLib::Index> EURLIBOR_1WK(); Index: typefactory.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/typefactory.hpp,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** typefactory.hpp 6 Sep 2006 10:01:00 -0000 1.33 --- typefactory.hpp 7 Sep 2006 15:40:57 -0000 1.34 *************** *** 3,6 **** --- 3,7 ---- Copyright (C) 2005 Plamen Neykov Copyright (C) 2006 Eric Ehlers + Copyright (C) 2006 Chiara Fornarola This file is part of QuantLib, a free-software/open-source library *************** *** 243,247 **** QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; }; ! // a singleton to store the Handle<YieldTermStructure> // shared by all enumerated EURLibor classes --- 244,261 ---- QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; }; ! // a singleton to store the Handle<YieldTermStructure> ! // shared by all enumerated Euribor365 classes ! class Euribor365Handle : public QuantLib::Singleton<Euribor365Handle> { ! friend class QuantLib::Singleton<Euribor365Handle>; ! public: ! const QuantLib::Handle<QuantLib::YieldTermStructure> &handleYieldTermStructure() const { ! return handleYieldTermStructure_; ! } ! void linkEuribor365Handle(boost::shared_ptr<QuantLib::YieldTermStructure> yieldTermStructure) { ! handleYieldTermStructure_.linkTo(yieldTermStructure); ! } ! private: ! QuantLib::Handle<QuantLib::YieldTermStructure> handleYieldTermStructure_; ! }; // a singleton to store the Handle<YieldTermStructure> // shared by all enumerated EURLibor classes |
|
From: Chiara F. <chi...@us...> - 2006-09-07 15:40:11
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22553/gensrc/metadata Modified Files: enumclasses.xml Log Message: Euribor365 indexes esposed to excel Murex definitions included too (no 2W and 3W tenors in found in Murex) Index: enumclasses.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumclasses.xml,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** enumclasses.xml 7 Sep 2006 13:25:38 -0000 1.14 --- enumclasses.xml 7 Sep 2006 15:40:08 -0000 1.15 *************** *** 378,381 **** --- 378,522 ---- <libraryClass>QuantLib::Euribor1Y</libraryClass> </EnumerationDefinition> + <!-- QuantLib::Euribor365 --> + <EnumerationDefinition> + <string>Euribor365SW</string> + <value>EURIBOR365_SW</value> + <libraryClass>QuantLib::Euribor365_SW</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 1W</string> + <value>EURIBOR365_SW</value> + <libraryClass>QuantLib::Euribor365_SW</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3652W</string> + <value>EURIBOR365_2W</value> + <libraryClass>QuantLib::Euribor365_2W</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3653W</string> + <value>EURIBOR365_3W</value> + <libraryClass>QuantLib::Euribor365_3W</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3651M</string> + <value>EURIBOR365_1M</value> + <libraryClass>QuantLib::Euribor365_1M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 1M</string> + <value>EURIBOR365_1M</value> + <libraryClass>QuantLib::Euribor365_1M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3652M</string> + <value>EURIBOR365_2M</value> + <libraryClass>QuantLib::Euribor365_2M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 2M</string> + <value>EURIBOR365_2M</value> + <libraryClass>QuantLib::Euribor365_2M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3653M</string> + <value>EURIBOR365_3M</value> + <libraryClass>QuantLib::Euribor365_3M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 3M</string> + <value>EURIBOR365_3M</value> + <libraryClass>QuantLib::Euribor365_3M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3654M</string> + <value>EURIBOR365_4M</value> + <libraryClass>QuantLib::Euribor365_4M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 4M</string> + <value>EURIBOR365_4M</value> + <libraryClass>QuantLib::Euribor365_4M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3655M</string> + <value>EURIBOR365_5M</value> + <libraryClass>QuantLib::Euribor365_5M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 5M</string> + <value>EURIBOR365_5M</value> + <libraryClass>QuantLib::Euribor365_5M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3656M</string> + <value>EURIBOR365_6M</value> + <libraryClass>QuantLib::Euribor365_6M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 6M</string> + <value>EURIBOR365_6M</value> + <libraryClass>QuantLib::Euribor365_6M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3657M</string> + <value>EURIBOR365_7M</value> + <libraryClass>QuantLib::Euribor365_7M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 7M</string> + <value>EURIBOR365_7M</value> + <libraryClass>QuantLib::Euribor365_7M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3658M</string> + <value>EURIBOR365_8M</value> + <libraryClass>QuantLib::Euribor365_8M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 8M</string> + <value>EURIBOR365_8M</value> + <libraryClass>QuantLib::Euribor365_8M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3659M</string> + <value>EURIBOR365_9M</value> + <libraryClass>QuantLib::Euribor365_9M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 9M</string> + <value>EURIBOR365_9M</value> + <libraryClass>QuantLib::Euribor365_9M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor36510M</string> + <value>EURIBOR365_10M</value> + <libraryClass>QuantLib::Euribor365_10M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 10M</string> + <value>EURIBOR365_10M</value> + <libraryClass>QuantLib::Euribor365_10M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor36511M</string> + <value>EURIBOR365_11M</value> + <libraryClass>QuantLib::Euribor365_11M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 11M</string> + <value>EURIBOR365_11M</value> + <libraryClass>QuantLib::Euribor365_11M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>Euribor3651Y</string> + <value>EURIBOR365_1Y</value> + <libraryClass>QuantLib::Euribor365_1Y</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIB365 1Y</string> + <value>EURIBOR365_1Y</value> + <libraryClass>QuantLib::Euribor365_1Y</libraryClass> + </EnumerationDefinition> <!-- QuantLib::EurLibor --> <EnumerationDefinition> |
|
From: Eric E. <eri...@us...> - 2006-09-07 14:01:28
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv12958/qlo Modified Files: typeregistry.hpp Log Message: fix memory leak in enumeration registry Index: typeregistry.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/typeregistry.hpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** typeregistry.hpp 4 Jul 2006 17:07:56 -0000 1.3 --- typeregistry.hpp 7 Sep 2006 14:01:24 -0000 1.4 *************** *** 46,49 **** --- 46,51 ---- class EnumTypeRegistry : public Registry<std::string>, public QuantLib::Singleton<EnumTypeRegistry> { friend class QuantLib::Singleton<EnumTypeRegistry>; + public: + ~EnumTypeRegistry(); private: EnumTypeRegistry(); |
|
From: Chiara F. <chi...@us...> - 2006-09-07 13:28:36
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv31125/qlo Modified Files: enumclassctors.cpp enumclassctors.hpp Log Message: EURLibor Index Enumeration modified according to quoted indexes (i.e. no 3Wk tenor index is quoted) 1W tenor redenominated as EURLibor1W (according to Reuters page denominations) alias for Murex not defined for 2W tenor. Index: enumclassctors.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.cpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** enumclassctors.cpp 6 Sep 2006 10:01:00 -0000 1.20 --- enumclassctors.cpp 7 Sep 2006 13:28:32 -0000 1.21 *************** *** 3,6 **** --- 3,7 ---- Copyright (C) 2005 Plamen Neykov Copyright (C) 2006 Eric Ehlers + Copyright (C) 2006 Chiara Fornarola This file is part of QuantLib, a free-software/open-source library *************** *** 436,452 **** } /* *** EURLibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_SW() { ! return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLiborSW( ! EURLiborHandle::instance().handleYieldTermStructure())); ! } ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2W() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor2W( EURLiborHandle::instance().handleYieldTermStructure())); } ! boost::shared_ptr<QuantLib::Index> EURLIBOR_3W() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor3W( EURLiborHandle::instance().handleYieldTermStructure())); } --- 437,448 ---- } /* *** EURLibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_1WK() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor1WK( EURLiborHandle::instance().handleYieldTermStructure())); } ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2WK() { return boost::shared_ptr<QuantLib::Index>( ! new QuantLib::EURLibor2WK( EURLiborHandle::instance().handleYieldTermStructure())); } Index: enumclassctors.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.hpp,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** enumclassctors.hpp 7 Sep 2006 08:45:47 -0000 1.19 --- enumclassctors.hpp 7 Sep 2006 13:28:32 -0000 1.20 *************** *** 3,6 **** --- 3,7 ---- Copyright (C) 2005 Plamen Neykov Copyright (C) 2006 Eric Ehlers + Copyright (C) 2006 Chiara Fornarola This file is part of QuantLib, a free-software/open-source library *************** *** 182,188 **** boost::shared_ptr<QuantLib::Index> EURIBOR_1Y(); /* *** EURLibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_SW(); ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2W(); ! boost::shared_ptr<QuantLib::Index> EURLIBOR_3W(); boost::shared_ptr<QuantLib::Index> EURLIBOR_1M(); boost::shared_ptr<QuantLib::Index> EURLIBOR_2M(); --- 183,188 ---- boost::shared_ptr<QuantLib::Index> EURIBOR_1Y(); /* *** EURLibor *** */ ! boost::shared_ptr<QuantLib::Index> EURLIBOR_1WK(); ! boost::shared_ptr<QuantLib::Index> EURLIBOR_2WK(); boost::shared_ptr<QuantLib::Index> EURLIBOR_1M(); boost::shared_ptr<QuantLib::Index> EURLIBOR_2M(); |
|
From: Chiara F. <chi...@us...> - 2006-09-07 13:25:43
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv29792/gensrc/metadata Modified Files: enumclasses.xml Log Message: EURLibor Index Enumeration modified according to quoted indexes (i.e. no 3Wk tenor index is quoted) 1W tenor redenominated as EURLibor1W (according to Reuters page denominations) alias for Murex not defined for 2W tenor Index: enumclasses.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumclasses.xml,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** enumclasses.xml 7 Sep 2006 09:46:46 -0000 1.13 --- enumclasses.xml 7 Sep 2006 13:25:38 -0000 1.14 *************** *** 380,401 **** <!-- QuantLib::EurLibor --> <EnumerationDefinition> ! <string>EURLiborSW</string> ! <value>EURLIBOR_SW</value> ! <libraryClass>QuantLib::EURLiborSW</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1W</string> ! <value>EURLIBOR_SW</value> ! <libraryClass>QuantLib::EURLiborSW</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EURLibor2W</string> ! <value>EURLIBOR_2W</value> ! <libraryClass>QuantLib::EURLibor2W</libraryClass> ! </EnumerationDefinition> ! <EnumerationDefinition> ! <string>EURLibor3W</string> ! <value>EURLIBOR_3W</value> ! <libraryClass>QuantLib::EURLibor3W</libraryClass> </EnumerationDefinition> <EnumerationDefinition> --- 380,396 ---- <!-- QuantLib::EurLibor --> <EnumerationDefinition> ! <string>EURLibor1W</string> ! <value>EURLIBOR_1WK</value> ! <libraryClass>QuantLib::EURLibor1WK</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EUR LIBOR 1W</string> ! <value>EURLIBOR_1WK</value> ! <libraryClass>QuantLib::EURLibor1WK</libraryClass> </EnumerationDefinition> <EnumerationDefinition> <string>EURLibor2W</string> ! <value>EURLIBOR_2WK</value> ! <libraryClass>QuantLib::EURLibor2WK</libraryClass> </EnumerationDefinition> <EnumerationDefinition> |
|
From: Chiara F. <chi...@us...> - 2006-09-07 09:46:49
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv2814/gensrc/metadata Modified Files: enumclasses.xml Log Message: new string added for Euribor (1w, 1m->1y) and for EurLibor (1w, 1m->1y) according to Murex Index Label Index: enumclasses.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumclasses.xml,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** enumclasses.xml 6 Sep 2006 10:01:00 -0000 1.12 --- enumclasses.xml 7 Sep 2006 09:46:46 -0000 1.13 *************** *** 243,246 **** --- 243,251 ---- <libraryClass>QuantLib::EuriborSW</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 1W</string> + <value>EURIBOR_SW</value> + <libraryClass>QuantLib::EuriborSW</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor2W</string> *************** *** 258,261 **** --- 263,271 ---- <libraryClass>QuantLib::Euribor1M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 1M</string> + <value>EURIBOR_1M</value> + <libraryClass>QuantLib::Euribor1M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor2M</string> *************** *** 263,266 **** --- 273,281 ---- <libraryClass>QuantLib::Euribor2M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 2M</string> + <value>EURIBOR_2M</value> + <libraryClass>QuantLib::Euribor2M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor3M</string> *************** *** 268,271 **** --- 283,291 ---- <libraryClass>QuantLib::Euribor3M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 3M</string> + <value>EURIBOR_3M</value> + <libraryClass>QuantLib::Euribor3M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor4M</string> *************** *** 273,276 **** --- 293,301 ---- <libraryClass>QuantLib::Euribor4M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 4M</string> + <value>EURIBOR_4M</value> + <libraryClass>QuantLib::Euribor4M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor5M</string> *************** *** 278,281 **** --- 303,311 ---- <libraryClass>QuantLib::Euribor5M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 5M</string> + <value>EURIBOR_5M</value> + <libraryClass>QuantLib::Euribor5M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor6M</string> *************** *** 283,286 **** --- 313,321 ---- <libraryClass>QuantLib::Euribor6M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 6M</string> + <value>EURIBOR_6M</value> + <libraryClass>QuantLib::Euribor6M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor7M</string> *************** *** 288,291 **** --- 323,331 ---- <libraryClass>QuantLib::Euribor7M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 7M</string> + <value>EURIBOR_7M</value> + <libraryClass>QuantLib::Euribor7M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor8M</string> *************** *** 293,296 **** --- 333,341 ---- <libraryClass>QuantLib::Euribor8M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 8M</string> + <value>EURIBOR_8M</value> + <libraryClass>QuantLib::Euribor8M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor9M</string> *************** *** 298,301 **** --- 343,351 ---- <libraryClass>QuantLib::Euribor9M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 9M</string> + <value>EURIBOR_9M</value> + <libraryClass>QuantLib::Euribor9M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor10M</string> *************** *** 303,306 **** --- 353,361 ---- <libraryClass>QuantLib::Euribor10M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 10M</string> + <value>EURIBOR_10M</value> + <libraryClass>QuantLib::Euribor10M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor11M</string> *************** *** 308,311 **** --- 363,371 ---- <libraryClass>QuantLib::Euribor11M</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 11M</string> + <value>EURIBOR_11M</value> + <libraryClass>QuantLib::Euribor11M</libraryClass> + </EnumerationDefinition> <EnumerationDefinition> <string>Euribor1Y</string> *************** *** 313,319 **** <libraryClass>QuantLib::Euribor1Y</libraryClass> </EnumerationDefinition> <!-- QuantLib::EurLibor --> <EnumerationDefinition> ! <string>EURLiborSW</string> <value>EURLIBOR_SW</value> <libraryClass>QuantLib::EURLiborSW</libraryClass> --- 373,389 ---- <libraryClass>QuantLib::Euribor1Y</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR EURIBOR 1Y</string> + <value>EURIBOR_1Y</value> + <libraryClass>QuantLib::Euribor1Y</libraryClass> + </EnumerationDefinition> <!-- QuantLib::EurLibor --> <EnumerationDefinition> ! <string>EURLiborSW</string> ! <value>EURLIBOR_SW</value> ! <libraryClass>QuantLib::EURLiborSW</libraryClass> ! </EnumerationDefinition> ! <EnumerationDefinition> ! <string>EUR LIBOR 1W</string> <value>EURLIBOR_SW</value> <libraryClass>QuantLib::EURLiborSW</libraryClass> *************** *** 335,338 **** --- 405,413 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 1M</string> + <value>EURLIBOR_1M</value> + <libraryClass>QuantLib::EURLibor1M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor2M</string> <value>EURLIBOR_2M</value> *************** *** 340,343 **** --- 415,423 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 2M</string> + <value>EURLIBOR_2M</value> + <libraryClass>QuantLib::EURLibor2M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor3M</string> <value>EURLIBOR_3M</value> *************** *** 345,348 **** --- 425,433 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 3M</string> + <value>EURLIBOR_3M</value> + <libraryClass>QuantLib::EURLibor3M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor4M</string> <value>EURLIBOR_4M</value> *************** *** 350,353 **** --- 435,443 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 4M</string> + <value>EURLIBOR_4M</value> + <libraryClass>QuantLib::EURLibor4M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor5M</string> <value>EURLIBOR_5M</value> *************** *** 355,358 **** --- 445,453 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 5M</string> + <value>EURLIBOR_5M</value> + <libraryClass>QuantLib::EURLibor5M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor6M</string> <value>EURLIBOR_6M</value> *************** *** 360,363 **** --- 455,463 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 6M</string> + <value>EURLIBOR_6M</value> + <libraryClass>QuantLib::EURLibor6M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor7M</string> <value>EURLIBOR_7M</value> *************** *** 365,368 **** --- 465,473 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 7M</string> + <value>EURLIBOR_7M</value> + <libraryClass>QuantLib::EURLibor7M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor8M</string> <value>EURLIBOR_8M</value> *************** *** 370,373 **** --- 475,483 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 8M</string> + <value>EURLIBOR_8M</value> + <libraryClass>QuantLib::EURLibor8M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor9M</string> <value>EURLIBOR_9M</value> *************** *** 375,378 **** --- 485,493 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 9M</string> + <value>EURLIBOR_9M</value> + <libraryClass>QuantLib::EURLibor9M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor10M</string> <value>EURLIBOR_10M</value> *************** *** 380,383 **** --- 495,503 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 10M</string> + <value>EURLIBOR_10M</value> + <libraryClass>QuantLib::EURLibor10M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor11M</string> <value>EURLIBOR_11M</value> *************** *** 385,392 **** --- 505,523 ---- </EnumerationDefinition> <EnumerationDefinition> + <string>EUR LIBOR 11M</string> + <value>EURLIBOR_11M</value> + <libraryClass>QuantLib::EURLibor11M</libraryClass> + </EnumerationDefinition> + <EnumerationDefinition> <string>EURLibor1Y</string> <value>EURLIBOR_1Y</value> <libraryClass>QuantLib::EURLibor1Y</libraryClass> </EnumerationDefinition> + <EnumerationDefinition> + <string>EUR LIBOR 1Y</string> + <value>EURLIBOR_1Y</value> + <libraryClass>QuantLib::EURLibor1Y</libraryClass> + </EnumerationDefinition> + <!-- QuantLib::EuriborSwapFixA --> <EnumerationDefinition> |
|
From: Eric E. <eri...@us...> - 2006-09-07 08:45:51
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv9427 Modified Files: enumclassctors.hpp Log Message: fix include path Index: enumclassctors.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.hpp,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** enumclassctors.hpp 6 Sep 2006 10:01:00 -0000 1.18 --- enumclassctors.hpp 7 Sep 2006 08:45:47 -0000 1.19 *************** *** 30,35 **** #include <ql/Math/bilinearinterpolation.hpp> #include <ql/Math/bicubicsplineinterpolation.hpp> ! #include <ql/cashflows/cmscoupon.hpp> ! #include <ql/cashflows/conundrumpricer.hpp> namespace QuantLibAddin { --- 30,35 ---- #include <ql/Math/bilinearinterpolation.hpp> #include <ql/Math/bicubicsplineinterpolation.hpp> ! #include <ql/CashFlows/cmscoupon.hpp> ! #include <ql/CashFlows/conundrumpricer.hpp> namespace QuantLibAddin { |
|
From: Eric E. <eri...@us...> - 2006-09-07 08:25:47
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv749 Modified Files: Makefile.am Log Message: update file list Index: Makefile.am =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/Makefile.am,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile.am 28 Aug 2006 10:05:24 -0000 1.2 --- Makefile.am 7 Sep 2006 08:25:42 -0000 1.3 *************** *** 2,6 **** # gensrc.py probably needs to be re-executed if any of these change ! GENSRC_INPUT := metadata/bonds.xml \ metadata/calendar.xml \ metadata/capfloor.xml \ --- 2,7 ---- # gensrc.py probably needs to be re-executed if any of these change ! GENSRC_INPUT := metadata/assetswap.xml \ ! metadata/bonds.xml \ metadata/calendar.xml \ metadata/capfloor.xml \ *************** *** 14,19 **** metadata/exercise.xml \ metadata/forwardrateagreement.xml \ - metadata/generalstatistics.xml \ - metadata/incrementalstatistics.xml \ metadata/index.xml \ metadata/instruments.xml \ --- 15,18 ---- *************** *** 21,24 **** --- 20,24 ---- metadata/marketmodels.xml \ metadata/mathf.xml \ + metadata/ohfunctions.xml \ metadata/optimization.xml \ metadata/options.xml \ *************** *** 30,34 **** --- 30,37 ---- metadata/ratehelpers.xml \ metadata/schedule.xml \ + metadata/sequencestatistics.xml \ + metadata/settings.xml \ metadata/shortratemodels.xml \ + metadata/statistics.xml \ metadata/swaptionvolstructure.xml \ metadata/swaption.xml \ |
|
From: Mario P. <mar...@us...> - 2006-09-06 14:27:47
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv8561/qlo Modified Files: swaptionvolstructure.cpp swaptionvolstructure.hpp Log Message: name change Index: swaptionvolstructure.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/swaptionvolstructure.cpp,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** swaptionvolstructure.cpp 6 Sep 2006 13:48:50 -0000 1.24 --- swaptionvolstructure.cpp 6 Sep 2006 14:27:44 -0000 1.25 *************** *** 97,101 **** } ! SwaptionVolatilityCube::SwaptionVolatilityCube( const QuantLib::Handle<QuantLib::SwaptionVolatilityStructure>& atmVol, const std::vector<QuantLib::Period>& expiries, --- 97,101 ---- } ! SwaptionVolatilityCubeByLinear::SwaptionVolatilityCubeByLinear( const QuantLib::Handle<QuantLib::SwaptionVolatilityStructure>& atmVol, const std::vector<QuantLib::Period>& expiries, *************** *** 113,117 **** { libraryObject_ = boost::shared_ptr<QuantLib::Extrapolator>( ! new QuantLib::SwaptionVolatilityCube(atmVol, expiries, lengths, --- 113,117 ---- { libraryObject_ = boost::shared_ptr<QuantLib::Extrapolator>( ! new QuantLib::SwaptionVolatilityCubeByLinear(atmVol, expiries, lengths, Index: swaptionvolstructure.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/swaptionvolstructure.hpp,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** swaptionvolstructure.hpp 6 Sep 2006 13:48:51 -0000 1.20 --- swaptionvolstructure.hpp 6 Sep 2006 14:27:44 -0000 1.21 *************** *** 61,67 **** }; ! class SwaptionVolatilityCube : public SwaptionVolatilityStructure { public: ! SwaptionVolatilityCube( const QuantLib::Handle<QuantLib::SwaptionVolatilityStructure>& atmVol, const std::vector<QuantLib::Period>& expiries, --- 61,67 ---- }; ! class SwaptionVolatilityCubeByLinear : public SwaptionVolatilityStructure { public: ! SwaptionVolatilityCubeByLinear( const QuantLib::Handle<QuantLib::SwaptionVolatilityStructure>& atmVol, const std::vector<QuantLib::Period>& expiries, |