You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
(60) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
(18) |
Feb
(4) |
Mar
(6) |
Apr
(2) |
May
|
Jun
(12) |
Jul
(48) |
Aug
(6) |
Sep
(3) |
Oct
(24) |
Nov
(15) |
Dec
(18) |
| 2002 |
Jan
(39) |
Feb
(12) |
Mar
(80) |
Apr
(72) |
May
(46) |
Jun
(27) |
Jul
(23) |
Aug
(34) |
Sep
(65) |
Oct
(71) |
Nov
(19) |
Dec
(14) |
| 2003 |
Jan
(44) |
Feb
(59) |
Mar
(18) |
Apr
(62) |
May
(54) |
Jun
(27) |
Jul
(46) |
Aug
(15) |
Sep
(44) |
Oct
(36) |
Nov
(19) |
Dec
(12) |
| 2004 |
Jan
(26) |
Feb
(33) |
Mar
(47) |
Apr
(63) |
May
(36) |
Jun
(65) |
Jul
(80) |
Aug
(163) |
Sep
(65) |
Oct
(39) |
Nov
(36) |
Dec
(39) |
| 2005 |
Jan
(97) |
Feb
(78) |
Mar
(64) |
Apr
(64) |
May
(48) |
Jun
(55) |
Jul
(89) |
Aug
(57) |
Sep
(51) |
Oct
(111) |
Nov
(86) |
Dec
(76) |
| 2006 |
Jan
(84) |
Feb
(103) |
Mar
(143) |
Apr
(92) |
May
(55) |
Jun
(58) |
Jul
(71) |
Aug
(57) |
Sep
(74) |
Oct
(59) |
Nov
(8) |
Dec
(32) |
| 2007 |
Jan
(60) |
Feb
(40) |
Mar
(50) |
Apr
(26) |
May
(61) |
Jun
(120) |
Jul
(119) |
Aug
(48) |
Sep
(121) |
Oct
(66) |
Nov
(103) |
Dec
(43) |
| 2008 |
Jan
(60) |
Feb
(109) |
Mar
(92) |
Apr
(106) |
May
(82) |
Jun
(59) |
Jul
(67) |
Aug
(118) |
Sep
(131) |
Oct
(56) |
Nov
(37) |
Dec
(69) |
| 2009 |
Jan
(75) |
Feb
(76) |
Mar
(103) |
Apr
(78) |
May
(61) |
Jun
(35) |
Jul
(66) |
Aug
(69) |
Sep
(166) |
Oct
(46) |
Nov
(72) |
Dec
(65) |
| 2010 |
Jan
(48) |
Feb
(57) |
Mar
(93) |
Apr
(85) |
May
(123) |
Jun
(82) |
Jul
(98) |
Aug
(121) |
Sep
(146) |
Oct
(86) |
Nov
(72) |
Dec
(34) |
| 2011 |
Jan
(96) |
Feb
(55) |
Mar
(73) |
Apr
(57) |
May
(33) |
Jun
(74) |
Jul
(89) |
Aug
(71) |
Sep
(103) |
Oct
(76) |
Nov
(52) |
Dec
(61) |
| 2012 |
Jan
(48) |
Feb
(54) |
Mar
(78) |
Apr
(60) |
May
(75) |
Jun
(59) |
Jul
(33) |
Aug
(66) |
Sep
(43) |
Oct
(46) |
Nov
(75) |
Dec
(51) |
| 2013 |
Jan
(112) |
Feb
(72) |
Mar
(49) |
Apr
(48) |
May
(42) |
Jun
(44) |
Jul
(80) |
Aug
(19) |
Sep
(33) |
Oct
(37) |
Nov
(38) |
Dec
(98) |
| 2014 |
Jan
(113) |
Feb
(93) |
Mar
(49) |
Apr
(106) |
May
(97) |
Jun
(155) |
Jul
(87) |
Aug
(127) |
Sep
(85) |
Oct
(48) |
Nov
(41) |
Dec
(37) |
| 2015 |
Jan
(34) |
Feb
(50) |
Mar
(104) |
Apr
(80) |
May
(82) |
Jun
(66) |
Jul
(41) |
Aug
(84) |
Sep
(37) |
Oct
(65) |
Nov
(83) |
Dec
(52) |
| 2016 |
Jan
(68) |
Feb
(35) |
Mar
(42) |
Apr
(35) |
May
(54) |
Jun
(75) |
Jul
(45) |
Aug
(52) |
Sep
(60) |
Oct
(52) |
Nov
(36) |
Dec
(64) |
| 2017 |
Jan
(92) |
Feb
(59) |
Mar
(35) |
Apr
(53) |
May
(83) |
Jun
(43) |
Jul
(65) |
Aug
(68) |
Sep
(46) |
Oct
(75) |
Nov
(40) |
Dec
(49) |
| 2018 |
Jan
(68) |
Feb
(54) |
Mar
(48) |
Apr
(58) |
May
(51) |
Jun
(44) |
Jul
(40) |
Aug
(68) |
Sep
(35) |
Oct
(15) |
Nov
(7) |
Dec
(37) |
| 2019 |
Jan
(43) |
Feb
(7) |
Mar
(22) |
Apr
(21) |
May
(31) |
Jun
(39) |
Jul
(73) |
Aug
(45) |
Sep
(47) |
Oct
(89) |
Nov
(19) |
Dec
(69) |
| 2020 |
Jan
(52) |
Feb
(63) |
Mar
(45) |
Apr
(59) |
May
(42) |
Jun
(57) |
Jul
(30) |
Aug
(29) |
Sep
(75) |
Oct
(64) |
Nov
(96) |
Dec
(22) |
| 2021 |
Jan
(14) |
Feb
(24) |
Mar
(35) |
Apr
(58) |
May
(36) |
Jun
(15) |
Jul
(18) |
Aug
(31) |
Sep
(30) |
Oct
(33) |
Nov
(27) |
Dec
(16) |
| 2022 |
Jan
(35) |
Feb
(22) |
Mar
(14) |
Apr
(20) |
May
(44) |
Jun
(53) |
Jul
(25) |
Aug
(56) |
Sep
(11) |
Oct
(47) |
Nov
(22) |
Dec
(36) |
| 2023 |
Jan
(30) |
Feb
(17) |
Mar
(31) |
Apr
(48) |
May
(31) |
Jun
(7) |
Jul
(25) |
Aug
(26) |
Sep
(61) |
Oct
(66) |
Nov
(19) |
Dec
(21) |
| 2024 |
Jan
(37) |
Feb
(29) |
Mar
(26) |
Apr
(26) |
May
(34) |
Jun
(9) |
Jul
(27) |
Aug
(13) |
Sep
(15) |
Oct
(25) |
Nov
(13) |
Dec
(8) |
| 2025 |
Jan
(13) |
Feb
(1) |
Mar
(16) |
Apr
(17) |
May
(8) |
Jun
(6) |
Jul
(9) |
Aug
|
Sep
(6) |
Oct
(15) |
Nov
(6) |
Dec
|
| 2026 |
Jan
(6) |
Feb
(4) |
Mar
(20) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Luigi B. <lui...@gm...> - 2021-10-13 07:21:38
|
Hello,
it looks like your code is importing QuantLib from
[...]\WORK\MKT_RISK\RAUL_TRANSITION\QuantLib, which judging from the path
is not the one installed by pip, is it? Is it a checkout from git, or some
other kind of manual download?
Luigi
On Mon, Oct 11, 2021 at 11:17 AM Akenou, Jacques Archange Kpatche <
JA...@ia...> wrote:
>
>
> Good Day,
>
> I installed your Quantlib library on my Windows laptop using >>pip install
> Quantlib.
>
> When I import Quantlib in a simple code, I obtain the ImportError in the
> image below.
>
> I would appreciate receiving some indications on how I could resolve this.
>
>
>
> Thank you
>
> Archange
>
>
>
> _______________________________________________
> QuantLib-users mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>
|
|
From: Luigi B. <lui...@gm...> - 2021-10-13 07:18:55
|
Hi David,
currently Python only exports the long-form constructor (see
https://github.com/lballabio/QuantLib-SWIG/blob/master/SWIG/fittedbondcurve.i#L85).
As you say, you can pass the default parameters — a large number for
maxCutoffTime is ok.
Luigi
On Mon, Oct 11, 2021 at 11:58 PM <da...@el...> wrote:
> Hi,
>
> The C++ documentation here (QuantLib: ExponentialSplinesFitting Class
> Reference (rkapl123.github.io)
> <https://rkapl123.github.io/QLAnnotatedSource/d9/d6c/class_quant_lib_1_1_exponential_splines_fitting.html>)
> has a constructor:
>
> ExponentialSplinesFitting(bool constrainAtZero, Size numCoeffs, Real
> fixedKappa, const Array & weights = Array() )
>
> If I try to get away in Python with just passing these parameters, I get
> the error:
>
> Wrong number or type of arguments for overloaded function
> 'new_ExponentialSplinesFitting'.
>
> Possible C/C++ prototypes are:
>
> ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const
> &,Array const &,Real,Real,Size,Real)
>
> ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const
> &,Array const &,Real,Real,Size)
>
> ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const
> &,Array const &,Real,Real)
>
> ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const
> &,Array const &,Real)
>
> ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const
> &,Array const &)
>
> ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const
> &)
>
> ExponentialSplinesFitting::ExponentialSplinesFitting(bool)
>
> ExponentialSplinesFitting::ExponentialSplinesFitting()
>
> Ie none of these match.
>
>
>
> Using QuantLib 1.23 on Python.
>
>
>
> I am afraid I am not very knowledgeable about how the C++/Python
> conversion works: I can pass the default parameters to the long-form
> constructor, except I am not sure how to specify QL_MAX_REAL in Python
> (using a large number like 1000000 seems to work …)
>
>
>
> Grateful for any advice!
>
> Thanks
>
> David Sansom
>
>
> _______________________________________________
> QuantLib-users mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>
|
|
From: <da...@el...> - 2021-10-12 12:11:43
|
Hi again, In the cold light of morning, I tracked down Quote.value() to get the clean price from the BondHelper, so I am unblocked (for now). Best wishes, David From: da...@el... <da...@el...> Sent: Monday, 11 October 2021 22:19 To: qua...@li... Subject: [Quantlib-users] Getting yield from a BondHelper in Python Hi everyone, This may seem like a simple question, but it's late and my brain seems to have stopped. In Python, I have a list of FixedRateBondHelpers which store everything I need about a bond, including its price as the first parameter ql.QuoteHandle(ql.SimpleQuote(px)). I am passing these between sections of code. I am just trying to get the yield of the bond, for a given day count, compounding and frequency. The Helper has everything needed to calculate the yield, but the function call is proving elusive. Do I need to separately extract the original price from the Helper? If so, how? I've tried FixedRateBondHelper.quote() but I get an equally impenetrable quote handle object back. Thanks David Sansom |
|
From: Simone C. <Sim...@ri...> - 2021-10-12 09:59:08
|
Good morning,
As an update on my side on this issue, it looks like the calibration works on some days without the deposits; but in general removing the deposit is not a reliable option.
I’d be really grateful if anybody had any updates or further thoughts on this issue!
Thanks in advance,
Simone
From: Simone Caenazzo
Sent: 27 September 2021 15:53
To: Luigi Ballabio <lui...@gm...>
Cc: PONRAM GOPALAKRISHNAN <po...@gm...>; qua...@li...
Subject: RE: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate
Hi Luigi,
I have sent a code example replying to Giuseppe Trapani in the same thread (the server notified me that the email is being held for review temporarily) – the PiecewiseYieldCurve constructor being used is the following – in fact, I believe this may have been deprecated in later versions of QuantLib:
[cid:image001.png@01D7BF58.22977EE0]
I have also tried different interpolation methods and targets. Effectively, without the deposit rate the only method that seems to work is Linear (at the cost of having a very jagged output forward curve, of course).
Here is a list of all the method combinations that failed:
DF, LogCubic
DF, MonotonicLogCubicSpline
DF, FritschButlandCubic
DF, LogParabolic
DF, MonotonicLogParabolic
DF, AkimaCubic
ZeroYield, MonotonicLogCubic
ForwardRate, MonotonicLogCubic
Thanks and best regards,
Simone
From: Luigi Ballabio <lui...@gm...<mailto:lui...@gm...>>
Sent: 21 September 2021 13:37
To: Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>>
Cc: PONRAM GOPALAKRISHNAN <po...@gm...<mailto:po...@gm...>>; qua...@li...<mailto:qua...@li...>
Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate
Hi,
what instantiation of PiecewiseYieldCurve are you using? Does it work if you change from Discount to ZeroRate or viceversa? Or if you change interpolation?
Luigi
On Tue, Sep 21, 2021 at 2:25 PM Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote:
Hi Ponram,
Thanks - indeed, quote units is one of those things that immediately comes to mind.
However I don't think this is the problem here - if the futures or swap RateHelpers were wrongly setup, the code would not work with the deposit rate either.
Additionally, I have played around with data from different valuation dates - very weirdly, there are dates in which the calibration seems to work without the deposit rate too.
Could there be combinations of quotes that, albeit valid, would cause issues within the solver, or the interpolator, of the bootstrapper?
Thanks and best regards,
Simone
-----Original Message-----
From: PONRAM GOPALAKRISHNAN <po...@gm...<mailto:po...@gm...>>
Sent: 21 September 2021 13:14
To: Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>>
Cc: Giuseppe Trapani <tr...@gm...<mailto:tr...@gm...>>; qua...@li...<mailto:qua...@li...>
Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate
Hi,
I recently encountered this issue when bootstrapping with bond price quotes. I initially had my prices assuming $1 as the face value. I had no issues after changing it to $100 face value. You can try adjusting your price quotes and see if it helps.
- Ponram
> On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote:
>
_______________________________________________
QuantLib-users mailing list
Qua...@li...<mailto:Qua...@li...>
https://lists.sourceforge.net/lists/listinfo/quantlib-users<https://lists.sourceforge.net/lists/listinfo/quantlib-users>
|
|
From: <da...@el...> - 2021-10-11 21:55:27
|
Hi, The C++ documentation here (QuantLib: ExponentialSplinesFitting Class Reference (rkapl123.github.io) <https://rkapl123.github.io/QLAnnotatedSource/d9/d6c/class_quant_lib_1_1_exp onential_splines_fitting.html> ) has a constructor: ExponentialSplinesFitting(bool constrainAtZero, Size numCoeffs, Real fixedKappa, const Array & weights = Array() ) If I try to get away in Python with just passing these parameters, I get the error: Wrong number or type of arguments for overloaded function 'new_ExponentialSplinesFitting'. Possible C/C++ prototypes are: ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const &,Array const &,Real,Real,Size,Real) ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const &,Array const &,Real,Real,Size) ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const &,Array const &,Real,Real) ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const &,Array const &,Real) ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const &,Array const &) ExponentialSplinesFitting::ExponentialSplinesFitting(bool,Array const &) ExponentialSplinesFitting::ExponentialSplinesFitting(bool) ExponentialSplinesFitting::ExponentialSplinesFitting() Ie none of these match. Using QuantLib 1.23 on Python. I am afraid I am not very knowledgeable about how the C++/Python conversion works: I can pass the default parameters to the long-form constructor, except I am not sure how to specify QL_MAX_REAL in Python (using a large number like 1000000 seems to work .) Grateful for any advice! Thanks David Sansom |
|
From: <da...@el...> - 2021-10-11 21:39:10
|
Hi everyone, This may seem like a simple question, but it's late and my brain seems to have stopped. In Python, I have a list of FixedRateBondHelpers which store everything I need about a bond, including its price as the first parameter ql.QuoteHandle(ql.SimpleQuote(px)). I am passing these between sections of code. I am just trying to get the yield of the bond, for a given day count, compounding and frequency. The Helper has everything needed to calculate the yield, but the function call is proving elusive. Do I need to separately extract the original price from the Helper? If so, how? I've tried FixedRateBondHelper.quote() but I get an equally impenetrable quote handle object back. Thanks David Sansom |
|
From: Akenou, J. A. K. <JA...@IA...> - 2021-10-08 04:18:40
|
Good Day, I installed your Quantlib library on my Windows laptop using >>pip install Quantlib. When I import Quantlib in a simple code, I obtain the ImportError in the image below. I would appreciate receiving some indications on how I could resolve this. Thank you Archange [cid:image001.png@01D7BBCC.E9EF5E20] |
|
From: Ben W. <ben...@ma...> - 2021-10-05 08:24:25
|
HiHi,
I have a simple python function to return the roll date conventions, but get 'int' object is not callable. Very odd – any work around?
def roll_conventions(convention):
if convention in ['Following','F']:
return ql.Following()
if convention in ['ModifiedFollowing','MF']:
return ql.ModifiedFollowing()
if convention in ['Preceding' ,'P']:
return ql.Preceding()
if convention in ['ModifiedPreceding','MP']:
return ql.ModifiedPreceding()
if convention in ['Unadjusted','U']:
return ql.Unadjusted()
return
Regards
Ben
|
|
From: Ben W. <ben...@ma...> - 2021-10-05 07:04:59
|
Worked it out – they are just enumerated types not functions…
def roll_conventions(convention):
if convention in ['Following','F']:
return ql.Following
if convention in ['ModifiedFollowing','MF']:
return ql.ModifiedFollowing
if convention in ['Preceding' ,'P']:
return ql.Preceding
if convention in ['ModifiedPreceding','MP']:
return ql.ModifiedPreceding
if convention in ['Unadjusted','U']:
return ql.Unadjusted
return
From: Ben Watson <ben...@ma...>
Sent: Tuesday, 5 October 2021 5:27 PM
To: qua...@li...
Subject: QL Python - 'int' object is not callable
HiHi,
I have a simple python function to return the roll date conventions, but get 'int' object is not callable. Very odd – any work around?
def roll_conventions(convention):
if convention in ['Following','F']:
return ql.Following()
if convention in ['ModifiedFollowing','MF']:
return ql.ModifiedFollowing()
if convention in ['Preceding' ,'P']:
return ql.Preceding()
if convention in ['ModifiedPreceding','MP']:
return ql.ModifiedPreceding()
if convention in ['Unadjusted','U']:
return ql.Unadjusted()
return
Regards
Ben
|
|
From: Will S. <Wil...@as...> - 2021-09-29 10:40:06
|
Great function – thank you! From: Francois Botha <ig...@gm...> Sent: 29 September 2021 09:50 To: Will Scott <Wil...@as...> Cc: QuantLib users <qua...@li...> Subject: Re: [Quantlib-users] Quantlib #NUM! Errors with qlfixedratebond() handle Hi Will, You can use the ohRangeRetrieveError() function and point it to the cell that returns the #NUM! value to get more information about what is causing the problem. regards Francois Botha On Wed, 29 Sept 2021 at 10:40, Will Scott via QuantLib-users <qua...@li...<mailto:qua...@li...>> wrote: Apologies for such a simplistic question, but has anyone experienced getting #NUM! errors in their Bond handles when creating qlfixedratebond() handles? Qlschedule builds fine, but when parsed into the qlfixedratebond() object it creates #NUM! Errors in some but not all of the handles… seemingly at random. I wonder if I am doing something fundamentally wrong. Any help much appreciated. Will _______________________________________________ QuantLib-users mailing list Qua...@li...<mailto:Qua...@li...> https://lists.sourceforge.net/lists/listinfo/quantlib-users |
|
From: Francois B. <ig...@gm...> - 2021-09-29 08:49:53
|
Hi Will, You can use the ohRangeRetrieveError() function and point it to the cell that returns the #NUM! value to get more information about what is causing the problem. regards Francois Botha On Wed, 29 Sept 2021 at 10:40, Will Scott via QuantLib-users < qua...@li...> wrote: > Apologies for such a simplistic question, but has anyone experienced > getting #NUM! errors in their Bond handles when creating qlfixedratebond() > handles? Qlschedule builds fine, but when parsed into the qlfixedratebond() > object it creates #NUM! Errors in some but not all of the handles… > seemingly at random. I wonder if I am doing something fundamentally wrong. > > > > Any help much appreciated. > > > > Will > > > > > > > > > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users > |
|
From: Will S. <Wil...@as...> - 2021-09-29 08:37:41
|
Apologies for such a simplistic question, but has anyone experienced getting #NUM! errors in their Bond handles when creating qlfixedratebond() handles? Qlschedule builds fine, but when parsed into the qlfixedratebond() object it creates #NUM! Errors in some but not all of the handles… seemingly at random. I wonder if I am doing something fundamentally wrong. Any help much appreciated. Will |
|
From: Wei Li <ttl...@gm...> - 2021-09-29 07:42:31
|
Dear All, I am investigating how to price a modified version of overnight indexed swaption using black model based on QuantLib released version 1.23. From what I can see, both engines defined in blackswaptionengine.hpp, namingly, BlackStyleSwaptionEngine and BachelierSwaptionEngine, inherit from Swaption::engine, and the underlying of Swaption is of type VanillaSwap. There is actually another OvernightIndexedSwap class parallel to VanillaSwap. Does it mean that I have to create both OIS swaption class as well as BlackStyleSwaptionEngine classes for it? I feel that most of the code would be the same as VanillaSwap/Swaption/original BlackStyleSwaptionEngine. So am I understanding it wrongly? Or is it feasible to create base classes for general Swaption/SwaptionEngine? A question from the other side, what's preventing us from merging both VanillaSwap and OvernightIndexedSwap and delegating the job of calculating the applied-rate (I might be missing something of the essence)? Cheers, Wei |
|
From: Simone C. <Sim...@ri...> - 2021-09-27 14:53:22
|
Hi Luigi,
I have sent a code example replying to Giuseppe Trapani in the same thread (the server notified me that the email is being held for review temporarily) – the PiecewiseYieldCurve constructor being used is the following – in fact, I believe this may have been deprecated in later versions of QuantLib:
[cid:image002.png@01D7B3B7.C39BE580]
I have also tried different interpolation methods and targets. Effectively, without the deposit rate the only method that seems to work is Linear (at the cost of having a very jagged output forward curve, of course).
Here is a list of all the method combinations that failed:
DF, LogCubic
DF, MonotonicLogCubicSpline
DF, FritschButlandCubic
DF, LogParabolic
DF, MonotonicLogParabolic
DF, AkimaCubic
ZeroYield, MonotonicLogCubic
ForwardRate, MonotonicLogCubic
Thanks and best regards,
Simone
From: Luigi Ballabio <lui...@gm...>
Sent: 21 September 2021 13:37
To: Simone Caenazzo <Sim...@ri...>
Cc: PONRAM GOPALAKRISHNAN <po...@gm...>; qua...@li...
Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate
Hi,
what instantiation of PiecewiseYieldCurve are you using? Does it work if you change from Discount to ZeroRate or viceversa? Or if you change interpolation?
Luigi
On Tue, Sep 21, 2021 at 2:25 PM Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote:
Hi Ponram,
Thanks - indeed, quote units is one of those things that immediately comes to mind.
However I don't think this is the problem here - if the futures or swap RateHelpers were wrongly setup, the code would not work with the deposit rate either.
Additionally, I have played around with data from different valuation dates - very weirdly, there are dates in which the calibration seems to work without the deposit rate too.
Could there be combinations of quotes that, albeit valid, would cause issues within the solver, or the interpolator, of the bootstrapper?
Thanks and best regards,
Simone
-----Original Message-----
From: PONRAM GOPALAKRISHNAN <po...@gm...<mailto:po...@gm...>>
Sent: 21 September 2021 13:14
To: Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>>
Cc: Giuseppe Trapani <tr...@gm...<mailto:tr...@gm...>>; qua...@li...<mailto:qua...@li...>
Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate
Hi,
I recently encountered this issue when bootstrapping with bond price quotes. I initially had my prices assuming $1 as the face value. I had no issues after changing it to $100 face value. You can try adjusting your price quotes and see if it helps.
- Ponram
> On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote:
>
_______________________________________________
QuantLib-users mailing list
Qua...@li...<mailto:Qua...@li...>
https://lists.sourceforge.net/lists/listinfo/quantlib-users<https://lists.sourceforge.net/lists/listinfo/quantlib-users>
|
|
From: Simone C. <Sim...@ri...> - 2021-09-27 09:17:26
|
Hi Giuseppe, Here is a small example that replicates the error, along with the discount factor file for the discount curve (which is not calibrated from scratch here). In the main() function you’ll see a commented block relative to the deposit rate – commenting it out creates the error, whilst adding the code back in resolves the issue apparently. Thanks in advance! Best regards, Simone From: Simone Caenazzo <Sim...@ri...> Sent: 21 September 2021 14:36 To: Giuseppe Trapani <tr...@gm...> Cc: qua...@li... Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate Hi Giuseppe, Thanks for looking at/checking the plots! Sure, I will try to make a small self-contained example ASAP. Thanks and best regards, Simone From: Giuseppe Trapani <tr...@gm...<mailto:tr...@gm...>> Sent: 21 September 2021 13:36 To: Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> Cc: PONRAM GOPALAKRISHNAN <po...@gm...<mailto:po...@gm...>>; qua...@li...<mailto:qua...@li...> Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate Hi Simone, Thanks for your plot! I confirm I don't see anything wrong... if you manage to paste here a snippet of the incriminated code (with the reference dates) I'm going to give it a go with my Bloomberg terminal data. Have a nice evening. Il giorno mar 21 set 2021 alle ore 14:23 Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> ha scritto: Hi Ponram, Thanks - indeed, quote units is one of those things that immediately comes to mind. However I don't think this is the problem here - if the futures or swap RateHelpers were wrongly setup, the code would not work with the deposit rate either. Additionally, I have played around with data from different valuation dates - very weirdly, there are dates in which the calibration seems to work without the deposit rate too. Could there be combinations of quotes that, albeit valid, would cause issues within the solver, or the interpolator, of the bootstrapper? Thanks and best regards, Simone -----Original Message----- From: PONRAM GOPALAKRISHNAN <po...@gm...<mailto:po...@gm...>> Sent: 21 September 2021 13:14 To: Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> Cc: Giuseppe Trapani <tr...@gm...<mailto:tr...@gm...>>; qua...@li...<mailto:qua...@li...> Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate Hi, I recently encountered this issue when bootstrapping with bond price quotes. I initially had my prices assuming $1 as the face value. I had no issues after changing it to $100 face value. You can try adjusting your price quotes and see if it helps. - Ponram > On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote: > -- Giuseppe Trapani |
|
From: Ruilong Xu <xur...@ho...> - 2021-09-26 03:39:22
|
Hi, Thank you. As your suggestion, I create SafeFixedLocalVolSurface, and it works well in testHestonFokkerPlanckFwdEquationLogLVLeverage. But when SafeFixedLocalVolSurface is returned by function getFixedLocalVolFromHeston, it results double deletion still. You can find all codes here: https://github.com/xuruilong100/QuantLibPythonExamples/blob/main/SWIGpy/ql/termstructures/volatilitytermstructures/localvol/all.i (https://link.getmailspring.com/link/27F...@ge.../0?redirect=https%3A%2F%2Fgithub.com%2Fxuruilong100%2FQuantLibPythonExamples%2Fblob%2Fmain%2FSWIGpy%2Fql%2Ftermstructures%2Fvolatilitytermstructures%2Flocalvol%2Fall.i&recipient=cXVhbnRsaWItdXNlcnNAbGlzdHMuc291cmNlZm9yZ2UubmV0) https://github.com/xuruilong100/QuantLibPythonExamples/blob/main/testsuite/hestonslvmodel.py (https://link.getmailspring.com/link/27F...@ge.../1?redirect=https%3A%2F%2Fgithub.com%2Fxuruilong100%2FQuantLibPythonExamples%2Fblob%2Fmain%2Ftestsuite%2Fhestonslvmodel.py&recipient=cXVhbnRsaWItdXNlcnNAbGlzdHMuc291cmNlZm9yZ2UubmV0) Thanks again, Ruilong On Sep 22 2021, at 4:03 pm, Luigi Ballabio <lui...@gm...> wrote: > When you say > > ext::shared_ptr<Matrix> ptr(&localVolMatrix); > > in the wrapper, you're taking the address of an object with its own lifetime and give it to a shared_ptr that will try to delete it. This results in double deletion. You need to make a copy instead, as in > > ext::shared_ptr<Matrix> ptr(new Matrix(localVolMatrix)); > > Hope this helps, > Luigi > > > > > On Mon, Sep 20, 2021 at 11:04 AM Ruilong Xu <xur...@ho... (mailto:xur...@ho...)> wrote: > > Hi, > > > > I am reimplementing hestonslvmodel.cpp by Python. > > SafeFdmMesherIntegral works well. > > But SafeFixedLocalVolSurface may cause error in testAMoustacheGraph, the following is what I get: > > double free or corruption (top) > > Backend terminated or disconnected.Fatal Python error: Aborted > > > > > > > > On Sep 20 2021, at 4:03 pm, Luigi Ballabio <lui...@gm... (mailto:lui...@gm...)> wrote: > > > Hello, > > > shared_ptr should be supported correctly. How are you trying to wrap them? > > > > > > Luigi > > > > > > > > > On Fri, Sep 17, 2021 at 4:05 PM Ruilong Xu <xur...@ho... (mailto:xur...@ho...)> wrote: > > > > Hi, all > > > > > > > > Some members of FdmMesherIntegral and FixedLocalVolSurface are shared_ptr, it means that Python GC will cause error in sometimes. > > > > Is there an easy and safe way to make Python wrappers of them by SWIG? > > > > Best Regards, > > > > Ruilong > > > > > > > > _______________________________________________ > > > > QuantLib-users mailing list > > > > Qua...@li... (mailto:Qua...@li...) > > > > https://lists.sourceforge.net/lists/listinfo/quantlib-usersdouble free or corruption (top) (https://lists.sourceforge.net/lists/listinfo/quantlib-users) > > > > > > > > Backend terminated or disconnected.Fatal Python error: Aborted (https://lists.sourceforge.net/lists/listinfo/quantlib-users) > > _______________________________________________ > > QuantLib-users mailing list > > Qua...@li... (mailto:Qua...@li...) > > https://lists.sourceforge.net/lists/listinfo/quantlib-users > > |
|
From: Luigi B. <lui...@gm...> - 2021-09-22 08:03:24
|
When you say
ext::shared_ptr<Matrix> ptr(&localVolMatrix);
in the wrapper, you're taking the address of an object with its own
lifetime and give it to a shared_ptr that will try to delete it. This
results in double deletion. You need to make a copy instead, as in
ext::shared_ptr<Matrix> ptr(new Matrix(localVolMatrix));
Hope this helps,
Luigi
On Mon, Sep 20, 2021 at 11:04 AM Ruilong Xu <xur...@ho...>
wrote:
> Hi,
>
> I am reimplementing hestonslvmodel.cpp by Python.
>
> SafeFdmMesherIntegral works well.
>
> But SafeFixedLocalVolSurface may cause error in testAMoustacheGraph, the
> following is what I get:
>
> double free or corruption (top)
> Backend terminated or disconnected.Fatal Python error: Aborted
>
>
>
> On Sep 20 2021, at 4:03 pm, Luigi Ballabio <lui...@gm...>
> wrote:
>
> Hello,
> shared_ptr should be supported correctly. How are you trying to wrap
> them?
>
> Luigi
>
>
> [image: Sent from Mailspring]
> On Fri, Sep 17, 2021 at 4:05 PM Ruilong Xu <xur...@ho...>
> wrote:
>
> Hi, all
>
> Some members of FdmMesherIntegral and FixedLocalVolSurface are shared_ptr,
> it means that Python GC will cause error in sometimes.
>
> Is there an easy and safe way to make Python wrappers of them by SWIG?
>
> Best Regards,
> Ruilong
>
> _______________________________________________
> QuantLib-users mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-usersdouble free or
> corruption (top)
> <https://lists.sourceforge.net/lists/listinfo/quantlib-users>
>
> Backend terminated or disconnected.Fatal Python error: Aborted
> <https://lists.sourceforge.net/lists/listinfo/quantlib-users>
>
> _______________________________________________
> QuantLib-users mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>
|
|
From: Simone C. <Sim...@ri...> - 2021-09-21 13:42:03
|
Hi Luigi,
I will double-check which exact instantiation is used in the code – the other questions regarding Discount/ZR and interpolation are very good too, I will make those checks and come back to you.
Thanks again!
Best regards,
Simone
From: Luigi Ballabio <lui...@gm...>
Sent: 21 September 2021 13:37
To: Simone Caenazzo <Sim...@ri...>
Cc: PONRAM GOPALAKRISHNAN <po...@gm...>; qua...@li...
Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate
Hi,
what instantiation of PiecewiseYieldCurve are you using? Does it work if you change from Discount to ZeroRate or viceversa? Or if you change interpolation?
Luigi
On Tue, Sep 21, 2021 at 2:25 PM Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote:
Hi Ponram,
Thanks - indeed, quote units is one of those things that immediately comes to mind.
However I don't think this is the problem here - if the futures or swap RateHelpers were wrongly setup, the code would not work with the deposit rate either.
Additionally, I have played around with data from different valuation dates - very weirdly, there are dates in which the calibration seems to work without the deposit rate too.
Could there be combinations of quotes that, albeit valid, would cause issues within the solver, or the interpolator, of the bootstrapper?
Thanks and best regards,
Simone
-----Original Message-----
From: PONRAM GOPALAKRISHNAN <po...@gm...<mailto:po...@gm...>>
Sent: 21 September 2021 13:14
To: Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>>
Cc: Giuseppe Trapani <tr...@gm...<mailto:tr...@gm...>>; qua...@li...<mailto:qua...@li...>
Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate
Hi,
I recently encountered this issue when bootstrapping with bond price quotes. I initially had my prices assuming $1 as the face value. I had no issues after changing it to $100 face value. You can try adjusting your price quotes and see if it helps.
- Ponram
> On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote:
>
_______________________________________________
QuantLib-users mailing list
Qua...@li...<mailto:Qua...@li...>
https://lists.sourceforge.net/lists/listinfo/quantlib-users<https://lists.sourceforge.net/lists/listinfo/quantlib-users>
|
|
From: Simone C. <Sim...@ri...> - 2021-09-21 13:36:07
|
Hi Giuseppe, Thanks for looking at/checking the plots! Sure, I will try to make a small self-contained example ASAP. Thanks and best regards, Simone From: Giuseppe Trapani <tr...@gm...> Sent: 21 September 2021 13:36 To: Simone Caenazzo <Sim...@ri...> Cc: PONRAM GOPALAKRISHNAN <po...@gm...>; qua...@li... Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate Hi Simone, Thanks for your plot! I confirm I don't see anything wrong... if you manage to paste here a snippet of the incriminated code (with the reference dates) I'm going to give it a go with my Bloomberg terminal data. Have a nice evening. Il giorno mar 21 set 2021 alle ore 14:23 Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> ha scritto: Hi Ponram, Thanks - indeed, quote units is one of those things that immediately comes to mind. However I don't think this is the problem here - if the futures or swap RateHelpers were wrongly setup, the code would not work with the deposit rate either. Additionally, I have played around with data from different valuation dates - very weirdly, there are dates in which the calibration seems to work without the deposit rate too. Could there be combinations of quotes that, albeit valid, would cause issues within the solver, or the interpolator, of the bootstrapper? Thanks and best regards, Simone -----Original Message----- From: PONRAM GOPALAKRISHNAN <po...@gm...<mailto:po...@gm...>> Sent: 21 September 2021 13:14 To: Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> Cc: Giuseppe Trapani <tr...@gm...<mailto:tr...@gm...>>; qua...@li...<mailto:qua...@li...> Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate Hi, I recently encountered this issue when bootstrapping with bond price quotes. I initially had my prices assuming $1 as the face value. I had no issues after changing it to $100 face value. You can try adjusting your price quotes and see if it helps. - Ponram > On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> wrote: > -- Giuseppe Trapani |
|
From: Luigi B. <lui...@gm...> - 2021-09-21 12:37:34
|
Hi,
what instantiation of PiecewiseYieldCurve are you using? Does it work
if you change from Discount to ZeroRate or viceversa? Or if you change
interpolation?
Luigi
On Tue, Sep 21, 2021 at 2:25 PM Simone Caenazzo <
Sim...@ri...> wrote:
> Hi Ponram,
>
> Thanks - indeed, quote units is one of those things that immediately comes
> to mind.
>
> However I don't think this is the problem here - if the futures or swap
> RateHelpers were wrongly setup, the code would not work with the deposit
> rate either.
>
> Additionally, I have played around with data from different valuation
> dates - very weirdly, there are dates in which the calibration seems to
> work without the deposit rate too.
>
> Could there be combinations of quotes that, albeit valid, would cause
> issues within the solver, or the interpolator, of the bootstrapper?
>
> Thanks and best regards,
>
> Simone
>
> -----Original Message-----
> From: PONRAM GOPALAKRISHNAN <po...@gm...>
> Sent: 21 September 2021 13:14
> To: Simone Caenazzo <Sim...@ri...>
> Cc: Giuseppe Trapani <tr...@gm...>;
> qua...@li...
> Subject: Re: [Quantlib-users] Help with "root not bracketed" error when
> bootstrapping curve without deposit/fixing rate
>
> Hi,
>
> I recently encountered this issue when bootstrapping with bond price
> quotes. I initially had my prices assuming $1 as the face value. I had no
> issues after changing it to $100 face value. You can try adjusting your
> price quotes and see if it helps.
>
> - Ponram
>
>
>
> > On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <
> Sim...@ri...> wrote:
> >
>
>
>
> _______________________________________________
> QuantLib-users mailing list
> Qua...@li...
> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>
|
|
From: Giuseppe T. <tr...@gm...> - 2021-09-21 12:36:02
|
Hi Simone, Thanks for your plot! I confirm I don't see anything wrong... if you manage to paste here a snippet of the incriminated code (with the reference dates) I'm going to give it a go with my Bloomberg terminal data. Have a nice evening. Il giorno mar 21 set 2021 alle ore 14:23 Simone Caenazzo < Sim...@ri...> ha scritto: > Hi Ponram, > > Thanks - indeed, quote units is one of those things that immediately comes > to mind. > > However I don't think this is the problem here - if the futures or swap > RateHelpers were wrongly setup, the code would not work with the deposit > rate either. > > Additionally, I have played around with data from different valuation > dates - very weirdly, there are dates in which the calibration seems to > work without the deposit rate too. > > Could there be combinations of quotes that, albeit valid, would cause > issues within the solver, or the interpolator, of the bootstrapper? > > Thanks and best regards, > > Simone > > -----Original Message----- > From: PONRAM GOPALAKRISHNAN <po...@gm...> > Sent: 21 September 2021 13:14 > To: Simone Caenazzo <Sim...@ri...> > Cc: Giuseppe Trapani <tr...@gm...>; > qua...@li... > Subject: Re: [Quantlib-users] Help with "root not bracketed" error when > bootstrapping curve without deposit/fixing rate > > Hi, > > I recently encountered this issue when bootstrapping with bond price > quotes. I initially had my prices assuming $1 as the face value. I had no > issues after changing it to $100 face value. You can try adjusting your > price quotes and see if it helps. > > - Ponram > > > > > On Sep 21, 2021, at 4:08 AM, Simone Caenazzo < > Sim...@ri...> wrote: > > > > -- *Giuseppe Trapani* |
|
From: Simone C. <Sim...@ri...> - 2021-09-21 12:23:10
|
Hi Ponram, Thanks - indeed, quote units is one of those things that immediately comes to mind. However I don't think this is the problem here - if the futures or swap RateHelpers were wrongly setup, the code would not work with the deposit rate either. Additionally, I have played around with data from different valuation dates - very weirdly, there are dates in which the calibration seems to work without the deposit rate too. Could there be combinations of quotes that, albeit valid, would cause issues within the solver, or the interpolator, of the bootstrapper? Thanks and best regards, Simone -----Original Message----- From: PONRAM GOPALAKRISHNAN <po...@gm...> Sent: 21 September 2021 13:14 To: Simone Caenazzo <Sim...@ri...> Cc: Giuseppe Trapani <tr...@gm...>; qua...@li... Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate Hi, I recently encountered this issue when bootstrapping with bond price quotes. I initially had my prices assuming $1 as the face value. I had no issues after changing it to $100 face value. You can try adjusting your price quotes and see if it helps. - Ponram > On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <Sim...@ri...> wrote: > |
|
From: PONRAM G. <po...@gm...> - 2021-09-21 12:14:09
|
Hi, I recently encountered this issue when bootstrapping with bond price quotes. I initially had my prices assuming $1 as the face value. I had no issues after changing it to $100 face value. You can try adjusting your price quotes and see if it helps. - Ponram > On Sep 21, 2021, at 4:08 AM, Simone Caenazzo <Sim...@ri...> wrote: > |
|
From: Simone C. <Sim...@ri...> - 2021-09-21 08:05:04
|
Hi Giuseppe, Thanks for pitching in! I am working on C++ indeed – it is not easy for me to share the code as it is embedded in a larger application, but I will do my best to recreate a minimum example where the error shows itself. As per your questions: 1. You are correct, that was a mistake on my explanation – the code is indeed using FuturesRateHelper objects, and it is passing the price and the convexity adjustment to the constructor. 2. With the external library I am getting lower forward rates at the beginning of the curve – but still very much in line with what I was expecting from a spline that goes directly to a future 3M-6M away. Here is a quick plot of the two curves (orange is QuantLib with the deposit rate, blue is the external library without the deposit) – as you can see, there is a small bump at the very front of the QuantLib curve. Further along, the two curves are almost indistinguishable. [cid:image001.png@01D7AEC4.C3498F80] Thanks again! Best regards, Simone From: Giuseppe Trapani <tr...@gm...> Sent: 21 September 2021 08:27 To: Simone Caenazzo <Sim...@ri...> Cc: qua...@li... Subject: Re: [Quantlib-users] Help with "root not bracketed" error when bootstrapping curve without deposit/fixing rate Hi Simone, are you working on C++ or other languages? Can you please share the code (the bare minimum of course)? I'm having a bit of trouble to imagine where the problem can be BUT I can drop a couple of cents here (all coming from my looooong experience with self procured bugs) 1) I see BSBxx are futures, why not using FuturesRateHelper? notice the constructor requires the price, not the rate of the future. 2) Have you checked what rate you get for the front Deposit (the one you are skipping) from your external library? Have a nice day! Il giorno mar 21 set 2021 alle ore 09:11 Simone Caenazzo <Sim...@ri...<mailto:Sim...@ri...>> ha scritto: Dear QuantLib user, I am reaching out as I have encountered an error in QuantLib, and I was hoping someone could give me some help or pointers. The error arises when trying to bootstrap a BSBY (Bloomberg Short-term Bank Yield) curve in QuantLib (version 1.17), using the PiecewiseYieldCurve object. In particular, I am trying to construct the curve as a LIBOR-like curve, using: * BSBY futures (BSB1 to BSB8, in Bloomberg parlance) - these are taken as EuroDollar RateHelpers; * Synthetic BSBY swaps - taken as standard fix-for-float RateHelpers, with 6M, 30/360 Fixed leg and 3M, Act/360 Floating leg. Note that I am NOT using the deposit rate for the front end of the curve - this is a requirement that I need to maintain. Right now, QuantLib fails to calibrate the curve with a "root not bracketed" error on the very first future (BSB1), which as of today is the BSBZ21 instrument with expiry on 15-Dec-2021 and maturity on 15-Mar-2021. However, if I add the BSBY3M deposit rate to the RateHelpers list, the curve calibrates fine and its Discount Factor and Forward rate plots are very reasonable. Two additional thoughts: * This successful experiment with the deposit rate makes me guess that there is nothing inherently wrong with the setup of the other futures' and swaps' RateHelpers per se; * I can also successfully calibrate a curve with another external library without the deposit rate - which makes me think that it is not a "mathematical impossibility" to calibrate the curve with the quotes that I'm using. I would be very grateful if anybody had clues or pointers as per what the problem could be when I try to remove the deposit rate. Thank you very much in advance! Best regards, Simone _______________________________________________ QuantLib-users mailing list Qua...@li...<mailto:Qua...@li...> https://lists.sourceforge.net/lists/listinfo/quantlib-users<https://lists.sourceforge.net/lists/listinfo/quantlib-users> -- Giuseppe Trapani |
|
From: Giuseppe T. <tr...@gm...> - 2021-09-21 07:27:37
|
Hi Simone, are you working on C++ or other languages? Can you please share the code (the bare minimum of course)? I'm having a bit of trouble to imagine where the problem can be BUT I can drop a couple of cents here (all coming from my looooong experience with self procured bugs) 1) I see BSBxx are futures, why not using FuturesRateHelper? notice *the constructor requires the price*, not the rate of the future. 2) Have you checked what rate you get for the front Deposit (the one you are skipping) from your external library? Have a nice day! Il giorno mar 21 set 2021 alle ore 09:11 Simone Caenazzo < Sim...@ri...> ha scritto: > Dear QuantLib user, > > > > I am reaching out as I have encountered an error in QuantLib, and I was > hoping someone could give me some help or pointers. > > > > The error arises when trying to bootstrap a BSBY (Bloomberg Short-term > Bank Yield) curve in QuantLib (version 1.17), using the PiecewiseYieldCurve > object. > > > > In particular, I am trying to construct the curve as a LIBOR-like curve, > using: > > > > - BSBY futures (BSB1 to BSB8, in Bloomberg parlance) - these are taken > as EuroDollar RateHelpers; > - Synthetic BSBY swaps - taken as standard fix-for-float RateHelpers, > with 6M, 30/360 Fixed leg and 3M, Act/360 Floating leg. > > > > Note that *I am NOT using the deposit rate for the front end of the curve* > - this is a requirement that I need to maintain. > > > > Right now, QuantLib fails to calibrate the curve with a "root not > bracketed" error on the very first future (BSB1), which as of today is the > BSBZ21 instrument with expiry on 15-Dec-2021 and maturity on 15-Mar-2021. > > > > However, *if I add the BSBY3M deposit rate to the RateHelpers list, the > curve calibrates fine *and its Discount Factor and Forward rate plots are > very reasonable. > > > > Two additional thoughts: > > > > - This successful experiment with the deposit rate makes me guess that > there is nothing inherently wrong with the setup of the other futures' and > swaps' RateHelpers per se; > - I can also successfully calibrate a curve with another external > library without the deposit rate - which makes me think that it is not a > "mathematical impossibility" to calibrate the curve with the quotes that > I'm using. > > > > I would be very grateful if anybody had clues or pointers as per what the > problem could be when I try to remove the deposit rate. > > > > Thank you very much in advance! > > > > Best regards, > > > > Simone > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users > -- *Giuseppe Trapani* |