quantlibaddin-cvs Mailing List for QuantLibAddin (Page 3)
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: Ferdinando A. <na...@us...> - 2007-01-08 11:25:21
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv3159/qlo Modified Files: date.cpp Log Message: bug fix Index: date.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/date.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** date.cpp 5 Jan 2007 19:46:06 -0000 1.2 --- date.cpp 8 Jan 2007 11:25:17 -0000 1.3 *************** *** 49,65 **** if (n==0) return out; out.reserve(n); ! for (QuantLib::Size i=1; i<n; ++i) out.push_back(Date::IMMcode(immDates[i])); - - //Date d = (date == Date() ? - // Date(QuantLib::Settings::instance().evaluationDate()) : - // date); - //vector<string> out(1, Date::nextIMMcode(d, mainCycle[0])); - - //QuantLib::Size n = mainCycle.size(); - //if (n==0) return out; - //out.reserve(n); - //for (QuantLib::Size i=1; i<n; ++i) - // out.push_back(Date::nextIMMcode(out[i-1], mainCycle[i])); return out; } --- 49,54 ---- if (n==0) return out; out.reserve(n); ! for (QuantLib::Size i=0; i<n; ++i) out.push_back(Date::IMMcode(immDates[i])); return out; } |
|
From: Ferdinando A. <na...@us...> - 2007-01-08 11:24:28
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv2718/gensrc/metadata Modified Files: optimization.xml Log Message: preferred usage of non deprecated features Index: optimization.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/optimization.xml,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** optimization.xml 11 Dec 2006 09:40:04 -0000 1.19 --- optimization.xml 8 Jan 2007 11:24:24 -0000 1.20 *************** *** 205,213 **** <description>epsfcn</description> </Parameter> - <Parameter name="ftol" libraryType="QuantLib::Real" defaul="1.0e-8"> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>ftol</description> - </Parameter> <Parameter name="xtol" libraryType="QuantLib::Real" defaul="1.0e-8"> <type>double</type> --- 205,208 ---- *************** *** 220,228 **** <description>gtol</description> </Parameter> - <Parameter name="maxfev" libraryType="QuantLib::Size" defaul="400"> - <type>long</type> - <tensorRank>scalar</tensorRank> - <description>maxfev</description> - </Parameter> <Parameter name="initialValue" libraryType='QuantLib::Array'> <type>double</type> --- 215,218 ---- |
|
From: Ferdinando A. <na...@us...> - 2007-01-08 11:24:06
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv2297 Modified Files: QuantLibObjects.vcproj QuantLibObjects_vc8.vcproj Log Message: adding Optimization filter/folder Index: QuantLibObjects_vc8.vcproj =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/QuantLibObjects_vc8.vcproj,v retrieving revision 1.59 retrieving revision 1.60 diff -C2 -d -r1.59 -r1.60 *** QuantLibObjects_vc8.vcproj 14 Dec 2006 12:29:47 -0000 1.59 --- QuantLibObjects_vc8.vcproj 8 Jan 2007 11:24:02 -0000 1.60 *************** *** 671,682 **** </File> <File - RelativePath=".\qlo\optimization.cpp" - > - </File> - <File - RelativePath=".\qlo\optimization.hpp" - > - </File> - <File RelativePath=".\qlo\sequencestatistics.cpp" > --- 671,674 ---- *************** *** 1043,1046 **** --- 1035,1050 ---- </File> </Filter> + <Filter + Name="Optimization" + > + <File + RelativePath=".\qlo\optimization.cpp" + > + </File> + <File + RelativePath=".\qlo\optimization.hpp" + > + </File> + </Filter> <File RelativePath="qlo\auto_link.hpp" Index: QuantLibObjects.vcproj =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/QuantLibObjects.vcproj,v retrieving revision 1.50 retrieving revision 1.51 diff -C2 -d -r1.50 -r1.51 *** QuantLibObjects.vcproj 14 Dec 2006 12:29:47 -0000 1.50 --- QuantLibObjects.vcproj 8 Jan 2007 11:24:02 -0000 1.51 *************** *** 577,586 **** </File> <File - RelativePath=".\qlo\optimization.cpp"> - </File> - <File - RelativePath=".\qlo\optimization.hpp"> - </File> - <File RelativePath=".\qlo\sequencestatistics.cpp"> </File> --- 577,580 ---- *************** *** 881,884 **** --- 875,888 ---- </File> </Filter> + <Filter + Name="Optimization" + Filter=""> + <File + RelativePath=".\qlo\optimization.cpp"> + </File> + <File + RelativePath=".\qlo\optimization.hpp"> + </File> + </Filter> <File RelativePath="qlo\auto_link.hpp"> |
|
From: Ferdinando A. <na...@us...> - 2007-01-05 20:02:48
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv9859 Modified Files: todonando.txt Log Message: Index: todonando.txt =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/todonando.txt,v retrieving revision 1.73 retrieving revision 1.74 diff -C2 -d -r1.73 -r1.74 *** todonando.txt 5 Jan 2007 19:46:08 -0000 1.73 --- todonando.txt 5 Jan 2007 20:02:41 -0000 1.74 *************** *** 2,5 **** --- 2,6 ---- date abcd interpolation + coerce from Frequency to Period coerce from Period->Date to double/int |
|
From: Ferdinando A. <na...@us...> - 2007-01-05 19:46:18
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv1910 Modified Files: todonando.txt Log Message: new IMM functions Index: todonando.txt =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/todonando.txt,v retrieving revision 1.72 retrieving revision 1.73 diff -C2 -d -r1.72 -r1.73 *** todonando.txt 5 Jan 2007 19:35:29 -0000 1.72 --- todonando.txt 5 Jan 2007 19:46:08 -0000 1.73 *************** *** 1,3 **** ! coerce from Frequency to Period coerce from Period->Date to double/int --- 1,5 ---- ! optimization end criteria ! date ! abcd interpolation coerce from Frequency to Period coerce from Period->Date to double/int |
|
From: Ferdinando A. <na...@us...> - 2007-01-05 19:46:17
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv1910/qlo Modified Files: date.cpp date.hpp Log Message: new IMM functions Index: date.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/date.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** date.cpp 28 Nov 2006 19:54:22 -0000 1.1 --- date.cpp 5 Jan 2007 19:46:06 -0000 1.2 *************** *** 18,34 **** #include <qlo/date.hpp> namespace QuantLibAddin { ! std::vector<QuantLib::Date> qlNextIMMdates( ! const QuantLib::Date& d, ! const std::vector<bool>& mainCycle) { QuantLib::Size n = mainCycle.size(); ! std::vector<QuantLib::Date> results(n); ! results[0] = QuantLib::Date::nextIMMdate(d, mainCycle[0]); for (QuantLib::Size i=1; i<n; ++i) ! results[i] = QuantLib::Date::nextIMMdate( ! results[i-1]+1*QuantLib::Days, mainCycle[i]); ! return results; } --- 18,66 ---- #include <qlo/date.hpp> + #include <ql/settings.hpp> + + using QuantLib::Date; + using QuantLib::Days; + using std::vector; + using std::string; namespace QuantLibAddin { ! vector<Date> qlNextIMMdates(const Date& date, ! const vector<bool>& mainCycle) { ! Date d = (date == Date() ? ! Date(QuantLib::Settings::instance().evaluationDate()) : ! date); ! vector<Date> out(1, Date::nextIMMdate(d, mainCycle[0])); ! QuantLib::Size n = mainCycle.size(); ! if (n==0) return out; ! out.reserve(n); for (QuantLib::Size i=1; i<n; ++i) ! out.push_back(Date::nextIMMdate(out[i-1]+1*Days, mainCycle[i])); ! return out; ! } ! ! vector<string> qlNextIMMcodes(const Date& date, ! const vector<bool>& mainCycle) { ! vector<Date> immDates = qlNextIMMdates(date, mainCycle); ! vector<string> out; ! QuantLib::Size n = mainCycle.size(); ! if (n==0) return out; ! out.reserve(n); ! for (QuantLib::Size i=1; i<n; ++i) ! out.push_back(Date::IMMcode(immDates[i])); ! ! //Date d = (date == Date() ? ! // Date(QuantLib::Settings::instance().evaluationDate()) : ! // date); ! //vector<string> out(1, Date::nextIMMcode(d, mainCycle[0])); ! ! //QuantLib::Size n = mainCycle.size(); ! //if (n==0) return out; ! //out.reserve(n); ! //for (QuantLib::Size i=1; i<n; ++i) ! // out.push_back(Date::nextIMMcode(out[i-1], mainCycle[i])); ! return out; } Index: date.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/date.hpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** date.hpp 28 Nov 2006 19:54:22 -0000 1.3 --- date.hpp 5 Jan 2007 19:46:07 -0000 1.4 *************** *** 35,38 **** --- 35,42 ---- std::vector<QuantLib::Date> qlNextIMMdates(const QuantLib::Date& d, const std::vector<bool>& mainCycle); + + std::vector<std::string> qlNextIMMcodes(const QuantLib::Date& d, + const std::vector<bool>& mainCycle); + } |
|
From: Ferdinando A. <na...@us...> - 2007-01-05 19:46:12
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv1910/gensrc/metadata Modified Files: date.xml Log Message: new IMM functions Index: date.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/date.xml,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** date.xml 11 Dec 2006 09:40:03 -0000 1.22 --- date.xml 5 Jan 2007 19:46:06 -0000 1.23 *************** *** 210,214 **** </Procedure> ! <Procedure name='qlIsIMMdate' loopParameter='date'> <description>returns whether or not the given date is an IMM date.</description> <alias>QuantLib::Date::isIMMdate</alias> --- 210,215 ---- </Procedure> ! <!-- wrong results if date is a loopParameter, crashes as it is --> ! <Procedure name='qlIsIMMdate'> <description>returns whether or not the given date is an IMM date.</description> <alias>QuantLib::Date::isIMMdate</alias> *************** *** 220,224 **** <Parameter name='date' libraryType='QuantLib::Date'> <type>long</type> ! <tensorRank>vector</tensorRank> <description>date</description> </Parameter> --- 221,225 ---- <Parameter name='date' libraryType='QuantLib::Date'> <type>long</type> ! <tensorRank>scalar</tensorRank> <description>date</description> </Parameter> *************** *** 232,236 **** <ReturnValue> <type>bool</type> ! <tensorRank>vector</tensorRank> </ReturnValue> </Procedure> --- 233,264 ---- <ReturnValue> <type>bool</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! ! <!-- miss loopParameter, mandatory --> ! <Procedure name='qlIsIMMcode'> ! <description>returns whether or not the given code is an IMM code.</description> ! <alias>QuantLib::Date::isIMMcode</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='code'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>2 letter string (e.g. H9)</description> ! </Parameter> ! <Parameter name='mainCycle' default='true'> ! <type>bool</type> ! <tensorRank>scalar</tensorRank> ! <description>FALSE to consider all futures, not just the main H, M, U, Z cycle</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>bool</type> ! <tensorRank>scalar</tensorRank> </ReturnValue> </Procedure> *************** *** 257,261 **** </Procedure> ! <!--<Procedure name='qlIMMdate' loopParameter='IMMcode'>--> <Procedure name='qlIMMdate'> <description>returns the IMM date corresponding to the given IMM code (e.g. March 15th, 2006 for H6).</description> --- 285,341 ---- </Procedure> ! <!-- miss loopParameter, nice --> ! <Procedure name='qlNextIMMcode'> ! <description>returns the future code corresponding to a given IMM date (e.g. H6 for March 15th, 2006). It fails if the input date is not an IMM date.</description> ! <alias>QuantLib::Date::nextIMMcode</alias> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='date' libraryType='QuantLib::Date' default='QuantLib::Date()'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>date with respect to which the next IMM date is calculated</description> ! </Parameter> ! <Parameter name='mainCycle' default='true'> ! <type>bool</type> ! <tensorRank>scalar</tensorRank> ! <description>FALSE to consider all futures, not just the main H, M, U, Z cycle</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Procedure> ! ! <Procedure name='qlNextIMMcodes'> ! <description>returns the codes for next contracts listed in the International Money Market section of the Chicago Mercantile Exchange.</description> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='date' libraryType='QuantLib::Date' default='QuantLib::Date()'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>date with respect to which the next IMM codes are calculated</description> ! </Parameter> ! <Parameter name='mainCycle'> ! <type>bool</type> ! <tensorRank>vector</tensorRank> ! <description>FALSE to consider all futures, not just the main H, M, U, Z cycle</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>vector</tensorRank> ! </ReturnValue> ! </Procedure> ! ! <!-- miss loopParameter, mandatory --> <Procedure name='qlIMMdate'> <description>returns the IMM date corresponding to the given IMM code (e.g. March 15th, 2006 for H6).</description> *************** *** 271,274 **** --- 351,359 ---- <description>2 letter IMM code (e.q. \"H9\")</description> </Parameter> + <Parameter name='refDate' libraryType='QuantLib::Date' default='QuantLib::Date()'> + <type>long</type> + <tensorRank>scalar</tensorRank> + <description>reference date use to fix the decade (default is the current EvaluationDate)</description> + </Parameter> </Parameters> </ParameterList> *************** *** 279,282 **** --- 364,368 ---- </Procedure> + <!-- miss loopParameter, nice --> <Procedure name='qlNextIMMdate'> <description>returns the 1st delivery date for next contract listed in the International Money Market section of the Chicago Mercantile Exchange.</description> *************** *** 287,291 **** <ParameterList> <Parameters> ! <Parameter name='date' libraryType='QuantLib::Date'> <type>long</type> <tensorRank>scalar</tensorRank> --- 373,377 ---- <ParameterList> <Parameters> ! <Parameter name='date' libraryType='QuantLib::Date' default='QuantLib::Date()'> <type>long</type> <tensorRank>scalar</tensorRank> *************** *** 312,316 **** <ParameterList> <Parameters> ! <Parameter name='date' libraryType='QuantLib::Date'> <type>long</type> <tensorRank>scalar</tensorRank> --- 398,402 ---- <ParameterList> <Parameters> ! <Parameter name='date' libraryType='QuantLib::Date' default='QuantLib::Date()'> <type>long</type> <tensorRank>scalar</tensorRank> |
|
From: Ferdinando A. <na...@us...> - 2007-01-05 19:35:34
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv29316 Modified Files: todonando.txt Log Message: Index: todonando.txt =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/todonando.txt,v retrieving revision 1.71 retrieving revision 1.72 diff -C2 -d -r1.71 -r1.72 *** todonando.txt 5 Jan 2007 15:24:46 -0000 1.71 --- todonando.txt 5 Jan 2007 19:35:29 -0000 1.72 *************** *** 4,7 **** --- 4,19 ---- coerce from IMMcode to date + payment business days convention + + null strike -> atm strike + + pure future option term structures + fixed sabr parameters + + 3M caplet test wbk: + - atm curve + - abcd fit + + interpolation with boolean exclusion |
|
From: Francois du V. <fd...@us...> - 2007-01-05 15:36:24
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22235 Modified Files: smilesection.cpp Log Message: SABRInterpolationImpl fixed and refactored, previous maxIteration and precision restored SabrInterpolatedSmileSection maxIteration and precision defined at QLAddin level SmileSections graphs added to CapsStripperTest.xls Index: smilesection.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/smilesection.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** smilesection.cpp 22 Dec 2006 11:31:11 -0000 1.11 --- smilesection.cpp 5 Jan 2007 15:36:15 -0000 1.12 *************** *** 22,26 **** #include <ql/Math/sabrinterpolation.hpp> #include <ql/Volatilities/smilesection.hpp> - #include <ql/Volatilities/smilesection.hpp> --- 22,25 ---- *************** *** 64,68 **** const boost::shared_ptr<QuantLib::OptimizationMethod> method) { ! QuantLib::SABR sabrInterpolationFactory(expiry, forward, alpha, beta, nu, rho, isAlphaFixed, isBetaFixed, isNuFixed, isRhoFixed, vegaWeighted, method); --- 63,77 ---- const boost::shared_ptr<QuantLib::OptimizationMethod> method) { ! boost::shared_ptr<QuantLib::OptimizationMethod> method_; ! if(!method){ ! QuantLib::EndCriteria endCriteria(120000, 1e-12); ! QuantLib::Array guess(4); ! method_ = boost::shared_ptr<QuantLib::OptimizationMethod>(new ! QuantLib::Simplex(1e-6, guess, endCriteria)); ! } ! else ! method_ = method; ! ! QuantLib::SABR sabrInterpolationFactory(expiry, forward, alpha, beta, nu, rho, isAlphaFixed, isBetaFixed, isNuFixed, isRhoFixed, vegaWeighted, method); |
|
From: Ferdinando A. <na...@us...> - 2007-01-05 15:24:50
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv16885/qlo Modified Files: ratehelpers.cpp Log Message: Index: ratehelpers.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/ratehelpers.cpp,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** ratehelpers.cpp 2 Jan 2007 16:56:41 -0000 1.17 --- ratehelpers.cpp 5 Jan 2007 15:24:45 -0000 1.18 *************** *** 60,72 **** convAdjHandle_= convAdj; QuantLib::Date expiry = QuantLib::Date::IMMdate(immDateID); ! libraryObject_ = boost::shared_ptr<QuantLib::RateHelper>( ! new QuantLib::FuturesRateHelper( ! quoteHandle_, ! expiry, ! months, ! calendar, ! bDayConvention, ! dayCounter, ! convAdjHandle_)); } --- 60,71 ---- convAdjHandle_= convAdj; QuantLib::Date expiry = QuantLib::Date::IMMdate(immDateID); ! libraryObject_ = boost::shared_ptr<QuantLib::RateHelper>(new ! QuantLib::FuturesRateHelper(quoteHandle_, ! expiry, ! months, ! calendar, ! bDayConvention, ! dayCounter, ! convAdjHandle_)); } |
|
From: Ferdinando A. <na...@us...> - 2007-01-05 15:24:49
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv16885 Modified Files: todonando.txt Log Message: Index: todonando.txt =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/todonando.txt,v retrieving revision 1.70 retrieving revision 1.71 diff -C2 -d -r1.70 -r1.71 *** todonando.txt 3 Jan 2007 17:45:07 -0000 1.70 --- todonando.txt 5 Jan 2007 15:24:46 -0000 1.71 *************** *** 49,55 **** François - revise Levemberg Marquard ! - consolidate tutti i multistep in un'unico test - MultiStepSwaption ! - use MakeCapFloor in Excel test wkb - include future options in vol cap stripping --- 49,55 ---- François - revise Levemberg Marquard ! - consolidate all multisteps in a single test - MultiStepSwaption ! - DONE use MakeCapFloor in Excel test wkb - include future options in vol cap stripping |
|
From: Eric E. <eri...@us...> - 2007-01-05 09:32:17
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22831 Modified Files: todo.eric.csv Log Message: Index: todo.eric.csv =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/todo.eric.csv,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** todo.eric.csv 3 Jan 2007 22:25:33 -0000 1.10 --- todo.eric.csv 5 Jan 2007 09:32:07 -0000 1.11 *************** *** 1,3 **** --- 1,11 ---- project,subproject,task,status,priority,days,comp date,comment + + ,,fix Katiuscia's reported bug on Index - (this is a design change not a bug) :-),,,,, + ,,QuantLib.xla double-click/launcher launch (i.e. do not rely on environment variables anymore),,,,, + ,,replace all instance of post-increment with pre-increment where appropriate in the for loops,,,,, + ,,case insensitive regex in listObjectIDs,,,,, + ,,consolidate ohFilter1/ohFilter2 into ohFilter and enable Function Wizard,,,,, + + gensrc,Design,types.xml,,,,, OH,Design,refactor OH / OHXL implementation (including implementation of coercion),in progress,1,,, QLXL,Framework,separate QuantLibXL.xla into multiple modules with loader facility,in progress,2,,, *************** *** 39,58 **** QLA,Functions,port old QLXL functionality into new QLXL,cancelled,4,,, QLA,Design,loop functions: 1) template 2) Procedures 3) error per iteration,done,2,,, ! gensrc,Design,Increase max # params for Excel functions,done,5,,, ! QLA,Design,right-click error messages - allow user to click anywhere in the range,done,2,,, ! QLA,gensrc,extend rule.py to support conversion of Guile datatypes,done,5,,, ! gensrc,Design,consolidate Rule/RuleGroup classes,done,2,,, ! gensrc,Design,consolidate functions serializeObjectDict/serializeObjectDict2,done,2,,, ! QLA,General Support,count the number of functions available in the addin,done,5,,, ! OH,Design,ohLastErrorMessage() - analyze a better approach for error handling and diagnostics,done,1,,, ! QLA,Design,export and use Quote (or Handle<Quote>) instead of double to solve the problem of reconstructing objects with default value,done,0,,, ! QLA,Enumerations,EuriborSwapFixA / Eur Libor - fix design problems,done,0,,, ! gensrc,Design,"automatic conversion of QuantLib::Rate, Volatility, Discount, Spread, Time, etc",done,5,,, ! QLA,General Support,allow for default optimization Method (see as example qlAbcdCapletCalibration in marketmodels.xml),done,1,1,, ! QLA,Design,Joint Calendar as other Calendar (with special string),done,2,"0,5",, ! QLA,General Support,bring the C Addin and QuantLibXLDynamic up to date,done,5,,, ! gensrc,Design,subdivide file qlxl\qladdin.cpp (1MB!) by category,done,2,1,, ! OH,Design,convert objectIDs to uppercase,done,,,, ! OH,Design,implement case-preserving behavior for objectIDs,done,4,,, QLA,VBA framework,network launcher/updater for VBA framework - to point to different environments / configuration files,done,1,3,, all,General Support,NSIS installers - uninstall old app before installing new,cancelled,1,- -,,not required after network launcher? --- 47,66 ---- QLA,Functions,port old QLXL functionality into new QLXL,cancelled,4,,, QLA,Design,loop functions: 1) template 2) Procedures 3) error per iteration,done,2,,, ! gensrc,Design,Increase max # params for Excel functions,done,5, ! QLA,Design,right-click error messages - allow user to click anywhere in the range,done,2, ! QLA,gensrc,extend rule.py to support conversion of Guile datatypes,done,5, ! gensrc,Design,consolidate Rule/RuleGroup classes,done,2, ! gensrc,Design,consolidate functions serializeObjectDict/serializeObjectDict2,done,2, ! QLA,General Support,count the number of functions available in the addin,done,5, ! OH,Design,ohLastErrorMessage() - analyze a better approach for error handling and diagnostics,done,1, ! QLA,Design,export and use Quote (or Handle<Quote>) instead of double to solve the problem of reconstructing objects with default value,done,0, ! QLA,Enumerations,EuriborSwapFixA / Eur Libor - fix design problems,done,0, ! gensrc,Design,"automatic conversion of QuantLib::Rate, Volatility, Discount, Spread, Time, etc",done,5, ! QLA,General Support,allow for default optimization Method (see as example qlAbcdCapletCalibration in marketmodels.xml),done,1,1 ! QLA,Design,Joint Calendar as other Calendar (with special string),done,2,"0,5" ! QLA,General Support,bring the C Addin and QuantLibXLDynamic up to date,done,5, ! gensrc,Design,subdivide file qlxl\qladdin.cpp (1MB!) by category,done,2,1 ! OH,Design,convert objectIDs to uppercase,done,, ! OH,Design,implement case-preserving behavior for objectIDs,done,4, QLA,VBA framework,network launcher/updater for VBA framework - to point to different environments / configuration files,done,1,3,, all,General Support,NSIS installers - uninstall old app before installing new,cancelled,1,- -,,not required after network launcher? |
|
From: Eric E. <eri...@us...> - 2007-01-04 13:22:17
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/Conversions In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv27051/qlo/Conversions Modified Files: coerceobject.hpp Log Message: Index: coerceobject.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/Conversions/coerceobject.hpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** coerceobject.hpp 4 Jan 2007 11:21:55 -0000 1.2 --- coerceobject.hpp 4 Jan 2007 13:22:13 -0000 1.3 *************** *** 24,27 **** --- 24,33 ---- //NANDO: why in the ObjectHandler namespace? + + // It should not be. The correct approach would be to divide the Conversion/Coercion + // functions across the ObjectHandler, QuantLibAddin, and (not yet created) QuantLibXL + // namespaces, but for the sake of expediency all of this was put in the ObjectHandler + // namespace initially. + namespace ObjHandler { |
|
From: Ferdinando A. <na...@us...> - 2007-01-04 11:22:01
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/Conversions In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv32401/qlo/Conversions Modified Files: coerceobject.hpp Log Message: 1) referenceFromObject renamed as objectToReference 2) referenceFromHandle renamed as handleToReference 3) CoerceObject renamed as CoerceToObject 4) code clean up Index: coerceobject.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/Conversions/coerceobject.hpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** coerceobject.hpp 22 Nov 2006 21:37:25 -0000 1.1 --- coerceobject.hpp 4 Jan 2007 11:21:55 -0000 1.2 *************** *** 23,26 **** --- 23,27 ---- #include <qlo/handle.hpp> + //NANDO: why in the ObjectHandler namespace? namespace ObjHandler { *************** *** 31,38 **** template <class qloClass, class qlClass> ! bool referenceFromObject( ! const boost::shared_ptr<ObjHandler::Object> &in, ! boost::shared_ptr<qlClass> &out) { ! boost::shared_ptr<qloClass> qloPointer = boost::dynamic_pointer_cast<qloClass>(in); if (qloPointer) { --- 32,38 ---- template <class qloClass, class qlClass> ! bool objectToReference(const boost::shared_ptr<ObjHandler::Object> &in, ! boost::shared_ptr<qlClass> &out) { ! boost::shared_ptr<qloClass> qloPointer = boost::dynamic_pointer_cast<qloClass>(in); if (qloPointer) { *************** *** 45,52 **** template <class qlClass> ! bool referenceFromHandle( ! const boost::shared_ptr<ObjHandler::Object> &in, ! boost::shared_ptr<qlClass> &out) { ! boost::shared_ptr<QuantLibAddin::Handle<qlClass> > handlePointer = boost::dynamic_pointer_cast<QuantLibAddin::Handle<qlClass> >(in); --- 45,50 ---- template <class qlClass> ! bool handleToReference(const boost::shared_ptr<ObjHandler::Object> &in, ! boost::shared_ptr<qlClass> &out) { boost::shared_ptr<QuantLibAddin::Handle<qlClass> > handlePointer = boost::dynamic_pointer_cast<QuantLibAddin::Handle<qlClass> >(in); *************** *** 55,64 **** return false; ! OH_REQUIRE(!handlePointer->getHandle().empty(), ! "handle contains null reference"); out = handlePointer->getHandle().currentLink(); ! OH_REQUIRE(out, "unable to retrieve reference" ! << " contained in handle"); return true; --- 53,63 ---- return false; ! // this check should be now redundant, since it is performed ! // in QuantLib::Handle.currentLink() ! //OH_REQUIRE(!handlePointer->getHandle().empty(), ! // "handle contains null reference"); out = handlePointer->getHandle().currentLink(); ! OH_REQUIRE(out, "unable to retrieve reference contained in handle"); return true; *************** *** 66,76 **** template <class qloClass, class qlClass> ! class CoerceObject : public ObjHandler::Coerce< boost::shared_ptr<ObjHandler::Object>, boost::shared_ptr<qlClass> > { Conversion *getConversions() { static Conversion conversions[] = { ! referenceFromObject<qloClass, qlClass>, ! referenceFromHandle<qlClass>, 0 }; --- 65,75 ---- template <class qloClass, class qlClass> ! class CoerceToObject : public ObjHandler::Coerce< boost::shared_ptr<ObjHandler::Object>, boost::shared_ptr<qlClass> > { Conversion *getConversions() { static Conversion conversions[] = { ! objectToReference<qloClass, qlClass>, ! handleToReference<qlClass>, 0 }; |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:38
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/RandomNumbers In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/RandomNumbers Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/RandomNumbers added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/TermStructures In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/TermStructures Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/TermStructures added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/Volatilities In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/Volatilities Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/Volatilities added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/CashFlows In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/CashFlows Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/CashFlows added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/Enumerations In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/Enumerations Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/Enumerations added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/ShortRateModels In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/ShortRateModels Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/ShortRateModels added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/PricingEngines In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/PricingEngines Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/PricingEngines added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/Math In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/Math Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/Math added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:34
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/Instruments In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/Instruments Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/Instruments added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 11:07:34
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo/MarketModels In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26212/MarketModels Log Message: Directory /cvsroot/quantlibaddin/QuantLibAddin/qlo/MarketModels added to the repository |
|
From: Giorgio F. <gi...@us...> - 2007-01-04 10:42:12
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv15449/qlo Modified Files: marketmodels.cpp marketmodels.hpp Log Message: Added multistepratchet class Index: marketmodels.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.hpp,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** marketmodels.hpp 5 Dec 2006 10:20:21 -0000 1.27 --- marketmodels.hpp 4 Jan 2007 10:42:08 -0000 1.28 *************** *** 145,148 **** --- 145,160 ---- }; + class MultiStepRatchet : public MarketModelMultiProduct { + public: + MultiStepRatchet(const std::vector<QuantLib::Time>& rateTimes, + const std::vector<QuantLib::Real>& accruals, + const std::vector<QuantLib::Time>& paymentTimes, + QuantLib::Real gearingOfFloor, + QuantLib::Real gearingOfFixing, + QuantLib::Rate spreadOfFloor, + QuantLib::Rate spreadOfFixing, + QuantLib::Real initialFloor, + bool payer); + }; class BrownianGeneratorFactory : public ObjHandler::LibraryObject< Index: marketmodels.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.cpp,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** marketmodels.cpp 13 Nov 2006 09:30:19 -0000 1.29 --- marketmodels.cpp 4 Jan 2007 10:42:08 -0000 1.30 *************** *** 28,31 **** --- 28,32 ---- #include <ql/MarketModels/Products/OneStep/onestepforwards.hpp> #include <ql/MarketModels/Products/OneStep/onestepoptionlets.hpp> + #include <ql/MarketModels/Products/MultiStep/multistepratchet.hpp> namespace QuantLibAddin { *************** *** 154,157 **** --- 155,177 ---- } + MultiStepRatchet::MultiStepRatchet( + const std::vector<QuantLib::Time>& rateTimes, + const std::vector<QuantLib::Real>& accruals, + const std::vector<QuantLib::Time>& paymentTimes, + QuantLib::Real gearingOfFloor, + QuantLib::Real gearingOfFixing, + QuantLib::Rate spreadOfFloor, + QuantLib::Rate spreadOfFixing, + QuantLib::Real initialFloor, + bool payer) + { + libraryObject_ = boost::shared_ptr<QuantLib::MarketModelMultiProduct>( + new QuantLib::MultiStepRatchet(rateTimes, accruals, + paymentTimes, + gearingOfFloor, gearingOfFixing, + spreadOfFloor, spreadOfFixing, + initialFloor, payer)); + } + std::string MarketModelMultiProduct::evolution() const { |