quantlibaddin-cvs Mailing List for QuantLibAddin (Page 13)
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: Giorgio F. <gi...@us...> - 2006-11-14 11:18:29
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv7956/gensrc/metadata Modified Files: cmsmarket.xml Log Message: cms market calibration Index: cmsmarket.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/cmsmarket.xml,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** cmsmarket.xml 7 Nov 2006 15:39:19 -0000 1.13 --- cmsmarket.xml 14 Nov 2006 11:18:24 -0000 1.14 *************** *** 28,35 **** <description>cms matrix's expiries as periods</description> </Parameter> ! <Parameter name='swapLengths' libraryType='QuantLib::Period'> <type>string</type> <tensorRank>vector</tensorRank> ! <description>cms matrix's underlying swap lengths</description> </Parameter> <Parameter name='bidsAsks' libToHandle='Quote'> --- 28,35 ---- <description>cms matrix's expiries as periods</description> </Parameter> ! <Parameter name='swapIndices' libraryClass='SwapIndex'> <type>string</type> <tensorRank>vector</tensorRank> ! <description>cms matrix's swap Indices</description> </Parameter> <Parameter name='bidsAsks' libToHandle='Quote'> *************** *** 126,132 **** </Parameters> </ParameterList> ! <ReturnValue> <type>double</type> ! <tensorRank>scalar</tensorRank> </ReturnValue> </Member> --- 126,132 ---- </Parameters> </ParameterList> ! <ReturnValue libraryType='QuantLib::Array'> <type>double</type> ! <tensorRank>vector</tensorRank> </ReturnValue> </Member> |
|
From: Giorgio F. <gi...@us...> - 2006-11-14 11:18:29
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv7956/qlo Modified Files: cmsmarket.cpp cmsmarket.hpp Log Message: cms market calibration Index: cmsmarket.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/cmsmarket.hpp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** cmsmarket.hpp 2 Nov 2006 09:28:10 -0000 1.8 --- cmsmarket.hpp 14 Nov 2006 11:18:24 -0000 1.9 *************** *** 35,39 **** CmsMarket( const std::vector<QuantLib::Period>& expiries, ! const std::vector<QuantLib::Period>& lengths, const std::vector<std::vector<QuantLib::Handle<QuantLib::Quote> > >& bidAskSpreads, const QuantLib::Matrix& meanReversions, --- 35,39 ---- CmsMarket( const std::vector<QuantLib::Period>& expiries, ! const std::vector< boost::shared_ptr<QuantLib::SwapIndex> >& swapIndices, const std::vector<std::vector<QuantLib::Handle<QuantLib::Quote> > >& bidAskSpreads, const QuantLib::Matrix& meanReversions, Index: cmsmarket.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/cmsmarket.cpp,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** cmsmarket.cpp 6 Nov 2006 14:57:44 -0000 1.12 --- cmsmarket.cpp 14 Nov 2006 11:18:24 -0000 1.13 *************** *** 29,33 **** CmsMarket::CmsMarket( const std::vector<QuantLib::Period>& expiries, ! const std::vector<QuantLib::Period>& lengths, const std::vector<std::vector<QuantLib::Handle<QuantLib::Quote> > >& bidAskSpreads, const QuantLib::Matrix& meanReversions, --- 29,33 ---- CmsMarket::CmsMarket( const std::vector<QuantLib::Period>& expiries, ! const std::vector< boost::shared_ptr<QuantLib::SwapIndex> >& swapIndices, const std::vector<std::vector<QuantLib::Handle<QuantLib::Quote> > >& bidAskSpreads, const QuantLib::Matrix& meanReversions, *************** *** 43,47 **** new QuantLib::CmsMarket( expiries, ! lengths, bidAskSpreads, meanReversions, --- 43,47 ---- new QuantLib::CmsMarket( expiries, ! swapIndices, bidAskSpreads, meanReversions, |
|
From: Ferdinando A. <na...@us...> - 2006-11-13 09:44:35
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv25469/gensrc/metadata Modified Files: enumclasses.xml payoffs.xml Log Message: refactored Payoff class and enumeration Index: payoffs.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/payoffs.xml,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** payoffs.xml 26 Oct 2006 08:49:28 -0000 1.9 --- payoffs.xml 13 Nov 2006 09:44:31 -0000 1.10 *************** *** 4,7 **** --- 4,8 ---- <xlFunctionWizardCategory>QuantLib - Financial</xlFunctionWizardCategory> <copyright> + Copyright (C) 2006 Ferdinando Ametrano Copyright (C) 2006 Eric Ehlers </copyright> *************** *** 9,45 **** <Functions> ! <Constructor name='qlStrikedTypePayoff'> ! <libraryFunction>StrikedTypePayoff</libraryFunction> <SupportedPlatforms> ! <Excel/> ! <C/> ! <Calc/> ! <Guile/> </SupportedPlatforms> <ParameterList> <Parameters> ! <Parameter name='payoffID'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>payoff ID</description> ! </Parameter> ! <Parameter name='optionType' enumeration='QuantLib::Option::Type'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>option type</description> ! </Parameter> ! <Parameter name='strike' libraryType='QuantLib::Rate'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>strike (or moneyness)</description> </Parameter> </Parameters> </ParameterList> ! </Constructor> ! <Constructor name='qlStrikedTypePayoff2'> <libraryFunction>StrikedTypePayoff</libraryFunction> <SupportedPlatforms> <Excel/> </SupportedPlatforms> <ParameterList> --- 10,161 ---- <Functions> ! <Member name='qlPayoffType' libraryClass='Payoff'> ! <description>returns the payoff type (e.g. Vanilla, PercentageStrike, AssetOrNothing, CashOrNothing, Gap, SuperShare).</description> ! <libraryFunction>type</libraryFunction> <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Member name='qlPayoffDescription' libraryClass='Payoff'> ! <description>returns the payoff description (e.g. CashOrNothing, strike 32.2, cash payoff 2.5).</description> ! <libraryFunction>description</libraryFunction> ! <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Member name='qlPayoffValue' libraryClass='Payoff'> ! <description>returns the payoff value given an underlying reference level.</description> ! <libraryFunction>operator()</libraryFunction> ! <SupportedPlatforms> ! <Excel /> </SupportedPlatforms> <ParameterList> <Parameters> ! <Parameter name='underlying' libraryType='QuantLib::Real'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>underlying reference level</description> </Parameter> </Parameters> </ParameterList> ! <ReturnValue> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! <Member name='qlPayoffOptionType' libraryClass='TypePayoff'> ! <description>returns the payoff option type (e.g. Call, Put).</description> ! <libraryFunction>optionType</libraryFunction> ! <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue enumeration='QuantLib::Option::Type'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Member name='qlPayoffStrike' libraryClass='StrikedTypePayoff'> ! <description>returns the payoff strike.</description> ! <libraryFunction>strike</libraryFunction> ! <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Real'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <!--<Member name='qlPayoffCashPayoff' libraryClass='CashOrNothingPayoff'> ! <description>returns the cash payoff of CashOrNothing payoff.</description> ! <libraryFunction>cashPayoff</libraryFunction> ! <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Real'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Member name='qlPayoffStrikePayoff' libraryClass='GapPayoff'> ! <description>returns the strike payoff of Gap payoff.</description> ! <libraryFunction>strikePayoff</libraryFunction> ! <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Real'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Member name='qlPayoffStrikeIncrement' libraryClass='SuperSharePayoff'> ! <description>returns the strike increment of SuperShare payoff.</description> ! <libraryFunction>strikeIncrement</libraryFunction> ! <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Real'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member>--> ! ! <Member name='qlPayoffThirdParameter' objectClass='StrikedTypePayoff'> ! <description>returns the third parametet of a StrikedType payoff.</description> ! <libraryFunction>thirdParameter</libraryFunction> ! <SupportedPlatforms> ! <Excel /> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters /> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Real'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Constructor name='qlPayoff'> <libraryFunction>StrikedTypePayoff</libraryFunction> <SupportedPlatforms> <Excel/> + <C/> + <Calc/> + <Guile/> </SupportedPlatforms> <ParameterList> *************** *** 48,52 **** <type>string</type> <tensorRank>scalar</tensorRank> ! <description>payoff ID</description> </Parameter> <Parameter name='optionType' enumeration='QuantLib::Option::Type'> --- 164,168 ---- <type>string</type> <tensorRank>scalar</tensorRank> ! <description>payoff ID (e.g. Vanilla, PercentageStrike, AssetOrNothing, CashOrNothing, Gap, SuperShare).</description> </Parameter> <Parameter name='optionType' enumeration='QuantLib::Option::Type'> *************** *** 55,67 **** <description>option type</description> </Parameter> ! <Parameter name='strike' libraryType='QuantLib::Rate'> <type>double</type> <tensorRank>scalar</tensorRank> <description>strike</description> </Parameter> ! <Parameter name='strikeIncrement'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>strike increment</description> </Parameter> </Parameters> --- 171,183 ---- <description>option type</description> </Parameter> ! <Parameter name='strike' libraryType='QuantLib::Real'> <type>double</type> <tensorRank>scalar</tensorRank> <description>strike</description> </Parameter> ! <Parameter name='thirdParameter' default='QuantLib::Null<QuantLib::Real>()'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>the 3rd paramenter for the payoff definition of CashOrNothing (cash), Gap (effective strike), SuperShare (strike increment)</description> </Parameter> </Parameters> Index: enumclasses.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumclasses.xml,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** enumclasses.xml 11 Oct 2006 11:44:32 -0000 1.29 --- enumclasses.xml 13 Nov 2006 09:44:31 -0000 1.30 *************** *** 1,1005 **** <root> ! <enumClassCopyright> ! Copyright (C) 2005 Plamen Neykov ! Copyright (C) 2005, 2006 Eric Ehlers ! Copyright (C) 2006 Katiuscia Manzoni ! Copyright (C) 2006 Ferdinando Ametrano ! Copyright (C) 2006 Chiara Fornarola ! </enumClassCopyright> ! <Enumerations> [...1987 lines suppressed...] ! <EnumerationDefinition> ! <string>EURIBOR SW 5Y</string> ! <value>EURIBORSWAPFIXIFR_5Y</value> ! <libraryClass>QuantLib::EuriborSwapFixIFR5Y</libraryClass> ! </EnumerationDefinition> ! <EnumerationDefinition> ! <string>EURIBOR SW 10Y</string> ! <value>EURIBORSWAPFIXIFR_10Y</value> ! <libraryClass>QuantLib::EuriborSwapFixIFR10Y</libraryClass> ! </EnumerationDefinition> ! <EnumerationDefinition> ! <string>EURIBOR SW 30Y</string> ! <value>EURIBORSWAPFIXIFR_30Y</value> ! <libraryClass>QuantLib::EuriborSwapFixIFR30Y</libraryClass> ! </EnumerationDefinition> ! </EnumerationDefinitions> ! </Enumeration> ! ! </Enumerations> </root> |
|
From: Ferdinando A. <na...@us...> - 2006-11-13 09:44:15
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv25388/gensrc/metadata Modified Files: marketmodels.xml Log Message: switching to new CurveState constructor and methods Index: marketmodels.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/marketmodels.xml,v retrieving revision 1.56 retrieving revision 1.57 diff -C2 -d -r1.56 -r1.57 *** marketmodels.xml 10 Nov 2006 17:59:25 -0000 1.56 --- marketmodels.xml 13 Nov 2006 09:44:12 -0000 1.57 *************** *** 1273,1276 **** --- 1273,1292 ---- </Member> + <Member name='qlCurveStateRateTaus' libraryClass='CurveState'> + <description>return the rate taus of the CurveState object</description> + <libraryFunction>rateTaus</libraryFunction> + <functionCategory>QuantLib</functionCategory> + <SupportedPlatforms> + <Excel/> + </SupportedPlatforms> + <ParameterList> + <Parameters/> + </ParameterList> + <ReturnValue libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>vector</tensorRank> + </ReturnValue> + </Member> + <Member name='qlCurveStateSetOnForwardRates' libraryClass='CurveState'> <description>set the CurveState object on given vector of forward rates</description> *************** *** 1281,1285 **** <ParameterList> <Parameters> ! <Parameter name='rates' libraryType='QuantLib::Rate'> <type>double</type> <tensorRank>vector</tensorRank> --- 1297,1301 ---- <ParameterList> <Parameters> ! <Parameter name='rates' libraryType='QuantLib::Rate' vectorIterator='beginAndEnd'> <type>double</type> <tensorRank>vector</tensorRank> *************** *** 1302,1306 **** <ParameterList> <Parameters> ! <Parameter name='discountRatios'> <type>double</type> <tensorRank>vector</tensorRank> --- 1318,1322 ---- <ParameterList> <Parameters> ! <Parameter name='discountRatios' vectorIterator='beginAndEnd'> <type>double</type> <tensorRank>vector</tensorRank> *************** *** 1323,1327 **** <ParameterList> <Parameters> ! <Parameter name='CoterminalSwaps' libraryType='QuantLib::Rate'> <type>double</type> <tensorRank>vector</tensorRank> --- 1339,1343 ---- <ParameterList> <Parameters> ! <Parameter name='CoterminalSwaps' libraryType='QuantLib::Rate' vectorIterator='beginAndEnd'> <type>double</type> <tensorRank>vector</tensorRank> *************** *** 1337,1341 **** <Member name='qlCurveStateForwardRates' libraryClass='CurveState'> ! <description>set the CurveState object on given vector of forward rates</description> <libraryFunction>forwardRates</libraryFunction> <SupportedPlatforms> --- 1353,1357 ---- <Member name='qlCurveStateForwardRates' libraryClass='CurveState'> ! <description>Returns the current forward rates of the CurveState object</description> <libraryFunction>forwardRates</libraryFunction> <SupportedPlatforms> *************** *** 1352,1356 **** <Member name='qlCurveStateDiscountRatios' libraryClass='CurveState'> ! <description>set the CurveState object on given vector of discount ratios</description> <libraryFunction>discountRatios</libraryFunction> <SupportedPlatforms> --- 1368,1372 ---- <Member name='qlCurveStateDiscountRatios' libraryClass='CurveState'> ! <description>Returns the current discount ratios of the CurveState object</description> <libraryFunction>discountRatios</libraryFunction> <SupportedPlatforms> *************** *** 1367,1371 **** <Member name='qlCurveStateCoterminalSwapRates' libraryClass='CurveState'> ! <description>set the CurveState object on given vector of coterminal swaps</description> <libraryFunction>coterminalSwapRates</libraryFunction> <SupportedPlatforms> --- 1383,1387 ---- <Member name='qlCurveStateCoterminalSwapRates' libraryClass='CurveState'> ! <description>Returns the current swap rates of the CurveState object</description> <libraryFunction>coterminalSwapRates</libraryFunction> <SupportedPlatforms> *************** *** 1381,1449 **** </Member> ! <Member name='qlCurveStateForwardRate' libraryClass='CurveState'> ! <description>set the CurveState object on given vector of forward rates</description> ! <libraryFunction>forwardRate</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='index'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>forward rate index</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Rate'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Member name='qlCurveStateDiscountRatio' libraryClass='CurveState'> ! <description>set the CurveState object on given vector of discount ratios</description> ! <libraryFunction>discountRatio</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='index1'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>discount bond first index</description> ! </Parameter> ! <Parameter name='index2'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>discount bond second index</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! </ReturnValue> ! </Member> ! ! <Member name='qlCurveStateCoterminalSwapRate' libraryClass='CurveState'> ! <description>set the CurveState object on given vector of coterminal swaps</description> ! <libraryFunction>coterminalSwapRate</libraryFunction> <SupportedPlatforms> <Excel/> </SupportedPlatforms> <ParameterList> ! <Parameters> ! <Parameter name='index'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>swap rate index</description> ! </Parameter> ! </Parameters> </ParameterList> ! <ReturnValue libraryType='QuantLib::Rate'> <type>double</type> ! <tensorRank>scalar</tensorRank> </ReturnValue> </Member> --- 1397,1412 ---- </Member> ! <Member name='qlCurveStateCoterminalSwapAnnuities' libraryClass='CurveState'> ! <description>Returns the current swap annuities of the CurveState object</description> ! <libraryFunction>coterminalSwapAnnuities</libraryFunction> <SupportedPlatforms> <Excel/> </SupportedPlatforms> <ParameterList> ! <Parameters/> </ParameterList> ! <ReturnValue libraryType='QuantLib::Real'> <type>double</type> ! <tensorRank>vector</tensorRank> </ReturnValue> </Member> *************** *** 1456,1460 **** <ParameterList> <Parameters> ! <Parameter name='rateTimes' libraryType='QuantLib::Time'> <type>double</type> <tensorRank>vector</tensorRank> --- 1419,1423 ---- <ParameterList> <Parameters> ! <Parameter name='rateTimes' libraryType='QuantLib::Time' vectorIterator='beginAndEnd'> <type>double</type> <tensorRank>vector</tensorRank> |
|
From: Ferdinando A. <na...@us...> - 2006-11-13 09:43:45
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv24995/gensrc/metadata Modified Files: pricingengines.xml Log Message: exported BlackCalculator and BlackScholesCalculator Index: pricingengines.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/pricingengines.xml,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** pricingengines.xml 10 Nov 2006 17:59:14 -0000 1.27 --- pricingengines.xml 13 Nov 2006 09:43:42 -0000 1.28 *************** *** 9,13 **** --- 9,15 ---- <include>qlo/capletvolstructure.hpp</include> <include>qlo/shortratemodels.hpp</include> + <include>qlo/payoffs.hpp</include> <include>ql/PricingEngines/blackformula.hpp</include> + <include>ql/PricingEngines/blackscholescalculator.hpp</include> </includes> <copyright> *************** *** 17,21 **** <Procedure name='qlBlackFormula'> ! <description>Undiscounted Black formula for option pricing</description> <alias>QuantLib::blackFormula</alias> <SupportedPlatforms> --- 19,23 ---- <Procedure name='qlBlackFormula'> ! <description>Black formula for option pricing</description> <alias>QuantLib::blackFormula</alias> <SupportedPlatforms> *************** *** 44,47 **** --- 46,54 ---- <description>standard deviation, i.e. annualized percentage volatility times the square root of time to option expiry</description> </Parameter> + <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>discount factor</description> + </Parameter> </Parameters> </ParameterList> *************** *** 52,57 **** </Procedure> <Procedure name='qlBlackImpliedStdDevApproximation'> ! <description>Approximation for the standard deviation (annualized percentage volatility times the square root of time to option expiry) implied in the undiscounted option price by the Black formula</description> <alias>QuantLib::blackImpliedStdDevApproximation</alias> <SupportedPlatforms> --- 59,100 ---- </Procedure> + <!--<Procedure name='qlBlackFormula2'> + <description>Black formula for option pricing</description> + <alias>QuantLib::blackFormula</alias> + <SupportedPlatforms> + <Excel/> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='payoffID' libraryClass='PlainVanillaPayoff'> + <type>string</type> + <tensorRank>scalar</tensorRank> + <description>PlainVanilla payoff ID</description> + </Parameter> + <Parameter name='forward'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>underlying forward value</description> + </Parameter> + <Parameter name='stdDev'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>standard deviation, i.e. annualized percentage volatility times the square root of time to option expiry</description> + </Parameter> + <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>discount factor</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Procedure>--> + <Procedure name='qlBlackImpliedStdDevApproximation'> ! <description>Approximation for the standard deviation (annualized percentage volatility times the square root of time to option expiry) implied by the Black formula</description> <alias>QuantLib::blackImpliedStdDevApproximation</alias> <SupportedPlatforms> *************** *** 75,82 **** <description>underlying forward value</description> </Parameter> ! <Parameter name='undiscountedPrice'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>undiscounted option price</description> </Parameter> </Parameters> --- 118,130 ---- <description>underlying forward value</description> </Parameter> ! <Parameter name='price'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>option price</description> ! </Parameter> ! <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! <description>discount factor</description> </Parameter> </Parameters> *************** *** 89,93 **** <Procedure name='qlBlackImpliedStdDev'> ! <description>Standard deviation (annualized percentage volatility times the square root of time to option expiry) implied in the undiscounted option price by the Black formula</description> <alias>QuantLib::blackImpliedStdDev</alias> <SupportedPlatforms> --- 137,141 ---- <Procedure name='qlBlackImpliedStdDev'> ! <description>Standard deviation (annualized percentage volatility times the square root of time to option expiry) implied by the Black formula</description> <alias>QuantLib::blackImpliedStdDev</alias> <SupportedPlatforms> *************** *** 111,120 **** <description>underlying forward value</description> </Parameter> ! <Parameter name='undiscountedPrice'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>undiscounted option price</description> </Parameter> ! <Parameter name='guess' default='QuantLib::Null<double>()'> <type>double</type> <tensorRank>scalar</tensorRank> --- 159,173 ---- <description>underlying forward value</description> </Parameter> ! <Parameter name='price'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>option price</description> </Parameter> ! <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> ! <type>double</type> ! <tensorRank>scalar</tensorRank> ! <description>discount factor</description> ! </Parameter> ! <Parameter name='guess' default='QuantLib::Null<QuantLib::Real>()'> <type>double</type> <tensorRank>scalar</tensorRank> *************** *** 157,160 **** --- 210,218 ---- <description>standard deviation, i.e. annualized volatility times the square root of time to option expiry</description> </Parameter> + <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>discount factor</description> + </Parameter> </Parameters> </ParameterList> *************** *** 166,170 **** <Procedure name='qlBachelierBlackFormula'> ! <description>Undiscounted Black style formula when forward is normal rather than log-normal, i.e. essentially the model of Bachelier.</description> <alias>QuantLib::bachelierBlackFormula</alias> <SupportedPlatforms> --- 224,228 ---- <Procedure name='qlBachelierBlackFormula'> ! <description>Black style formula when forward is normal rather than log-normal, i.e. essentially the model of Bachelier.</description> <alias>QuantLib::bachelierBlackFormula</alias> <SupportedPlatforms> *************** *** 193,196 **** --- 251,259 ---- <description>standard deviation, i.e. annualized ABSOLUTE volatility times the square root of time to option expiry</description> </Parameter> + <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>discount factor</description> + </Parameter> </Parameters> </ParameterList> *************** *** 201,204 **** --- 264,743 ---- </Procedure> + <!-- BlackCalculator interface and constructor --> + <Member name='qlBlackCalculatorValue' libraryClass='BlackCalculator'> + <description>returns the option value.</description> + <libraryFunction>value</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorDeltaForward' libraryClass='BlackCalculator'> + <description>returns the sensitivity to change in the underlying forward price.</description> + <libraryFunction>deltaForward</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorDelta' libraryClass='BlackCalculator'> + <description>returns the sensitivity to change in the underlying spot price.</description> + <libraryFunction>delta</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='spot' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>spot value</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorElasticityForward' libraryClass='BlackCalculator'> + <description>returns the sensitivity in percent to a percent change in the underlying forward price.</description> + <libraryFunction>elasticityForward</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorElasticity' libraryClass='BlackCalculator'> + <description>returns the sensitivity in percent to a percent change in the underlying spot price.</description> + <libraryFunction>elasticity</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='spot' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>spot value</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorGammaForward' libraryClass='BlackCalculator'> + <description>returns the second order derivative with respect to change in the underlying forward price.</description> + <libraryFunction>gammaForward</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorGamma' libraryClass='BlackCalculator'> + <description>returns the second order derivative with respect to change in the underlying spot price.</description> + <libraryFunction>gamma</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='spot' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>spot value</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorTheta' libraryClass='BlackCalculator'> + <description>returns the sensitivity to time to maturity.</description> + <libraryFunction>theta</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='spot' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>spot value</description> + </Parameter> + <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>time to maturity in years</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorThetaPerDay' libraryClass='BlackCalculator'> + <description>returns the sensitivity to time to maturity per day, assuming 365 days per year.</description> + <libraryFunction>thetaPerDay</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='spot' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>spot value</description> + </Parameter> + <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>time to maturity in years</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorVega' libraryClass='BlackCalculator'> + <description>returns the sensitivity to volatility.</description> + <libraryFunction>vega</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>time to maturity in years</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorRho' libraryClass='BlackCalculator'> + <description>returns the sensitivity to discounting rate.</description> + <libraryFunction>rho</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>time to maturity in years</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorDividendRho' libraryClass='BlackCalculator'> + <description>returns the sensitivity to dividend/growth rate.</description> + <libraryFunction>dividendRho</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>time to maturity in years</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorItmCashProbability' libraryClass='BlackCalculator'> + <description>returns the probability of being in the money in the bond martingale measure. It is a risk-neutral probability, not the real world probability.</description> + <libraryFunction>itmCashProbability</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorItmAssetProbability' libraryClass='BlackCalculator'> + <description>returns the probability of being in the money in the asset martingale measure. It is a risk-neutral probability, not the real world probability.</description> + <libraryFunction>itmAssetProbability</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorStrikeSensitivity' libraryClass='BlackCalculator'> + <description>returns the sensitivity to strike.</description> + <libraryFunction>strikeSensitivity</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorAlpha' libraryClass='BlackCalculator'> + <description>returns the alpha of the internal formulation.</description> + <libraryFunction>alpha</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackCalculatorBeta' libraryClass='BlackCalculator'> + <description>returns the beta of the internal formulation.</description> + <libraryFunction>beta</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters /> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Constructor name='qlBlackCalculator'> + <libraryFunction>BlackCalculator</libraryFunction> + <SupportedPlatforms> + <Excel/> + <C/> + <Calc/> + <Guile/> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='payoffID' libraryClass='StrikedTypePayoff'> + <type>string</type> + <tensorRank>scalar</tensorRank> + <description>payoff ID</description> + </Parameter> + <Parameter name='forward' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>forward value</description> + </Parameter> + <Parameter name='stdDev' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>standard deviation, i.e. annualized percentage volatility times the square root of time to option expiry</description> + </Parameter> + <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>discount factor</description> + </Parameter> + </Parameters> + </ParameterList> + </Constructor> + + <!-- BlackScholesCalculator interface and constructor --> + <Member name='qlBlackScholesCalculatorDelta' libraryClass='BlackScholesCalculator'> + <description>returns the sensitivity to change in the underlying spot price.</description> + <libraryFunction>delta</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters/> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackScholesCalculatorElasticity' libraryClass='BlackScholesCalculator'> + <description>returns the sensitivity in percent to a percent change in the underlying spot price.</description> + <libraryFunction>elasticity</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters/> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackScholesCalculatorGamma' libraryClass='BlackScholesCalculator'> + <description>returns the second order derivative with respect to change in the underlying spot price.</description> + <libraryFunction>gamma</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters/> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackScholesCalculatorTheta' libraryClass='BlackScholesCalculator'> + <description>returns the sensitivity to time to maturity.</description> + <libraryFunction>theta</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>time to maturity in years</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Member name='qlBlackScholesCalculatorThetaPerDay' libraryClass='BlackScholesCalculator'> + <description>returns the sensitivity to time to maturity per day, assuming 365 days per year.</description> + <libraryFunction>thetaPerDay</libraryFunction> + <SupportedPlatforms> + <Excel /> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>time to maturity in years</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + + <Constructor name='qlBlackScholesCalculator'> + <libraryFunction>BlackScholesCalculator</libraryFunction> + <SupportedPlatforms> + <Excel/> + <C/> + <Calc/> + <Guile/> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='payoffID' libraryClass='StrikedTypePayoff'> + <type>string</type> + <tensorRank>scalar</tensorRank> + <description>payoff ID</description> + </Parameter> + <Parameter name='spot' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>spot value</description> + </Parameter> + <Parameter name='growth' libraryType='QuantLib::DiscountFactor' default='1.0'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>growth discount factor</description> + </Parameter> + <Parameter name='stdDev' libraryType='QuantLib::Real'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>standard deviation, i.e. annualized percentage volatility times the square root of time to option expiry</description> + </Parameter> + <Parameter name='discount' libraryType='QuantLib::Real' default='1.0'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>discount factor</description> + </Parameter> + </Parameters> + </ParameterList> + </Constructor> + + <!-- Pricing Engines --> <Constructor name='qlPricingEngine'> <libraryFunction>PricingEngine</libraryFunction> |
|
From: Ferdinando A. <na...@us...> - 2006-11-13 09:43:21
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv24846/gensrc/metadata Modified Files: interpolation.xml Log Message: Index: interpolation.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/interpolation.xml,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -d -r1.43 -r1.44 *** interpolation.xml 26 Oct 2006 17:57:44 -0000 1.43 --- interpolation.xml 13 Nov 2006 09:43:15 -0000 1.44 *************** *** 307,326 **** <description>forward</description> </Parameter> ! <Parameter name='alpha' default='QuantLib::Null<double>()'> <type>double</type> <tensorRank>scalar</tensorRank> <description>alpha (fixed value or guess)</description> </Parameter> ! <Parameter name='beta' default='QuantLib::Null<double>()'> <type>double</type> <tensorRank>scalar</tensorRank> <description>beta (fixed value or guess)</description> </Parameter> ! <Parameter name='nu' default='QuantLib::Null<double>()'> <type>double</type> <tensorRank>scalar</tensorRank> <description>nu (fixed value or guess)</description> </Parameter> ! <Parameter name='rho' default='QuantLib::Null<double>()'> <type>double</type> <tensorRank>scalar</tensorRank> --- 307,326 ---- <description>forward</description> </Parameter> ! <Parameter name='alpha' default='QuantLib::Null<QuantLib::Real>()'> <type>double</type> <tensorRank>scalar</tensorRank> <description>alpha (fixed value or guess)</description> </Parameter> ! <Parameter name='beta' default='QuantLib::Null<QuantLib::Real>()'> <type>double</type> <tensorRank>scalar</tensorRank> <description>beta (fixed value or guess)</description> </Parameter> ! <Parameter name='nu' default='QuantLib::Null<QuantLib::Real>()'> <type>double</type> <tensorRank>scalar</tensorRank> <description>nu (fixed value or guess)</description> </Parameter> ! <Parameter name='rho' default='QuantLib::Null<QuantLib::Real>()'> <type>double</type> <tensorRank>scalar</tensorRank> |
|
From: Ferdinando A. <na...@us...> - 2006-11-13 09:35:44
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21308/qlo Modified Files: enumclassctors.cpp enumclassctors.hpp payoffs.cpp payoffs.hpp typefactory.hpp Log Message: refactored Payoff class and enumeration Index: payoffs.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/payoffs.hpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** payoffs.hpp 29 Jun 2006 16:52:12 -0000 1.1 --- payoffs.hpp 13 Nov 2006 09:35:40 -0000 1.2 *************** *** 1,4 **** --- 1,5 ---- /* + Copyright (C) 2006 Ferdinando Ametrano Copyright (C) 2006 Eric Ehlers *************** *** 24,38 **** namespace QuantLibAddin { ! class StrikedTypePayoff : public ObjHandler::LibraryObject<QuantLib::StrikedTypePayoff> { public: - StrikedTypePayoff( - const std::string& payoffID, - const QuantLib::Option::Type& optionType, - const double &strike); StrikedTypePayoff( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement); }; --- 25,40 ---- namespace QuantLibAddin { ! class Payoff : public ObjHandler::LibraryObject<QuantLib::Payoff> {}; ! ! class TypePayoff : public Payoff {}; ! ! class StrikedTypePayoff : public TypePayoff { public: StrikedTypePayoff( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const QuantLib::Real strike, ! const QuantLib::Real thirdParameter); ! QuantLib::Real thirdParameter() const; }; Index: payoffs.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/payoffs.cpp,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** payoffs.cpp 29 Jun 2006 16:52:12 -0000 1.1 --- payoffs.cpp 13 Nov 2006 09:35:40 -0000 1.2 *************** *** 1,4 **** --- 1,5 ---- /* + Copyright (C) 2006 Ferdinando Ametrano Copyright (C) 2006 Eric Ehlers *************** *** 25,44 **** namespace QuantLibAddin { - StrikedTypePayoff::StrikedTypePayoff( - const std::string& payoffID, - const QuantLib::Option::Type& optionType, - const double &strike) { - libraryObject_ = Create<boost::shared_ptr<QuantLib::StrikedTypePayoff> >()( - payoffID, optionType, strike); - } - StrikedTypePayoff::StrikedTypePayoff( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement) { ! libraryObject_ = Create<boost::shared_ptr<QuantLib::StrikedTypePayoff> >()( ! payoffID, optionType, strike, strikeIncrement); } } --- 26,44 ---- namespace QuantLibAddin { StrikedTypePayoff::StrikedTypePayoff( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const QuantLib::Real strike, ! const QuantLib::Real thirdParameter) { ! if (thirdParameter==QuantLib::Null<QuantLib::Real>()) ! libraryObject_ = Create<boost::shared_ptr<QuantLib::Payoff> >()( ! payoffID, optionType, strike); ! else ! libraryObject_ = Create<boost::shared_ptr<QuantLib::Payoff> >()( ! payoffID, optionType, strike, thirdParameter); } + QuantLib::Real StrikedTypePayoff::thirdParameter() const { + return 0.0; + } } Index: enumclassctors.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.cpp,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** enumclassctors.cpp 20 Sep 2006 16:14:35 -0000 1.29 --- enumclassctors.cpp 13 Nov 2006 09:35:40 -0000 1.30 *************** *** 25,67 **** /* *** StrikedTypePayoff - strike only *** */ ! boost::shared_ptr<QuantLib::StrikedTypePayoff> VANILLA_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike) { ! return boost::shared_ptr<QuantLib::StrikedTypePayoff> ( new QuantLib::PlainVanillaPayoff(optionType, strike)); } ! boost::shared_ptr<QuantLib::StrikedTypePayoff> ASSETORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike) { ! return boost::shared_ptr<QuantLib::StrikedTypePayoff> ( new QuantLib::AssetOrNothingPayoff(optionType, strike)); } ! boost::shared_ptr<QuantLib::StrikedTypePayoff> PERCENTAGESTRIKE_Payoff( const QuantLib::Option::Type& optionType, ! const double &moneyness) { ! return boost::shared_ptr<QuantLib::StrikedTypePayoff> ( new QuantLib::PercentageStrikePayoff(optionType, moneyness)); } /* *** StrikedTypePayoff - strike & strikeIncrement *** */ ! boost::shared_ptr<QuantLib::StrikedTypePayoff> SUPERSHARE_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement) { ! return boost::shared_ptr<QuantLib::StrikedTypePayoff> ( new QuantLib::SuperSharePayoff(optionType, strike, strikeIncrement)); } ! boost::shared_ptr<QuantLib::StrikedTypePayoff> CASHORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement) { ! return boost::shared_ptr<QuantLib::StrikedTypePayoff> ( ! new QuantLib::CashOrNothingPayoff(optionType, strike, strikeIncrement)); } ! boost::shared_ptr<QuantLib::StrikedTypePayoff> GAP_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement) { ! return boost::shared_ptr<QuantLib::StrikedTypePayoff> ( ! new QuantLib::GapPayoff(optionType, strike, strikeIncrement)); } --- 25,67 ---- /* *** StrikedTypePayoff - strike only *** */ ! boost::shared_ptr<QuantLib::Payoff> VANILLA_Payoff( const QuantLib::Option::Type& optionType, ! const double strike) { ! return boost::shared_ptr<QuantLib::Payoff> ( new QuantLib::PlainVanillaPayoff(optionType, strike)); } ! boost::shared_ptr<QuantLib::Payoff> ASSETORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double strike) { ! return boost::shared_ptr<QuantLib::Payoff> ( new QuantLib::AssetOrNothingPayoff(optionType, strike)); } ! boost::shared_ptr<QuantLib::Payoff> PERCENTAGESTRIKE_Payoff( const QuantLib::Option::Type& optionType, ! const double moneyness) { ! return boost::shared_ptr<QuantLib::Payoff> ( new QuantLib::PercentageStrikePayoff(optionType, moneyness)); } /* *** StrikedTypePayoff - strike & strikeIncrement *** */ ! boost::shared_ptr<QuantLib::Payoff> SUPERSHARE_Payoff( const QuantLib::Option::Type& optionType, ! const double strike, ! const double strikeIncrement) { ! return boost::shared_ptr<QuantLib::Payoff> ( new QuantLib::SuperSharePayoff(optionType, strike, strikeIncrement)); } ! boost::shared_ptr<QuantLib::Payoff> CASHORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double strike, ! const double cashPayoff) { ! return boost::shared_ptr<QuantLib::Payoff> ( ! new QuantLib::CashOrNothingPayoff(optionType, strike, cashPayoff)); } ! boost::shared_ptr<QuantLib::Payoff> GAP_Payoff( const QuantLib::Option::Type& optionType, ! const double strike, ! const double strikePayoff) { ! return boost::shared_ptr<QuantLib::Payoff> ( ! new QuantLib::GapPayoff(optionType, strike, strikePayoff)); } Index: enumclassctors.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/enumclassctors.hpp,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** enumclassctors.hpp 20 Sep 2006 16:14:35 -0000 1.26 --- enumclassctors.hpp 13 Nov 2006 09:35:40 -0000 1.27 *************** *** 37,63 **** /* *** StrikedTypePayoff - strike only *** */ ! boost::shared_ptr<QuantLib::StrikedTypePayoff> VANILLA_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike); ! boost::shared_ptr<QuantLib::StrikedTypePayoff> ASSETORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike); ! boost::shared_ptr<QuantLib::StrikedTypePayoff> PERCENTAGESTRIKE_Payoff( const QuantLib::Option::Type& optionType, ! const double &moneyness); /* *** StrikedTypePayoff - strike & strikeIncrement *** */ ! boost::shared_ptr<QuantLib::StrikedTypePayoff> SUPERSHARE_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement); ! boost::shared_ptr<QuantLib::StrikedTypePayoff> CASHORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement); ! boost::shared_ptr<QuantLib::StrikedTypePayoff> GAP_Payoff( const QuantLib::Option::Type& optionType, ! const double &strike, ! const double &strikeIncrement); /* *** PricingEngine - timesteps ignored *** */ --- 37,63 ---- /* *** StrikedTypePayoff - strike only *** */ ! boost::shared_ptr<QuantLib::Payoff> VANILLA_Payoff( const QuantLib::Option::Type& optionType, ! const double strike); ! boost::shared_ptr<QuantLib::Payoff> ASSETORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double strike); ! boost::shared_ptr<QuantLib::Payoff> PERCENTAGESTRIKE_Payoff( const QuantLib::Option::Type& optionType, ! const double moneyness); /* *** StrikedTypePayoff - strike & strikeIncrement *** */ ! boost::shared_ptr<QuantLib::Payoff> SUPERSHARE_Payoff( const QuantLib::Option::Type& optionType, ! const double strike, ! const double strikeIncrement); ! boost::shared_ptr<QuantLib::Payoff> CASHORNOTHING_Payoff( const QuantLib::Option::Type& optionType, ! const double strike, ! const double cashPayoff); ! boost::shared_ptr<QuantLib::Payoff> GAP_Payoff( const QuantLib::Option::Type& optionType, ! const double strike, ! const double strikePayoff); /* *** PricingEngine - timesteps ignored *** */ Index: typefactory.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/typefactory.hpp,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** typefactory.hpp 4 Oct 2006 20:13:45 -0000 1.46 --- typefactory.hpp 13 Nov 2006 09:35:40 -0000 1.47 *************** *** 124,149 **** /* *** StrikedTypePayoff *** */ ! typedef boost::shared_ptr<QuantLib::StrikedTypePayoff>(*StrikedTypePayoffConstructor1)( ! const QuantLib::Option::Type&, const double&); ! typedef boost::shared_ptr<QuantLib::StrikedTypePayoff>(*StrikedTypePayoffConstructor2)( ! const QuantLib::Option::Type&, const double&, const double&); template<> ! class Create<boost::shared_ptr<QuantLib::StrikedTypePayoff> > : ! private RegistryManager<QuantLib::StrikedTypePayoff, EnumClassRegistry> { public: ! boost::shared_ptr<QuantLib::StrikedTypePayoff> operator()( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const double& strike) { StrikedTypePayoffConstructor1 strikedTypePayoffConstructor = (StrikedTypePayoffConstructor1)(getType(payoffID)); return strikedTypePayoffConstructor(optionType, strike); } ! boost::shared_ptr<QuantLib::StrikedTypePayoff> operator()( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const double& strike, ! const double& strikeIncrement) { StrikedTypePayoffConstructor2 strikedTypePayoffConstructor = (StrikedTypePayoffConstructor2)(getType(payoffID)); --- 124,149 ---- /* *** StrikedTypePayoff *** */ ! typedef boost::shared_ptr<QuantLib::Payoff>(*StrikedTypePayoffConstructor1)( ! const QuantLib::Option::Type&, const double); ! typedef boost::shared_ptr<QuantLib::Payoff>(*StrikedTypePayoffConstructor2)( ! const QuantLib::Option::Type&, const double, const double); template<> ! class Create<boost::shared_ptr<QuantLib::Payoff> > : ! private RegistryManager<QuantLib::Payoff, EnumClassRegistry> { public: ! boost::shared_ptr<QuantLib::Payoff> operator()( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const double strike) { StrikedTypePayoffConstructor1 strikedTypePayoffConstructor = (StrikedTypePayoffConstructor1)(getType(payoffID)); return strikedTypePayoffConstructor(optionType, strike); } ! boost::shared_ptr<QuantLib::Payoff> operator()( const std::string& payoffID, const QuantLib::Option::Type& optionType, ! const double strike, ! const double strikeIncrement) { StrikedTypePayoffConstructor2 strikedTypePayoffConstructor = (StrikedTypePayoffConstructor2)(getType(payoffID)); |
|
From: Ferdinando A. <na...@us...> - 2006-11-13 09:33:47
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv20459/qlo Modified Files: pricingengines.cpp pricingengines.hpp Log Message: exported BlackCalculator and BlackScholesCalculator Index: pricingengines.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/pricingengines.cpp,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** pricingengines.cpp 23 Oct 2006 08:37:22 -0000 1.10 --- pricingengines.cpp 13 Nov 2006 09:33:44 -0000 1.11 *************** *** 18,21 **** --- 18,22 ---- #include <qlo/pricingengines.hpp> #include <qlo/typefactory.hpp> + #include <ql/PricingEngines/blackscholescalculator.hpp> namespace QuantLibAddin { *************** *** 70,73 **** --- 71,97 ---- } + BlackCalculator::BlackCalculator( + const boost::shared_ptr<QuantLib::StrikedTypePayoff>& payoff, + QuantLib::Real forward, + QuantLib::Real stdDev, + QuantLib::DiscountFactor discount) { + libraryObject_ = boost::shared_ptr<QuantLib::BlackCalculator>(new + QuantLib::BlackCalculator(payoff, forward, stdDev, discount)); + } + + BlackScholesCalculator::BlackScholesCalculator( + const boost::shared_ptr<QuantLib::StrikedTypePayoff>& payoff, + QuantLib::Real spot, + QuantLib::DiscountFactor growth, + QuantLib::Real stdDev, + QuantLib::DiscountFactor discount) + { + QL_REQUIRE(discount>0.0, "discount must be greater than zero: " << + discount << " not allowed"); + libraryObject_ = boost::shared_ptr<QuantLib::BlackCalculator>(new + QuantLib::BlackScholesCalculator(payoff, spot, growth, stdDev, + discount)); + } + } Index: pricingengines.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/pricingengines.hpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** pricingengines.hpp 23 Oct 2006 08:37:22 -0000 1.9 --- pricingengines.hpp 13 Nov 2006 09:33:44 -0000 1.10 *************** *** 22,25 **** --- 22,26 ---- #include <oh/objhandler.hpp> #include <ql/pricingengine.hpp> + #include <ql/PricingEngines/blackcalculator.hpp> #include <ql/PricingEngines/Swaption/blackswaptionengine.hpp> #include <ql/PricingEngines/CapFloor/blackcapfloorengine.hpp> *************** *** 58,61 **** --- 59,82 ---- }; + class BlackCalculator : public ObjHandler::LibraryObject<QuantLib::BlackCalculator> { + public: + BlackCalculator( + const boost::shared_ptr<QuantLib::StrikedTypePayoff>& payoff, + QuantLib::Real forward, + QuantLib::Real variance, + QuantLib::DiscountFactor discount); + protected: + BlackCalculator() {} + }; + + class BlackScholesCalculator : public BlackCalculator { + public: + BlackScholesCalculator( + const boost::shared_ptr<QuantLib::StrikedTypePayoff>& payoff, + QuantLib::Real spot, + QuantLib::DiscountFactor growth, + QuantLib::Real variance, + QuantLib::DiscountFactor discount); + }; } |
|
From: Ferdinando A. <na...@us...> - 2006-11-13 09:30:27
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv18618/qlo Modified Files: marketmodels.cpp marketmodels.hpp Log Message: switching to new CurveState constructor and methods Index: marketmodels.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.hpp,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** marketmodels.hpp 10 Nov 2006 17:59:25 -0000 1.25 --- marketmodels.hpp 13 Nov 2006 09:30:19 -0000 1.26 *************** *** 88,92 **** class CurveState : public ObjHandler::LibraryObject<QuantLib::CurveState> { public: ! CurveState(const std::vector<QuantLib::Time>& rateTimes); }; --- 88,97 ---- class CurveState : public ObjHandler::LibraryObject<QuantLib::CurveState> { public: ! template <class ForwardIterator> ! CurveState(ForwardIterator begin, ForwardIterator end) { ! libraryObject_ = boost::shared_ptr<QuantLib::CurveState>(new ! QuantLib::CurveState(begin, end)); ! } ! }; Index: marketmodels.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.cpp,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** marketmodels.cpp 10 Nov 2006 17:59:25 -0000 1.28 --- marketmodels.cpp 13 Nov 2006 09:30:19 -0000 1.29 *************** *** 97,106 **** } - CurveState::CurveState(const std::vector<QuantLib::Time>& rateTimes) - { - libraryObject_ = boost::shared_ptr<QuantLib::CurveState>( - new QuantLib::CurveState(rateTimes)); - } - DriftCalculator::DriftCalculator(const QuantLib::Matrix& pseudo, const std::vector<QuantLib::Rate>& displacements, --- 97,100 ---- |
|
From: Ferdinando A. <na...@us...> - 2006-11-10 17:59:31
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv23006/qlo Modified Files: marketmodels.cpp marketmodels.hpp Log Message: using Payoff to generalize from caplet to optionlet (cap, floor, digital, etc) Index: marketmodels.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.hpp,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** marketmodels.hpp 7 Nov 2006 20:21:27 -0000 1.24 --- marketmodels.hpp 10 Nov 2006 17:59:25 -0000 1.25 *************** *** 20,23 **** --- 20,25 ---- #include <oh/objhandler.hpp> + + #include <ql/Instruments/payoffs.hpp> #include <ql/MarketModels/accountingengine.hpp> #include <ql/MarketModels/marketmodel.hpp> *************** *** 28,33 **** #include <ql/MarketModels/browniangenerator.hpp> #include <ql/MarketModels/marketmodelevolver.hpp> - #include <ql/MarketModels/Products/OneStep/onestepforwards.hpp> - #include <ql/MarketModels/Products/OneStep/onestepcaplets.hpp> #include <ql/MarketModels/Models/expcorrabcdvol.hpp> --- 30,33 ---- *************** *** 131,140 **** }; ! class OneStepCaplets : public MarketModelMultiProduct { ! public: ! OneStepCaplets(const std::vector<QuantLib::Time>& rateTimes, ! const std::vector<QuantLib::Real>& accruals, ! const std::vector<QuantLib::Time>& paymentTimes, ! const std::vector<QuantLib::Rate>& strikes); }; --- 131,141 ---- }; ! class OneStepOptionlets : public MarketModelMultiProduct { ! public: ! OneStepOptionlets( ! const std::vector<QuantLib::Time>& rateTimes, ! const std::vector<QuantLib::Real>& accruals, ! const std::vector<QuantLib::Time>& paymentTimes, ! const std::vector<boost::shared_ptr<QuantLib::Payoff> >&); }; Index: marketmodels.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.cpp,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** marketmodels.cpp 7 Nov 2006 20:21:27 -0000 1.27 --- marketmodels.cpp 10 Nov 2006 17:59:25 -0000 1.28 *************** *** 26,29 **** --- 26,31 ---- #include <ql/MarketModels/Evolvers/forwardratepcevolver.hpp> #include <ql/MarketModels/Evolvers/forwardrateipcevolver.hpp> + #include <ql/MarketModels/Products/OneStep/onestepforwards.hpp> + #include <ql/MarketModels/Products/OneStep/onestepoptionlets.hpp> namespace QuantLibAddin { *************** *** 174,185 **** } ! OneStepCaplets::OneStepCaplets(const std::vector<QuantLib::Time>& rateTimes, ! const std::vector<QuantLib::Real>& accruals, ! const std::vector<QuantLib::Time>& paymentTimes, ! const std::vector<QuantLib::Rate>& strikes) { ! libraryObject_ = boost::shared_ptr<QuantLib::MarketModelMultiProduct>( ! new QuantLib::OneStepCaplets(rateTimes, accruals, ! paymentTimes, strikes)); } --- 176,189 ---- } ! OneStepOptionlets::OneStepOptionlets( ! const std::vector<QuantLib::Time>& rateTimes, ! const std::vector<QuantLib::Real>& accruals, ! const std::vector<QuantLib::Time>& paymentTimes, ! const std::vector<boost::shared_ptr<QuantLib::Payoff> >& payoffs) { ! libraryObject_ = ! boost::shared_ptr<QuantLib::MarketModelMultiProduct>(new ! QuantLib::OneStepOptionlets( ! rateTimes, accruals, paymentTimes, payoffs)); } |
|
From: Ferdinando A. <na...@us...> - 2006-11-10 17:59:28
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv23006/gensrc/metadata Modified Files: marketmodels.xml Log Message: using Payoff to generalize from caplet to optionlet (cap, floor, digital, etc) Index: marketmodels.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/marketmodels.xml,v retrieving revision 1.55 retrieving revision 1.56 diff -C2 -d -r1.55 -r1.56 *** marketmodels.xml 9 Nov 2006 17:32:53 -0000 1.55 --- marketmodels.xml 10 Nov 2006 17:59:25 -0000 1.56 *************** *** 102,107 **** </Constructor> ! <Constructor name='qlMarketModelOneStepCaplets'> ! <libraryFunction>OneStepCaplets</libraryFunction> <functionCategory>QuantLib</functionCategory> <SupportedPlatforms> --- 102,107 ---- </Constructor> ! <!--<Constructor name='qlMarketModelOneStepOptionlets'> ! <libraryFunction>OneStepOptionlets</libraryFunction> <functionCategory>QuantLib</functionCategory> <SupportedPlatforms> *************** *** 125,136 **** <description>payment times of the product</description> </Parameter> ! <Parameter name='strikes' libraryType='QuantLib::Rate'> ! <type>double</type> <tensorRank>vector</tensorRank> ! <description>forward strikes</description> </Parameter> </Parameters> </ParameterList> ! </Constructor> <!-- EvolutionDescription class interface and costructor --> --- 125,136 ---- <description>payment times of the product</description> </Parameter> ! <Parameter name='payoffIDs' libraryClass='Payoff'> ! <type>string</type> <tensorRank>vector</tensorRank> ! <description>ID of striked type payoff objects</description> </Parameter> </Parameters> </ParameterList> ! </Constructor>--> <!-- EvolutionDescription class interface and costructor --> |
|
From: Ferdinando A. <na...@us...> - 2006-11-10 17:59:23
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22951/gensrc/metadata Modified Files: pricingengines.xml Log Message: removed duplicated functions Index: pricingengines.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/pricingengines.xml,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** pricingengines.xml 2 Nov 2006 20:18:42 -0000 1.26 --- pricingengines.xml 10 Nov 2006 17:59:14 -0000 1.27 *************** *** 201,286 **** </Procedure> - <Procedure name='qlBachelierBlackPutFormula'> - <description>Undiscounted Black style put formula when forward is normal rather than log-normal, i.e. essentially the model of Bachelier.</description> - <alias>QuantLib::bachelierBlackPut</alias> - <SupportedPlatforms> - <Excel/> - </SupportedPlatforms> - <ParameterList> - <Parameters> - <Parameter name='strike'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>option strike</description> - </Parameter> - <Parameter name='forward'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>underlying forward value</description> - </Parameter> - <Parameter name='absoluteVolatility' libraryType='QuantLib::Volatility'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>annualized ABSOLUTE volatility</description> - </Parameter> - <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>time to maturity in years</description> - </Parameter> - <Parameter name='annuity' default='1.0'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>annuity</description> - </Parameter> - </Parameters> - </ParameterList> - <ReturnValue> - <type>double</type> - <tensorRank>scalar</tensorRank> - </ReturnValue> - </Procedure> - - <Procedure name='qlBachelierBlackCallFormula'> - <description>Undiscounted Black style call formula when forward is normal rather than log-normal, i.e. essentially the model of Bachelier.</description> - <alias>QuantLib::bachelierBlackCall</alias> - <SupportedPlatforms> - <Excel/> - </SupportedPlatforms> - <ParameterList> - <Parameters> - <Parameter name='strike'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>option strike</description> - </Parameter> - <Parameter name='forward'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>underlying forward value</description> - </Parameter> - <Parameter name='absoluteVolatility' libraryType='QuantLib::Volatility'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>annualized ABSOLUTE volatility</description> - </Parameter> - <Parameter name='timeToMaturity' libraryType='QuantLib::Time'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>time to maturity in years</description> - </Parameter> - <Parameter name='annuity' default='1.0'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>annuity</description> - </Parameter> - </Parameters> - </ParameterList> - <ReturnValue> - <type>double</type> - <tensorRank>scalar</tensorRank> - </ReturnValue> - </Procedure> - <Constructor name='qlPricingEngine'> <libraryFunction>PricingEngine</libraryFunction> --- 201,204 ---- |
|
From: Ferdinando A. <na...@us...> - 2006-11-09 18:02:20
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv14060/gensrc/metadata Modified Files: utilities.xml Log Message: exported isInSubset Index: utilities.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/utilities.xml,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** utilities.xml 8 Nov 2006 17:27:55 -0000 1.17 --- utilities.xml 9 Nov 2006 18:02:15 -0000 1.18 *************** *** 116,120 **** <Procedure name='qlIsInSubset'> ! <description>Looks for elements of a set in a reference set. Returns a vector of booleans such that: element set[i] present/not present in the reference set.</description> <alias>QuantLib::isInSubset</alias> <SupportedPlatforms> --- 116,120 ---- <Procedure name='qlIsInSubset'> ! <description>Looks for elements of a set in a subset. Returns a vector of present/not present booleans, one for each element of the set.</description> <alias>QuantLib::isInSubset</alias> <SupportedPlatforms> *************** *** 129,136 **** <description>set</description> </Parameter> ! <Parameter name='referenceSet' libraryType='QuantLib::Time'> <type>double</type> <tensorRank>vector</tensorRank> ! <description>reference Set</description> </Parameter> </Parameters> --- 129,136 ---- <description>set</description> </Parameter> ! <Parameter name='subset' libraryType='QuantLib::Time'> <type>double</type> <tensorRank>vector</tensorRank> ! <description>subset</description> </Parameter> </Parameters> |
|
From: Ferdinando A. <na...@us...> - 2006-11-09 17:33:02
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv700/gensrc/metadata Modified Files: marketmodels.xml Log Message: Mark Joshi's 5th week, day 2 Index: marketmodels.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/marketmodels.xml,v retrieving revision 1.54 retrieving revision 1.55 diff -C2 -d -r1.54 -r1.55 *** marketmodels.xml 7 Nov 2006 20:21:27 -0000 1.54 --- marketmodels.xml 9 Nov 2006 17:32:53 -0000 1.55 *************** *** 5,8 **** --- 5,9 ---- <includes> <include>ql/MarketModels/swapforwardconversionmatrix.hpp</include> + <include>ql/MarketModels/swapforwardmappings.hpp</include> <include>ql/MarketModels/curvestate.hpp</include> <include>qlo/optimization.hpp</include> *************** *** 602,605 **** --- 603,672 ---- </Constructor> + <Constructor name='qlExpCorrAbcdVol'> + <libraryFunction>ExpCorrAbcdVol</libraryFunction> + <SupportedPlatforms> + <Excel/> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='a'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>the a coefficient in the abcd vol parametrization</description> + </Parameter> + <Parameter name='b'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>the b coefficient in the abcd vol parametrization</description> + </Parameter> + <Parameter name='c'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>the c coefficient in the abcd vol parametrization</description> + </Parameter> + <Parameter name='d'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>the d coefficient in the abcd vol parametrization</description> + </Parameter> + <Parameter name='ks'> + <type>double</type> + <tensorRank>vector</tensorRank> + <description>K_i adjustment factors in the abcd vol parametrization</description> + </Parameter> + <Parameter name='LongTermCorr'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>Long term correlation L in rho=L+(1-L)*exp(-beta*abs(Ti-Tj))</description> + </Parameter> + <Parameter name='beta'> + <type>double</type> + <tensorRank>scalar</tensorRank> + <description>beta in rho=L+(1-L)*exp(-beta*abs(Ti-Tj))</description> + </Parameter> + <Parameter name='evolutionDescription' underlyingClass='EvolutionDescription'> + <type>string</type> + <tensorRank>scalar</tensorRank> + <description>EvolutionDescription object</description> + </Parameter> + <Parameter name='Factors'> + <type>long</type> + <tensorRank>scalar</tensorRank> + <description>number of factors to be retained in the simulation</description> + </Parameter> + <Parameter name='initialRates' libraryType='QuantLib::Rate'> + <type>double</type> + <tensorRank>vector</tensorRank> + <description>initial rates</description> + </Parameter> + <Parameter name='displacements' libraryType='QuantLib::Spread'> + <type>double</type> + <tensorRank>vector</tensorRank> + <description>displacements</description> + </Parameter> + </Parameters> + </ParameterList> + </Constructor> + <!-- Abcd Volatility --> *************** *** 1086,1155 **** </Constructor> - <Constructor name='qlExpCorrAbcdVol'> - <libraryFunction>ExpCorrAbcdVol</libraryFunction> - <SupportedPlatforms> - <Excel/> - </SupportedPlatforms> - <ParameterList> - <Parameters> - <Parameter name='a'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>the a coefficient in the abcd vol parametrization</description> - </Parameter> - <Parameter name='b'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>the b coefficient in the abcd vol parametrization</description> - </Parameter> - <Parameter name='c'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>the c coefficient in the abcd vol parametrization</description> - </Parameter> - <Parameter name='d'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>the d coefficient in the abcd vol parametrization</description> - </Parameter> - <Parameter name='ks'> - <type>double</type> - <tensorRank>vector</tensorRank> - <description>K_i adjustment factors in the abcd vol parametrization</description> - </Parameter> - <Parameter name='LongTermCorr'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>Long term correlation L in rho=L+(1-L)*exp(-beta*abs(Ti-Tj))</description> - </Parameter> - <Parameter name='beta'> - <type>double</type> - <tensorRank>scalar</tensorRank> - <description>beta in rho=L+(1-L)*exp(-beta*abs(Ti-Tj))</description> - </Parameter> - <Parameter name='evolutionDescription' underlyingClass='EvolutionDescription'> - <type>string</type> - <tensorRank>scalar</tensorRank> - <description>EvolutionDescription object</description> - </Parameter> - <Parameter name='Factors'> - <type>long</type> - <tensorRank>scalar</tensorRank> - <description>number of factors to be retained in the simulation</description> - </Parameter> - <Parameter name='initialRates' libraryType='QuantLib::Rate'> - <type>double</type> - <tensorRank>vector</tensorRank> - <description>initial rates</description> - </Parameter> - <Parameter name='displacements' libraryType='QuantLib::Spread'> - <type>double</type> - <tensorRank>vector</tensorRank> - <description>displacements</description> - </Parameter> - </Parameters> - </ParameterList> - </Constructor> - <!-- SwapForwardConversionMatrix class constructor and interfaces --> --- 1153,1156 ---- *************** *** 1205,1211 **** </Member> ! <!--Procedure name='qlSwapForwardJacobian'> ! <description>return the Jacobian between swap and forward rates</description> ! <alias>swapForwardJacobian</alias> <functionCategory>QuantLib</functionCategory> <SupportedPlatforms> --- 1206,1234 ---- </Member> ! <Procedure name='qlCoterminalSwapForwardJacobian'> ! <description>Returns the jacobian between coterminal swap rates and forward rates</description> ! <alias>QuantLib::SwapForwardMappings::coterminalSwapForwardJacobian</alias> ! <functionCategory>QuantLib</functionCategory> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='curveState' underlyingClass='CurveState'> ! <type>string</type> ! <tensorRank>scalar</tensorRank> ! <description>CurveState object ID</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Matrix'> ! <type>double</type> ! <tensorRank>matrix</tensorRank> ! </ReturnValue> ! </Procedure> ! ! <Procedure name='qlCoterminalSwapZedMatrix'> ! <description>Returns the Z matrix to switch base from forward to coterminal swap rates</description> ! <alias>QuantLib::SwapForwardMappings::coterminalSwapZedMatrix</alias> <functionCategory>QuantLib</functionCategory> <SupportedPlatforms> *************** *** 1217,1221 **** <type>string</type> <tensorRank>scalar</tensorRank> ! <description>ID of CurveState object</description> </Parameter> </Parameters> --- 1240,1249 ---- <type>string</type> <tensorRank>scalar</tensorRank> ! <description>CurveState object ID</description> ! </Parameter> ! <Parameter name='dispacement' libraryType='QuantLib::Spread'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>displacement spread</description> </Parameter> </Parameters> *************** *** 1225,1229 **** <tensorRank>matrix</tensorRank> </ReturnValue> ! </Procedure--> <!-- CurveState class interfaces and costructor --> --- 1253,1257 ---- <tensorRank>matrix</tensorRank> </ReturnValue> ! </Procedure> <!-- CurveState class interfaces and costructor --> |
|
From: Eric E. <eri...@us...> - 2006-11-08 23:12:09
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv4766/qlo Modified Files: conversions.hpp Log Message: reformat error message Index: conversions.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/conversions.hpp,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** conversions.hpp 7 Nov 2006 14:26:06 -0000 1.19 --- conversions.hpp 8 Nov 2006 12:56:44 -0000 1.20 *************** *** 64,70 **** std::ostringstream msg; msg << "error retrieving object with id '" << id ! << "' from repository - this object could be converted neither " ! << " to " << std::endl << " " << typeid(QuantLib::Handle<qlClass>).name() ! << " nor " << std::endl << " " << typeid(qloClass).name(); throw ObjHandler::Exception(msg.str()); } --- 64,71 ---- std::ostringstream msg; msg << "error retrieving object with id '" << id ! << "' from repository - this object could be converted neither to" ! << std::endl << " " << typeid(QuantLib::Handle<qlClass>).name() ! << std::endl << "nor" ! << std::endl << " " << typeid(qloClass).name(); throw ObjHandler::Exception(msg.str()); } |
|
From: Ferdinando A. <na...@us...> - 2006-11-08 17:31:32
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26146/qlo Modified Files: couponvectors.cpp couponvectors.hpp Log Message: exported qlCashFlowStreamAtmRate Index: couponvectors.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/couponvectors.hpp,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** couponvectors.hpp 18 Oct 2006 20:11:37 -0000 1.27 --- couponvectors.hpp 8 Nov 2006 17:31:25 -0000 1.28 *************** *** 35,38 **** --- 35,39 ---- QuantLib::Real npv(const QuantLib::Handle<QuantLib::YieldTermStructure>&) const; QuantLib::Real bps(const QuantLib::Handle<QuantLib::YieldTermStructure>&) const; + QuantLib::Rate atmRate(const QuantLib::Handle<QuantLib::YieldTermStructure>&) const; std::vector<std::vector<boost::any> > analysis() const; const Leg& getVector(); Index: couponvectors.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/couponvectors.cpp,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** couponvectors.cpp 6 Nov 2006 10:28:06 -0000 1.39 --- couponvectors.cpp 8 Nov 2006 17:31:25 -0000 1.40 *************** *** 34,45 **** namespace QuantLibAddin { ! double CashFlowStream::npv(const QuantLib::Handle< QuantLib::YieldTermStructure>& hYTS) const { return QuantLib::Cashflows::bps(cashFlowVector_, hYTS); } ! double CashFlowStream::bps(const QuantLib::Handle< QuantLib::YieldTermStructure>& hYTS) const { return QuantLib::Cashflows::bps(cashFlowVector_, hYTS); } std::vector<std::vector<boost::any> > CashFlowStream::analysis() const { return flowAnalysis(cashFlowVector_); --- 34,49 ---- namespace QuantLibAddin { ! QuantLib::Real CashFlowStream::npv(const QuantLib::Handle< QuantLib::YieldTermStructure>& hYTS) const { return QuantLib::Cashflows::bps(cashFlowVector_, hYTS); } ! QuantLib::Real CashFlowStream::bps(const QuantLib::Handle< QuantLib::YieldTermStructure>& hYTS) const { return QuantLib::Cashflows::bps(cashFlowVector_, hYTS); } + QuantLib::Rate CashFlowStream::atmRate(const QuantLib::Handle< QuantLib::YieldTermStructure>& hYTS) const { + return QuantLib::Cashflows::atmRate(cashFlowVector_, hYTS); + } + std::vector<std::vector<boost::any> > CashFlowStream::analysis() const { return flowAnalysis(cashFlowVector_); |
|
From: Ferdinando A. <na...@us...> - 2006-11-08 17:31:30
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26146/gensrc/metadata Modified Files: couponvectors.xml Log Message: exported qlCashFlowStreamAtmRate Index: couponvectors.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/couponvectors.xml,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** couponvectors.xml 7 Nov 2006 15:39:19 -0000 1.42 --- couponvectors.xml 8 Nov 2006 17:31:25 -0000 1.43 *************** *** 372,375 **** --- 372,396 ---- </Member> + <Member name='qlCashFlowStreamAtmRate' objectClass='CashFlowStream'> + <description>returns the at-the-money rate of the CashFlowStream Object, i.e. the fixed rate for which an equivalent vector of fixed-rate cash flows has the same NPV.</description> + <libraryFunction>atmRate</libraryFunction> + <SupportedPlatforms> + <Excel/> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='termStructureID' libToHandle='YieldTermStructure'> + <type>string</type> + <tensorRank>scalar</tensorRank> + <description>discounting term structure</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue libraryType='QuantLib::Rate'> + <type>double</type> + <tensorRank>scalar</tensorRank> + </ReturnValue> + </Member> + <Member name='qlCashFlowStreamAnalysis' objectClass='CashFlowStream'> <description>return coupon details</description> |
|
From: Ferdinando A. <na...@us...> - 2006-11-08 17:28:01
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv24413/gensrc/metadata Modified Files: utilities.xml Log Message: added qlIsInSubset Index: utilities.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/utilities.xml,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** utilities.xml 26 Oct 2006 08:49:29 -0000 1.16 --- utilities.xml 8 Nov 2006 17:27:55 -0000 1.17 *************** *** 3,7 **** --- 3,12 ---- <displayName>Utilities</displayName> <xlFunctionWizardCategory>QuantLib - Financial</xlFunctionWizardCategory> + <includes> + <include>qlo/utilities.hpp</include> + <include>ql/MarketModels/utilities.hpp</include> + </includes> <copyright> + Copyright (C) 2006 Ferdinando Ametrano Copyright (C) 2005 Plamen Neykov Copyright (C) 2004, 2005, 2006 Eric Ehlers *************** *** 110,113 **** --- 115,145 ---- </Procedure> + <Procedure name='qlIsInSubset'> + <description>Looks for elements of a set in a reference set. Returns a vector of booleans such that: element set[i] present/not present in the reference set.</description> + <alias>QuantLib::isInSubset</alias> + <SupportedPlatforms> + <Excel/> + <Calc/> + </SupportedPlatforms> + <ParameterList> + <Parameters> + <Parameter name='set' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>vector</tensorRank> + <description>set</description> + </Parameter> + <Parameter name='referenceSet' libraryType='QuantLib::Time'> + <type>double</type> + <tensorRank>vector</tensorRank> + <description>reference Set</description> + </Parameter> + </Parameters> + </ParameterList> + <ReturnValue> + <type>bool</type> + <tensorRank>vector</tensorRank> + </ReturnValue> + </Procedure> + </Functions> </Category> |
|
From: Marco B. <mar...@us...> - 2006-11-07 20:21:34
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv12162/gensrc/metadata Modified Files: marketmodels.xml Log Message: Work in progress on SwapCovarianceApproximator. test to be finished swapCovarianceMatrix exported to QlAddin Index: marketmodels.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/marketmodels.xml,v retrieving revision 1.53 retrieving revision 1.54 diff -C2 -d -r1.53 -r1.54 *** marketmodels.xml 6 Nov 2006 16:46:34 -0000 1.53 --- marketmodels.xml 7 Nov 2006 20:21:27 -0000 1.54 *************** *** 414,418 **** </Constructor> ! <!-- MarketModel base class interface --> <Member name='qlMarketModelInitialRates' libraryClass='MarketModel'> --- 414,418 ---- </Constructor> ! <!-- MarketModel base class interfaces --> <Member name='qlMarketModelInitialRates' libraryClass='MarketModel'> *************** *** 1152,1158 **** </Constructor> ! <!-- SwapForwardConversionMatrix class interface and constructor --> ! <!--Constructor name='qlSwapCovarianceApproximator'> <libraryFunction>SwapCovarianceApproximator</libraryFunction> <SupportedPlatforms> --- 1152,1158 ---- </Constructor> ! <!-- SwapForwardConversionMatrix class constructor and interfaces --> ! <Constructor name='qlSwapCovarianceApproximator'> <libraryFunction>SwapCovarianceApproximator</libraryFunction> <SupportedPlatforms> *************** *** 1169,1183 **** <type>long</type> <tensorRank>scalar</tensorRank> ! <description>Index of expiry date</description> </Parameter> <Parameter name='maturity' libraryType='QuantLib::Size'> <type>long</type> <tensorRank>scalar</tensorRank> ! <description>Index of maturity date</description> </Parameter> <Parameter name='displacement' libraryType='QuantLib::Spread'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>displacement (one single value)</description> </Parameter> <Parameter name='forwardCovarianceMatrix' libraryType='QuantLib::Matrix'> --- 1169,1183 ---- <type>long</type> <tensorRank>scalar</tensorRank> ! <description>Index of first expiry date</description> </Parameter> <Parameter name='maturity' libraryType='QuantLib::Size'> <type>long</type> <tensorRank>scalar</tensorRank> ! <description>Index of last maturity date</description> </Parameter> <Parameter name='displacement' libraryType='QuantLib::Spread'> <type>double</type> <tensorRank>scalar</tensorRank> ! <description>Swap rate displacement (one single value)</description> </Parameter> <Parameter name='forwardCovarianceMatrix' libraryType='QuantLib::Matrix'> *************** *** 1188,1194 **** </Parameters> </ParameterList> ! </Constructor--> ! <!-- CurveState class interface and costructor --> <!--Procedure name='qlSwapForwardJacobian'> --- 1188,1207 ---- </Parameters> </ParameterList> ! </Constructor> ! <Member name='qlSwapCovarianceApproximatorSwapCovarianceMatrix' objectClass='SwapCovarianceApproximator'> ! <description>Given the forward covariance matrix, it returns the approximated swap covariance matrix corresponding to the (sub)set of coterminal swaps between expiry and maturity.</description> ! <libraryFunction>swapCovarianceMatrix</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters/> ! </ParameterList> ! <ReturnValue libraryType='QuantLib::Matrix'> ! <type>double</type> ! <tensorRank>matrix</tensorRank> ! </ReturnValue> ! </Member> <!--Procedure name='qlSwapForwardJacobian'> *************** *** 1214,1217 **** --- 1227,1232 ---- </Procedure--> + <!-- CurveState class interfaces and costructor --> + <Member name='qlCurveStateRateTimes' libraryClass='CurveState'> <description>return the rate times of the CurveState object</description> *************** *** 1422,1426 **** </Constructor> ! <!-- DriftCalculator class interface and constructor --> <Member name='qlDriftCalculatorComputePlain' objectClass='DriftCalculator'> --- 1437,1477 ---- </Constructor> ! <!-- DriftCalculator class constructor and interfaces --> ! ! <Constructor name='qlDriftCalculator'> ! <libraryFunction>DriftCalculator</libraryFunction> ! <SupportedPlatforms> ! <Excel/> ! </SupportedPlatforms> ! <ParameterList> ! <Parameters> ! <Parameter name='pseudo_square_root' libraryType='QuantLib::Matrix'> ! <type>double</type> ! <tensorRank>matrix</tensorRank> ! <description>Pseudo square root of the covariance matrix</description> ! </Parameter> ! <Parameter name='displacements' libraryType='QuantLib::Spread'> ! <type>double</type> ! <tensorRank>vector</tensorRank> ! <description>displacements</description> ! </Parameter> ! <Parameter name='taus' libraryType='QuantLib::Time'> ! <type>double</type> ! <tensorRank>vector</tensorRank> ! <description>taus</description> ! </Parameter> ! <Parameter name='numeraire' libraryType='QuantLib::Size'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>numeraire</description> ! </Parameter> ! <Parameter name='alive' libraryType='QuantLib::Size'> ! <type>long</type> ! <tensorRank>scalar</tensorRank> ! <description>index of the first rates still alive</description> ! </Parameter> ! </Parameters> ! </ParameterList> ! </Constructor> <Member name='qlDriftCalculatorComputePlain' objectClass='DriftCalculator'> *************** *** 1466,1505 **** </Member> - <Constructor name='qlDriftCalculator'> - <libraryFunction>DriftCalculator</libraryFunction> - <SupportedPlatforms> - <Excel/> - </SupportedPlatforms> - <ParameterList> - <Parameters> - <Parameter name='pseudo_square_root' libraryType='QuantLib::Matrix'> - <type>double</type> - <tensorRank>matrix</tensorRank> - <description>Pseudo square root of the covariance matrix</description> - </Parameter> - <Parameter name='displacements' libraryType='QuantLib::Spread'> - <type>double</type> - <tensorRank>vector</tensorRank> - <description>displacements</description> - </Parameter> - <Parameter name='taus' libraryType='QuantLib::Time'> - <type>double</type> - <tensorRank>vector</tensorRank> - <description>taus</description> - </Parameter> - <Parameter name='numeraire' libraryType='QuantLib::Size'> - <type>long</type> - <tensorRank>scalar</tensorRank> - <description>numeraire</description> - </Parameter> - <Parameter name='alive' libraryType='QuantLib::Size'> - <type>long</type> - <tensorRank>scalar</tensorRank> - <description>index of the first rates still alive</description> - </Parameter> - </Parameters> - </ParameterList> - </Constructor> - <!-- BrownianGeneratorFactory derived classes constructors --> --- 1517,1520 ---- |
|
From: Marco B. <mar...@us...> - 2006-11-07 20:21:31
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv12162/qlo Modified Files: marketmodels.cpp marketmodels.hpp Log Message: Work in progress on SwapCovarianceApproximator. test to be finished swapCovarianceMatrix exported to QlAddin Index: marketmodels.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.hpp,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** marketmodels.hpp 6 Nov 2006 16:46:39 -0000 1.23 --- marketmodels.hpp 7 Nov 2006 20:21:27 -0000 1.24 *************** *** 106,119 **** }; ! // class SwapCovarianceApproximator : public ObjHandler::LibraryObject< ! // QuantLib::SwapCovarianceApproximator> { ! // public: ! // SwapCovarianceApproximator(const QuantLib::CurveState& initialCurveState, ! // QuantLib::Size expiry, ! // QuantLib::Size maturity, ! // QuantLib::Spread displacement, ! // const QuantLib::Matrix& forwardCovarianceMatrix); ! //QuantLib::Disposable<Matrix> swapCovarianceMatrix(); ! // }; class MarketModelMultiProduct : public ObjHandler::LibraryObject< --- 106,119 ---- }; ! class SwapCovarianceApproximator : public ObjHandler::LibraryObject< ! QuantLib::SwapCovarianceApproximator> { ! public: ! SwapCovarianceApproximator(const QuantLib::CurveState& initialCurveState, ! QuantLib::Size expiry, ! QuantLib::Size maturity, ! QuantLib::Spread displacement, ! const QuantLib::Matrix& forwardCovarianceMatrix); ! QuantLib::Disposable<QuantLib::Matrix> swapCovarianceMatrix(); ! }; class MarketModelMultiProduct : public ObjHandler::LibraryObject< Index: marketmodels.cpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.cpp,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** marketmodels.cpp 6 Nov 2006 16:46:39 -0000 1.26 --- marketmodels.cpp 7 Nov 2006 20:21:27 -0000 1.27 *************** *** 55,64 **** libraryObject_ = boost::shared_ptr<QuantLib::MarketModel>( new QuantLib::ExpCorrFlatVol(longTermCorr, ! beta, ! volatilities, ! evolution, ! numberOfFactors, ! initialRates, ! displacements)); } --- 55,64 ---- libraryObject_ = boost::shared_ptr<QuantLib::MarketModel>( new QuantLib::ExpCorrFlatVol(longTermCorr, ! beta, ! volatilities, ! evolution, ! numberOfFactors, ! initialRates, ! displacements)); } *************** *** 127,149 **** } ! //SwapCovarianceApproximator::SwapCovarianceApproximator( ! // const QuantLib::CurveState& initialCurveState, ! // QuantLib::Size expiry, ! // QuantLib::Size maturity, ! // QuantLib::Spread displacement, ! // const QuantLib::Matrix& forwardCovarianceMatrix) ! //: size_(taus.size()) ! //{ ! // libraryObject_ = boost::shared_ptr<QuantLib::SwapCovarianceApproximator>( ! // new QuantLib::SwapCovarianceApproximator( ! // initialCurveState, expiry,maturity, displacement, ! // forwardCovarianceMatrix)); ! //} ! //QuantLib::Disposable<Matrix> SwapCovarianceApproximator::swapCovarianceMatrix() ! // { ! // libraryObject_->compute(forwards, results); ! // return results; ! //} OneStepForwards::OneStepForwards( --- 127,149 ---- } ! SwapCovarianceApproximator::SwapCovarianceApproximator( ! const QuantLib::CurveState& initialCurveState, ! QuantLib::Size expiry, ! QuantLib::Size maturity, ! QuantLib::Spread displacement, ! const QuantLib::Matrix& forwardCovarianceMatrix) ! { ! libraryObject_ = boost::shared_ptr<QuantLib::SwapCovarianceApproximator>( ! new QuantLib::SwapCovarianceApproximator( ! initialCurveState, expiry,maturity, displacement, ! forwardCovarianceMatrix)); ! } ! QuantLib::Disposable<QuantLib::Matrix> SwapCovarianceApproximator::swapCovarianceMatrix() ! { ! QuantLib::Matrix result; ! libraryObject_->swapCovarianceMatrix(); ! return result; ! } OneStepForwards::OneStepForwards( *************** *** 155,159 **** libraryObject_ = boost::shared_ptr<QuantLib::MarketModelMultiProduct>( new QuantLib::OneStepForwards(rateTimes, accruals, ! paymentTimes, strikes)); } --- 155,159 ---- libraryObject_ = boost::shared_ptr<QuantLib::MarketModelMultiProduct>( new QuantLib::OneStepForwards(rateTimes, accruals, ! paymentTimes, strikes)); } |
|
From: Ferdinando A. <na...@us...> - 2006-11-07 15:39:23
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22400/gensrc/metadata Modified Files: cmsmarket.xml couponvectors.xml enumtypes.xml swap.xml Log Message: proper capitalization of the YieldCurveModel enumeration Index: enumtypes.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/enumtypes.xml,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** enumtypes.xml 30 Oct 2006 16:59:20 -0000 1.27 --- enumtypes.xml 7 Nov 2006 15:39:19 -0000 1.28 *************** *** 1148,1165 **** <EnumerationDefinitions> <EnumerationDefinition> ! <string>standard</string> ! <value>QuantLib::GFunctionFactory::standard</value> </EnumerationDefinition> <EnumerationDefinition> ! <string>exactYield</string> ! <value>QuantLib::GFunctionFactory::exactYield</value> </EnumerationDefinition> <EnumerationDefinition> ! <string>parallelShifts</string> ! <value>QuantLib::GFunctionFactory::parallelShifts</value> </EnumerationDefinition> <EnumerationDefinition> ! <string>nonParallelShifts</string> ! <value>QuantLib::GFunctionFactory::nonParallelShifts</value> </EnumerationDefinition> </EnumerationDefinitions> --- 1148,1165 ---- <EnumerationDefinitions> <EnumerationDefinition> ! <string>Standard</string> ! <value>QuantLib::GFunctionFactory::Standard</value> </EnumerationDefinition> <EnumerationDefinition> ! <string>ExactYield</string> ! <value>QuantLib::GFunctionFactory::ExactYield</value> </EnumerationDefinition> <EnumerationDefinition> ! <string>ParallelShifts</string> ! <value>QuantLib::GFunctionFactory::ParallelShifts</value> </EnumerationDefinition> <EnumerationDefinition> ! <string>NonParallelShifts</string> ! <value>QuantLib::GFunctionFactory::NonParallelShifts</value> </EnumerationDefinition> </EnumerationDefinitions> Index: swap.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/swap.xml,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** swap.xml 6 Nov 2006 10:29:41 -0000 1.34 --- swap.xml 7 Nov 2006 15:39:19 -0000 1.35 *************** *** 104,108 **** <type>string</type> <tensorRank>scalar</tensorRank> ! <description>yield curve model for convexity adjustment (e.g standard, exactYield, parallelShifts, nonParallelShifts)</description> </Parameter> <Parameter name='meanReversion'> --- 104,108 ---- <type>string</type> <tensorRank>scalar</tensorRank> ! <description>yield curve model for convexity adjustment (e.g Standard, ExactYield, ParallelShifts, NonParallelShifts)</description> </Parameter> <Parameter name='meanReversion'> Index: couponvectors.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/couponvectors.xml,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** couponvectors.xml 6 Nov 2006 09:13:10 -0000 1.41 --- couponvectors.xml 7 Nov 2006 15:39:19 -0000 1.42 *************** *** 162,166 **** <type>string</type> <tensorRank>scalar</tensorRank> ! <description>yield curve model for convexity adjustment (e.g standard, exactYield, parallelShifts, nonParallelShifts)</description> </Parameter> </Parameters> --- 162,166 ---- <type>string</type> <tensorRank>scalar</tensorRank> ! <description>yield curve model for convexity adjustment (e.g Standard, ExactYield, ParallelShifts, NonParallelShifts)</description> </Parameter> </Parameters> *************** *** 243,247 **** <type>string</type> <tensorRank>scalar</tensorRank> ! <description>model Of YieldCurve (e.g standard, exactYield, parallelShifts, nonParallelShifts)</description> </Parameter> </Parameters> --- 243,247 ---- <type>string</type> <tensorRank>scalar</tensorRank> ! <description>model Of YieldCurve (e.g Standard, ExactYield, ParallelShifts, NonParallelShifts)</description> </Parameter> </Parameters> *************** *** 324,328 **** <type>string</type> <tensorRank>scalar</tensorRank> ! <description>model Of YieldCurve (e.g standard, exactYield, parallelShifts, nonParallelShifts)</description> </Parameter> </Parameters> --- 324,328 ---- <type>string</type> <tensorRank>scalar</tensorRank> ! <description>model Of YieldCurve (e.g Standard, ExactYield, ParallelShifts, NonParallelShifts)</description> </Parameter> </Parameters> Index: cmsmarket.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/cmsmarket.xml,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** cmsmarket.xml 2 Nov 2006 14:45:25 -0000 1.12 --- cmsmarket.xml 7 Nov 2006 15:39:19 -0000 1.13 *************** *** 61,65 **** <type>string</type> <tensorRank>scalar</tensorRank> ! <description>model Of YieldCurve (e.g standard, exactYield, parallelShifts, nonParallelShifts)</description> </Parameter> </Parameters> --- 61,65 ---- <type>string</type> <tensorRank>scalar</tensorRank> ! <description>model Of YieldCurve (e.g Standard, ExactYield, ParallelShifts, NonParallelShifts)</description> </Parameter> </Parameters> |
|
From: Ferdinando A. <na...@us...> - 2006-11-07 14:59:40
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv4451/gensrc/metadata Modified Files: swaptionvolstructure.xml Log Message: switching to handleToLib WHY IT HAS BEEN DONE FOR volatility() AND NOT FOR THE OTHER METHODS??????? Index: swaptionvolstructure.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/swaptionvolstructure.xml,v retrieving revision 1.74 retrieving revision 1.75 diff -C2 -d -r1.74 -r1.75 *** swaptionvolstructure.xml 2 Nov 2006 13:45:20 -0000 1.74 --- swaptionvolstructure.xml 7 Nov 2006 14:59:30 -0000 1.75 *************** *** 55,59 **** <!--Member name='qlSwaptionVTSBlackVariance' libraryClass='SwaptionVolatilityStructure' loopParameter='strike'--> ! <Member name='qlSwaptionVTSBlackVariance' libraryClass='SwaptionVolatilityStructure'> <description>Returns a vector of black volatilities corresponding to a vector of strikes for a given exercise date.</description> <libraryFunction>blackVariance</libraryFunction> --- 55,59 ---- <!--Member name='qlSwaptionVTSBlackVariance' libraryClass='SwaptionVolatilityStructure' loopParameter='strike'--> ! <Member name='qlSwaptionVTSBlackVariance' handleToLib='SwaptionVolatilityStructure'> <description>Returns a vector of black volatilities corresponding to a vector of strikes for a given exercise date.</description> <libraryFunction>blackVariance</libraryFunction> *************** *** 91,95 **** </Member> ! <Member name='qlSwaptionVTSMaxExpiry' libraryClass='SwaptionVolatilityStructure'> <description>Returns the latest start date for which the term structure can return vols.</description> <libraryFunction>maxStartDate</libraryFunction> --- 91,95 ---- </Member> ! <Member name='qlSwaptionVTSMaxExpiry' handleToLib='SwaptionVolatilityStructure'> <description>Returns the latest start date for which the term structure can return vols.</description> <libraryFunction>maxStartDate</libraryFunction> *************** *** 106,110 **** </Member> ! <Member name='qlSwaptionVTSMaxSwapLength' libraryClass='SwaptionVolatilityStructure'> <description>Returns the largest length for which the term structure can return vols.</description> <libraryFunction>maxLength</libraryFunction> --- 106,110 ---- </Member> ! <Member name='qlSwaptionVTSMaxSwapLength' handleToLib='SwaptionVolatilityStructure'> <description>Returns the largest length for which the term structure can return vols.</description> <libraryFunction>maxLength</libraryFunction> *************** *** 121,125 **** </Member> ! <Member name='qlSwaptionVTSMinStrike' libraryClass='SwaptionVolatilityStructure'> <description>Returns the minimum strike for which the term structure can return vols.</description> <libraryFunction>minStrike</libraryFunction> --- 121,125 ---- </Member> ! <Member name='qlSwaptionVTSMinStrike' handleToLib='SwaptionVolatilityStructure'> <description>Returns the minimum strike for which the term structure can return vols.</description> <libraryFunction>minStrike</libraryFunction> *************** *** 136,140 **** </Member> ! <Member name='qlSwaptionVTSMaxStrike' libraryClass='SwaptionVolatilityStructure'> <description>Returns the maximum strike for which the term structure can return vols.</description> <libraryFunction>maxStrike</libraryFunction> --- 136,140 ---- </Member> ! <Member name='qlSwaptionVTSMaxStrike' handleToLib='SwaptionVolatilityStructure'> <description>Returns the maximum strike for which the term structure can return vols.</description> <libraryFunction>maxStrike</libraryFunction> |
|
From: Eric E. <eri...@us...> - 2006-11-07 14:26:13
|
Update of /cvsroot/quantlibaddin/QuantLibAddin In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22051 Modified Files: todo.eric.csv Log Message: handleToLib - add support for an additional dynamic cast for cases where the requested reference is not the same class as the original Index: todo.eric.csv =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/todo.eric.csv,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** todo.eric.csv 6 Nov 2006 09:23:34 -0000 1.5 --- todo.eric.csv 7 Nov 2006 14:26:06 -0000 1.6 *************** *** 1,62 **** ! "project","subproject","task","status","priority","days","comp date","comment" ! "QLXL","Framework","separate QuantLibXL.xla into multiple modules with loader facility",,2,,, ! "QLA","Launcher","cleaner IPC between launcher & framework","in progress",2,,, ! "QLA","General Support","NSIS scripts for network installations",,2,,, ! "QLA","Design","additional dynamic cast in handleToLib for qlTermStructureReferenceDate() etc.",,2,,, ! "OH","Design","volatile functions - allow user to specify in function metadata",,2,,, ! "QLA","Design","add support to take a QL object, wrap it in a QLA object, and store it in the OH repository","done?",4,,, ! "gensrc","Design","remove platform-specific configuration/code from core gensrc app",,2,2,, ! "OH","Design","refactor OH / OHXL implementation",,1,,, ! "QLA","Design","right-click enumerations: implement proper design using hidden sheet",,2,1,, ! "QLA","Design","enumeration aliases - map multiple strings to single enum value","in progress",2,1,, ! "QLA","Design","#include fewer headers to speed compilation",,2,2,,"re-enable optimization, investigate precompiled headers, /Zm flag" ! "QLA","General Support","performance profile of workbook YieldCurveMonitor.xls",,2,2,, ! "gensrc","Design","return std::pair (see locate in swaptionvolmatrix)",,3,1,, ! "all","General Support","migrate QLA/QLXL SourceForge projects back into QL",,3,"- -",,"request deletion of old QLA/QLXL repositories" ! "OH","Design","update design doc",,3,2,, ! "QLA","gensrc","Provide schema for XML",,3,2,, ! "OH","Design","ohDemoObject(parameter1, parameter2) to create an empty object for demo purposes",,4,,, ! "OH","Design","Object to hold reference to CallingRange so we can support Object->isOrphaned() etc.",,4,,, ! "QLA","Design","use Excel SmartTags to allow interrogation of objects",,4,,, ! "QLA","Docs","include more info in autogenerated docs: enumeration, default value, platform, loop",,4,,, ! "QLA","Documentation","segregate documentation for QLA / QLXL / OH",,4,,, ! "QLA","Enumerations","wizard: when enums are inputs add optional description suffixed with generic description taken from enum metadata",,4,,, ! "QLA","Enumerations","wizard: suffix description with loop, default parameter, optional parameter, etc information",,4,,, ! "QLA","General Support","C++ examples - add VOs, NPV calculations",,4,,, ! "QLA","gensrc","replace Serializer class with Reader class since we will never DeSerialize anything",,4,,, ! "QLA","VBA framework","interrogate object repository (GUI browser)",,4,,,"Plamen?" ! "OH","Design","""reflection"" - support member functions dynamically",,5,,, ! "OH","Design","allow objects to be grouped",,5,,, ! ,,,,,,, ! "QLA","Design","Sessions: instead of using workbook as session, allow user to specify session number",,5,,, ! "QLA","Enumerations","add support for description e.g. Nullcalendar, DayCounter::NoFrequency, DayCounter::Simple","?",5,,, ! "QLA","General Support","calculate memory usage of repository",,5,,, ! "QLA","ValueObjects","dynamic properties e.g. ohMember(""instanceName"", ""NPV"", ...) replaces qlNPV(""instanceName"")",,5,,, ! "QLA","VBA framework","access logfile (GUI browser)",,5,,, ! ,,,,,,, ! ,,,,,,, ! "QLA","Enumerations","port ET/EC registry from QuantLibXL to ObjectHandler","on hold",5,,,"requires redesign to allow multiple XLLs to share global Registry" ! "QLA","VBA framework","design for real-time live feed","on hold",3,,, ! "QLA","Enumerations","enumeration as return value (string) should be same as the input value Period, DayCounter","on hold",3,,,"already done by Ferdinando?" ! "?","?","move stub.enum.types out of GenSrc into QLA",,4,,,"this is part of larger task 'remove QL code from core gensrc app'" ! "QLA","VBA framework","menu options to load/unload XLL/XLA implement as toggle","cancelled",4,,, ! "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?" --- 1,62 ---- ! project,subproject,task,status,priority,days,comp date,comment ! QLA,Design,"add support to take a QL object, wrap it in a QLA object, and store it in the OH repository",done?,4,,, ! OH,Design,refactor OH / OHXL implementation,,1,,, ! QLXL,Framework,separate QuantLibXL.xla into multiple modules with loader facility,,2,,, ! QLA,General Support,NSIS scripts for network installations,,2,,, ! OH,Design,volatile functions - allow user to specify in function metadata,,2,,, ! gensrc,Design,remove platform-specific configuration/code from core gensrc app,,2,2,, ! QLA,Design,right-click enumerations: implement proper design using hidden sheet,,2,1,, ! QLA,Design,enumeration aliases - map multiple strings to single enum value,in progress,2,1,, ! QLA,Design,#include fewer headers to speed compilation,,2,2,,"re-enable optimization, investigate precompiled headers, /Zm flag" ! QLA,General Support,performance profile of workbook YieldCurveMonitor.xls,,2,2,, ! gensrc,Design,return std::pair (see locate in swaptionvolmatrix),,3,1,, ! all,General Support,migrate QLA/QLXL SourceForge projects back into QL,,3,- -,,request deletion of old QLA/QLXL repositories ! OH,Design,update design doc,,3,2,, ! QLA,gensrc,Provide schema for XML,,3,2,, ! OH,Design,"ohDemoObject(parameter1, parameter2) to create an empty object for demo purposes",,4,,, ! OH,Design,Object to hold reference to CallingRange so we can support Object->isOrphaned() etc.,,4,,, ! QLA,Design,use Excel SmartTags to allow interrogation of objects,,4,,, ! QLA,Docs,"include more info in autogenerated docs: enumeration, default value, platform, loop",,4,,, ! QLA,Documentation,segregate documentation for QLA / QLXL / OH,,4,,, ! QLA,Enumerations,wizard: when enums are inputs add optional description suffixed with generic description taken from enum metadata,,4,,, ! QLA,Enumerations,"wizard: suffix description with loop, default parameter, optional parameter, etc information",,4,,, ! QLA,General Support,"C++ examples - add VOs, NPV calculations",,4,,, ! QLA,gensrc,replace Serializer class with Reader class since we will never DeSerialize anything,,4,,, ! QLA,VBA framework,interrogate object repository (GUI browser),,4,,,Plamen? ! OH,Design,"""reflection"" - support member functions dynamically",,5,,, ! OH,Design,allow objects to be grouped,,5,,, ! ! QLA,Design,"Sessions: instead of using workbook as session, allow user to specify session number",,5,,, ! QLA,Enumerations,"add support for description e.g. Nullcalendar, DayCounter::NoFrequency, DayCounter::Simple",?,5,,, ! QLA,General Support,calculate memory usage of repository,,5,,, ! QLA,ValueObjects,"dynamic properties e.g. ohMember(""instanceName"", ""NPV"", ...) replaces qlNPV(""instanceName"")",,5,,, ! QLA,VBA framework,access logfile (GUI browser),,5,,, ! ! ! QLA,Enumerations,port ET/EC registry from QuantLibXL to ObjectHandler,on hold,5,,,requires redesign to allow multiple XLLs to share global Registry ! QLA,VBA framework,design for real-time live feed,on hold,3,,, ! QLA,Enumerations,"enumeration as return value (string) should be same as the input value Period, DayCounter",on hold,3,,,already done by Ferdinando? ! ?,?,move stub.enum.types out of GenSrc into QLA,,4,,,this is part of larger task 'remove QL code from core gensrc app' ! QLA,VBA framework,menu options to load/unload XLL/XLA implement as toggle,cancelled,4,,, ! 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? ! QLA,Launcher,cleaner IPC between launcher & framework,done,2,,, ! QLA,Design,additional dynamic cast in handleToLib for qlTermStructureReferenceDate() etc.,done,2,,, |
|
From: Eric E. <eri...@us...> - 2006-11-07 14:26:13
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22051/qlo Modified Files: conversions.hpp Log Message: handleToLib - add support for an additional dynamic cast for cases where the requested reference is not the same class as the original Index: conversions.hpp =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/conversions.hpp,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** conversions.hpp 30 Oct 2006 10:30:57 -0000 1.18 --- conversions.hpp 7 Nov 2006 14:26:06 -0000 1.19 *************** *** 77,93 **** // 3) Otherwise the Object is of an unexpected class so raise an exception ! template <class qlClass, class qloClass> inline boost::shared_ptr<qlClass> handleToLib(const std::string &id) { OH_GET_OBJECT(objectPointer, id, ObjHandler::Object) ! boost::shared_ptr<QuantLibAddin::Handle<qlClass> > handlePointer = ! boost::dynamic_pointer_cast<QuantLibAddin::Handle<qlClass> >(objectPointer); if (handlePointer) { ! return handlePointer->getHandle().currentLink(); } else { boost::shared_ptr<qloClass> qloPointer = boost::dynamic_pointer_cast<qloClass>(objectPointer); - if (qloPointer) { boost::shared_ptr<qlClass> ret; --- 77,113 ---- // 3) Otherwise the Object is of an unexpected class so raise an exception ! template <class qlClass2, class qlClass, class qloClass> inline boost::shared_ptr<qlClass> handleToLib(const std::string &id) { OH_GET_OBJECT(objectPointer, id, ObjHandler::Object) ! boost::shared_ptr<QuantLibAddin::Handle<qlClass2> > handlePointer = ! boost::dynamic_pointer_cast<QuantLibAddin::Handle<qlClass2> >(objectPointer); if (handlePointer) { ! boost::shared_ptr<qlClass2> qlPointer2 = ! handlePointer->getHandle().currentLink(); ! if (!qlPointer2) { ! std::ostringstream msg; ! msg << "error retrieving object with id '" << id ! << "' from repository - unable to retrieve reference " ! << "contained in handle"; ! throw ObjHandler::Exception(msg.str()); ! } ! boost::shared_ptr<qlClass> qlPointer1 = ! boost::dynamic_pointer_cast<qlClass>(qlPointer2); ! if (qlPointer1) ! return qlPointer1; ! else { ! std::ostringstream msg; ! msg << "error retrieving object with id '" << id ! << "' from repository - unable to convert class from " ! << " " << typeid(qlClass2).name() ! << std::endl << " to " ! << " " << typeid(qlClass).name(); ! throw ObjHandler::Exception(msg.str()); ! } } else { boost::shared_ptr<qloClass> qloPointer = boost::dynamic_pointer_cast<qloClass>(objectPointer); if (qloPointer) { boost::shared_ptr<qlClass> ret; |
|
From: Eric E. <eri...@us...> - 2006-11-07 14:26:10
|
Update of /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22051/gensrc/metadata Modified Files: termstructures.xml Log Message: handleToLib - add support for an additional dynamic cast for cases where the requested reference is not the same class as the original Index: termstructures.xml =================================================================== RCS file: /cvsroot/quantlibaddin/QuantLibAddin/gensrc/metadata/termstructures.xml,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** termstructures.xml 31 Oct 2006 18:47:52 -0000 1.46 --- termstructures.xml 7 Nov 2006 14:26:06 -0000 1.47 *************** *** 12,16 **** <!-- TermStructure interface --> ! <Member name='qlTermStructureReferenceDate' handleToLib='TermStructure'> <description>Returns the reference date for the given TermStructure object</description> <libraryFunction>referenceDate</libraryFunction> --- 12,16 ---- <!-- TermStructure interface --> ! <Member name='qlTermStructureReferenceDate' handleToLib='TermStructure' handleToLib2='YieldTermStructure'> <description>Returns the reference date for the given TermStructure object</description> <libraryFunction>referenceDate</libraryFunction> *************** *** 27,31 **** </Member> ! <Member name='qlTermStructureCalendar' handleToLib='TermStructure'> <description>Returns the calendar used by the given TermStructure object</description> <libraryFunction>calendar</libraryFunction> --- 27,31 ---- </Member> ! <Member name='qlTermStructureCalendar' handleToLib='TermStructure' handleToLib2='YieldTermStructure'> <description>Returns the calendar used by the given TermStructure object</description> <libraryFunction>calendar</libraryFunction> *************** *** 42,46 **** </Member> ! <Member name='qlTermStructureMaxDate' handleToLib='TermStructure'> <description>Returns the max date for the given TermStructure object</description> <libraryFunction>maxDate</libraryFunction> --- 42,46 ---- </Member> ! <Member name='qlTermStructureMaxDate' handleToLib='TermStructure' handleToLib2='YieldTermStructure'> <description>Returns the max date for the given TermStructure object</description> <libraryFunction>maxDate</libraryFunction> *************** *** 57,61 **** </Member> ! <Member name='qlTermStructureDayCounter' handleToLib='TermStructure'> <description>Returns the DayCounter used by the given TermStructure object</description> <libraryFunction>dayCounter</libraryFunction> --- 57,61 ---- </Member> ! <Member name='qlTermStructureDayCounter' handleToLib='TermStructure' handleToLib2='YieldTermStructure'> <description>Returns the DayCounter used by the given TermStructure object</description> <libraryFunction>dayCounter</libraryFunction> |