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: Francois B. <ig...@gm...> - 2014-11-13 13:27:12
|
Hi, I have an interpolated ZeroInflationIndex. My fixings are supposed to "fix" at the end of each month. So any interpolated value on the end of the month should be equal to the original fixing, i.e. no interpolation occurs. The fixings are applicable from the end of the month back towards the 1st of the same month. The current ZeroInflationIndex implementation assumes that fixings are on the 1st of the month and apply forward to the rest of the month, so lookups to values at the end of the month are slightly off for my use case. I can fix this by adding a suitable parameter, but I want to know whether I should include this in the ZeroInflationIndex class or higher up in the InflationIndex class. Besides ZeroInflationIndex, InterestRateIndex and its subclasses also derive from InflationIndex. I'm unsure whether this change would be applicable for those too. thanks Francois Botha |
|
From: cheng l. <scr...@gm...> - 2014-11-12 04:05:04
|
/* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* Copyright (C) 2009 Ralph Schreyer This file is part of QuantLib, a free-software/open-source library for financial quantitative analysts and developers - http://quantlib.org/ QuantLib is free software: you can redistribute it and/or modify it under the terms of the QuantLib license. You should have received a copy of the license along with this program; if not, please email <qua...@li...>. The license is also available online at <http://quantlib.org/license.shtml>. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license for more details. */ /*! \file concentrating1dmesher.cpp \brief One-dimensional grid mesher concentrating around critical points */ #include <ql/errors.hpp> #include <ql/utilities/null.hpp> #include <ql/methods/finitedifferences/meshers/concentrating1dmesher.hpp> #include <ql/math/interpolations/linearinterpolation.hpp> #include <cmath> // asinh is missing in WIN32 (and possibly on other compilers) #if !defined(QL_HAVE_ASINH) #define asinh(x) std::log(x + std::sqrt(x * x + 1)) #endif namespace QuantLib { Concentrating1dMesher::Concentrating1dMesher( Real start, Real end, Size size, const std::pair<Real, Real>& cPoints, const bool requireCPoint, bool shiftLocation) : Fdm1dMesher(size) { QL_REQUIRE(end > start, "end must be larger than start"); const Real cPoint = cPoints.first; const Real density = cPoints.second == Null<Real>() ? Null<Real>() : cPoints.second*(end-start); QL_REQUIRE( cPoint == Null<Real>() || (cPoint >= start && cPoint <= end), "cPoint must be between start and end"); QL_REQUIRE(density == Null<Real>() || density > 0.0, "density > 0 required" ); const Real dx = 1.0/(size-1); if(cPoint != Null<Real>()) { std::vector<Real> u, z; boost::shared_ptr<Interpolation> transform; const Real c1 = asinh((start-cPoint)/density); const Real c2 = asinh((end-cPoint)/density); if(requireCPoint) { const Real z0 = - c1 / (c2-c1); const Real u0 = static_cast<int>(z0*(size-1)+0.5) / ((Real)(size-1)); u.push_back(0.0); u.push_back(u0); u.push_back(1.0); z.push_back(0.0); z.push_back(z0); z.push_back(1.0); transform = boost::shared_ptr<Interpolation>( new LinearInterpolation(u.begin(), u.end(), z.begin())); } for (Size i=1; i < size-1; ++i) { const Real li = requireCPoint ? (*transform)(i*dx) : i*dx; locations_[i] = cPoint + density*std::sinh(c1*(1.0-li)+c2*li); } } else { for (Size i=1; i < size-1; ++i) { locations_[i] = start + i*dx*(end-start); } } locations_.front() = start; locations_.back() = end; /* * Shift the locations to make the critical point lies exactly half way between 2 grid points. * The method can be seen in Interest Rate Modeling. v1. Anderson and Piterbarg. */ if(cPoint != Null<Real>() && shiftLocation) { Size i = 0; for(i=0;i!=locations_.size();++i) { if(locations_[i] < cPoint && locations_[i+1] >= cPoint) break; } if(i!=locations_.size()) { Real moving = cPoint - locations_[i] - (locations_[i+1] - locations_[i])/2.0; for(Size k=0; k!=locations_.size();++k) locations_[k] += moving; } } for (Size i=0; i < size-1; ++i) { dplus_[i] = dminus_[i+1] = locations_[i+1] - locations_[i]; } dplus_.back() = dminus_.front() = Null<Real>(); } } |
|
From: Luigi B. <lui...@gm...> - 2014-11-11 15:12:58
|
Hi all,
it turns out that QuantLib 1.4 doesn't work with Clang and the
newly-released Boost 1.57 (see <
https://github.com/lballabio/quantlib/issues/163>). I'll release a fix as
version 1,4,1 in a few days. In the meantime, if you have some time please
download it from <
https://sourceforge.net/projects/quantlib/files/QuantLib/prerelease/> and
check if you have any problems.
Thanks,
Luigi
--
<https://implementingquantlib.blogspot.com>
<https://twitter.com/lballabio>
|
|
From: Luigi B. <lui...@gm...> - 2014-11-03 12:26:39
|
I agree. I'll be away for a couple of days, but I'll do the change when I come back at the end of the week. Luigi On Mon, Nov 3, 2014 at 1:07 PM, Ferdinando M. Ametrano < fer...@am...> wrote: > Luigi > > In my opinion we need to make the "QuantLib User Meeting 2014" > http://quantlib.org/qlws14.shtml front page news on quantlib.org > > What if http://quantlib.org/qlws14.shtml replaces "Slides from the talks > at the QuantLib User Meeting 2013 are now available" on the front page? > Then the 2013 slides could be linked inside qlws14.shtml or elsewhere > > ciao -- Nando > > On Mon, Oct 13, 2014 at 11:32 AM, Luigi Ballabio <lui...@gm... > > wrote: > >> Hello, >> well, the subject says it all. More information is at >> <http://quantlib.org/qlws14.shtml>. Thanks to IKB for sponsoring the >> event. >> >> Later, >> Luigi >> >> >> -- >> <https://implementingquantlib.blogspot.com> >> <https://twitter.com/lballabio> >> >> >> ------------------------------------------------------------------------------ >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer >> http://p.sf.net/sfu/Zoho >> _______________________________________________ >> QuantLib-users mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-users >> > > -- <https://implementingquantlib.blogspot.com> <https://twitter.com/lballabio> |
|
From: Ferdinando M. A. <fer...@am...> - 2014-11-03 12:08:17
|
Luigi In my opinion we need to make the "QuantLib User Meeting 2014" http://quantlib.org/qlws14.shtml front page news on quantlib.org What if http://quantlib.org/qlws14.shtml replaces "Slides from the talks at the QuantLib User Meeting 2013 are now available" on the front page? Then the 2013 slides could be linked inside qlws14.shtml or elsewhere ciao -- Nando On Mon, Oct 13, 2014 at 11:32 AM, Luigi Ballabio <lui...@gm...> wrote: > Hello, > well, the subject says it all. More information is at > <http://quantlib.org/qlws14.shtml>. Thanks to IKB for sponsoring the > event. > > Later, > Luigi > > > -- > <https://implementingquantlib.blogspot.com> > <https://twitter.com/lballabio> > > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > http://p.sf.net/sfu/Zoho > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users > |
|
From: romu <bab...@ho...> - 2014-11-02 13:07:03
|
Hi, Could you tell me how you fixed this issue? I followed the recommandations of Luigi and it does not work. Thank's in advance -- View this message in context: http://quantlib.10058.n7.nabble.com/QuantLib-boost-1-55-tp14715p16009.html Sent from the quantlib-dev mailing list archive at Nabble.com. |
|
From: cheng l. <scr...@gm...> - 2014-10-27 03:47:12
|
Hi Peter,
It works great works on Windows.
Try 9999999999 samples:
Original MT: 35.63
Daynamic MT: 37.03
And also I try 100000, 100000000, 1000000000 samples,
The result are similar and the elapsed time grows linearly.
I tried vc++ 2012. The vc++ 2010 will work same in my opnion. I will get back to you when vc++ 2010 test finished.
Regards,
Cheng
-----邮件原件-----
发件人: Peter Caspers [mailto:pca...@gm...]
发送时间: 2014年10月27日 3:49
收件人: cheng li
抄送: QuantLib Mailing Lists
主题: Re: 答复: 答复: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic Creator MT
Hi,
I think I could further improve the performance of the precomputed twisters (i.e. the ones constructed as
MersenneTwisterCustomRng<Mtdesc19937_5> mt(42);
). Now they seem to be just as fast as the original one (I only tested on Linux). The PR is updated.
Cheng, would you maybe like to double check ?
Thanks a lot
Peter
On 23 September 2014 03:50, cheng li <scr...@gm...> wrote:
> Hi Peter,
>
> On my side the performance is also improved. Now around 2.5 slow down. Thanks for your help.
>
> Regards,
> Cheng
>
> -----邮件原件-----
> 发件人: Peter Caspers [mailto:pca...@gm...]
> 发送时间: 2014年9月22日 16:05
> 收件人: cheng li
> 抄送: QuantLib Mailing Lists
> 主题: Re: 答复: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo :
> Dynamic Creator MT
>
> yes, please. The slowdown on Windows on my office computer is around 1.6 now.
> best regards
> Peter
>
> On 22 September 2014 03:48, cheng li <scr...@gm...> wrote:
>> Hi Peter,
>>
>> Thanks for your effort. I'll definitely have a try:)
>>
>> Regards,
>> Cheng
>>
>> -----邮件原件-----
>> 发件人: Peter Caspers [mailto:pca...@gm...]
>> 发送时间: 2014年9月21日 23:11
>> 收件人: cheng.li
>> 抄送: QuantLib Mailing Lists
>> 主题: Re: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo :
>> Dynamic Creator MT
>>
>> Hi Cheng,
>>
>> I switched to a template class for precomputed twisters, which is
>> faster by a factor of 2 (450ms instead of 870ms). This can be
>> instantiated with
>>
>> MersenneTwisterCustomRng<Mtdesc19937_5> mt(42);
>>
>> with 5 replaceable by 0 to 7 as before. The other is only needed now if you want to create a mt during runtime.
>>
>> The pull request is updated accordingly.
>>
>> Best regards
>> Peter
>>
>>
>>
>>
>> On 21 September 2014 08:11, cheng.li <scr...@gm...> wrote:
>>> Hi Peter,
>>>
>>> Thanks for your hard work. I think our results are consistent.
>>>
>>> Regards,
>>> Cheng
>>>
>>> -----邮件原件-----
>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>> 发送时间: 2014年9月21日 0:33
>>> 收件人: cheng li
>>> 抄送: QuantLib Mailing Lists
>>> 主题: Re: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>> Creator MT
>>>
>>> Hi Cheng,
>>>
>>> sorry, this was my fault, I messed up the timings, because I did not use consistent optimizer flags when compiling the library and the test program.
>>>
>>> Actually on Windows (same machine on which I run Ubuntu, which
>>> doesn't really matter, because my computer in office gives very
>>> similar
>>> timings) I get for 1E8 random numbers generated (with O2)
>>>
>>> 400ms / 1100ms
>>>
>>> for the original ql mt / dynamic creator mt. The ql mt is just as
>>> fast as the boost mt implementation by the way. On Ubuntu with gcc
>>> 4.8.1 and O3 I get
>>>
>>> 290ms / 870ms
>>>
>>> and with O2 a close value, for the creator mt 910ms. Also it makes no difference if I use gcc 4.9.1 or clang 3.6.0.
>>>
>>> If I directly call the original C routine without using the wrapper object, I get 720ms.
>>>
>>> If I use the original library and a C example (both compiled with O3, this is the configuration how the library is shipped (it has a hardcoded make file)) => 730ms.
>>>
>>> This means, the wrapper introduces a slow down by 20% which seems not too bad.
>>>
>>> Otherwise the dcmt is slower by a factor of around 2-3 compared to the original mt in all cases. Since this is already the case with the original library, I wouldn't try to do anything about it at the moment.
>>>
>>> What is your opinion on this ?
>>>
>>> Peter
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> I compared dfiferent platforms again, but now on the _same_ machine - Original MT / Dynamic Creator MT (generation of 1E8 numbers, single threaded, with O2 (MSVC) and O3 (gcc, clang)). I also checked the boost implementation mt19937, which is very close to the ql original mt in all cases.
>>>
>>> Winodws / MSVC 2010 => 400ms / 1100ms Ubuntu / gcc 4.9.1 => 1200 ms
>>> /
>>> 1050 ms Ubuntu / gcc 4.8.1 => 1180 ms / 1040 ms Ubuntu / clang 3.6.0
>>> => 1340 ms / 1150 ms
>>>
>>> clang
>>> 290
>>> 720
>>> 870
>>>
>>> (c 730)
>>>
>>> so it looks like MSVC does a specific optimization for the QL and boost mt19937, which does not apply on the other platforms and not the the dynamic creator mt.
>>>
>>> At the moment I stil don't know what it is.
>>>
>>> On 18 September 2014 03:33, cheng li <scr...@gm...> wrote:
>>>> Let me try your statement once I have a time.
>>>>
>>>> Regards,
>>>> Cheng
>>>>
>>>> -----邮件原件-----
>>>> 发件人: cheng li [mailto:scr...@gm...]
>>>> 发送时间: 2014年9月18日 9:18
>>>> 收件人: 'Peter Caspers'
>>>> 抄送: 'QuantLib Mailing Lists'
>>>> 主题: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>> Creator MT
>>>>
>>>> Hi Peter,
>>>>
>>>> I used gcc 4.8.2.
>>>>
>>>> My result with O3 optimization is still not good. Similar
>>>> performance of new MT ( about 3~4X speed down)
>>>>
>>>> I used such statement to turn on o3 optimization before I do
>>>> ./configure for QuantLib,
>>>>
>>>> Export CXXFLAGS="-g -O3"
>>>>
>>>> Am I right?
>>>>
>>>> Regards,
>>>> Cheng
>>>>
>>>> -----邮件原件-----
>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>> 发送时间: 2014年9月18日 0:36
>>>> 收件人: cheng li
>>>> 抄送: QuantLib Mailing Lists
>>>> 主题: Re: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>> Creator MT
>>>>
>>>> with gcc 4.9.1 and O2 the new mt is a bit slower than the original one (but only by a factor of 1.1).
>>>> I have to add both -frename-registers, -finline-functions to -O2 to get the speed up back I mentioned before.
>>>>
>>>> Which compiler do you use on Ubuntu ?
>>>>
>>>> Peter
>>>>
>>>>
>>>>
>>>> On 17 September 2014 03:26, cheng li <scr...@gm...> wrote:
>>>>> Thanks Peter. I test on Ubuntu also, about 3~4X lower with -O2 optiomization.
>>>>>
>>>>> I'll try -O3 on my machine also with Ubuntu.
>>>>>
>>>>> Regards,
>>>>> Cheng
>>>>>
>>>>> -----邮件原件-----
>>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>>> 发送时间: 2014年9月17日 0:32
>>>>> 收件人: Cheng Li; QuantLib Mailing Lists
>>>>> 主题: Re: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic Creator
>>>>> MT
>>>>>
>>>>> Hi Cheng,
>>>>>
>>>>> indeed with msvc I get a slow down with a factor of ~2.8x. As I said, under gcc it is a speed up ~ 0.8x (with -O3).
>>>>>
>>>>> Does anyone have an idea where the different behaviour under gcc /
>>>>> linux and msvc might come from (and how to improve the msvc side
>>>>> if
>>>>> possible) ?
>>>>>
>>>>> Kind regards
>>>>> Peter
>>>>>
>>>>>
>>>>>
>>>>> On 13 September 2014 08:27, Cheng Li <scr...@gm...> wrote:
>>>>>> Thanks Peter.
>>>>>>
>>>>>> Regards,
>>>>>> Cheng
>>>>>>
>>>>>> 发自我的 iPad
>>>>>>
>>>>>>> 在 2014年9月13日,13:29,Peter Caspers <pca...@gm...> 写道:
>>>>>>>
>>>>>>> I will have a look on monday ( I have a Windows machine at work
>>>>>>> ) and see how it works there
>>>>>>>
>>>>>>> Thanks
>>>>>>> Peter
>>>>>>>
>>>>>>> Von meinem iPhone gesendet
>>>>>>>
>>>>>>>> Am 13.09.2014 um 04:41 schrieb Cheng Li <scr...@gm...>:
>>>>>>>>
>>>>>>>> I am on Win7 x64bit, using vs 2012 with quantlib 1.4 boost 1.55
>>>>>>>> under release mode
>>>>>>>>
>>>>>>>> 发自我的 iPad
>>>>>>>>
>>>>>>>>> 在 2014年9月13日,0:08,Peter Caspers <pca...@gm...> 写道:
>>>>>>>>>
>>>>>>>>> Hi Cheng,
>>>>>>>>>
>>>>>>>>> no, I get better timings with the dcmt implementation, e.g.
>>>>>>>>> for
>>>>>>>>> 1E8 numbers
>>>>>>>>>
>>>>>>>>> dcmt 0.982s
>>>>>>>>> quantlib 1.159s
>>>>>>>>>
>>>>>>>>> on my computer. Can you post your platform and compiler
>>>>>>>>> settings, so that I can try to reproduce ?
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>> Peter
>>>>>>>>>
>>>>>>>>>> On 12 September 2014 05:29, cheng li <scr...@gm...> wrote:
>>>>>>>>>> Hi Peter,
>>>>>>>>>>
>>>>>>>>>> I have used your wrapper dcmt library and test with following
>>>>>>>>>> codes: It seems dcmt in single thread is 4X slower than the
>>>>>>>>>> QL original MT. Is this consistent with your side?
>>>>>>>>>>
>>>>>>>>>> #include <ql/quantlib.hpp>
>>>>>>>>>> #include <boost/timer.hpp>
>>>>>>>>>> #include <iostream>
>>>>>>>>>>
>>>>>>>>>> using namespace QuantLib;
>>>>>>>>>> using namespace std;
>>>>>>>>>>
>>>>>>>>>> int main() {
>>>>>>>>>>
>>>>>>>>>> int samples;
>>>>>>>>>> cin >> samples;
>>>>>>>>>> boost::timer myTimer;
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterUniformRng orignalMT;
>>>>>>>>>> for(Size i=0; i<samples; ++i)
>>>>>>>>>> orignalMT.next();
>>>>>>>>>>
>>>>>>>>>> cout << myTimer.elapsed() << endl;
>>>>>>>>>>
>>>>>>>>>> myTimer.restart();
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterDynamicRng mt( mtdesc_0_8_19937[5] , 1);
>>>>>>>>>>
>>>>>>>>>> for(Size i=0; i<samples; ++i) {
>>>>>>>>>> mt.next();
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> cout << myTimer.elapsed() << endl;
>>>>>>>>>>
>>>>>>>>>> int n;
>>>>>>>>>> std::cin>>n;
>>>>>>>>>> return 0;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> Regards,
>>>>>>>>>> Cheng
>>>>>>>>>>
>>>>>>>>>> -----邮件原件-----
>>>>>>>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>>>>>>>> 发送时间: 2014年9月6日 20:48
>>>>>>>>>> 收件人: Joseph Wang
>>>>>>>>>> 抄送: QuantLib Mailing Lists
>>>>>>>>>> 主题: Re: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>>>>>>>> Creator MT
>>>>>>>>>>
>>>>>>>>>> Hi Joseph, all,
>>>>>>>>>>
>>>>>>>>>> I added a wrapper for the dcmt library (Dynamic Creator of
>>>>>>>>>> Mersenne Twisters).
>>>>>>>>>>
>>>>>>>>>> https://github.com/lballabio/quantlib/pull/132
>>>>>>>>>>
>>>>>>>>>> I guess this is a useful building block for multithreaded monte carlo.
>>>>>>>>>> Since for bigger p the dynamic creation takes a long time (it
>>>>>>>>>> feels more like mining than computing ...), I precomputed 8 independent instances (i.e.
>>>>>>>>>> for use in at most 8 parallel threads), for the "standard"
>>>>>>>>>> value p = 19937 and word size 32, which one can instantiate
>>>>>>>>>> with
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterDynamicRng mt( mtdesc_0_8_19937[i] , seed_i );
>>>>>>>>>>
>>>>>>>>>> for i = 0, ... , 7.
>>>>>>>>>>
>>>>>>>>>> In addition the speed of random number generation seems a bit
>>>>>>>>>> faster in the dcmt library than with the original ql twister.
>>>>>>>>>> I observe running times scaled by a factor of 0.8 when generating 1E8 numbers.
>>>>>>>>>>
>>>>>>>>>> All this is of course experimental and not well tested, so
>>>>>>>>>> any feedback and experiences are very welcome. I'd be very
>>>>>>>>>> interested in your opinion on the dcmt library and applications in parallel monte carlo.
>>>>>>>>>>
>>>>>>>>>> Peter
>>>>>>>>>>
>>>>>>>>>>> On 20 October 2013 16:01, Joseph Wang <joe...@gm...> wrote:
>>>>>>>>>>> I've done some more parallelization with openmp and quantlib.
>>>>>>>>>>> I've uploaded the changes to the
>>>>>>>>>>> https://github.com/joequant/quantlib. The branch openmp has some changes that I've issued a pull-request for.
>>>>>>>>>>> openmp-mcario has some changes that need some more work.
>>>>>>>>>>>
>>>>>>>>>>> I've gotten the MC to work by generating the paths in a
>>>>>>>>>>> critical
>>>>>>>>>> situation.
>>>>>>>>>>> Calculating the prices once I have the path is
>>>>>>>>>>> multithreaded, but right now I need to generate the paths in
>>>>>>>>>>> a single thread to make sure that the same sequence is generated.
>>>>>>>>>>>
>>>>>>>>>>> The big issue right now is that there is a race condition in
>>>>>>>>>>> the calculation of barrier options which is causing one
>>>>>>>>>>> regression test to fail. The problem is that the random
>>>>>>>>>>> number generator is being called in BarrierPathPricer, and
>>>>>>>>>>> since that is run multithread, the sequence that is being
>>>>>>>>>>> pulled will change from run to run based on whether other paths have pulled random numbers already.
>>>>>>>>>>>
>>>>>>>>>>> I think that fixing this is going to need some code
>>>>>>>>>>> restructuring, but I'd like to get some thoughts as to how
>>>>>>>>>>> to do this. Basically, the interface needs to be changed
>>>>>>>>>>> slightly so that the random numbers are drawn in a fixed
>>>>>>>>>>> order, and that might mean one call to get any additional
>>>>>>>>>>> random numbers in a pricer, which gets called in a critical section, and another to run the pricer with the random numbers.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -----
>>>>>>>>>>> -------- October Webinars: Code for Performance Free Intel
>>>>>>>>>>> webinars can help you accelerate application performance.
>>>>>>>>>>> Explore tips for MPI, OpenMP, advanced profiling, and more.
>>>>>>>>>>> Get the most from the latest Intel processors and
>>>>>>>>>>> coprocessors. See abstracts and register >
>>>>>>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4
>>>>>>>>>>> 1
>>>>>>>>>>> 4
>>>>>>>>>>> 0 / o stg.c lktrk
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> QuantLib-dev mailing list
>>>>>>>>>>> Qua...@li...
>>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>>>>>>>>
>>>>>>>>>> -------------------------------------------------------------
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> ----------
>>>>>>>>>> --
>>>>>>>>>> Slashdot TV.
>>>>>>>>>> Video for Nerds. Stuff that matters.
>>>>>>>>>> http://tv.slashdot.org/
>>>>>>>>>> _______________________________________________
>>>>>>>>>> QuantLib-dev mailing list
>>>>>>>>>> Qua...@li...
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>>>>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>
|
|
From: cheng l. <scr...@gm...> - 2014-10-27 02:57:47
|
Will do, my pleasure:)
Regards,
Cheng
-----邮件原件-----
发件人: Peter Caspers [mailto:pca...@gm...]
发送时间: 2014年10月27日 3:49
收件人: cheng li
抄送: QuantLib Mailing Lists
主题: Re: 答复: 答复: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic Creator MT
Hi,
I think I could further improve the performance of the precomputed twisters (i.e. the ones constructed as
MersenneTwisterCustomRng<Mtdesc19937_5> mt(42);
). Now they seem to be just as fast as the original one (I only tested on Linux). The PR is updated.
Cheng, would you maybe like to double check ?
Thanks a lot
Peter
On 23 September 2014 03:50, cheng li <scr...@gm...> wrote:
> Hi Peter,
>
> On my side the performance is also improved. Now around 2.5 slow down. Thanks for your help.
>
> Regards,
> Cheng
>
> -----邮件原件-----
> 发件人: Peter Caspers [mailto:pca...@gm...]
> 发送时间: 2014年9月22日 16:05
> 收件人: cheng li
> 抄送: QuantLib Mailing Lists
> 主题: Re: 答复: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo :
> Dynamic Creator MT
>
> yes, please. The slowdown on Windows on my office computer is around 1.6 now.
> best regards
> Peter
>
> On 22 September 2014 03:48, cheng li <scr...@gm...> wrote:
>> Hi Peter,
>>
>> Thanks for your effort. I'll definitely have a try:)
>>
>> Regards,
>> Cheng
>>
>> -----邮件原件-----
>> 发件人: Peter Caspers [mailto:pca...@gm...]
>> 发送时间: 2014年9月21日 23:11
>> 收件人: cheng.li
>> 抄送: QuantLib Mailing Lists
>> 主题: Re: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo :
>> Dynamic Creator MT
>>
>> Hi Cheng,
>>
>> I switched to a template class for precomputed twisters, which is
>> faster by a factor of 2 (450ms instead of 870ms). This can be
>> instantiated with
>>
>> MersenneTwisterCustomRng<Mtdesc19937_5> mt(42);
>>
>> with 5 replaceable by 0 to 7 as before. The other is only needed now if you want to create a mt during runtime.
>>
>> The pull request is updated accordingly.
>>
>> Best regards
>> Peter
>>
>>
>>
>>
>> On 21 September 2014 08:11, cheng.li <scr...@gm...> wrote:
>>> Hi Peter,
>>>
>>> Thanks for your hard work. I think our results are consistent.
>>>
>>> Regards,
>>> Cheng
>>>
>>> -----邮件原件-----
>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>> 发送时间: 2014年9月21日 0:33
>>> 收件人: cheng li
>>> 抄送: QuantLib Mailing Lists
>>> 主题: Re: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>> Creator MT
>>>
>>> Hi Cheng,
>>>
>>> sorry, this was my fault, I messed up the timings, because I did not use consistent optimizer flags when compiling the library and the test program.
>>>
>>> Actually on Windows (same machine on which I run Ubuntu, which
>>> doesn't really matter, because my computer in office gives very
>>> similar
>>> timings) I get for 1E8 random numbers generated (with O2)
>>>
>>> 400ms / 1100ms
>>>
>>> for the original ql mt / dynamic creator mt. The ql mt is just as
>>> fast as the boost mt implementation by the way. On Ubuntu with gcc
>>> 4.8.1 and O3 I get
>>>
>>> 290ms / 870ms
>>>
>>> and with O2 a close value, for the creator mt 910ms. Also it makes no difference if I use gcc 4.9.1 or clang 3.6.0.
>>>
>>> If I directly call the original C routine without using the wrapper object, I get 720ms.
>>>
>>> If I use the original library and a C example (both compiled with O3, this is the configuration how the library is shipped (it has a hardcoded make file)) => 730ms.
>>>
>>> This means, the wrapper introduces a slow down by 20% which seems not too bad.
>>>
>>> Otherwise the dcmt is slower by a factor of around 2-3 compared to the original mt in all cases. Since this is already the case with the original library, I wouldn't try to do anything about it at the moment.
>>>
>>> What is your opinion on this ?
>>>
>>> Peter
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> I compared dfiferent platforms again, but now on the _same_ machine - Original MT / Dynamic Creator MT (generation of 1E8 numbers, single threaded, with O2 (MSVC) and O3 (gcc, clang)). I also checked the boost implementation mt19937, which is very close to the ql original mt in all cases.
>>>
>>> Winodws / MSVC 2010 => 400ms / 1100ms Ubuntu / gcc 4.9.1 => 1200 ms
>>> /
>>> 1050 ms Ubuntu / gcc 4.8.1 => 1180 ms / 1040 ms Ubuntu / clang 3.6.0
>>> => 1340 ms / 1150 ms
>>>
>>> clang
>>> 290
>>> 720
>>> 870
>>>
>>> (c 730)
>>>
>>> so it looks like MSVC does a specific optimization for the QL and boost mt19937, which does not apply on the other platforms and not the the dynamic creator mt.
>>>
>>> At the moment I stil don't know what it is.
>>>
>>> On 18 September 2014 03:33, cheng li <scr...@gm...> wrote:
>>>> Let me try your statement once I have a time.
>>>>
>>>> Regards,
>>>> Cheng
>>>>
>>>> -----邮件原件-----
>>>> 发件人: cheng li [mailto:scr...@gm...]
>>>> 发送时间: 2014年9月18日 9:18
>>>> 收件人: 'Peter Caspers'
>>>> 抄送: 'QuantLib Mailing Lists'
>>>> 主题: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>> Creator MT
>>>>
>>>> Hi Peter,
>>>>
>>>> I used gcc 4.8.2.
>>>>
>>>> My result with O3 optimization is still not good. Similar
>>>> performance of new MT ( about 3~4X speed down)
>>>>
>>>> I used such statement to turn on o3 optimization before I do
>>>> ./configure for QuantLib,
>>>>
>>>> Export CXXFLAGS="-g -O3"
>>>>
>>>> Am I right?
>>>>
>>>> Regards,
>>>> Cheng
>>>>
>>>> -----邮件原件-----
>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>> 发送时间: 2014年9月18日 0:36
>>>> 收件人: cheng li
>>>> 抄送: QuantLib Mailing Lists
>>>> 主题: Re: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>> Creator MT
>>>>
>>>> with gcc 4.9.1 and O2 the new mt is a bit slower than the original one (but only by a factor of 1.1).
>>>> I have to add both -frename-registers, -finline-functions to -O2 to get the speed up back I mentioned before.
>>>>
>>>> Which compiler do you use on Ubuntu ?
>>>>
>>>> Peter
>>>>
>>>>
>>>>
>>>> On 17 September 2014 03:26, cheng li <scr...@gm...> wrote:
>>>>> Thanks Peter. I test on Ubuntu also, about 3~4X lower with -O2 optiomization.
>>>>>
>>>>> I'll try -O3 on my machine also with Ubuntu.
>>>>>
>>>>> Regards,
>>>>> Cheng
>>>>>
>>>>> -----邮件原件-----
>>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>>> 发送时间: 2014年9月17日 0:32
>>>>> 收件人: Cheng Li; QuantLib Mailing Lists
>>>>> 主题: Re: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic Creator
>>>>> MT
>>>>>
>>>>> Hi Cheng,
>>>>>
>>>>> indeed with msvc I get a slow down with a factor of ~2.8x. As I said, under gcc it is a speed up ~ 0.8x (with -O3).
>>>>>
>>>>> Does anyone have an idea where the different behaviour under gcc /
>>>>> linux and msvc might come from (and how to improve the msvc side
>>>>> if
>>>>> possible) ?
>>>>>
>>>>> Kind regards
>>>>> Peter
>>>>>
>>>>>
>>>>>
>>>>> On 13 September 2014 08:27, Cheng Li <scr...@gm...> wrote:
>>>>>> Thanks Peter.
>>>>>>
>>>>>> Regards,
>>>>>> Cheng
>>>>>>
>>>>>> 发自我的 iPad
>>>>>>
>>>>>>> 在 2014年9月13日,13:29,Peter Caspers <pca...@gm...> 写道:
>>>>>>>
>>>>>>> I will have a look on monday ( I have a Windows machine at work
>>>>>>> ) and see how it works there
>>>>>>>
>>>>>>> Thanks
>>>>>>> Peter
>>>>>>>
>>>>>>> Von meinem iPhone gesendet
>>>>>>>
>>>>>>>> Am 13.09.2014 um 04:41 schrieb Cheng Li <scr...@gm...>:
>>>>>>>>
>>>>>>>> I am on Win7 x64bit, using vs 2012 with quantlib 1.4 boost 1.55
>>>>>>>> under release mode
>>>>>>>>
>>>>>>>> 发自我的 iPad
>>>>>>>>
>>>>>>>>> 在 2014年9月13日,0:08,Peter Caspers <pca...@gm...> 写道:
>>>>>>>>>
>>>>>>>>> Hi Cheng,
>>>>>>>>>
>>>>>>>>> no, I get better timings with the dcmt implementation, e.g.
>>>>>>>>> for
>>>>>>>>> 1E8 numbers
>>>>>>>>>
>>>>>>>>> dcmt 0.982s
>>>>>>>>> quantlib 1.159s
>>>>>>>>>
>>>>>>>>> on my computer. Can you post your platform and compiler
>>>>>>>>> settings, so that I can try to reproduce ?
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>> Peter
>>>>>>>>>
>>>>>>>>>> On 12 September 2014 05:29, cheng li <scr...@gm...> wrote:
>>>>>>>>>> Hi Peter,
>>>>>>>>>>
>>>>>>>>>> I have used your wrapper dcmt library and test with following
>>>>>>>>>> codes: It seems dcmt in single thread is 4X slower than the
>>>>>>>>>> QL original MT. Is this consistent with your side?
>>>>>>>>>>
>>>>>>>>>> #include <ql/quantlib.hpp>
>>>>>>>>>> #include <boost/timer.hpp>
>>>>>>>>>> #include <iostream>
>>>>>>>>>>
>>>>>>>>>> using namespace QuantLib;
>>>>>>>>>> using namespace std;
>>>>>>>>>>
>>>>>>>>>> int main() {
>>>>>>>>>>
>>>>>>>>>> int samples;
>>>>>>>>>> cin >> samples;
>>>>>>>>>> boost::timer myTimer;
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterUniformRng orignalMT;
>>>>>>>>>> for(Size i=0; i<samples; ++i)
>>>>>>>>>> orignalMT.next();
>>>>>>>>>>
>>>>>>>>>> cout << myTimer.elapsed() << endl;
>>>>>>>>>>
>>>>>>>>>> myTimer.restart();
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterDynamicRng mt( mtdesc_0_8_19937[5] , 1);
>>>>>>>>>>
>>>>>>>>>> for(Size i=0; i<samples; ++i) {
>>>>>>>>>> mt.next();
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> cout << myTimer.elapsed() << endl;
>>>>>>>>>>
>>>>>>>>>> int n;
>>>>>>>>>> std::cin>>n;
>>>>>>>>>> return 0;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> Regards,
>>>>>>>>>> Cheng
>>>>>>>>>>
>>>>>>>>>> -----邮件原件-----
>>>>>>>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>>>>>>>> 发送时间: 2014年9月6日 20:48
>>>>>>>>>> 收件人: Joseph Wang
>>>>>>>>>> 抄送: QuantLib Mailing Lists
>>>>>>>>>> 主题: Re: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>>>>>>>> Creator MT
>>>>>>>>>>
>>>>>>>>>> Hi Joseph, all,
>>>>>>>>>>
>>>>>>>>>> I added a wrapper for the dcmt library (Dynamic Creator of
>>>>>>>>>> Mersenne Twisters).
>>>>>>>>>>
>>>>>>>>>> https://github.com/lballabio/quantlib/pull/132
>>>>>>>>>>
>>>>>>>>>> I guess this is a useful building block for multithreaded monte carlo.
>>>>>>>>>> Since for bigger p the dynamic creation takes a long time (it
>>>>>>>>>> feels more like mining than computing ...), I precomputed 8 independent instances (i.e.
>>>>>>>>>> for use in at most 8 parallel threads), for the "standard"
>>>>>>>>>> value p = 19937 and word size 32, which one can instantiate
>>>>>>>>>> with
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterDynamicRng mt( mtdesc_0_8_19937[i] , seed_i );
>>>>>>>>>>
>>>>>>>>>> for i = 0, ... , 7.
>>>>>>>>>>
>>>>>>>>>> In addition the speed of random number generation seems a bit
>>>>>>>>>> faster in the dcmt library than with the original ql twister.
>>>>>>>>>> I observe running times scaled by a factor of 0.8 when generating 1E8 numbers.
>>>>>>>>>>
>>>>>>>>>> All this is of course experimental and not well tested, so
>>>>>>>>>> any feedback and experiences are very welcome. I'd be very
>>>>>>>>>> interested in your opinion on the dcmt library and applications in parallel monte carlo.
>>>>>>>>>>
>>>>>>>>>> Peter
>>>>>>>>>>
>>>>>>>>>>> On 20 October 2013 16:01, Joseph Wang <joe...@gm...> wrote:
>>>>>>>>>>> I've done some more parallelization with openmp and quantlib.
>>>>>>>>>>> I've uploaded the changes to the
>>>>>>>>>>> https://github.com/joequant/quantlib. The branch openmp has some changes that I've issued a pull-request for.
>>>>>>>>>>> openmp-mcario has some changes that need some more work.
>>>>>>>>>>>
>>>>>>>>>>> I've gotten the MC to work by generating the paths in a
>>>>>>>>>>> critical
>>>>>>>>>> situation.
>>>>>>>>>>> Calculating the prices once I have the path is
>>>>>>>>>>> multithreaded, but right now I need to generate the paths in
>>>>>>>>>>> a single thread to make sure that the same sequence is generated.
>>>>>>>>>>>
>>>>>>>>>>> The big issue right now is that there is a race condition in
>>>>>>>>>>> the calculation of barrier options which is causing one
>>>>>>>>>>> regression test to fail. The problem is that the random
>>>>>>>>>>> number generator is being called in BarrierPathPricer, and
>>>>>>>>>>> since that is run multithread, the sequence that is being
>>>>>>>>>>> pulled will change from run to run based on whether other paths have pulled random numbers already.
>>>>>>>>>>>
>>>>>>>>>>> I think that fixing this is going to need some code
>>>>>>>>>>> restructuring, but I'd like to get some thoughts as to how
>>>>>>>>>>> to do this. Basically, the interface needs to be changed
>>>>>>>>>>> slightly so that the random numbers are drawn in a fixed
>>>>>>>>>>> order, and that might mean one call to get any additional
>>>>>>>>>>> random numbers in a pricer, which gets called in a critical section, and another to run the pricer with the random numbers.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -----
>>>>>>>>>>> -------- October Webinars: Code for Performance Free Intel
>>>>>>>>>>> webinars can help you accelerate application performance.
>>>>>>>>>>> Explore tips for MPI, OpenMP, advanced profiling, and more.
>>>>>>>>>>> Get the most from the latest Intel processors and
>>>>>>>>>>> coprocessors. See abstracts and register >
>>>>>>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4
>>>>>>>>>>> 1
>>>>>>>>>>> 4
>>>>>>>>>>> 0 / o stg.c lktrk
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> QuantLib-dev mailing list
>>>>>>>>>>> Qua...@li...
>>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>>>>>>>>
>>>>>>>>>> -------------------------------------------------------------
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> ----------
>>>>>>>>>> --
>>>>>>>>>> Slashdot TV.
>>>>>>>>>> Video for Nerds. Stuff that matters.
>>>>>>>>>> http://tv.slashdot.org/
>>>>>>>>>> _______________________________________________
>>>>>>>>>> QuantLib-dev mailing list
>>>>>>>>>> Qua...@li...
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>>>>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>
|
|
From: Peter C. <pca...@gm...> - 2014-10-26 19:49:37
|
Hi,
I think I could further improve the performance of the precomputed
twisters (i.e. the ones constructed as
MersenneTwisterCustomRng<Mtdesc19937_5> mt(42);
). Now they seem to be just as fast as the original one (I only tested
on Linux). The PR is updated.
Cheng, would you maybe like to double check ?
Thanks a lot
Peter
On 23 September 2014 03:50, cheng li <scr...@gm...> wrote:
> Hi Peter,
>
> On my side the performance is also improved. Now around 2.5 slow down. Thanks for your help.
>
> Regards,
> Cheng
>
> -----邮件原件-----
> 发件人: Peter Caspers [mailto:pca...@gm...]
> 发送时间: 2014年9月22日 16:05
> 收件人: cheng li
> 抄送: QuantLib Mailing Lists
> 主题: Re: 答复: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic Creator MT
>
> yes, please. The slowdown on Windows on my office computer is around 1.6 now.
> best regards
> Peter
>
> On 22 September 2014 03:48, cheng li <scr...@gm...> wrote:
>> Hi Peter,
>>
>> Thanks for your effort. I'll definitely have a try:)
>>
>> Regards,
>> Cheng
>>
>> -----邮件原件-----
>> 发件人: Peter Caspers [mailto:pca...@gm...]
>> 发送时间: 2014年9月21日 23:11
>> 收件人: cheng.li
>> 抄送: QuantLib Mailing Lists
>> 主题: Re: 答复: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>> Creator MT
>>
>> Hi Cheng,
>>
>> I switched to a template class for precomputed twisters, which is
>> faster by a factor of 2 (450ms instead of 870ms). This can be
>> instantiated with
>>
>> MersenneTwisterCustomRng<Mtdesc19937_5> mt(42);
>>
>> with 5 replaceable by 0 to 7 as before. The other is only needed now if you want to create a mt during runtime.
>>
>> The pull request is updated accordingly.
>>
>> Best regards
>> Peter
>>
>>
>>
>>
>> On 21 September 2014 08:11, cheng.li <scr...@gm...> wrote:
>>> Hi Peter,
>>>
>>> Thanks for your hard work. I think our results are consistent.
>>>
>>> Regards,
>>> Cheng
>>>
>>> -----邮件原件-----
>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>> 发送时间: 2014年9月21日 0:33
>>> 收件人: cheng li
>>> 抄送: QuantLib Mailing Lists
>>> 主题: Re: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>> Creator MT
>>>
>>> Hi Cheng,
>>>
>>> sorry, this was my fault, I messed up the timings, because I did not use consistent optimizer flags when compiling the library and the test program.
>>>
>>> Actually on Windows (same machine on which I run Ubuntu, which
>>> doesn't really matter, because my computer in office gives very
>>> similar
>>> timings) I get for 1E8 random numbers generated (with O2)
>>>
>>> 400ms / 1100ms
>>>
>>> for the original ql mt / dynamic creator mt. The ql mt is just as
>>> fast as the boost mt implementation by the way. On Ubuntu with gcc
>>> 4.8.1 and O3 I get
>>>
>>> 290ms / 870ms
>>>
>>> and with O2 a close value, for the creator mt 910ms. Also it makes no difference if I use gcc 4.9.1 or clang 3.6.0.
>>>
>>> If I directly call the original C routine without using the wrapper object, I get 720ms.
>>>
>>> If I use the original library and a C example (both compiled with O3, this is the configuration how the library is shipped (it has a hardcoded make file)) => 730ms.
>>>
>>> This means, the wrapper introduces a slow down by 20% which seems not too bad.
>>>
>>> Otherwise the dcmt is slower by a factor of around 2-3 compared to the original mt in all cases. Since this is already the case with the original library, I wouldn't try to do anything about it at the moment.
>>>
>>> What is your opinion on this ?
>>>
>>> Peter
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> I compared dfiferent platforms again, but now on the _same_ machine - Original MT / Dynamic Creator MT (generation of 1E8 numbers, single threaded, with O2 (MSVC) and O3 (gcc, clang)). I also checked the boost implementation mt19937, which is very close to the ql original mt in all cases.
>>>
>>> Winodws / MSVC 2010 => 400ms / 1100ms Ubuntu / gcc 4.9.1 => 1200 ms /
>>> 1050 ms Ubuntu / gcc 4.8.1 => 1180 ms / 1040 ms Ubuntu / clang 3.6.0
>>> => 1340 ms / 1150 ms
>>>
>>> clang
>>> 290
>>> 720
>>> 870
>>>
>>> (c 730)
>>>
>>> so it looks like MSVC does a specific optimization for the QL and boost mt19937, which does not apply on the other platforms and not the the dynamic creator mt.
>>>
>>> At the moment I stil don't know what it is.
>>>
>>> On 18 September 2014 03:33, cheng li <scr...@gm...> wrote:
>>>> Let me try your statement once I have a time.
>>>>
>>>> Regards,
>>>> Cheng
>>>>
>>>> -----邮件原件-----
>>>> 发件人: cheng li [mailto:scr...@gm...]
>>>> 发送时间: 2014年9月18日 9:18
>>>> 收件人: 'Peter Caspers'
>>>> 抄送: 'QuantLib Mailing Lists'
>>>> 主题: 答复: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>> Creator MT
>>>>
>>>> Hi Peter,
>>>>
>>>> I used gcc 4.8.2.
>>>>
>>>> My result with O3 optimization is still not good. Similar
>>>> performance of new MT ( about 3~4X speed down)
>>>>
>>>> I used such statement to turn on o3 optimization before I do
>>>> ./configure for QuantLib,
>>>>
>>>> Export CXXFLAGS="-g -O3"
>>>>
>>>> Am I right?
>>>>
>>>> Regards,
>>>> Cheng
>>>>
>>>> -----邮件原件-----
>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>> 发送时间: 2014年9月18日 0:36
>>>> 收件人: cheng li
>>>> 抄送: QuantLib Mailing Lists
>>>> 主题: Re: 答复: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic
>>>> Creator MT
>>>>
>>>> with gcc 4.9.1 and O2 the new mt is a bit slower than the original one (but only by a factor of 1.1).
>>>> I have to add both -frename-registers, -finline-functions to -O2 to get the speed up back I mentioned before.
>>>>
>>>> Which compiler do you use on Ubuntu ?
>>>>
>>>> Peter
>>>>
>>>>
>>>>
>>>> On 17 September 2014 03:26, cheng li <scr...@gm...> wrote:
>>>>> Thanks Peter. I test on Ubuntu also, about 3~4X lower with -O2 optiomization.
>>>>>
>>>>> I'll try -O3 on my machine also with Ubuntu.
>>>>>
>>>>> Regards,
>>>>> Cheng
>>>>>
>>>>> -----邮件原件-----
>>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>>> 发送时间: 2014年9月17日 0:32
>>>>> 收件人: Cheng Li; QuantLib Mailing Lists
>>>>> 主题: Re: 答复: [Quantlib-dev] Openmp work on mcarlo : Dynamic Creator
>>>>> MT
>>>>>
>>>>> Hi Cheng,
>>>>>
>>>>> indeed with msvc I get a slow down with a factor of ~2.8x. As I said, under gcc it is a speed up ~ 0.8x (with -O3).
>>>>>
>>>>> Does anyone have an idea where the different behaviour under gcc /
>>>>> linux and msvc might come from (and how to improve the msvc side if
>>>>> possible) ?
>>>>>
>>>>> Kind regards
>>>>> Peter
>>>>>
>>>>>
>>>>>
>>>>> On 13 September 2014 08:27, Cheng Li <scr...@gm...> wrote:
>>>>>> Thanks Peter.
>>>>>>
>>>>>> Regards,
>>>>>> Cheng
>>>>>>
>>>>>> 发自我的 iPad
>>>>>>
>>>>>>> 在 2014年9月13日,13:29,Peter Caspers <pca...@gm...> 写道:
>>>>>>>
>>>>>>> I will have a look on monday ( I have a Windows machine at work )
>>>>>>> and see how it works there
>>>>>>>
>>>>>>> Thanks
>>>>>>> Peter
>>>>>>>
>>>>>>> Von meinem iPhone gesendet
>>>>>>>
>>>>>>>> Am 13.09.2014 um 04:41 schrieb Cheng Li <scr...@gm...>:
>>>>>>>>
>>>>>>>> I am on Win7 x64bit, using vs 2012 with quantlib 1.4 boost 1.55
>>>>>>>> under release mode
>>>>>>>>
>>>>>>>> 发自我的 iPad
>>>>>>>>
>>>>>>>>> 在 2014年9月13日,0:08,Peter Caspers <pca...@gm...> 写道:
>>>>>>>>>
>>>>>>>>> Hi Cheng,
>>>>>>>>>
>>>>>>>>> no, I get better timings with the dcmt implementation, e.g. for
>>>>>>>>> 1E8 numbers
>>>>>>>>>
>>>>>>>>> dcmt 0.982s
>>>>>>>>> quantlib 1.159s
>>>>>>>>>
>>>>>>>>> on my computer. Can you post your platform and compiler
>>>>>>>>> settings, so that I can try to reproduce ?
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>> Peter
>>>>>>>>>
>>>>>>>>>> On 12 September 2014 05:29, cheng li <scr...@gm...> wrote:
>>>>>>>>>> Hi Peter,
>>>>>>>>>>
>>>>>>>>>> I have used your wrapper dcmt library and test with following
>>>>>>>>>> codes: It seems dcmt in single thread is 4X slower than the QL
>>>>>>>>>> original MT. Is this consistent with your side?
>>>>>>>>>>
>>>>>>>>>> #include <ql/quantlib.hpp>
>>>>>>>>>> #include <boost/timer.hpp>
>>>>>>>>>> #include <iostream>
>>>>>>>>>>
>>>>>>>>>> using namespace QuantLib;
>>>>>>>>>> using namespace std;
>>>>>>>>>>
>>>>>>>>>> int main() {
>>>>>>>>>>
>>>>>>>>>> int samples;
>>>>>>>>>> cin >> samples;
>>>>>>>>>> boost::timer myTimer;
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterUniformRng orignalMT;
>>>>>>>>>> for(Size i=0; i<samples; ++i)
>>>>>>>>>> orignalMT.next();
>>>>>>>>>>
>>>>>>>>>> cout << myTimer.elapsed() << endl;
>>>>>>>>>>
>>>>>>>>>> myTimer.restart();
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterDynamicRng mt( mtdesc_0_8_19937[5] , 1);
>>>>>>>>>>
>>>>>>>>>> for(Size i=0; i<samples; ++i) {
>>>>>>>>>> mt.next();
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> cout << myTimer.elapsed() << endl;
>>>>>>>>>>
>>>>>>>>>> int n;
>>>>>>>>>> std::cin>>n;
>>>>>>>>>> return 0;
>>>>>>>>>> }
>>>>>>>>>>
>>>>>>>>>> Regards,
>>>>>>>>>> Cheng
>>>>>>>>>>
>>>>>>>>>> -----邮件原件-----
>>>>>>>>>> 发件人: Peter Caspers [mailto:pca...@gm...]
>>>>>>>>>> 发送时间: 2014年9月6日 20:48
>>>>>>>>>> 收件人: Joseph Wang
>>>>>>>>>> 抄送: QuantLib Mailing Lists
>>>>>>>>>> 主题: Re: [Quantlib-dev] Openmp work on mcarlo : Dynamic Creator
>>>>>>>>>> MT
>>>>>>>>>>
>>>>>>>>>> Hi Joseph, all,
>>>>>>>>>>
>>>>>>>>>> I added a wrapper for the dcmt library (Dynamic Creator of
>>>>>>>>>> Mersenne Twisters).
>>>>>>>>>>
>>>>>>>>>> https://github.com/lballabio/quantlib/pull/132
>>>>>>>>>>
>>>>>>>>>> I guess this is a useful building block for multithreaded monte carlo.
>>>>>>>>>> Since for bigger p the dynamic creation takes a long time (it
>>>>>>>>>> feels more like mining than computing ...), I precomputed 8 independent instances (i.e.
>>>>>>>>>> for use in at most 8 parallel threads), for the "standard"
>>>>>>>>>> value p = 19937 and word size 32, which one can instantiate
>>>>>>>>>> with
>>>>>>>>>>
>>>>>>>>>> MersenneTwisterDynamicRng mt( mtdesc_0_8_19937[i] , seed_i );
>>>>>>>>>>
>>>>>>>>>> for i = 0, ... , 7.
>>>>>>>>>>
>>>>>>>>>> In addition the speed of random number generation seems a bit
>>>>>>>>>> faster in the dcmt library than with the original ql twister.
>>>>>>>>>> I observe running times scaled by a factor of 0.8 when generating 1E8 numbers.
>>>>>>>>>>
>>>>>>>>>> All this is of course experimental and not well tested, so any
>>>>>>>>>> feedback and experiences are very welcome. I'd be very
>>>>>>>>>> interested in your opinion on the dcmt library and applications in parallel monte carlo.
>>>>>>>>>>
>>>>>>>>>> Peter
>>>>>>>>>>
>>>>>>>>>>> On 20 October 2013 16:01, Joseph Wang <joe...@gm...> wrote:
>>>>>>>>>>> I've done some more parallelization with openmp and quantlib.
>>>>>>>>>>> I've uploaded the changes to the
>>>>>>>>>>> https://github.com/joequant/quantlib. The branch openmp has some changes that I've issued a pull-request for.
>>>>>>>>>>> openmp-mcario has some changes that need some more work.
>>>>>>>>>>>
>>>>>>>>>>> I've gotten the MC to work by generating the paths in a
>>>>>>>>>>> critical
>>>>>>>>>> situation.
>>>>>>>>>>> Calculating the prices once I have the path is multithreaded,
>>>>>>>>>>> but right now I need to generate the paths in a single thread
>>>>>>>>>>> to make sure that the same sequence is generated.
>>>>>>>>>>>
>>>>>>>>>>> The big issue right now is that there is a race condition in
>>>>>>>>>>> the calculation of barrier options which is causing one
>>>>>>>>>>> regression test to fail. The problem is that the random
>>>>>>>>>>> number generator is being called in BarrierPathPricer, and
>>>>>>>>>>> since that is run multithread, the sequence that is being
>>>>>>>>>>> pulled will change from run to run based on whether other paths have pulled random numbers already.
>>>>>>>>>>>
>>>>>>>>>>> I think that fixing this is going to need some code
>>>>>>>>>>> restructuring, but I'd like to get some thoughts as to how to
>>>>>>>>>>> do this. Basically, the interface needs to be changed
>>>>>>>>>>> slightly so that the random numbers are drawn in a fixed
>>>>>>>>>>> order, and that might mean one call to get any additional
>>>>>>>>>>> random numbers in a pricer, which gets called in a critical section, and another to run the pricer with the random numbers.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -------------------------------------------------------------
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -
>>>>>>>>>>> -----
>>>>>>>>>>> -------- October Webinars: Code for Performance Free Intel
>>>>>>>>>>> webinars can help you accelerate application performance.
>>>>>>>>>>> Explore tips for MPI, OpenMP, advanced profiling, and more.
>>>>>>>>>>> Get the most from the latest Intel processors and
>>>>>>>>>>> coprocessors. See abstracts and register >
>>>>>>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/41
>>>>>>>>>>> 4
>>>>>>>>>>> 0 / o stg.c lktrk
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> QuantLib-dev mailing list
>>>>>>>>>>> Qua...@li...
>>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>>>>>>>>
>>>>>>>>>> --------------------------------------------------------------
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> -
>>>>>>>>>> ----------
>>>>>>>>>> --
>>>>>>>>>> Slashdot TV.
>>>>>>>>>> Video for Nerds. Stuff that matters.
>>>>>>>>>> http://tv.slashdot.org/
>>>>>>>>>> _______________________________________________
>>>>>>>>>> QuantLib-dev mailing list
>>>>>>>>>> Qua...@li...
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev
>>>>>>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>
|
|
From: Ferdinando M. A. <fer...@am...> - 2014-10-24 18:44:39
|
Ok sorry you wanted to cover market data... On Oct 24, 2014 8:42 PM, "Ferdinando M. Ametrano" <fer...@am...> wrote: > tackle Fplm and leave mxml as student exercise. Is mxml schema > copyrighted? > On Oct 24, 2014 8:23 PM, "Peter Caspers" <pca...@gm...> wrote: > >> Hi, >> since Murex is not too enthusiastic about this idea (for some >> understandable reasons, I think) I guess it is not advisable to start >> this as a public project. We could still do it with a ql-proprietary >> format and leave MX specific extensions to private projects, but I >> don't find that very attractive to be honest. Anyway. >> Regards >> Peter >> >> On 17 October 2014 21:24, Peter Caspers <pca...@gm...> wrote: >> > For a start I "only" thought of market data plus metadata to generate >> > corresponding termstructures. I guess I should first ask Murex to >> > confirm that it is ok to publish a parser for their xml under the ql >> > license and maybe put sample files in that format in the repository. >> > As soon as I have their permission I will send an initial commit (i.e. >> > a PR to Luigi) as a basis for further discussions. >> > >> > >> > On 17 October 2014 18:25, <ja...@fr...> wrote: >> >> Forgot this thread, seems useful a lot of work and a way to *leverage* >> (uh, sorry) the library. >> >> Is it possible to have QL talk FPML only and have translation modules >> in between? I am not sure they cover equivalent problems/data items; Like, >> an instrument position, and engine, or a data set. Or it would be dealing >> only with data? >> >> >> >> ----- Original Message ----- >> >>> I'm agnostic. Lately we have been moving (in practice, if not in >> >>> explicit purpose) towards separating the modules: I've been making >> >>> releases from my clone of the repository and Eric has been making >> >>> releases from his. I'm not against using the same repo, but it >> >>> doesn't >> >>> give anything more than what you get from different repos (other than >> >>> the convenience of cloning just once, and that can be seen as the >> >>> *in*convenience of having to clone everything). >> >>> >> >>> So I'm bailing out. No vote either way :) >> >>> >> >>> >> >>> On Fri, Oct 17, 2014 at 3:03 PM, Ferdinando M. Ametrano >> >>> <fer...@am...> wrote: >> >>> > I vote for separate project in the same repository, as for >> >>> > ObjectHandler >> >>> > among the others >> >>> > >> >>> > On Fri, Oct 17, 2014 at 1:02 PM, Peter Caspers >> >>> > <pca...@gm...> >> >>> > wrote: >> >>> >> >> >>> >> Hi Luigi, >> >>> >> >> >>> >> alright. That would mean a separate project on the level QuantLib, >> >>> >> QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? >> >>> >> >> >>> >> Thanks >> >>> >> Peter >> >>> >> >> >>> >> On 17 October 2014 12:00, Luigi Ballabio >> >>> >> <lui...@gm...> wrote: >> >>> >> > Hi Peter, >> >>> >> > apologies for the delay. Personally, I feel that it would be >> >>> >> > useful but as a separate module. >> >>> >> > >> >>> >> > Later, >> >>> >> > Luigi >> >>> >> > >> >>> >> > >> >>> >> > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers >> >>> >> > <pca...@gm...> >> >>> >> > wrote: >> >>> >> >> Hi, >> >>> >> >> >> >>> >> >> I am wondering if we want support classes in the core library >> >>> >> >> to >> >>> >> >> interface commercial systems' market data and termstructures. >> >>> >> >> Specifically I am thinking about Murex which has a standardized >> >>> >> >> XML >> >>> >> >> interface to export and import virtually all kind of market >> >>> >> >> data >> >>> >> >> across all market data sets in its financial database. >> >>> >> >> >> >>> >> >> The first step would be a class that represents the contents of >> >>> >> >> such a >> >>> >> >> file and providing easy access to its market data points (in a >> >>> >> >> more >> >>> >> >> user friendly way than a "stupid" general XML parser could do). >> >>> >> >> To >> >>> >> >> keep the dependencies simple, I'd rely on RapidXML as the XML >> >>> >> >> parser >> >>> >> >> for this part. >> >>> >> >> >> >>> >> >> A second layer built on that would provide functionality to >> >>> >> >> create >> >>> >> >> quantlib termstructures populated with that market data, based >> >>> >> >> on meta >> >>> >> >> data (instruments in a curve, their conventions etc.) provided >> >>> >> >> in >> >>> >> >> additional specification files (where parts of the necessary >> >>> >> >> meta data >> >>> >> >> is even available in the Mx export and could - optionally - >> >>> >> >> taken from >> >>> >> >> there). The other direction - create a MDRS file based on >> >>> >> >> quantlib >> >>> >> >> termstructure objects that can be uploaded to Murex - can also >> >>> >> >> be >> >>> >> >> interesting for certain applications. >> >>> >> >> >> >>> >> >> All that should be done on an abstract level with specific >> >>> >> >> implementations for different source systems, of which one >> >>> >> >> beneath >> >>> >> >> Murex MDRS could also be a simple "quantlib-proprietary" one, >> >>> >> >> which >> >>> >> >> would allow to share reference / test market data and meta data >> >>> >> >> for >> >>> >> >> associated concrete termstructure objects. >> >>> >> >> >> >>> >> >> I am quite sure that this is both doable and useful (because I >> >>> >> >> have >> >>> >> >> done parts of it and use it in my daily work). However it is >> >>> >> >> some work >> >>> >> >> to set up the framework in a clean way and maintain it, for >> >>> >> >> several >> >>> >> >> MDRS versions (some details sometimes change from release to >> >>> >> >> release, >> >>> >> >> but the general structure seems stable). >> >>> >> >> >> >>> >> >> So my questions are >> >>> >> >> >> >>> >> >> - does that belong into the core library, like under ql / io / >> >>> >> >> ... ( >> >>> >> >> well, for a start under ql / experimental / io / ... ;-) ) >> >>> >> >> - anyone else that would be interested in that functionality >> >>> >> >> and maybe >> >>> >> >> willing to contribute to such a development ? >> >>> >> >> - maybe other systems that could be of interest (maybe the >> >>> >> >> MarkIt CDS >> >>> >> >> market data files ?) >> >>> >> >> >> >>> >> >> Thanks a lot >> >>> >> >> Peter >> >>> >> >> >> >>> >> >> >> >>> >> >> >> ------------------------------------------------------------------------------ >> >>> >> >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> >>> >> >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI >> >>> >> >> DSS >> >>> >> >> Reports >> >>> >> >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White >> >>> >> >> paper >> >>> >> >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog >> >>> >> >> Analyzer >> >>> >> >> >> >>> >> >> >> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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> >> >>> >> >> >>> >> >> >>> >> >> ------------------------------------------------------------------------------ >> >>> >> Comprehensive Server Monitoring with Site24x7. >> >>> >> Monitor 10 servers for $9/Month. >> >>> >> Get alerted through email, SMS, voice calls or mobile push >> >>> >> notifications. >> >>> >> Take corrective actions from your mobile device. >> >>> >> http://p.sf.net/sfu/Zoho >> >>> >> _______________________________________________ >> >>> >> QuantLib-dev mailing list >> >>> >> Qua...@li... >> >>> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> >>> > >> >>> > >> >>> >> >>> >> >>> >> >>> -- >> >>> <https://implementingquantlib.blogspot.com> >> >>> <https://twitter.com/lballabio> >> >>> >> >>> >> ------------------------------------------------------------------------------ >> >>> Comprehensive Server Monitoring with Site24x7. >> >>> Monitor 10 servers for $9/Month. >> >>> Get alerted through email, SMS, voice calls or mobile push >> >>> notifications. >> >>> Take corrective actions from your mobile device. >> >>> http://p.sf.net/sfu/Zoho >> >>> _______________________________________________ >> >>> QuantLib-dev mailing list >> >>> Qua...@li... >> >>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> >>> >> >> >> >> >> ------------------------------------------------------------------------------ >> >> Comprehensive Server Monitoring with Site24x7. >> >> Monitor 10 servers for $9/Month. >> >> Get alerted through email, SMS, voice calls or mobile push >> notifications. >> >> Take corrective actions from your mobile device. >> >> http://p.sf.net/sfu/Zoho >> >> _______________________________________________ >> >> QuantLib-dev mailing list >> >> Qua...@li... >> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> > |
|
From: Ferdinando M. A. <fer...@am...> - 2014-10-24 18:42:30
|
tackle Fplm and leave mxml as student exercise. Is mxml schema copyrighted? On Oct 24, 2014 8:23 PM, "Peter Caspers" <pca...@gm...> wrote: > Hi, > since Murex is not too enthusiastic about this idea (for some > understandable reasons, I think) I guess it is not advisable to start > this as a public project. We could still do it with a ql-proprietary > format and leave MX specific extensions to private projects, but I > don't find that very attractive to be honest. Anyway. > Regards > Peter > > On 17 October 2014 21:24, Peter Caspers <pca...@gm...> wrote: > > For a start I "only" thought of market data plus metadata to generate > > corresponding termstructures. I guess I should first ask Murex to > > confirm that it is ok to publish a parser for their xml under the ql > > license and maybe put sample files in that format in the repository. > > As soon as I have their permission I will send an initial commit (i.e. > > a PR to Luigi) as a basis for further discussions. > > > > > > On 17 October 2014 18:25, <ja...@fr...> wrote: > >> Forgot this thread, seems useful a lot of work and a way to *leverage* > (uh, sorry) the library. > >> Is it possible to have QL talk FPML only and have translation modules > in between? I am not sure they cover equivalent problems/data items; Like, > an instrument position, and engine, or a data set. Or it would be dealing > only with data? > >> > >> ----- Original Message ----- > >>> I'm agnostic. Lately we have been moving (in practice, if not in > >>> explicit purpose) towards separating the modules: I've been making > >>> releases from my clone of the repository and Eric has been making > >>> releases from his. I'm not against using the same repo, but it > >>> doesn't > >>> give anything more than what you get from different repos (other than > >>> the convenience of cloning just once, and that can be seen as the > >>> *in*convenience of having to clone everything). > >>> > >>> So I'm bailing out. No vote either way :) > >>> > >>> > >>> On Fri, Oct 17, 2014 at 3:03 PM, Ferdinando M. Ametrano > >>> <fer...@am...> wrote: > >>> > I vote for separate project in the same repository, as for > >>> > ObjectHandler > >>> > among the others > >>> > > >>> > On Fri, Oct 17, 2014 at 1:02 PM, Peter Caspers > >>> > <pca...@gm...> > >>> > wrote: > >>> >> > >>> >> Hi Luigi, > >>> >> > >>> >> alright. That would mean a separate project on the level QuantLib, > >>> >> QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? > >>> >> > >>> >> Thanks > >>> >> Peter > >>> >> > >>> >> On 17 October 2014 12:00, Luigi Ballabio > >>> >> <lui...@gm...> wrote: > >>> >> > Hi Peter, > >>> >> > apologies for the delay. Personally, I feel that it would be > >>> >> > useful but as a separate module. > >>> >> > > >>> >> > Later, > >>> >> > Luigi > >>> >> > > >>> >> > > >>> >> > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers > >>> >> > <pca...@gm...> > >>> >> > wrote: > >>> >> >> Hi, > >>> >> >> > >>> >> >> I am wondering if we want support classes in the core library > >>> >> >> to > >>> >> >> interface commercial systems' market data and termstructures. > >>> >> >> Specifically I am thinking about Murex which has a standardized > >>> >> >> XML > >>> >> >> interface to export and import virtually all kind of market > >>> >> >> data > >>> >> >> across all market data sets in its financial database. > >>> >> >> > >>> >> >> The first step would be a class that represents the contents of > >>> >> >> such a > >>> >> >> file and providing easy access to its market data points (in a > >>> >> >> more > >>> >> >> user friendly way than a "stupid" general XML parser could do). > >>> >> >> To > >>> >> >> keep the dependencies simple, I'd rely on RapidXML as the XML > >>> >> >> parser > >>> >> >> for this part. > >>> >> >> > >>> >> >> A second layer built on that would provide functionality to > >>> >> >> create > >>> >> >> quantlib termstructures populated with that market data, based > >>> >> >> on meta > >>> >> >> data (instruments in a curve, their conventions etc.) provided > >>> >> >> in > >>> >> >> additional specification files (where parts of the necessary > >>> >> >> meta data > >>> >> >> is even available in the Mx export and could - optionally - > >>> >> >> taken from > >>> >> >> there). The other direction - create a MDRS file based on > >>> >> >> quantlib > >>> >> >> termstructure objects that can be uploaded to Murex - can also > >>> >> >> be > >>> >> >> interesting for certain applications. > >>> >> >> > >>> >> >> All that should be done on an abstract level with specific > >>> >> >> implementations for different source systems, of which one > >>> >> >> beneath > >>> >> >> Murex MDRS could also be a simple "quantlib-proprietary" one, > >>> >> >> which > >>> >> >> would allow to share reference / test market data and meta data > >>> >> >> for > >>> >> >> associated concrete termstructure objects. > >>> >> >> > >>> >> >> I am quite sure that this is both doable and useful (because I > >>> >> >> have > >>> >> >> done parts of it and use it in my daily work). However it is > >>> >> >> some work > >>> >> >> to set up the framework in a clean way and maintain it, for > >>> >> >> several > >>> >> >> MDRS versions (some details sometimes change from release to > >>> >> >> release, > >>> >> >> but the general structure seems stable). > >>> >> >> > >>> >> >> So my questions are > >>> >> >> > >>> >> >> - does that belong into the core library, like under ql / io / > >>> >> >> ... ( > >>> >> >> well, for a start under ql / experimental / io / ... ;-) ) > >>> >> >> - anyone else that would be interested in that functionality > >>> >> >> and maybe > >>> >> >> willing to contribute to such a development ? > >>> >> >> - maybe other systems that could be of interest (maybe the > >>> >> >> MarkIt CDS > >>> >> >> market data files ?) > >>> >> >> > >>> >> >> Thanks a lot > >>> >> >> Peter > >>> >> >> > >>> >> >> > >>> >> >> > ------------------------------------------------------------------------------ > >>> >> >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > >>> >> >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI > >>> >> >> DSS > >>> >> >> Reports > >>> >> >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White > >>> >> >> paper > >>> >> >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog > >>> >> >> Analyzer > >>> >> >> > >>> >> >> > http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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> > >>> >> > >>> >> > >>> >> > ------------------------------------------------------------------------------ > >>> >> Comprehensive Server Monitoring with Site24x7. > >>> >> Monitor 10 servers for $9/Month. > >>> >> Get alerted through email, SMS, voice calls or mobile push > >>> >> notifications. > >>> >> Take corrective actions from your mobile device. > >>> >> http://p.sf.net/sfu/Zoho > >>> >> _______________________________________________ > >>> >> QuantLib-dev mailing list > >>> >> Qua...@li... > >>> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > >>> > > >>> > > >>> > >>> > >>> > >>> -- > >>> <https://implementingquantlib.blogspot.com> > >>> <https://twitter.com/lballabio> > >>> > >>> > ------------------------------------------------------------------------------ > >>> Comprehensive Server Monitoring with Site24x7. > >>> Monitor 10 servers for $9/Month. > >>> Get alerted through email, SMS, voice calls or mobile push > >>> notifications. > >>> Take corrective actions from your mobile device. > >>> http://p.sf.net/sfu/Zoho > >>> _______________________________________________ > >>> QuantLib-dev mailing list > >>> Qua...@li... > >>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > >>> > >> > >> > ------------------------------------------------------------------------------ > >> Comprehensive Server Monitoring with Site24x7. > >> Monitor 10 servers for $9/Month. > >> Get alerted through email, SMS, voice calls or mobile push > notifications. > >> Take corrective actions from your mobile device. > >> http://p.sf.net/sfu/Zoho > >> _______________________________________________ > >> QuantLib-dev mailing list > >> Qua...@li... > >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > |
|
From: Peter C. <pca...@gm...> - 2014-10-24 18:23:07
|
Hi, since Murex is not too enthusiastic about this idea (for some understandable reasons, I think) I guess it is not advisable to start this as a public project. We could still do it with a ql-proprietary format and leave MX specific extensions to private projects, but I don't find that very attractive to be honest. Anyway. Regards Peter On 17 October 2014 21:24, Peter Caspers <pca...@gm...> wrote: > For a start I "only" thought of market data plus metadata to generate > corresponding termstructures. I guess I should first ask Murex to > confirm that it is ok to publish a parser for their xml under the ql > license and maybe put sample files in that format in the repository. > As soon as I have their permission I will send an initial commit (i.e. > a PR to Luigi) as a basis for further discussions. > > > On 17 October 2014 18:25, <ja...@fr...> wrote: >> Forgot this thread, seems useful a lot of work and a way to *leverage* (uh, sorry) the library. >> Is it possible to have QL talk FPML only and have translation modules in between? I am not sure they cover equivalent problems/data items; Like, an instrument position, and engine, or a data set. Or it would be dealing only with data? >> >> ----- Original Message ----- >>> I'm agnostic. Lately we have been moving (in practice, if not in >>> explicit purpose) towards separating the modules: I've been making >>> releases from my clone of the repository and Eric has been making >>> releases from his. I'm not against using the same repo, but it >>> doesn't >>> give anything more than what you get from different repos (other than >>> the convenience of cloning just once, and that can be seen as the >>> *in*convenience of having to clone everything). >>> >>> So I'm bailing out. No vote either way :) >>> >>> >>> On Fri, Oct 17, 2014 at 3:03 PM, Ferdinando M. Ametrano >>> <fer...@am...> wrote: >>> > I vote for separate project in the same repository, as for >>> > ObjectHandler >>> > among the others >>> > >>> > On Fri, Oct 17, 2014 at 1:02 PM, Peter Caspers >>> > <pca...@gm...> >>> > wrote: >>> >> >>> >> Hi Luigi, >>> >> >>> >> alright. That would mean a separate project on the level QuantLib, >>> >> QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? >>> >> >>> >> Thanks >>> >> Peter >>> >> >>> >> On 17 October 2014 12:00, Luigi Ballabio >>> >> <lui...@gm...> wrote: >>> >> > Hi Peter, >>> >> > apologies for the delay. Personally, I feel that it would be >>> >> > useful but as a separate module. >>> >> > >>> >> > Later, >>> >> > Luigi >>> >> > >>> >> > >>> >> > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers >>> >> > <pca...@gm...> >>> >> > wrote: >>> >> >> Hi, >>> >> >> >>> >> >> I am wondering if we want support classes in the core library >>> >> >> to >>> >> >> interface commercial systems' market data and termstructures. >>> >> >> Specifically I am thinking about Murex which has a standardized >>> >> >> XML >>> >> >> interface to export and import virtually all kind of market >>> >> >> data >>> >> >> across all market data sets in its financial database. >>> >> >> >>> >> >> The first step would be a class that represents the contents of >>> >> >> such a >>> >> >> file and providing easy access to its market data points (in a >>> >> >> more >>> >> >> user friendly way than a "stupid" general XML parser could do). >>> >> >> To >>> >> >> keep the dependencies simple, I'd rely on RapidXML as the XML >>> >> >> parser >>> >> >> for this part. >>> >> >> >>> >> >> A second layer built on that would provide functionality to >>> >> >> create >>> >> >> quantlib termstructures populated with that market data, based >>> >> >> on meta >>> >> >> data (instruments in a curve, their conventions etc.) provided >>> >> >> in >>> >> >> additional specification files (where parts of the necessary >>> >> >> meta data >>> >> >> is even available in the Mx export and could - optionally - >>> >> >> taken from >>> >> >> there). The other direction - create a MDRS file based on >>> >> >> quantlib >>> >> >> termstructure objects that can be uploaded to Murex - can also >>> >> >> be >>> >> >> interesting for certain applications. >>> >> >> >>> >> >> All that should be done on an abstract level with specific >>> >> >> implementations for different source systems, of which one >>> >> >> beneath >>> >> >> Murex MDRS could also be a simple "quantlib-proprietary" one, >>> >> >> which >>> >> >> would allow to share reference / test market data and meta data >>> >> >> for >>> >> >> associated concrete termstructure objects. >>> >> >> >>> >> >> I am quite sure that this is both doable and useful (because I >>> >> >> have >>> >> >> done parts of it and use it in my daily work). However it is >>> >> >> some work >>> >> >> to set up the framework in a clean way and maintain it, for >>> >> >> several >>> >> >> MDRS versions (some details sometimes change from release to >>> >> >> release, >>> >> >> but the general structure seems stable). >>> >> >> >>> >> >> So my questions are >>> >> >> >>> >> >> - does that belong into the core library, like under ql / io / >>> >> >> ... ( >>> >> >> well, for a start under ql / experimental / io / ... ;-) ) >>> >> >> - anyone else that would be interested in that functionality >>> >> >> and maybe >>> >> >> willing to contribute to such a development ? >>> >> >> - maybe other systems that could be of interest (maybe the >>> >> >> MarkIt CDS >>> >> >> market data files ?) >>> >> >> >>> >> >> Thanks a lot >>> >> >> Peter >>> >> >> >>> >> >> >>> >> >> ------------------------------------------------------------------------------ >>> >> >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >>> >> >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI >>> >> >> DSS >>> >> >> Reports >>> >> >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White >>> >> >> paper >>> >> >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog >>> >> >> Analyzer >>> >> >> >>> >> >> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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> >>> >> >>> >> >>> >> ------------------------------------------------------------------------------ >>> >> Comprehensive Server Monitoring with Site24x7. >>> >> Monitor 10 servers for $9/Month. >>> >> Get alerted through email, SMS, voice calls or mobile push >>> >> notifications. >>> >> Take corrective actions from your mobile device. >>> >> http://p.sf.net/sfu/Zoho >>> >> _______________________________________________ >>> >> QuantLib-dev mailing list >>> >> Qua...@li... >>> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >>> > >>> > >>> >>> >>> >>> -- >>> <https://implementingquantlib.blogspot.com> >>> <https://twitter.com/lballabio> >>> >>> ------------------------------------------------------------------------------ >>> Comprehensive Server Monitoring with Site24x7. >>> Monitor 10 servers for $9/Month. >>> Get alerted through email, SMS, voice calls or mobile push >>> notifications. >>> Take corrective actions from your mobile device. >>> http://p.sf.net/sfu/Zoho >>> _______________________________________________ >>> QuantLib-dev mailing list >>> Qua...@li... >>> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >>> >> >> ------------------------------------------------------------------------------ >> Comprehensive Server Monitoring with Site24x7. >> Monitor 10 servers for $9/Month. >> Get alerted through email, SMS, voice calls or mobile push notifications. >> Take corrective actions from your mobile device. >> http://p.sf.net/sfu/Zoho >> _______________________________________________ >> QuantLib-dev mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: Peter C. <pca...@gm...> - 2014-10-17 19:24:30
|
For a start I "only" thought of market data plus metadata to generate corresponding termstructures. I guess I should first ask Murex to confirm that it is ok to publish a parser for their xml under the ql license and maybe put sample files in that format in the repository. As soon as I have their permission I will send an initial commit (i.e. a PR to Luigi) as a basis for further discussions. On 17 October 2014 18:25, <ja...@fr...> wrote: > Forgot this thread, seems useful a lot of work and a way to *leverage* (uh, sorry) the library. > Is it possible to have QL talk FPML only and have translation modules in between? I am not sure they cover equivalent problems/data items; Like, an instrument position, and engine, or a data set. Or it would be dealing only with data? > > ----- Original Message ----- >> I'm agnostic. Lately we have been moving (in practice, if not in >> explicit purpose) towards separating the modules: I've been making >> releases from my clone of the repository and Eric has been making >> releases from his. I'm not against using the same repo, but it >> doesn't >> give anything more than what you get from different repos (other than >> the convenience of cloning just once, and that can be seen as the >> *in*convenience of having to clone everything). >> >> So I'm bailing out. No vote either way :) >> >> >> On Fri, Oct 17, 2014 at 3:03 PM, Ferdinando M. Ametrano >> <fer...@am...> wrote: >> > I vote for separate project in the same repository, as for >> > ObjectHandler >> > among the others >> > >> > On Fri, Oct 17, 2014 at 1:02 PM, Peter Caspers >> > <pca...@gm...> >> > wrote: >> >> >> >> Hi Luigi, >> >> >> >> alright. That would mean a separate project on the level QuantLib, >> >> QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? >> >> >> >> Thanks >> >> Peter >> >> >> >> On 17 October 2014 12:00, Luigi Ballabio >> >> <lui...@gm...> wrote: >> >> > Hi Peter, >> >> > apologies for the delay. Personally, I feel that it would be >> >> > useful but as a separate module. >> >> > >> >> > Later, >> >> > Luigi >> >> > >> >> > >> >> > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers >> >> > <pca...@gm...> >> >> > wrote: >> >> >> Hi, >> >> >> >> >> >> I am wondering if we want support classes in the core library >> >> >> to >> >> >> interface commercial systems' market data and termstructures. >> >> >> Specifically I am thinking about Murex which has a standardized >> >> >> XML >> >> >> interface to export and import virtually all kind of market >> >> >> data >> >> >> across all market data sets in its financial database. >> >> >> >> >> >> The first step would be a class that represents the contents of >> >> >> such a >> >> >> file and providing easy access to its market data points (in a >> >> >> more >> >> >> user friendly way than a "stupid" general XML parser could do). >> >> >> To >> >> >> keep the dependencies simple, I'd rely on RapidXML as the XML >> >> >> parser >> >> >> for this part. >> >> >> >> >> >> A second layer built on that would provide functionality to >> >> >> create >> >> >> quantlib termstructures populated with that market data, based >> >> >> on meta >> >> >> data (instruments in a curve, their conventions etc.) provided >> >> >> in >> >> >> additional specification files (where parts of the necessary >> >> >> meta data >> >> >> is even available in the Mx export and could - optionally - >> >> >> taken from >> >> >> there). The other direction - create a MDRS file based on >> >> >> quantlib >> >> >> termstructure objects that can be uploaded to Murex - can also >> >> >> be >> >> >> interesting for certain applications. >> >> >> >> >> >> All that should be done on an abstract level with specific >> >> >> implementations for different source systems, of which one >> >> >> beneath >> >> >> Murex MDRS could also be a simple "quantlib-proprietary" one, >> >> >> which >> >> >> would allow to share reference / test market data and meta data >> >> >> for >> >> >> associated concrete termstructure objects. >> >> >> >> >> >> I am quite sure that this is both doable and useful (because I >> >> >> have >> >> >> done parts of it and use it in my daily work). However it is >> >> >> some work >> >> >> to set up the framework in a clean way and maintain it, for >> >> >> several >> >> >> MDRS versions (some details sometimes change from release to >> >> >> release, >> >> >> but the general structure seems stable). >> >> >> >> >> >> So my questions are >> >> >> >> >> >> - does that belong into the core library, like under ql / io / >> >> >> ... ( >> >> >> well, for a start under ql / experimental / io / ... ;-) ) >> >> >> - anyone else that would be interested in that functionality >> >> >> and maybe >> >> >> willing to contribute to such a development ? >> >> >> - maybe other systems that could be of interest (maybe the >> >> >> MarkIt CDS >> >> >> market data files ?) >> >> >> >> >> >> Thanks a lot >> >> >> Peter >> >> >> >> >> >> >> >> >> ------------------------------------------------------------------------------ >> >> >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> >> >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI >> >> >> DSS >> >> >> Reports >> >> >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White >> >> >> paper >> >> >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog >> >> >> Analyzer >> >> >> >> >> >> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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> >> >> >> >> >> >> ------------------------------------------------------------------------------ >> >> Comprehensive Server Monitoring with Site24x7. >> >> Monitor 10 servers for $9/Month. >> >> Get alerted through email, SMS, voice calls or mobile push >> >> notifications. >> >> Take corrective actions from your mobile device. >> >> http://p.sf.net/sfu/Zoho >> >> _______________________________________________ >> >> QuantLib-dev mailing list >> >> Qua...@li... >> >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> > >> > >> >> >> >> -- >> <https://implementingquantlib.blogspot.com> >> <https://twitter.com/lballabio> >> >> ------------------------------------------------------------------------------ >> Comprehensive Server Monitoring with Site24x7. >> Monitor 10 servers for $9/Month. >> Get alerted through email, SMS, voice calls or mobile push >> notifications. >> Take corrective actions from your mobile device. >> http://p.sf.net/sfu/Zoho >> _______________________________________________ >> QuantLib-dev mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev >> > > ------------------------------------------------------------------------------ > Comprehensive Server Monitoring with Site24x7. > Monitor 10 servers for $9/Month. > Get alerted through email, SMS, voice calls or mobile push notifications. > Take corrective actions from your mobile device. > http://p.sf.net/sfu/Zoho > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: <ja...@fr...> - 2014-10-17 16:25:14
|
Forgot this thread, seems useful a lot of work and a way to *leverage* (uh, sorry) the library. Is it possible to have QL talk FPML only and have translation modules in between? I am not sure they cover equivalent problems/data items; Like, an instrument position, and engine, or a data set. Or it would be dealing only with data? ----- Original Message ----- > I'm agnostic. Lately we have been moving (in practice, if not in > explicit purpose) towards separating the modules: I've been making > releases from my clone of the repository and Eric has been making > releases from his. I'm not against using the same repo, but it > doesn't > give anything more than what you get from different repos (other than > the convenience of cloning just once, and that can be seen as the > *in*convenience of having to clone everything). > > So I'm bailing out. No vote either way :) > > > On Fri, Oct 17, 2014 at 3:03 PM, Ferdinando M. Ametrano > <fer...@am...> wrote: > > I vote for separate project in the same repository, as for > > ObjectHandler > > among the others > > > > On Fri, Oct 17, 2014 at 1:02 PM, Peter Caspers > > <pca...@gm...> > > wrote: > >> > >> Hi Luigi, > >> > >> alright. That would mean a separate project on the level QuantLib, > >> QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? > >> > >> Thanks > >> Peter > >> > >> On 17 October 2014 12:00, Luigi Ballabio > >> <lui...@gm...> wrote: > >> > Hi Peter, > >> > apologies for the delay. Personally, I feel that it would be > >> > useful but as a separate module. > >> > > >> > Later, > >> > Luigi > >> > > >> > > >> > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers > >> > <pca...@gm...> > >> > wrote: > >> >> Hi, > >> >> > >> >> I am wondering if we want support classes in the core library > >> >> to > >> >> interface commercial systems' market data and termstructures. > >> >> Specifically I am thinking about Murex which has a standardized > >> >> XML > >> >> interface to export and import virtually all kind of market > >> >> data > >> >> across all market data sets in its financial database. > >> >> > >> >> The first step would be a class that represents the contents of > >> >> such a > >> >> file and providing easy access to its market data points (in a > >> >> more > >> >> user friendly way than a "stupid" general XML parser could do). > >> >> To > >> >> keep the dependencies simple, I'd rely on RapidXML as the XML > >> >> parser > >> >> for this part. > >> >> > >> >> A second layer built on that would provide functionality to > >> >> create > >> >> quantlib termstructures populated with that market data, based > >> >> on meta > >> >> data (instruments in a curve, their conventions etc.) provided > >> >> in > >> >> additional specification files (where parts of the necessary > >> >> meta data > >> >> is even available in the Mx export and could - optionally - > >> >> taken from > >> >> there). The other direction - create a MDRS file based on > >> >> quantlib > >> >> termstructure objects that can be uploaded to Murex - can also > >> >> be > >> >> interesting for certain applications. > >> >> > >> >> All that should be done on an abstract level with specific > >> >> implementations for different source systems, of which one > >> >> beneath > >> >> Murex MDRS could also be a simple "quantlib-proprietary" one, > >> >> which > >> >> would allow to share reference / test market data and meta data > >> >> for > >> >> associated concrete termstructure objects. > >> >> > >> >> I am quite sure that this is both doable and useful (because I > >> >> have > >> >> done parts of it and use it in my daily work). However it is > >> >> some work > >> >> to set up the framework in a clean way and maintain it, for > >> >> several > >> >> MDRS versions (some details sometimes change from release to > >> >> release, > >> >> but the general structure seems stable). > >> >> > >> >> So my questions are > >> >> > >> >> - does that belong into the core library, like under ql / io / > >> >> ... ( > >> >> well, for a start under ql / experimental / io / ... ;-) ) > >> >> - anyone else that would be interested in that functionality > >> >> and maybe > >> >> willing to contribute to such a development ? > >> >> - maybe other systems that could be of interest (maybe the > >> >> MarkIt CDS > >> >> market data files ?) > >> >> > >> >> Thanks a lot > >> >> Peter > >> >> > >> >> > >> >> ------------------------------------------------------------------------------ > >> >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > >> >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI > >> >> DSS > >> >> Reports > >> >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White > >> >> paper > >> >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog > >> >> Analyzer > >> >> > >> >> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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> > >> > >> > >> ------------------------------------------------------------------------------ > >> Comprehensive Server Monitoring with Site24x7. > >> Monitor 10 servers for $9/Month. > >> Get alerted through email, SMS, voice calls or mobile push > >> notifications. > >> Take corrective actions from your mobile device. > >> http://p.sf.net/sfu/Zoho > >> _______________________________________________ > >> QuantLib-dev mailing list > >> Qua...@li... > >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev > > > > > > > > -- > <https://implementingquantlib.blogspot.com> > <https://twitter.com/lballabio> > > ------------------------------------------------------------------------------ > Comprehensive Server Monitoring with Site24x7. > Monitor 10 servers for $9/Month. > Get alerted through email, SMS, voice calls or mobile push > notifications. > Take corrective actions from your mobile device. > http://p.sf.net/sfu/Zoho > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > |
|
From: <ja...@fr...> - 2014-10-17 16:12:08
|
Hi, as the potential culprit I feel the urge to add something but I have no idea whats going on. Everything looks fine in gitignore, the binary is excluded.....and the binary is not there... Only something similar happened to me: the line had dissapeared after a cherry pick in my local repo. I got the warning before pushing anything to github. I use gitextensions. Its almost halloween. ----- Original Message ----- > > > me too I don't have a folder > QuantLib/Examples/LatentModel/LatentModel > > > puzzedly yours... > > > > On Fri, Oct 17, 2014 at 3:13 PM, Luigi Ballabio < > lui...@gm... > wrote: > > > There's no QuantLib/Examples/LatentModel/LatentModel in the repo. > Have > you by any chance committed the executable? > > > > On Fri, Oct 17, 2014 at 3:06 PM, Ferdinando M. Ametrano > < fer...@am... > wrote: > > remote: warning: GH001: Large files detected. > > remote: warning: See http://git.io/iEPt8g for more information. > > remote: warning: File QuantLib/Examples/LatentModel/LatentModel is > > 79.10 MB; > > this is larger than GitHub's recommended maximum file size of 50 MB > > > > ------------------------------------------------------------------------------ > > Comprehensive Server Monitoring with Site24x7. > > Monitor 10 servers for $9/Month. > > Get alerted through email, SMS, voice calls or mobile push > > notifications. > > Take corrective actions from your mobile device. > > http://p.sf.net/sfu/Zoho > > _______________________________________________ > > QuantLib-dev mailing list > > Qua...@li... > > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > > > > > > -- > < https://implementingquantlib.blogspot.com > > < https://twitter.com/lballabio > > > > ------------------------------------------------------------------------------ > Comprehensive Server Monitoring with Site24x7. > Monitor 10 servers for $9/Month. > Get alerted through email, SMS, voice calls or mobile push > notifications. > Take corrective actions from your mobile device. > http://p.sf.net/sfu/Zoho > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > |
|
From: Ferdinando M. A. <fer...@am...> - 2014-10-17 14:38:01
|
me too I don't have a folder QuantLib/Examples/LatentModel/LatentModel puzzedly yours... On Fri, Oct 17, 2014 at 3:13 PM, Luigi Ballabio <lui...@gm...> wrote: > There's no QuantLib/Examples/LatentModel/LatentModel in the repo. Have > you by any chance committed the executable? > > On Fri, Oct 17, 2014 at 3:06 PM, Ferdinando M. Ametrano > <fer...@am...> wrote: > > remote: warning: GH001: Large files detected. > > remote: warning: See http://git.io/iEPt8g for more information. > > remote: warning: File QuantLib/Examples/LatentModel/LatentModel is 79.10 > MB; > > this is larger than GitHub's recommended maximum file size of 50 MB > > > > > ------------------------------------------------------------------------------ > > Comprehensive Server Monitoring with Site24x7. > > Monitor 10 servers for $9/Month. > > Get alerted through email, SMS, voice calls or mobile push notifications. > > Take corrective actions from your mobile device. > > http://p.sf.net/sfu/Zoho > > _______________________________________________ > > 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-10-17 13:22:28
|
I'm agnostic. Lately we have been moving (in practice, if not in explicit purpose) towards separating the modules: I've been making releases from my clone of the repository and Eric has been making releases from his. I'm not against using the same repo, but it doesn't give anything more than what you get from different repos (other than the convenience of cloning just once, and that can be seen as the *in*convenience of having to clone everything). So I'm bailing out. No vote either way :) On Fri, Oct 17, 2014 at 3:03 PM, Ferdinando M. Ametrano <fer...@am...> wrote: > I vote for separate project in the same repository, as for ObjectHandler > among the others > > On Fri, Oct 17, 2014 at 1:02 PM, Peter Caspers <pca...@gm...> > wrote: >> >> Hi Luigi, >> >> alright. That would mean a separate project on the level QuantLib, >> QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? >> >> Thanks >> Peter >> >> On 17 October 2014 12:00, Luigi Ballabio <lui...@gm...> wrote: >> > Hi Peter, >> > apologies for the delay. Personally, I feel that it would be >> > useful but as a separate module. >> > >> > Later, >> > Luigi >> > >> > >> > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers <pca...@gm...> >> > wrote: >> >> Hi, >> >> >> >> I am wondering if we want support classes in the core library to >> >> interface commercial systems' market data and termstructures. >> >> Specifically I am thinking about Murex which has a standardized XML >> >> interface to export and import virtually all kind of market data >> >> across all market data sets in its financial database. >> >> >> >> The first step would be a class that represents the contents of such a >> >> file and providing easy access to its market data points (in a more >> >> user friendly way than a "stupid" general XML parser could do). To >> >> keep the dependencies simple, I'd rely on RapidXML as the XML parser >> >> for this part. >> >> >> >> A second layer built on that would provide functionality to create >> >> quantlib termstructures populated with that market data, based on meta >> >> data (instruments in a curve, their conventions etc.) provided in >> >> additional specification files (where parts of the necessary meta data >> >> is even available in the Mx export and could - optionally - taken from >> >> there). The other direction - create a MDRS file based on quantlib >> >> termstructure objects that can be uploaded to Murex - can also be >> >> interesting for certain applications. >> >> >> >> All that should be done on an abstract level with specific >> >> implementations for different source systems, of which one beneath >> >> Murex MDRS could also be a simple "quantlib-proprietary" one, which >> >> would allow to share reference / test market data and meta data for >> >> associated concrete termstructure objects. >> >> >> >> I am quite sure that this is both doable and useful (because I have >> >> done parts of it and use it in my daily work). However it is some work >> >> to set up the framework in a clean way and maintain it, for several >> >> MDRS versions (some details sometimes change from release to release, >> >> but the general structure seems stable). >> >> >> >> So my questions are >> >> >> >> - does that belong into the core library, like under ql / io / ... ( >> >> well, for a start under ql / experimental / io / ... ;-) ) >> >> - anyone else that would be interested in that functionality and maybe >> >> willing to contribute to such a development ? >> >> - maybe other systems that could be of interest (maybe the MarkIt CDS >> >> market data files ?) >> >> >> >> Thanks a lot >> >> Peter >> >> >> >> >> >> ------------------------------------------------------------------------------ >> >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS >> >> Reports >> >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper >> >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer >> >> >> >> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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> >> >> >> ------------------------------------------------------------------------------ >> Comprehensive Server Monitoring with Site24x7. >> Monitor 10 servers for $9/Month. >> Get alerted through email, SMS, voice calls or mobile push notifications. >> Take corrective actions from your mobile device. >> http://p.sf.net/sfu/Zoho >> _______________________________________________ >> 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-10-17 13:13:16
|
There's no QuantLib/Examples/LatentModel/LatentModel in the repo. Have you by any chance committed the executable? On Fri, Oct 17, 2014 at 3:06 PM, Ferdinando M. Ametrano <fer...@am...> wrote: > remote: warning: GH001: Large files detected. > remote: warning: See http://git.io/iEPt8g for more information. > remote: warning: File QuantLib/Examples/LatentModel/LatentModel is 79.10 MB; > this is larger than GitHub's recommended maximum file size of 50 MB > > ------------------------------------------------------------------------------ > Comprehensive Server Monitoring with Site24x7. > Monitor 10 servers for $9/Month. > Get alerted through email, SMS, voice calls or mobile push notifications. > Take corrective actions from your mobile device. > http://p.sf.net/sfu/Zoho > _______________________________________________ > 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-10-17 13:10:20
|
I vote for separate project in the same repository, as for ObjectHandler among the others On Fri, Oct 17, 2014 at 1:02 PM, Peter Caspers <pca...@gm...> wrote: > Hi Luigi, > > alright. That would mean a separate project on the level QuantLib, > QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? > > Thanks > Peter > > On 17 October 2014 12:00, Luigi Ballabio <lui...@gm...> wrote: > > Hi Peter, > > apologies for the delay. Personally, I feel that it would be > > useful but as a separate module. > > > > Later, > > Luigi > > > > > > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers <pca...@gm...> > wrote: > >> Hi, > >> > >> I am wondering if we want support classes in the core library to > >> interface commercial systems' market data and termstructures. > >> Specifically I am thinking about Murex which has a standardized XML > >> interface to export and import virtually all kind of market data > >> across all market data sets in its financial database. > >> > >> The first step would be a class that represents the contents of such a > >> file and providing easy access to its market data points (in a more > >> user friendly way than a "stupid" general XML parser could do). To > >> keep the dependencies simple, I'd rely on RapidXML as the XML parser > >> for this part. > >> > >> A second layer built on that would provide functionality to create > >> quantlib termstructures populated with that market data, based on meta > >> data (instruments in a curve, their conventions etc.) provided in > >> additional specification files (where parts of the necessary meta data > >> is even available in the Mx export and could - optionally - taken from > >> there). The other direction - create a MDRS file based on quantlib > >> termstructure objects that can be uploaded to Murex - can also be > >> interesting for certain applications. > >> > >> All that should be done on an abstract level with specific > >> implementations for different source systems, of which one beneath > >> Murex MDRS could also be a simple "quantlib-proprietary" one, which > >> would allow to share reference / test market data and meta data for > >> associated concrete termstructure objects. > >> > >> I am quite sure that this is both doable and useful (because I have > >> done parts of it and use it in my daily work). However it is some work > >> to set up the framework in a clean way and maintain it, for several > >> MDRS versions (some details sometimes change from release to release, > >> but the general structure seems stable). > >> > >> So my questions are > >> > >> - does that belong into the core library, like under ql / io / ... ( > >> well, for a start under ql / experimental / io / ... ;-) ) > >> - anyone else that would be interested in that functionality and maybe > >> willing to contribute to such a development ? > >> - maybe other systems that could be of interest (maybe the MarkIt CDS > >> market data files ?) > >> > >> Thanks a lot > >> Peter > >> > >> > ------------------------------------------------------------------------------ > >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > >> > http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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> > > > ------------------------------------------------------------------------------ > Comprehensive Server Monitoring with Site24x7. > Monitor 10 servers for $9/Month. > Get alerted through email, SMS, voice calls or mobile push notifications. > Take corrective actions from your mobile device. > http://p.sf.net/sfu/Zoho > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > |
|
From: Ferdinando M. A. <fer...@am...> - 2014-10-17 13:06:58
|
remote: warning: GH001: Large files detected. remote: warning: See http://git.io/iEPt8g for more information. remote: warning: File QuantLib/Examples/LatentModel/LatentModel is 79.10 MB; this is larger than GitHub's recommended maximum file size of 50 MB |
|
From: Peter C. <pca...@gm...> - 2014-10-17 11:02:47
|
Hi Luigi, alright. That would mean a separate project on the level QuantLib, QuantLibAddinn QuantLib-SWIG etc. ? Or a separate repository ? Thanks Peter On 17 October 2014 12:00, Luigi Ballabio <lui...@gm...> wrote: > Hi Peter, > apologies for the delay. Personally, I feel that it would be > useful but as a separate module. > > Later, > Luigi > > > On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers <pca...@gm...> wrote: >> Hi, >> >> I am wondering if we want support classes in the core library to >> interface commercial systems' market data and termstructures. >> Specifically I am thinking about Murex which has a standardized XML >> interface to export and import virtually all kind of market data >> across all market data sets in its financial database. >> >> The first step would be a class that represents the contents of such a >> file and providing easy access to its market data points (in a more >> user friendly way than a "stupid" general XML parser could do). To >> keep the dependencies simple, I'd rely on RapidXML as the XML parser >> for this part. >> >> A second layer built on that would provide functionality to create >> quantlib termstructures populated with that market data, based on meta >> data (instruments in a curve, their conventions etc.) provided in >> additional specification files (where parts of the necessary meta data >> is even available in the Mx export and could - optionally - taken from >> there). The other direction - create a MDRS file based on quantlib >> termstructure objects that can be uploaded to Murex - can also be >> interesting for certain applications. >> >> All that should be done on an abstract level with specific >> implementations for different source systems, of which one beneath >> Murex MDRS could also be a simple "quantlib-proprietary" one, which >> would allow to share reference / test market data and meta data for >> associated concrete termstructure objects. >> >> I am quite sure that this is both doable and useful (because I have >> done parts of it and use it in my daily work). However it is some work >> to set up the framework in a clean way and maintain it, for several >> MDRS versions (some details sometimes change from release to release, >> but the general structure seems stable). >> >> So my questions are >> >> - does that belong into the core library, like under ql / io / ... ( >> well, for a start under ql / experimental / io / ... ;-) ) >> - anyone else that would be interested in that functionality and maybe >> willing to contribute to such a development ? >> - maybe other systems that could be of interest (maybe the MarkIt CDS >> market data files ?) >> >> Thanks a lot >> Peter >> >> ------------------------------------------------------------------------------ >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer >> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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: Luigi B. <lui...@gm...> - 2014-10-17 10:00:28
|
Hi Peter,
apologies for the delay. Personally, I feel that it would be
useful but as a separate module.
Later,
Luigi
On Fri, Oct 3, 2014 at 8:31 PM, Peter Caspers <pca...@gm...> wrote:
> Hi,
>
> I am wondering if we want support classes in the core library to
> interface commercial systems' market data and termstructures.
> Specifically I am thinking about Murex which has a standardized XML
> interface to export and import virtually all kind of market data
> across all market data sets in its financial database.
>
> The first step would be a class that represents the contents of such a
> file and providing easy access to its market data points (in a more
> user friendly way than a "stupid" general XML parser could do). To
> keep the dependencies simple, I'd rely on RapidXML as the XML parser
> for this part.
>
> A second layer built on that would provide functionality to create
> quantlib termstructures populated with that market data, based on meta
> data (instruments in a curve, their conventions etc.) provided in
> additional specification files (where parts of the necessary meta data
> is even available in the Mx export and could - optionally - taken from
> there). The other direction - create a MDRS file based on quantlib
> termstructure objects that can be uploaded to Murex - can also be
> interesting for certain applications.
>
> All that should be done on an abstract level with specific
> implementations for different source systems, of which one beneath
> Murex MDRS could also be a simple "quantlib-proprietary" one, which
> would allow to share reference / test market data and meta data for
> associated concrete termstructure objects.
>
> I am quite sure that this is both doable and useful (because I have
> done parts of it and use it in my daily work). However it is some work
> to set up the framework in a clean way and maintain it, for several
> MDRS versions (some details sometimes change from release to release,
> but the general structure seems stable).
>
> So my questions are
>
> - does that belong into the core library, like under ql / io / ... (
> well, for a start under ql / experimental / io / ... ;-) )
> - anyone else that would be interested in that functionality and maybe
> willing to contribute to such a development ?
> - maybe other systems that could be of interest (maybe the MarkIt CDS
> market data files ?)
>
> Thanks a lot
> Peter
>
> ------------------------------------------------------------------------------
> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&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: ltorjul <lt...@ho...> - 2014-10-13 08:27:12
|
Hi Peter, That fact that this was only for diagnostics was indeed my understanding as well. If you are able to find the reason why the automatic bracketing do not work, it would be great. I can provide you with code if you like. Regards Lauritz -- View this message in context: http://quantlib.10058.n7.nabble.com/yield-calculation-failing-when-resulting-yield-should-be-less-than-54-4-tp15932p15960.html Sent from the quantlib-dev mailing list archive at Nabble.com. |
|
From: Peter C. <pca...@gm...> - 2014-10-10 20:03:24
|
... and a yearly compounded yield y is between -1 and +inf since these two are linked by c = ln ( 1 + y ), so you have to adjust the lower bound in this case, yes. Peter On 10 October 2014 21:31, Peter Caspers <pca...@gm...> wrote: > Hi, > this was only for diagnostic purposes, not a final solution we should > put in the code. I'd have to check your specific case, but in general > I would think that a yield could be in the range from -inf to +inf: If > you have -1 today (pay 1 unit) and receive a > 0 at t=1, the > continuous yield would be -ln(1/a) which goes to -inf if a goes to > zero and to +inf if a goes to +inf. No ? > best regards > Peter > > > On 8 October 2014 17:41, ltorjul <lt...@ho...> wrote: >> Hi, >> >> Thanks for your answer! >> >> I tested your suggestion and changed line 968 in the cashflows.cpp file to: >> return solver.solve(objFunction, accuracy, guess, -10.0 , 10.0); >> >> This causes the error: >> root not bracketed: f[-10,10] -> [-1.#IND00e+000,5.999990e+004] >> >> I guess the reason is that a root of -10 cannot exist. If you look at the >> question from a financial perspective, you can off course loose you entire >> investment (Which would give a yield of -100%), but you could never get in >> the situation where you owe money (i.e. yield cannot be < -100%). Not sure >> if this makes any sense to you. >> >> Anyway I tested with: >> return solver.solve(objFunction, accuracy, guess, -1.0 , 10.0); >> and this seems to work. I'm able to calculate yield in those extreme cases >> where yield is less than -54.4%. >> >> I have also tested the unmodified yield function with a difference initial >> guess, e.g. >> yield(frb, cleanPrice, dayCounter, QuantLib::Compounded, coupCompfrequency, >> settlementDate, 1e-8, 100, *-0.80*) >> >> and it seems that using an initial guess of -.8 (-80%) "moves" the limit >> where the problem occures to about -91%. This however this causes the solver >> to work about 15% slower :-( >> >> Anyway I like the solution where you sets the upper and lower limits better. >> >> I'm good with this solution. But if you have other ideas or remarks I would >> be very grateful. >> >> Regards Laurtiz >> >> >> >> >> -- >> View this message in context: http://quantlib.10058.n7.nabble.com/yield-calculation-failing-when-resulting-yield-should-be-less-than-54-4-tp15932p15952.html >> Sent from the quantlib-dev mailing list archive at Nabble.com. >> >> ------------------------------------------------------------------------------ >> Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer >> Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports >> Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper >> Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer >> http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk >> _______________________________________________ >> QuantLib-dev mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-dev |
|
From: Peter C. <pca...@gm...> - 2014-10-10 19:32:04
|
Hi, this was only for diagnostic purposes, not a final solution we should put in the code. I'd have to check your specific case, but in general I would think that a yield could be in the range from -inf to +inf: If you have -1 today (pay 1 unit) and receive a > 0 at t=1, the continuous yield would be -ln(1/a) which goes to -inf if a goes to zero and to +inf if a goes to +inf. No ? best regards Peter On 8 October 2014 17:41, ltorjul <lt...@ho...> wrote: > Hi, > > Thanks for your answer! > > I tested your suggestion and changed line 968 in the cashflows.cpp file to: > return solver.solve(objFunction, accuracy, guess, -10.0 , 10.0); > > This causes the error: > root not bracketed: f[-10,10] -> [-1.#IND00e+000,5.999990e+004] > > I guess the reason is that a root of -10 cannot exist. If you look at the > question from a financial perspective, you can off course loose you entire > investment (Which would give a yield of -100%), but you could never get in > the situation where you owe money (i.e. yield cannot be < -100%). Not sure > if this makes any sense to you. > > Anyway I tested with: > return solver.solve(objFunction, accuracy, guess, -1.0 , 10.0); > and this seems to work. I'm able to calculate yield in those extreme cases > where yield is less than -54.4%. > > I have also tested the unmodified yield function with a difference initial > guess, e.g. > yield(frb, cleanPrice, dayCounter, QuantLib::Compounded, coupCompfrequency, > settlementDate, 1e-8, 100, *-0.80*) > > and it seems that using an initial guess of -.8 (-80%) "moves" the limit > where the problem occures to about -91%. This however this causes the solver > to work about 15% slower :-( > > Anyway I like the solution where you sets the upper and lower limits better. > > I'm good with this solution. But if you have other ideas or remarks I would > be very grateful. > > Regards Laurtiz > > > > > -- > View this message in context: http://quantlib.10058.n7.nabble.com/yield-calculation-failing-when-resulting-yield-should-be-less-than-54-4-tp15932p15952.html > Sent from the quantlib-dev mailing list archive at Nabble.com. > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk > _______________________________________________ > QuantLib-dev mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-dev |