You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(17) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(23) |
| 2002 |
Jan
(18) |
Feb
(20) |
Mar
(22) |
Apr
(41) |
May
(28) |
Jun
(25) |
Jul
(10) |
Aug
(7) |
Sep
(5) |
Oct
(20) |
Nov
(13) |
Dec
(11) |
| 2003 |
Jan
(28) |
Feb
(5) |
Mar
(6) |
Apr
(5) |
May
(17) |
Jun
(6) |
Jul
(45) |
Aug
(35) |
Sep
(24) |
Oct
(50) |
Nov
(53) |
Dec
(6) |
| 2004 |
Jan
(4) |
Feb
(10) |
Mar
(52) |
Apr
(46) |
May
(8) |
Jun
(25) |
Jul
(12) |
Aug
(6) |
Sep
(8) |
Oct
(8) |
Nov
(9) |
Dec
(7) |
| 2005 |
Jan
(18) |
Feb
(60) |
Mar
(19) |
Apr
(26) |
May
(14) |
Jun
(27) |
Jul
(8) |
Aug
(15) |
Sep
(19) |
Oct
(53) |
Nov
(20) |
Dec
(23) |
| 2006 |
Jan
(16) |
Feb
(27) |
Mar
(33) |
Apr
(51) |
May
(36) |
Jun
(25) |
Jul
(54) |
Aug
(30) |
Sep
(25) |
Oct
(67) |
Nov
(43) |
Dec
(13) |
| 2007 |
Jan
(23) |
Feb
(27) |
Mar
(55) |
Apr
(79) |
May
(60) |
Jun
(66) |
Jul
(46) |
Aug
(30) |
Sep
(90) |
Oct
(49) |
Nov
(85) |
Dec
(74) |
| 2008 |
Jan
(68) |
Feb
(59) |
Mar
(64) |
Apr
(28) |
May
(66) |
Jun
(35) |
Jul
(73) |
Aug
(76) |
Sep
(65) |
Oct
(46) |
Nov
(41) |
Dec
(19) |
| 2009 |
Jan
(46) |
Feb
(90) |
Mar
(51) |
Apr
(104) |
May
(13) |
Jun
(24) |
Jul
(20) |
Aug
(39) |
Sep
(109) |
Oct
(101) |
Nov
(117) |
Dec
(57) |
| 2010 |
Jan
(55) |
Feb
(42) |
Mar
(39) |
Apr
(22) |
May
(33) |
Jun
(41) |
Jul
(25) |
Aug
(52) |
Sep
(75) |
Oct
(60) |
Nov
(62) |
Dec
(52) |
| 2011 |
Jan
(70) |
Feb
(31) |
Mar
(26) |
Apr
(28) |
May
(17) |
Jun
(38) |
Jul
(51) |
Aug
(35) |
Sep
(27) |
Oct
(35) |
Nov
(10) |
Dec
(20) |
| 2012 |
Jan
(21) |
Feb
(29) |
Mar
(13) |
Apr
(37) |
May
(33) |
Jun
(12) |
Jul
(34) |
Aug
(27) |
Sep
(29) |
Oct
(35) |
Nov
(58) |
Dec
(27) |
| 2013 |
Jan
(27) |
Feb
(16) |
Mar
(40) |
Apr
(16) |
May
(34) |
Jun
(37) |
Jul
(6) |
Aug
(3) |
Sep
(4) |
Oct
(49) |
Nov
(13) |
Dec
(12) |
| 2014 |
Jan
(15) |
Feb
(21) |
Mar
(11) |
Apr
(13) |
May
(27) |
Jun
(60) |
Jul
(19) |
Aug
(29) |
Sep
(20) |
Oct
(28) |
Nov
(41) |
Dec
(15) |
| 2015 |
Jan
(33) |
Feb
(29) |
Mar
(26) |
Apr
(17) |
May
(2) |
Jun
(13) |
Jul
(21) |
Aug
(30) |
Sep
(22) |
Oct
(15) |
Nov
(46) |
Dec
(20) |
| 2016 |
Jan
(6) |
Feb
(5) |
Mar
(9) |
Apr
(15) |
May
(9) |
Jun
(4) |
Jul
(3) |
Aug
(4) |
Sep
(39) |
Oct
(8) |
Nov
(5) |
Dec
(8) |
| 2017 |
Jan
(4) |
Feb
(14) |
Mar
(4) |
Apr
(16) |
May
(5) |
Jun
(10) |
Jul
(25) |
Aug
(2) |
Sep
(5) |
Oct
(11) |
Nov
(8) |
Dec
(11) |
| 2018 |
Jan
(7) |
Feb
(4) |
Mar
|
Apr
(1) |
May
(4) |
Jun
(21) |
Jul
(8) |
Aug
(3) |
Sep
(2) |
Oct
(2) |
Nov
(1) |
Dec
|
| 2019 |
Jan
(1) |
Feb
(5) |
Mar
(18) |
Apr
(9) |
May
(5) |
Jun
(21) |
Jul
(25) |
Aug
(25) |
Sep
(4) |
Oct
(2) |
Nov
(2) |
Dec
(5) |
| 2020 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
(2) |
Jun
(2) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
(2) |
Nov
(6) |
Dec
|
| 2021 |
Jan
(1) |
Feb
|
Mar
(2) |
Apr
(1) |
May
(4) |
Jun
|
Jul
(1) |
Aug
|
Sep
(2) |
Oct
(9) |
Nov
(1) |
Dec
(5) |
| 2022 |
Jan
(7) |
Feb
(3) |
Mar
|
Apr
(2) |
May
(5) |
Jun
(3) |
Jul
(3) |
Aug
(3) |
Sep
(3) |
Oct
(14) |
Nov
|
Dec
(1) |
| 2023 |
Jan
(10) |
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
(2) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(5) |
Nov
|
Dec
|
| 2024 |
Jan
(8) |
Feb
|
Mar
(2) |
Apr
(1) |
May
|
Jun
|
Jul
(4) |
Aug
(5) |
Sep
|
Oct
(4) |
Nov
(1) |
Dec
(1) |
| 2025 |
Jan
(3) |
Feb
(2) |
Mar
(2) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2026 |
Jan
(1) |
Feb
(12) |
Mar
|
Apr
(2) |
May
(8) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Luigi B. <lui...@gm...> - 2014-03-18 10:20:33
|
Hi Dirk,
it's not FixedRateBondHelper that is deprecated; it's just that
particular constructor of FittedBondDiscountCurve, which takes a
vector<shared_ptr<FixedRateBondHelper>> and now is superseded by the
one that takes a more general vector<shared_ptr<BondHelper>>.
You should be able to fix your code simply by changing the type of the
vector you're passing.
Luigi
On Mon, Mar 17, 2014 at 12:24 AM, Dirk Eddelbuettel <ed...@de...> wrote:
>
> RQuantLib has a bonds.cpp example which is pretty much a transcription of
> Bonds.cpp example in QL itself. When I build this now, I get a lot of line
> noise about the deprecated FixedRateBondHelper:
>
> bonds.cpp: In function 'SEXPREC* FittedBondCurve(SEXP, SEXP, SEXP, SEXP, SEXP)':
> bonds.cpp:1242:88: warning: 'QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve(QuantLib::Natural, const QuantLib::Calendar&, const std::vector<boost::shared_ptr<QuantLib::FixedRateBondHelper> >&, const QuantLib::DayCounter&, const QuantLib::FittedBondDiscountCurve::FittingMethod&, QuantLib::Real, QuantLib::Size, const QuantLib::Array&, QuantLib::Real)' is deprecated (declared at /usr/include/ql/termstructures/yield/fittedbonddiscountcurve.hpp:115) [-Wdeprecated-declarations]
> dc, exponentialSplines, tolerance, max));
> ^
> bonds.cpp:1251:92: warning: 'QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve(QuantLib::Natural, const QuantLib::Calendar&, const std::vector<boost::shared_ptr<QuantLib::FixedRateBondHelper> >&, const QuantLib::DayCounter&, const QuantLib::FittedBondDiscountCurve::FittingMethod&, QuantLib::Real, QuantLib::Size, const QuantLib::Array&, QuantLib::Real)' is deprecated (declared at /usr/include/ql/termstructures/yield/fittedbonddiscountcurve.hpp:115) [-Wdeprecated-declarations]
> simplePolynomial, tolerance, max));
> ^
> bonds.cpp:1259:88: warning: 'QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve(QuantLib::Natural, const QuantLib::Calendar&, const std::vector<boost::shared_ptr<QuantLib::FixedRateBondHelper> >&, const QuantLib::DayCounter&, const QuantLib::FittedBondDiscountCurve::FittingMethod&, QuantLib::Real, QuantLib::Size, const QuantLib::Array&, QuantLib::Real)' is deprecated (declared at /usr/include/ql/termstructures/yield/fittedbonddiscountcurve.hpp:115) [-Wdeprecated-declarations]
> nelsonSiegel, tolerance, max));
> ^
>
> I poked around a little and must admit that I didn't immediately see how to
> fix that.
>
> Could someone wave the cluebat my way? I'd be happy to fix Bonds.cpp along
> with what I need to update in RQuantLib.
>
> Thanks!
>
> Dirk
>
> --
> Dirk Eddelbuettel | ed...@de... | http://dirk.eddelbuettel.com
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/13534_NeoTech
> _______________________________________________
> QuantLib-dev mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>
|
|
From: Dirk E. <ed...@de...> - 2014-03-16 23:37:52
|
RQuantLib has a bonds.cpp example which is pretty much a transcription of
Bonds.cpp example in QL itself. When I build this now, I get a lot of line
noise about the deprecated FixedRateBondHelper:
bonds.cpp: In function ‘SEXPREC* FittedBondCurve(SEXP, SEXP, SEXP, SEXP, SEXP)’:
bonds.cpp:1242:88: warning: ‘QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve(QuantLib::Natural, const QuantLib::Calendar&, const std::vector<boost::shared_ptr<QuantLib::FixedRateBondHelper> >&, const QuantLib::DayCounter&, const QuantLib::FittedBondDiscountCurve::FittingMethod&, QuantLib::Real, QuantLib::Size, const QuantLib::Array&, QuantLib::Real)’ is deprecated (declared at /usr/include/ql/termstructures/yield/fittedbonddiscountcurve.hpp:115) [-Wdeprecated-declarations]
dc, exponentialSplines, tolerance, max));
^
bonds.cpp:1251:92: warning: ‘QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve(QuantLib::Natural, const QuantLib::Calendar&, const std::vector<boost::shared_ptr<QuantLib::FixedRateBondHelper> >&, const QuantLib::DayCounter&, const QuantLib::FittedBondDiscountCurve::FittingMethod&, QuantLib::Real, QuantLib::Size, const QuantLib::Array&, QuantLib::Real)’ is deprecated (declared at /usr/include/ql/termstructures/yield/fittedbonddiscountcurve.hpp:115) [-Wdeprecated-declarations]
simplePolynomial, tolerance, max));
^
bonds.cpp:1259:88: warning: ‘QuantLib::FittedBondDiscountCurve::FittedBondDiscountCurve(QuantLib::Natural, const QuantLib::Calendar&, const std::vector<boost::shared_ptr<QuantLib::FixedRateBondHelper> >&, const QuantLib::DayCounter&, const QuantLib::FittedBondDiscountCurve::FittingMethod&, QuantLib::Real, QuantLib::Size, const QuantLib::Array&, QuantLib::Real)’ is deprecated (declared at /usr/include/ql/termstructures/yield/fittedbonddiscountcurve.hpp:115) [-Wdeprecated-declarations]
nelsonSiegel, tolerance, max));
^
I poked around a little and must admit that I didn't immediately see how to
fix that.
Could someone wave the cluebat my way? I'd be happy to fix Bonds.cpp along
with what I need to update in RQuantLib.
Thanks!
Dirk
--
Dirk Eddelbuettel | ed...@de... | http://dirk.eddelbuettel.com
|
|
From: Felix L. <ee...@ya...> - 2014-03-13 10:07:40
|
Hi Luigi, OK let me attach the code first and then send you the pull request later. I've also modified the following SWIG interface files to support my java code: 1. quantlib.i: add (directors="1") to enable the directors feature 2. randomnumbers.i: add PseudoRandomMT class 3. montecarlo.i: add PathGeneratorPseudoRandom, PathPricerPath and MonteCarloModelSingleVariatePseudoRandom classes BTW, I added "%include <boost_shared_ptr.i>" into montecarlo.i, but then a warning pop out when generating swig wrapper because the name "shared_ptr" crashes with the one defined in "common.i". Anyway it won't affect the compilation. Felix ________________________________ From: Luigi Ballabio <lui...@gm...> To: Felix Lee <ee...@ya...> Cc: "Qua...@li..." <Qua...@li...> Sent: Wednesday, March 12, 2014 6:27 PM Subject: Re: [Quantlib-dev] Rewrite DiscreteHedging.java Hi Felix, posting the code here would work, but if you're familiar with GitHub it's more convenient to send me a pull request. Later, Luigi On Tue, Mar 11, 2014 at 5:32 PM, Felix Lee <ee...@ya...> wrote: > Hi all, > > I'm new to QuantLib and I'm interested to use it for some trading platform > development in java. > > To get familiar with it, I decided to rewrite the example > DiscreteHedging.java > > I used different approach to rewrite this example, by using SWIG director > feature to achieve the PathPricer call back function, and use SWIG > "boost_shared_ptr.i" to wrap the boost::shared_ptr<> object in > MonteCarloModel class. > > After a few days of trial and error, finally I manage to get my code compile > and run correctly. And my code could run a bit faster than the current code > in QuantLib-SWIG-1.4/Java/examples/DiscreteHedging.java. In my old laptop, > it took 44sec to complete in the current code, but 28sec in my code. > > I'd like to post my code for sharing, and see if any interest to use it in > the next release version of QuantLib-SWIG. > > BTW how could I share my code, is it simply attaching the code by email? > > Thanks, QuantLib is a great project. > > > Felix > > ------------------------------------------------------------------------------ > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/13534_NeoTech > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > -- <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio > |
|
From: Luigi B. <lui...@gm...> - 2014-03-12 10:27:09
|
Hi Felix,
posting the code here would work, but if you're familiar with
GitHub it's more convenient to send me a pull request.
Later,
Luigi
On Tue, Mar 11, 2014 at 5:32 PM, Felix Lee <ee...@ya...> wrote:
> Hi all,
>
> I'm new to QuantLib and I'm interested to use it for some trading platform
> development in java.
>
> To get familiar with it, I decided to rewrite the example
> DiscreteHedging.java
>
> I used different approach to rewrite this example, by using SWIG director
> feature to achieve the PathPricer call back function, and use SWIG
> "boost_shared_ptr.i" to wrap the boost::shared_ptr<> object in
> MonteCarloModel class.
>
> After a few days of trial and error, finally I manage to get my code compile
> and run correctly. And my code could run a bit faster than the current code
> in QuantLib-SWIG-1.4/Java/examples/DiscreteHedging.java. In my old laptop,
> it took 44sec to complete in the current code, but 28sec in my code.
>
> I'd like to post my code for sharing, and see if any interest to use it in
> the next release version of QuantLib-SWIG.
>
> BTW how could I share my code, is it simply attaching the code by email?
>
> Thanks, QuantLib is a great project.
>
>
> Felix
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/13534_NeoTech
> _______________________________________________
> QuantLib-dev mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>
|
|
From: Felix L. <ee...@ya...> - 2014-03-11 16:32:22
|
Hi all, I'm new to QuantLib and I'm interested to use it for some trading platform development in java. To get familiar with it, I decided to rewrite the example DiscreteHedging.java I used different approach to rewrite this example, by using SWIG director feature to achieve the PathPricer call back function, and use SWIG "boost_shared_ptr.i" to wrap the boost::shared_ptr<> object in MonteCarloModel class. After a few days of trial and error, finally I manage to get my code compile and run correctly. And my code could run a bit faster than the current code in QuantLib-SWIG-1.4/Java/examples/DiscreteHedging.java. In my old laptop, it took 44sec to complete in the current code, but 28sec in my code. I'd like to post my code for sharing, and see if any interest to use it in the next release version of QuantLib-SWIG. BTW how could I share my code, is it simply attaching the code by email? Thanks, QuantLib is a great project. Felix |
|
From: Luigi B. <lui...@gm...> - 2014-03-11 15:22:23
|
Thanks, I've added the fix to the installation instructions on the site. Luigi On Thu, Feb 27, 2014 at 11:30 PM, aazout <alb...@so...> wrote: > Looks like this fixes this issue: > > To build the library on Mac OS X 10.9, the QuantLib library must be linked > against libstdc++. To do so, set the environment flags `CXXFLAGS` and > `LDFLAGS` > to `-stlib=libstdc++ -mmacosx-version-min=10.6` before compiling from > source. > > Thanks, > Albert > > > > -- > View this message in context: http://quantlib.10058.n7.nabble.com/QuantLib-boost-1-55-tp14715p15042.html > Sent from the quantlib-dev mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > Flow-based real-time traffic analytics software. Cisco certified tool. > Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer > Customize your own dashboards, set traffic alerts and generate reports. > Network behavioral analysis & security monitoring. All-in-one tool. > http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev -- <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio> |
|
From: aazout <alb...@so...> - 2014-02-27 22:50:28
|
Looks like this fixes this issue: To build the library on Mac OS X 10.9, the QuantLib library must be linked against libstdc++. To do so, set the environment flags `CXXFLAGS` and `LDFLAGS` to `-stlib=libstdc++ -mmacosx-version-min=10.6` before compiling from source. Thanks, Albert -- View this message in context: http://quantlib.10058.n7.nabble.com/QuantLib-boost-1-55-tp14715p15042.html Sent from the quantlib-dev mailing list archive at Nabble.com. |
|
From: Luigi B. <lui...@gm...> - 2014-02-27 09:16:04
|
QuantLib is a cross-platform, free/open-source quantitative finance C++ library for modeling, pricing, trading, and risk management in real-life. Version 1.4 has been released and is available for download at <http://quantlib.org/download.shtml>. Please log any problems you have with this release in the SourceForge bug tracker at <http://sourceforge.net/tracker/?group_id=12740&atid=112740> specifying that you're using QuantLib 1.4. The QuantLib group |
|
From: Piter D. <pit...@pi...> - 2014-02-26 12:29:19
|
Try this: http://quantlib.org/quantlibxl/func_bonds.html#qlBondYieldFromCleanPrice _____________________Piter Dia...@pi... > Date: Wed, 26 Feb 2014 03:31:57 -0800 > From: var...@ya... > To: qua...@li... > Subject: [Quantlib-dev] Quantlib function for EXCEL YIELD > > Hello guys, > > I am looking for quantlib function which corresponds to EXCEL > YIELD(settlement,maturity,rate,pr,redemption,frequency,basis)? > > I know this might be answered before but I was not able to find a definite > answer. > > Thanks in advance! > > > > > > > > > -- > View this message in context: http://quantlib.10058.n7.nabble.com/Quantlib-function-for-EXCEL-YIELD-tp15021.html > Sent from the quantlib-dev mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > Flow-based real-time traffic analytics software. Cisco certified tool. > Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer > Customize your own dashboards, set traffic alerts and generate reports. > Network behavioral analysis & security monitoring. All-in-one tool. > http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: v17 <var...@ya...> - 2014-02-26 11:32:04
|
Hello guys, I am looking for quantlib function which corresponds to EXCEL YIELD(settlement,maturity,rate,pr,redemption,frequency,basis)? I know this might be answered before but I was not able to find a definite answer. Thanks in advance! -- View this message in context: http://quantlib.10058.n7.nabble.com/Quantlib-function-for-EXCEL-YIELD-tp15021.html Sent from the quantlib-dev mailing list archive at Nabble.com. |
|
From: Eric E. <eri...@na...> - 2014-02-23 16:00:59
|
Hello,
On 2014-02-12 11:21, ikku100 wrote:
> Good day,
>
> The subject says it all: I would like to expose to Excel a function
> which
> has as argument a vector of shared_ptr's. The problem is that either I
> do
> not know how to write the xml or that the scripts which generate the
> cpp
> code from the xml do not know how to handle this combination.
>
> Passing a shared_ptr works, passing a vector of objects works too. But
> as
> soon as I pass the combination, it no longer creates the object in the
> create_XXX.cpp file (so when the constructor is called, it has an
> unknown
> argument).
>
> Could someone tell me how to do this?
>
> Ps. below my piece of XML:
>
> <Constructor name='qlCurvesInterpolator'>
> <libraryFunction>CurvesInterpolator</libraryFunction>
> <SupportedPlatforms>
> <SupportedPlatform name='Excel'/>
> <SupportedPlatform name='Cpp'/>
> </SupportedPlatforms>
> <ParameterList>
> <Parameters>
> <Parameter name='CurveIds'>
> <type>QuantLib::YieldTermStructure</type>
> <tensorRank>vector</tensorRank>
> <description>curve object IDs.</description>
> </Parameter>
> </Parameters>
> </ParameterList>
> </Constructor>
>
> and the error is:
> error C2065: 'CurveIdsLibObjPtr' : undeclared identifier
This should do it:
<Constructor name='qlCurvesInterpolator'>
<libraryFunction>CurvesInterpolator</libraryFunction>
<SupportedPlatforms>
<SupportedPlatform name='Excel'/>
<SupportedPlatform name='Cpp'/>
</SupportedPlatforms>
<ParameterList>
<Parameters>
<Parameter name='CurveIds'>
<type>QuantLib::YieldTermStructure</type>
<superType>libraryClass</superType>
<tensorRank>vector</tensorRank>
<description>curve object IDs.</description>
</Parameter>
</Parameters>
</ParameterList>
</Constructor>
Kind Regards,
Eric
--
===================================================
Eric Ehlers
nazcatech sprl | Brussels | http://www.nazcatech.be
* Distributed computing for pricing analytics
* Use Microsoft Excel as a client to the Grid
|
|
From: QL <qua...@gm...> - 2014-02-20 01:08:08
|
hi jon
thanks to rely
i'm really wanna do that.
but i can't. because i'm in situation which can not support c++11.
so...now think about pthread ...
Sent from my iPhone
> On 20 Feb 2014, at 08:54, Jon Lee <jon...@gm...> wrote:
>
> Hi Luigi,
> Thanks for the reply. I was starting to fear that was the case. I quickly tried your suggestion and seems to still give me errors. I started using a mutex before calling QL which obviously fixes the problem.
>
> Jonghee, you need to create a sessionId() method which returns a unique id (?). Luigi, correct me if I'm wrong but put this in my code:
>
> this uses c++11 or boost.
>
> #include <thread>
>
> #ifdef QL_ENABLE_SESSIONS
> int QuantLib::sessionId(void)
> {
> return std::this_thread::get_id().hash();
> }
> #endif
>
> Jon
>
>
>> On 19 February 2014 23:10, QL <qua...@gm...> wrote:
>> hi luigi
>>
>> im jonghee lee
>>
>> i was rebulid quantlib and my project.
>>
>> quantlib building was success. however my project failed to building.
>>
>> error message was there is no define sessionid() function.
>>
>> may i define sessionid() ?
>>
>> i was try define it, i faild...
>>
>>
>>
>> Sent from my iPhone
>>
>> > On 19 Feb 2014, at 23:32, Luigi Ballabio <lui...@gm...> wrote:
>> >
>> > Hello,
>> > in its default configuration, QuantLib is not thread-safe (there's
>> > a number of global objects that you're probably writing to from
>> > different threads and that can cause race conditions). Your program
>> > might work ("might") if you make those globals thread-local; to do
>> > this with VC++, edit <ql/userconfig.hpp>, uncomment the line
>> > //# define QL_ENABLE_SESSIONS
>> > towards the end so that the macro is defined, and recompile both
>> > QuantLib and your program.
>> >
>> > Hope this helps,
>> > Luigi
>> >
>> >
>> >> On Wed, Feb 12, 2014 at 1:10 AM, jlee <jon...@gm...> wrote:
>> >> Hi,
>> >> I am trying to calculate fair swap rate and using swapvaluation.cpp from the
>> >> Examples. If I call the fairRate() method several times in a loop it works
>> >> fine. But when I call it using threads I get random errors. I don't think
>> >> it's actually the fairRate() method but part of the creation of the Swap
>> >> object.
>> >>
>> >> I have attached an example from my bigger program but it reproduces the
>> >> error. It's in MSVC++ 2013 and when you start the program, it prompts you
>> >> for the number of threads to use. Usually if you use 10 you'll get the
>> >> error, definitely if you use 20 threads. If you use only 1 thread, it loops
>> >> several times and no errors occur.
>> >>
>> >> Hope this helps as it took awhile to isolate but I've reached the limit of
>> >> my technical skills in debugging it. If you need any more information let me
>> >> know.
>> >>
>> >> ql_test.rar <http://quantlib.10058.n7.nabble.com/file/n14958/ql_test.rar>
>> >>
>> >>
>> >>
>> >> --
>> >> View this message in context: http://quantlib.10058.n7.nabble.com/multi-threaded-swapvaluation-cpp-tp14958.html
>> >> Sent from the quantlib-dev mailing list archive at Nabble.com.
>> >>
>> >> ------------------------------------------------------------------------------
>> >> Android apps run on BlackBerry 10
>> >> Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
>> >> Now with support for Jelly Bean, Bluetooth, Mapview and more.
>> >> Get your Android app in front of a whole new audience. Start now.
>> >> http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
>> >> _______________________________________________
>> >> QuantLib-dev mailing list
>> >> Qua...@li...
>> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>> >
>> >
>> >
>> > --
>> > <https://implementingquantlib.blogspot.com>
>> > <https://twitter.com/lballabio>
>> >
>> > ------------------------------------------------------------------------------
>> > Managing the Performance of Cloud-Based Applications
>> > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
>> > Read the Whitepaper.
>> > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk
>> > _______________________________________________
>> > QuantLib-dev mailing list
>> > Qua...@li...
>> > https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
|
|
From: Jon L. <jon...@gm...> - 2014-02-19 23:54:30
|
Hi Luigi,
Thanks for the reply. I was starting to fear that was the case. I quickly
tried your suggestion and seems to still give me errors. I started using a
mutex before calling QL which obviously fixes the problem.
Jonghee, you need to create a sessionId() method which returns a unique id
(?). Luigi, correct me if I'm wrong but put this in my code:
this uses c++11 or boost.
#include <thread>
#ifdef QL_ENABLE_SESSIONS
int QuantLib::sessionId(void)
{
return std::this_thread::get_id().hash();
}
#endif
Jon
On 19 February 2014 23:10, QL <qua...@gm...> wrote:
> hi luigi
>
> im jonghee lee
>
> i was rebulid quantlib and my project.
>
> quantlib building was success. however my project failed to building.
>
> error message was there is no define sessionid() function.
>
> may i define sessionid() ?
>
> i was try define it, i faild...
>
>
>
> Sent from my iPhone
>
> > On 19 Feb 2014, at 23:32, Luigi Ballabio <lui...@gm...>
> wrote:
> >
> > Hello,
> > in its default configuration, QuantLib is not thread-safe (there's
> > a number of global objects that you're probably writing to from
> > different threads and that can cause race conditions). Your program
> > might work ("might") if you make those globals thread-local; to do
> > this with VC++, edit <ql/userconfig.hpp>, uncomment the line
> > //# define QL_ENABLE_SESSIONS
> > towards the end so that the macro is defined, and recompile both
> > QuantLib and your program.
> >
> > Hope this helps,
> > Luigi
> >
> >
> >> On Wed, Feb 12, 2014 at 1:10 AM, jlee <jon...@gm...>
> wrote:
> >> Hi,
> >> I am trying to calculate fair swap rate and using swapvaluation.cpp
> from the
> >> Examples. If I call the fairRate() method several times in a loop it
> works
> >> fine. But when I call it using threads I get random errors. I don't
> think
> >> it's actually the fairRate() method but part of the creation of the Swap
> >> object.
> >>
> >> I have attached an example from my bigger program but it reproduces the
> >> error. It's in MSVC++ 2013 and when you start the program, it prompts
> you
> >> for the number of threads to use. Usually if you use 10 you'll get the
> >> error, definitely if you use 20 threads. If you use only 1 thread, it
> loops
> >> several times and no errors occur.
> >>
> >> Hope this helps as it took awhile to isolate but I've reached the limit
> of
> >> my technical skills in debugging it. If you need any more information
> let me
> >> know.
> >>
> >> ql_test.rar <
> http://quantlib.10058.n7.nabble.com/file/n14958/ql_test.rar>
> >>
> >>
> >>
> >> --
> >> View this message in context:
> http://quantlib.10058.n7.nabble.com/multi-threaded-swapvaluation-cpp-tp14958.html
> >> Sent from the quantlib-dev mailing list archive at Nabble.com.
> >>
> >>
> ------------------------------------------------------------------------------
> >> Android apps run on BlackBerry 10
> >> Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
> >> Now with support for Jelly Bean, Bluetooth, Mapview and more.
> >> Get your Android app in front of a whole new audience. Start now.
> >>
> http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
> >> _______________________________________________
> >> QuantLib-dev mailing list
> >> Qua...@li...
> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
> >
> >
> >
> > --
> > <https://implementingquantlib.blogspot.com>
> > <https://twitter.com/lballabio>
> >
> >
> ------------------------------------------------------------------------------
> > Managing the Performance of Cloud-Based Applications
> > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
> > Read the Whitepaper.
> >
> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk
> > _______________________________________________
> > QuantLib-dev mailing list
> > Qua...@li...
> > https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
|
|
From: QL <qua...@gm...> - 2014-02-19 22:11:01
|
hi luigi
im jonghee lee
i was rebulid quantlib and my project.
quantlib building was success. however my project failed to building.
error message was there is no define sessionid() function.
may i define sessionid() ?
i was try define it, i faild...
Sent from my iPhone
> On 19 Feb 2014, at 23:32, Luigi Ballabio <lui...@gm...> wrote:
>
> Hello,
> in its default configuration, QuantLib is not thread-safe (there's
> a number of global objects that you're probably writing to from
> different threads and that can cause race conditions). Your program
> might work ("might") if you make those globals thread-local; to do
> this with VC++, edit <ql/userconfig.hpp>, uncomment the line
> //# define QL_ENABLE_SESSIONS
> towards the end so that the macro is defined, and recompile both
> QuantLib and your program.
>
> Hope this helps,
> Luigi
>
>
>> On Wed, Feb 12, 2014 at 1:10 AM, jlee <jon...@gm...> wrote:
>> Hi,
>> I am trying to calculate fair swap rate and using swapvaluation.cpp from the
>> Examples. If I call the fairRate() method several times in a loop it works
>> fine. But when I call it using threads I get random errors. I don't think
>> it's actually the fairRate() method but part of the creation of the Swap
>> object.
>>
>> I have attached an example from my bigger program but it reproduces the
>> error. It's in MSVC++ 2013 and when you start the program, it prompts you
>> for the number of threads to use. Usually if you use 10 you'll get the
>> error, definitely if you use 20 threads. If you use only 1 thread, it loops
>> several times and no errors occur.
>>
>> Hope this helps as it took awhile to isolate but I've reached the limit of
>> my technical skills in debugging it. If you need any more information let me
>> know.
>>
>> ql_test.rar <http://quantlib.10058.n7.nabble.com/file/n14958/ql_test.rar>
>>
>>
>>
>> --
>> View this message in context: http://quantlib.10058.n7.nabble.com/multi-threaded-swapvaluation-cpp-tp14958.html
>> Sent from the quantlib-dev mailing list archive at Nabble.com.
>>
>> ------------------------------------------------------------------------------
>> Android apps run on BlackBerry 10
>> Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
>> Now with support for Jelly Bean, Bluetooth, Mapview and more.
>> Get your Android app in front of a whole new audience. Start now.
>> http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
>> _______________________________________________
>> QuantLib-dev mailing list
>> Qua...@li...
>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio>
>
> ------------------------------------------------------------------------------
> Managing the Performance of Cloud-Based Applications
> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
> Read the Whitepaper.
> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk
> _______________________________________________
> QuantLib-dev mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
|
|
From: Peter C. <pca...@gm...> - 2014-02-19 17:57:18
|
thank you, Nando. I did some further testing on this. The test cases in CmsTest run fine also without the capped rate in MakeCms. So no immediate need for further fixes. However you can really stress test the NumericHaganPricer with the wrong smile input: 1 flat yield 3%, SABR vol alpha=0.15, beta=0.80, rho=-0.30, nu =1.80, cms10y coupon with fixing in 19y, payment in 20y (GFunction = Standard) => seg fault (wow!) 2 same with nu = 0.80 => max func eval exceeded (although set to 10^6) It seems #1 is caused by too many recursive calls within GaussKronrodAdaptive. Lowering the max eval parameter seems to solve this issue. I guess we should fix that in every case. #2 is not avoidable with the current integration strategy, but introducing a hard upper limit for the integration simply produces a result no matter how extreme the vol input is. Therefore I would suggest to introduce such a hard upper limit, set it to QL_MAX_REAL by default (so no change in the pricer's behaviour by default) and leave it to the user to plug in something like 200% to ensure that the code runs through without throwing exceptions and returns some reasonable result. Both #1 and #2 are not avoided by the MakeCms capped rate of course. I guess this was maybe inserted to limit exploding adjustments for certain vol inputs. But this can also be achieved by the hard upper bound proposed above. I will send a pull request in this direction (i.e. remove the capped rate from MakeCms, fix the seg fault case, provide a hard upper limit defaulted to max real). Does it make sense ? Peter On 18 February 2014 09:54, Ferdinando M. Ametrano <fer...@am...> wrote: > Peter, > > I am currently not using that code in my day-by-day and have little time to > investigate: I'll just trust your judgement. > > by the way, thank you for all your contributions in the recent months, > you've really stepped your game up > > ciao -- Nando > > > On Tue, Feb 18, 2014 at 9:48 AM, Peter Caspers <pca...@gm...> > wrote: >> >> I don't know, but if the issue is still there, shouldn't we better fix >> it in the NumericHaganPricer by introducing a hard upper integration >> bound at 2 ? >> Peter >> >> >> On 18 February 2014 07:51, Ferdinando M. Ametrano >> <fer...@am...> wrote: >> > Mmm... I seem to remember something about the only existing model at the >> > time having issues on integrating the smile up to infinitum. >> > Is this not the case anymore? >> > >> > On Feb 17, 2014 8:36 PM, "Peter Caspers" <pca...@gm...> wrote: >> >> >> >> Hi, >> >> >> >> is there a reason that the standard cms swaps constructed with MakeCms >> >> have a capped rate >> >> at 200% ? >> >> >> >> >> >> >> >> https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/instruments/makecms.cpp#L43 >> >> >> >> If no one objects I would like to send a pull request to remove the >> >> cap. This might impact results >> >> in existing code though, so I thought I better ask here. >> >> >> >> Thank you >> >> Peter >> >> >> >> >> >> >> >> ------------------------------------------------------------------------------ >> >> Managing the Performance of Cloud-Based Applications >> >> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >> >> Read the Whitepaper. >> >> >> >> >> >> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk >> >> _______________________________________________ >> >> QuantLib-dev mailing list >> >> Qua...@li... >> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > > |
|
From: Luigi B. <lui...@gm...> - 2014-02-19 14:32:49
|
Hello,
in its default configuration, QuantLib is not thread-safe (there's
a number of global objects that you're probably writing to from
different threads and that can cause race conditions). Your program
might work ("might") if you make those globals thread-local; to do
this with VC++, edit <ql/userconfig.hpp>, uncomment the line
//# define QL_ENABLE_SESSIONS
towards the end so that the macro is defined, and recompile both
QuantLib and your program.
Hope this helps,
Luigi
On Wed, Feb 12, 2014 at 1:10 AM, jlee <jon...@gm...> wrote:
> Hi,
> I am trying to calculate fair swap rate and using swapvaluation.cpp from the
> Examples. If I call the fairRate() method several times in a loop it works
> fine. But when I call it using threads I get random errors. I don't think
> it's actually the fairRate() method but part of the creation of the Swap
> object.
>
> I have attached an example from my bigger program but it reproduces the
> error. It's in MSVC++ 2013 and when you start the program, it prompts you
> for the number of threads to use. Usually if you use 10 you'll get the
> error, definitely if you use 20 threads. If you use only 1 thread, it loops
> several times and no errors occur.
>
> Hope this helps as it took awhile to isolate but I've reached the limit of
> my technical skills in debugging it. If you need any more information let me
> know.
>
> ql_test.rar <http://quantlib.10058.n7.nabble.com/file/n14958/ql_test.rar>
>
>
>
> --
> View this message in context: http://quantlib.10058.n7.nabble.com/multi-threaded-swapvaluation-cpp-tp14958.html
> Sent from the quantlib-dev mailing list archive at Nabble.com.
>
> ------------------------------------------------------------------------------
> Android apps run on BlackBerry 10
> Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
> Now with support for Jelly Bean, Bluetooth, Mapview and more.
> Get your Android app in front of a whole new audience. Start now.
> http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
> _______________________________________________
> QuantLib-dev mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>
|
|
From: Ferdinando M. A. <fer...@am...> - 2014-02-18 08:55:22
|
Peter, I am currently not using that code in my day-by-day and have little time to investigate: I'll just trust your judgement. by the way, thank you for all your contributions in the recent months, you've really stepped your game up ciao -- Nando On Tue, Feb 18, 2014 at 9:48 AM, Peter Caspers <pca...@gm...>wrote: > I don't know, but if the issue is still there, shouldn't we better fix > it in the NumericHaganPricer by introducing a hard upper integration > bound at 2 ? > Peter > > > On 18 February 2014 07:51, Ferdinando M. Ametrano > <fer...@am...> wrote: > > Mmm... I seem to remember something about the only existing model at the > > time having issues on integrating the smile up to infinitum. > > Is this not the case anymore? > > > > On Feb 17, 2014 8:36 PM, "Peter Caspers" <pca...@gm...> wrote: > >> > >> Hi, > >> > >> is there a reason that the standard cms swaps constructed with MakeCms > >> have a capped rate > >> at 200% ? > >> > >> > >> > https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/instruments/makecms.cpp#L43 > >> > >> If no one objects I would like to send a pull request to remove the > >> cap. This might impact results > >> in existing code though, so I thought I better ask here. > >> > >> Thank you > >> Peter > >> > >> > >> > ------------------------------------------------------------------------------ > >> Managing the Performance of Cloud-Based Applications > >> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > >> Read the Whitepaper. > >> > >> > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk > >> _______________________________________________ > >> QuantLib-dev mailing list > >> Qua...@li... > >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > |
|
From: Luigi B. <lui...@gm...> - 2014-02-18 08:54:33
|
Yes, I'd fix it downstream rather than in the instrument. Luigi On Tue, Feb 18, 2014 at 9:48 AM, Peter Caspers <pca...@gm...> wrote: > I don't know, but if the issue is still there, shouldn't we better fix > it in the NumericHaganPricer by introducing a hard upper integration > bound at 2 ? > Peter > > > On 18 February 2014 07:51, Ferdinando M. Ametrano > <fer...@am...> wrote: >> Mmm... I seem to remember something about the only existing model at the >> time having issues on integrating the smile up to infinitum. >> Is this not the case anymore? >> >> On Feb 17, 2014 8:36 PM, "Peter Caspers" <pca...@gm...> wrote: >>> >>> Hi, >>> >>> is there a reason that the standard cms swaps constructed with MakeCms >>> have a capped rate >>> at 200% ? >>> >>> >>> https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/instruments/makecms.cpp#L43 >>> >>> If no one objects I would like to send a pull request to remove the >>> cap. This might impact results >>> in existing code though, so I thought I better ask here. >>> >>> Thank you >>> Peter >>> >>> >>> ------------------------------------------------------------------------------ >>> Managing the Performance of Cloud-Based Applications >>> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >>> Read the Whitepaper. >>> >>> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk >>> _______________________________________________ >>> QuantLib-dev mailing list >>> Qua...@li... >>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > > ------------------------------------------------------------------------------ > Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev -- <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio> |
|
From: Peter C. <pca...@gm...> - 2014-02-18 08:48:24
|
I don't know, but if the issue is still there, shouldn't we better fix it in the NumericHaganPricer by introducing a hard upper integration bound at 2 ? Peter On 18 February 2014 07:51, Ferdinando M. Ametrano <fer...@am...> wrote: > Mmm... I seem to remember something about the only existing model at the > time having issues on integrating the smile up to infinitum. > Is this not the case anymore? > > On Feb 17, 2014 8:36 PM, "Peter Caspers" <pca...@gm...> wrote: >> >> Hi, >> >> is there a reason that the standard cms swaps constructed with MakeCms >> have a capped rate >> at 200% ? >> >> >> https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/instruments/makecms.cpp#L43 >> >> If no one objects I would like to send a pull request to remove the >> cap. This might impact results >> in existing code though, so I thought I better ask here. >> >> Thank you >> Peter >> >> >> ------------------------------------------------------------------------------ >> Managing the Performance of Cloud-Based Applications >> Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. >> Read the Whitepaper. >> >> http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk >> _______________________________________________ >> QuantLib-dev mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: Ferdinando M. A. <fer...@am...> - 2014-02-18 07:54:00
|
Mmm... I seem to remember something about the only existing model at the time having issues on integrating the smile up to infinitum. Is this not the case anymore? On Feb 17, 2014 8:36 PM, "Peter Caspers" <pca...@gm...> wrote: > Hi, > > is there a reason that the standard cms swaps constructed with MakeCms > have a capped rate > at 200% ? > > > https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/instruments/makecms.cpp#L43 > > If no one objects I would like to send a pull request to remove the > cap. This might impact results > in existing code though, so I thought I better ask here. > > Thank you > Peter > > > ------------------------------------------------------------------------------ > Managing the Performance of Cloud-Based Applications > Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. > Read the Whitepaper. > > http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > |
|
From: Peter C. <pca...@gm...> - 2014-02-17 19:36:39
|
Hi, is there a reason that the standard cms swaps constructed with MakeCms have a capped rate at 200% ? https://github.com/lballabio/quantlib/blob/master/QuantLib/ql/instruments/makecms.cpp#L43 If no one objects I would like to send a pull request to remove the cap. This might impact results in existing code though, so I thought I better ask here. Thank you Peter |
|
From: ikku100 <ik...@gm...> - 2014-02-12 10:21:28
|
Good day,
The subject says it all: I would like to expose to Excel a function which
has as argument a vector of shared_ptr's. The problem is that either I do
not know how to write the xml or that the scripts which generate the cpp
code from the xml do not know how to handle this combination.
Passing a shared_ptr works, passing a vector of objects works too. But as
soon as I pass the combination, it no longer creates the object in the
create_XXX.cpp file (so when the constructor is called, it has an unknown
argument).
Could someone tell me how to do this?
Ps. below my piece of XML:
<Constructor name='qlCurvesInterpolator'>
<libraryFunction>CurvesInterpolator</libraryFunction>
<SupportedPlatforms>
<SupportedPlatform name='Excel'/>
<SupportedPlatform name='Cpp'/>
</SupportedPlatforms>
<ParameterList>
<Parameters>
<Parameter name='CurveIds'>
<type>QuantLib::YieldTermStructure</type>
<tensorRank>vector</tensorRank>
<description>curve object IDs.</description>
</Parameter>
</Parameters>
</ParameterList>
</Constructor>
and the error is:
error C2065: 'CurveIdsLibObjPtr' : undeclared identifier
--
View this message in context: http://quantlib.10058.n7.nabble.com/expose-to-excel-a-function-with-vector-of-shared-ptr-to-objects-as-argument-tp14962.html
Sent from the quantlib-dev mailing list archive at Nabble.com.
|
|
From: jlee <jon...@gm...> - 2014-02-12 00:10:32
|
Hi, I am trying to calculate fair swap rate and using swapvaluation.cpp from the Examples. If I call the fairRate() method several times in a loop it works fine. But when I call it using threads I get random errors. I don't think it's actually the fairRate() method but part of the creation of the Swap object. I have attached an example from my bigger program but it reproduces the error. It's in MSVC++ 2013 and when you start the program, it prompts you for the number of threads to use. Usually if you use 10 you'll get the error, definitely if you use 20 threads. If you use only 1 thread, it loops several times and no errors occur. Hope this helps as it took awhile to isolate but I've reached the limit of my technical skills in debugging it. If you need any more information let me know. ql_test.rar <http://quantlib.10058.n7.nabble.com/file/n14958/ql_test.rar> -- View this message in context: http://quantlib.10058.n7.nabble.com/multi-threaded-swapvaluation-cpp-tp14958.html Sent from the quantlib-dev mailing list archive at Nabble.com. |
|
From: Raymond J. <ray...@gm...> - 2014-02-06 13:23:49
|
Hi there! I am Harry Raymond Joseph a Master's student in Computer Science with a minor in Operations Research. I'm looking for an opportunity to work on developing QuantLib within the aegis of the *Google Summer of Code 2014.* My research areas include Data Mining, Stochastic Modeling, Quantitative Finance and Relational Algebra. To tell more about myself and my motivations in looking particularly at QuantLib - I believe such an opportunity supports my field of research, interest and long term goals. As a student specializing in Computer Science, I first looked at Quantitative Finance, Risk Analytics and several other aspects in the interface of corporate finance and quantitative risk analytics on a funded research grant in Canada, at the UBC. Followed by that, I worked at the French startup Tilkee as their Data Analytics Associate in Lyon. I developed several Machine Learning algorithms that forecast probabilistic prospects of a client deal, which included SQL scripting and development. I was instrumental, as part of their team in helping Tilkee win several awards. More recently, I have been awarded the *IBM* SFSP Research Award for my study on Business Process Modeling - Representing Business Artifacts combined with a stochastic framework. The work includes extensive API programming, with MySQL Workbench and *Java.* In addition I have worked on several stochastic modeling problems of several social sciences/humanities problems. As part of my course Computational Methods in Physics, I developed several non-trivial simulations that had to do with monte-carlo methods and molecular dynamics. I ended up topping the course, and publishing a conference paper on this, which is yet to be indexed. On a first perusal of QuantLib , I saw strong potential in it for the inclusion of data mining techniques, and several other aspects such as new quantitative tools. *I would be very willing to work on such a project, if it's possible to jointly develop a proposal to send to Google online, before the 14th of Feb, or if you already have something to work on.* For me, QuantLib is very appropriate since, contributing to an open source project with great utility is something I have always looked forward to. This is a very special opportunity for me, especially when I can receive a stipend from Google while contributing to your project that would help me pay fees at the University and support my board and lodging partially. Look forward to hearing from you, please let me know. Raymond Joseph ray...@gm... Publications: 'GDP Forecasting through Data Mining of Seaport Export-Import Records', DMIN'13. 'Quantum Game theory, Monte-Carlo methods and Evolutionary Scenario Analysis: An Application to Indo-China Relations', ICMSquare'13. http://fr.linkedin.com/in/raymondjoseph7 |
|
From: Peter C. <pca...@gm...> - 2014-02-01 17:13:47
|
thanks, yes I agree, this is more a design question than of real
practical interest. The log-linear interpolation in zeroyield is very
briefly discussed in the Hagan / West paper on yield curve
construction, playing in the same league as linear in zeroyield (which
is yet very popular I think) or linear in discount. Log-linear in
forwards is not even mentioned there, so probably we should not make
that work in QuantLib either :-)
On 1 February 2014 16:47, Luigi Ballabio <lui...@gm...> wrote:
> Yes, possibly. In that case, we'd have to make the change in
> InterpolatedForwardCurve<T>::zeroYieldImpl. But since we don't have
> different exception types, we'd have to catch the exception and check
> the error message it contains to decide whether to switch to the
> base-class method (because if it's a different error, we'd want to let
> it bubble up to client code). It wouldn't look very pretty :)
> Another alternative would be to implement the numerical integration in
> the LogLinear interpolation. I'm not sure that I like a situation in
> which some curves are reasonably fast and others are much slower
> depending on the interpolation method. Sure, the current situation is
> that some interpolations don't work, so it might be an improvement
> anyway...
>
> (Oh, and a final note: while it makes sense to use log-linear with
> discounts, because they're given by exp(-rt), I'm not sure that it
> makes sense to use it with zero and forward rates.)
>
> Luigi
>
>
>
> On Tue, Jan 28, 2014 at 1:21 PM, Peter Caspers <pca...@gm...> wrote:
>> Luigi, just out of curiosity, in ForwardRateStructure there seems to
>> be a general purpose implementation to get the zero yield by
>> integration over the forwards. Wouldn't the situation here be a use
>> case for exactly this (i.e. catch the exception and invoke the base
>> class method instead) ?
>> best, Peter
>>
>> On 28 January 2014 12:37, Luigi Ballabio <lui...@gm...> wrote:
>>> Yes. the curve is trying to integrate the forwards to get the
>>> discounts, but the LogLinear interpolator doesn't provide a formula
>>> for that. You'll have to choose another interpolation.
>>>
>>> Luigi
>>>
>>> On Mon, Jan 27, 2014 at 5:50 AM, varun yadav <var...@ya...> wrote:
>>>> Hi Luigi,
>>>>
>>>> I passed evaluation date as the first date in liborDates. Also added
>>>> corresponding rate in liborRates. But now it gives exception -
>>>> "LogInterpolation primitive not implemented"
>>>>
>>>> Below are new values -
>>>>
>>>> liborDates -
>>>>
>>>> January 24th, 2014
>>>> July 24th, 2014
>>>> January 24th, 2015
>>>> January 24th, 2016
>>>> January 24th, 2017
>>>> January 24th, 2018
>>>> January 24th, 2019
>>>> January 24th, 2020
>>>> January 24th, 2021
>>>> January 24th, 2022
>>>> January 24th, 2023
>>>> January 24th, 2024
>>>> January 24th, 2029
>>>>
>>>> liborRates -
>>>>
>>>> 8.4
>>>> 8.4955
>>>> 8.36907
>>>> 8.38416
>>>> 8.47267
>>>> 8.62786
>>>> 8.69832
>>>> 8.71107
>>>> 8.85289
>>>> 8.99607
>>>> 8.80085
>>>> 8.7099
>>>> 9.00594
>>>>
>>>> Is exception coming due to InterpolatedForwardCurve<LogLinear> ...?
>>>>
>>>> Thanks in advance!
>>>>
>>>>
>>>> On Thursday, January 23, 2014 5:02 PM, Luigi Ballabio
>>>> <lui...@gm...> wrote:
>>>> You should pass the evaluation date as the first date in liborDates.
>>>> You'll need a corresponding extra element in liborRates; just
>>>> replicate the first you have for constant rates from today to the
>>>> first actual Libor date.
>>>>
>>>> Luigi
>>>>
>>>> On Mon, Jan 20, 2014 at 8:12 AM, v17 <var...@ya...> wrote:
>>>>> Hi Everyone,
>>>>>
>>>>> I have following piece of code which gives Exception "negative time (-0.5)
>>>>> given"
>>>>>
>>>>> vector <Real> &forwardRates;
>>>>> const int size = liborRates.size();
>>>>> vector<Date> liborDates(liborTenors.size());
>>>>> for (int i = 0; i < size; i++)
>>>>> {
>>>>> curDate = ycDef.cal.advance(ycDef.evalDate, liborTenors[i]);
>>>>> liborDates[i] = curDate;
>>>>> }
>>>>> yieldCurve = shared_ptr<YieldTermStructure>(new
>>>>> InterpolatedForwardCurve<LogLinear>(liborDates, liborRates, ycDef.dc,
>>>>> ycDef.cal));
>>>>> yieldCurve->enableExtrapolation();
>>>>>
>>>>> size = liborTenors.size();
>>>>> forwardRates.clear();
>>>>> forwardRates.resize(size);
>>>>> try
>>>>> {
>>>>> forwardRates[i] = yieldCurve->forwardRate(ycDef.evalDate, ycDef.evalDate +
>>>>> liborTenors[i] , ycDef.dc, Compounded, Annual);
>>>>> }
>>>>> catch(QuantLib::Error& e)
>>>>> {
>>>>> cout << e.what() << endl;
>>>>> throw;
>>>>> }
>>>>>
>>>>> liborDates has below values -
>>>>>
>>>>> July 20th, 2014
>>>>> January 20th, 2015
>>>>> January 20th, 2016
>>>>> January 20th, 2017
>>>>> January 20th, 2018
>>>>> January 20th, 2019
>>>>> January 20th, 2020
>>>>> January 20th, 2021
>>>>> January 20th, 2022
>>>>> January 20th, 2023
>>>>> January 20th, 2024
>>>>> January 20th, 2029
>>>>>
>>>>> while liborRates is
>>>>> 8.53854
>>>>> 8.40083
>>>>> 8.39311
>>>>> 8.44955
>>>>> 8.56089
>>>>> 8.65359
>>>>> 8.68869
>>>>> 8.80096
>>>>> 8.9133
>>>>> 8.74109
>>>>> 8.66277
>>>>> 8.98536
>>>>>
>>>>> eval date is January 20th, 2014
>>>>>
>>>>> What is causing negative time exception?
>>>>>
>>>>> Thanks,
>>>>> Varun
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://quantlib.10058.n7.nabble.com/Negative-price-with-Forward-Rates-tp14868.html
>>>>> Sent from the quantlib-dev mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> CenturyLink Cloud: The Leader in Enterprise Cloud Services.
>>>>> Learn Why More Businesses Are Choosing CenturyLink Cloud For
>>>>> Critical Workloads, Development Environments & Everything In Between.
>>>>> Get a Quote or Start a Free Trial Today.
>>>>>
>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
>>>>> _______________________________________________
>>>>> QuantLib-dev mailing list
>>>>> Qua...@li...
>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> <https://implementingquantlib.blogspot.com>
>>>> <https://twitter.com/lballabio
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> <https://implementingquantlib.blogspot.com>
>>> <https://twitter.com/lballabio>
>>>
>>> ------------------------------------------------------------------------------
>>> WatchGuard Dimension instantly turns raw network data into actionable
>>> security intelligence. It gives you real-time visual feedback on key
>>> security issues and trends. Skip the complicated setup - simply import
>>> a virtual appliance and go from zero to informed in seconds.
>>> http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk
>>> _______________________________________________
>>> QuantLib-dev mailing list
>>> Qua...@li...
>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>
>
>
> --
> <https://implementingquantlib.blogspot.com>
> <https://twitter.com/lballabio>
|