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: Magnus M. <mm...@gm...> - 2022-07-22 08:14:14
|
Hi Shashank The attached setup worked for me. I guess you are missing the Other Linker Flags = lQuantLib? Kind regards, Magnus On Fri, 22 Jul 2022, 08.49 Shashank Choudhary <sha...@gm...> wrote: > Hi Users , > > I am struggling to make Quantlib work on my XCode. I followed the steps on > the official download page. However I get a bunch of errors while compiling > (Screenshot attached). I believe I have included the correct search path > which for my computer is /opt/local/ (screenshot attached). > > I read on one of the forums that you have to include a "quantlib > framework" before compiling the project. However I couldn't locate the file > libQuantLib.0.dylib in the Quantlib folder. So, that step (although not > provided in the documentation) is missing. > > I would really appreciate your help on this. > Thank you > > regards > Shashank > > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users > |
|
From: Luigi B. <lui...@gm...> - 2022-07-22 07:40:31
|
QuantLib 1.27 has been released and is available for download at < https://www.quantlib.org/download.shtml>. The list of changes for this release is at < https://www.quantlib.org/reference/history.html>. Please report any problems you have with this release to the QuantLib mailing list (<qua...@li...>), or open a GitHub issue at <https://github.com/lballabio/quantlib/issues>. |
|
From: BERNARDO A B. N. <ber...@up...> - 2022-07-21 00:54:57
|
[Image.jpeg]Hi, I tried to build and test run the CSharp functions that are in the file, but I kept getting an error that it required the path of the shared library file named "NQuantLibc" (I attached an image of the error in the email). Where is this so file located in the computer or the "QuantLib-SWIG" and "QuantLib" folders? Thank you for the help, Bernardo. |
|
From: Shashank C. <sha...@gm...> - 2022-07-20 17:02:51
|
Hi Users , I am struggling to make Quantlib work on my XCode. I followed the steps on the official download page. However I get a bunch of errors while compiling (Screenshot attached). I believe I have included the correct search path which for my computer is /opt/local/ (screenshot attached). I read on one of the forums that you have to include a "quantlib framework" before compiling the project. However I couldn't locate the file libQuantLib.0.dylib in the Quantlib folder. So, that step (although not provided in the documentation) is missing. I would really appreciate your help on this. Thank you regards Shashank |
|
From: Luigi B. <lui...@gm...> - 2022-07-18 06:49:54
|
Thanks! On Sat, Jul 16, 2022 at 1:03 AM Dirk Eddelbuettel <ed...@de...> wrote: > > On 14 July 2022 at 15:26, Luigi Ballabio wrote: > | Hello everybody, > | I just published the RCs for 1.27 at < > | https://github.com/lballabio/QuantLib/releases/tag/1.27rc>. If you have > | some time, please check them out and report any problems here. Thanks! > > Sorry, forgot to circle back yesterday: I uploaded it to Debian (C++ only, > not the Swig bindings, and into 'experimental') and it builds fine as > usual: > > https://buildd.debian.org/status/package.php?p=quantlib&suite=experimental > > Dirk > > -- > dirk.eddelbuettel.com | @eddelbuettel | ed...@de... > |
|
From: Dirk E. <ed...@de...> - 2022-07-15 23:04:01
|
On 14 July 2022 at 15:26, Luigi Ballabio wrote: | Hello everybody, | I just published the RCs for 1.27 at < | https://github.com/lballabio/QuantLib/releases/tag/1.27rc>. If you have | some time, please check them out and report any problems here. Thanks! Sorry, forgot to circle back yesterday: I uploaded it to Debian (C++ only, not the Swig bindings, and into 'experimental') and it builds fine as usual: https://buildd.debian.org/status/package.php?p=quantlib&suite=experimental Dirk -- dirk.eddelbuettel.com | @eddelbuettel | ed...@de... |
|
From: Luigi B. <lui...@gm...> - 2022-07-14 13:27:11
|
Hello everybody,
I just published the RCs for 1.27 at <
https://github.com/lballabio/QuantLib/releases/tag/1.27rc>. If you have
some time, please check them out and report any problems here. Thanks!
Luigi
|
|
From: Ashish B. <ash...@gm...> - 2022-07-11 13:41:14
|
Hi Luigi, Did you decide on the release date of the 1.27 version? Looking at past dates, it seems you generally release on Tue/Wed of the 3rd week. Could we expect the same this time too? Thanks Ashish On Tue, 28 Jun 2022 at 16:46, Luigi Ballabio <lui...@gm...> wrote: > Just to confirm, will the TW engine, which is part of 1.27, be exposed in >> SWIG in the same release? >> > > Yes, it will. > > |
|
From: Jacek B. <jac...@gm...> - 2022-07-05 16:07:12
|
Hi. My question is not related to the library itself, but rather to market practice. I would like to price RFR caps with some short rate model, e.g. G2. From what I know (and tried to simulate), neither G2 nor Hull White can produce volatility smile. However, if you take a look at market cap/floor surfaces for RFR, they usually have a smily shape. I intend to use short rate model having Bloomberg as benchmark, who started to use HW 1 factor in their pricer. Unfortunately, Bloomberg is not disclosing any details on the calibration procedure they use, nor model parameters, thus my question: how one can use short rate model to have prices consistent with market vol surface across all strikes? Does anyone know how Bloomberg does it? Is it different set of model parameters for each strike? Any hint would be much appreciated. Thanks, Jacek |
|
From: Ashish B. <ash...@gm...> - 2022-07-05 12:14:00
|
Will try to use the first convention for EUR/USD. Users can enter a trade in any direction for other currency pairs. So need to be clear about it. Thanks a lot. Appreciate it. Regards Ashish On Tue, 5 Jul 2022 at 16:55, Jonathan Sweemer <sw...@gm...> wrote: > The first one looks correct, but not sure about the second one. I would > recommend sticking with the market convention quote and avoiding inverted > quotes if possible. > > 2022년 7월 5일 (화) 20:15, Ashish Bansal <ash...@gm...>님이 작성: > >> so you are saying it should be passed like this: >> For 1 EUR = 1.22 USD: >> ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.22)), EUR_rate, >> USD_rate, volTS) >> >> and when rate is 1USD = 0.82 EUR: >> ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(0.82)), USD_rate, >> EUR_rate, volTS) >> >> Please confirm. >> >> Thanks >> Ashish Bansal >> >> >> On Tue, 5 Jul 2022 at 15:16, Jonathan Sweemer <sw...@gm...> wrote: >> >>> For EUR/USD the foreign currency is EUR and the domestic currency is >>> USD. Looks like the code on stackoverflow passed them in the wrong order. >>> >>> The foreign and domestic currency in each currency pair is determined by >>> market convention. Iain Clark’s book[1] does a good job of explaining the >>> conventions in case you haven’t come across it yet. >>> >>> [1] >>> https://www.amazon.com/Foreign-Exchange-Option-Pricing-Practitioners/dp/0470683686 >>> >>> >>> 2022년 7월 5일 (화) 17:13, Ashish Bansal <ash...@gm...>님이 작성: >>> >>>> Hi, >>>> >>>> I want to know which currency is to be considered domestic and which >>>> one foreign for the risk-free rates in the following process while pricing >>>> the FX option: >>>> *process = ql.GarmanKohlagenProcess(initialValue, foreignRiskFreeTS, >>>> domesticRiskFreeTS, volTS)* >>>> source: >>>> https://quantlib-python-docs.readthedocs.io/en/latest/stochastic_processes.html#garmankohlagenprocess >>>> >>>> On the following page on Stack Overflow, the second parameter (USD) is >>>> written with the name as domestic and the third parameter (EUR) as foreign >>>> which is the inverse of the above user guide: >>>> >>>> *ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.122)), >>>> usd_domestic, eur_foreign, volTS* >>>> source: >>>> https://stackoverflow.com/questions/66113871/pricing-an-fx-option-using-the-garman-kohlagen-process-in-quantlib-python >>>> >>>> Could you please confirm if I have the FX rate as follows then what is >>>> the correct convention: >>>> For 1 EUR = 1.22 USD convention >>>> conv-1: USD = foreign (2nd param) and EUR = domestic (3rd param) >>>> or >>>> conv-2: EUR = foreign (2nd param) and USD = domestic (3rd param) >>>> >>>> I suppose, when I put the FX rate in inverse convention, the risk-free >>>> rates would also be switched. >>>> >>>> Thanks in advance. >>>> >>>> Regards, >>>> Ashish >>>> >>>> >>>> >>>> _______________________________________________ >>>> QuantLib-users mailing list >>>> Qua...@li... >>>> https://lists.sourceforge.net/lists/listinfo/quantlib-users >>>> >>> |
|
From: Jonathan S. <sw...@gm...> - 2022-07-05 11:25:57
|
The first one looks correct, but not sure about the second one. I would recommend sticking with the market convention quote and avoiding inverted quotes if possible. 2022년 7월 5일 (화) 20:15, Ashish Bansal <ash...@gm...>님이 작성: > so you are saying it should be passed like this: > For 1 EUR = 1.22 USD: > ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.22)), EUR_rate, > USD_rate, volTS) > > and when rate is 1USD = 0.82 EUR: > ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(0.82)), USD_rate, > EUR_rate, volTS) > > Please confirm. > > Thanks > Ashish Bansal > > > On Tue, 5 Jul 2022 at 15:16, Jonathan Sweemer <sw...@gm...> wrote: > >> For EUR/USD the foreign currency is EUR and the domestic currency is USD. >> Looks like the code on stackoverflow passed them in the wrong order. >> >> The foreign and domestic currency in each currency pair is determined by >> market convention. Iain Clark’s book[1] does a good job of explaining the >> conventions in case you haven’t come across it yet. >> >> [1] >> https://www.amazon.com/Foreign-Exchange-Option-Pricing-Practitioners/dp/0470683686 >> >> >> 2022년 7월 5일 (화) 17:13, Ashish Bansal <ash...@gm...>님이 작성: >> >>> Hi, >>> >>> I want to know which currency is to be considered domestic and which one >>> foreign for the risk-free rates in the following process while pricing the >>> FX option: >>> *process = ql.GarmanKohlagenProcess(initialValue, foreignRiskFreeTS, >>> domesticRiskFreeTS, volTS)* >>> source: >>> https://quantlib-python-docs.readthedocs.io/en/latest/stochastic_processes.html#garmankohlagenprocess >>> >>> On the following page on Stack Overflow, the second parameter (USD) is >>> written with the name as domestic and the third parameter (EUR) as foreign >>> which is the inverse of the above user guide: >>> >>> *ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.122)), >>> usd_domestic, eur_foreign, volTS* >>> source: >>> https://stackoverflow.com/questions/66113871/pricing-an-fx-option-using-the-garman-kohlagen-process-in-quantlib-python >>> >>> Could you please confirm if I have the FX rate as follows then what is >>> the correct convention: >>> For 1 EUR = 1.22 USD convention >>> conv-1: USD = foreign (2nd param) and EUR = domestic (3rd param) >>> or >>> conv-2: EUR = foreign (2nd param) and USD = domestic (3rd param) >>> >>> I suppose, when I put the FX rate in inverse convention, the risk-free >>> rates would also be switched. >>> >>> Thanks in advance. >>> >>> Regards, >>> Ashish >>> >>> >>> >>> _______________________________________________ >>> QuantLib-users mailing list >>> Qua...@li... >>> https://lists.sourceforge.net/lists/listinfo/quantlib-users >>> >> |
|
From: Ashish B. <ash...@gm...> - 2022-07-05 11:15:44
|
so you are saying it should be passed like this: For 1 EUR = 1.22 USD: ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.22)), EUR_rate, USD_rate, volTS) and when rate is 1USD = 0.82 EUR: ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(0.82)), USD_rate, EUR_rate, volTS) Please confirm. Thanks Ashish Bansal On Tue, 5 Jul 2022 at 15:16, Jonathan Sweemer <sw...@gm...> wrote: > For EUR/USD the foreign currency is EUR and the domestic currency is USD. > Looks like the code on stackoverflow passed them in the wrong order. > > The foreign and domestic currency in each currency pair is determined by > market convention. Iain Clark’s book[1] does a good job of explaining the > conventions in case you haven’t come across it yet. > > [1] > https://www.amazon.com/Foreign-Exchange-Option-Pricing-Practitioners/dp/0470683686 > > > 2022년 7월 5일 (화) 17:13, Ashish Bansal <ash...@gm...>님이 작성: > >> Hi, >> >> I want to know which currency is to be considered domestic and which one >> foreign for the risk-free rates in the following process while pricing the >> FX option: >> *process = ql.GarmanKohlagenProcess(initialValue, foreignRiskFreeTS, >> domesticRiskFreeTS, volTS)* >> source: >> https://quantlib-python-docs.readthedocs.io/en/latest/stochastic_processes.html#garmankohlagenprocess >> >> On the following page on Stack Overflow, the second parameter (USD) is >> written with the name as domestic and the third parameter (EUR) as foreign >> which is the inverse of the above user guide: >> >> *ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.122)), >> usd_domestic, eur_foreign, volTS* >> source: >> https://stackoverflow.com/questions/66113871/pricing-an-fx-option-using-the-garman-kohlagen-process-in-quantlib-python >> >> Could you please confirm if I have the FX rate as follows then what is >> the correct convention: >> For 1 EUR = 1.22 USD convention >> conv-1: USD = foreign (2nd param) and EUR = domestic (3rd param) >> or >> conv-2: EUR = foreign (2nd param) and USD = domestic (3rd param) >> >> I suppose, when I put the FX rate in inverse convention, the risk-free >> rates would also be switched. >> >> Thanks in advance. >> >> Regards, >> Ashish >> >> >> >> _______________________________________________ >> QuantLib-users mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-users >> > |
|
From: Jonathan S. <sw...@gm...> - 2022-07-05 09:47:08
|
For EUR/USD the foreign currency is EUR and the domestic currency is USD. Looks like the code on stackoverflow passed them in the wrong order. The foreign and domestic currency in each currency pair is determined by market convention. Iain Clark’s book[1] does a good job of explaining the conventions in case you haven’t come across it yet. [1] https://www.amazon.com/Foreign-Exchange-Option-Pricing-Practitioners/dp/0470683686 2022년 7월 5일 (화) 17:13, Ashish Bansal <ash...@gm...>님이 작성: > Hi, > > I want to know which currency is to be considered domestic and which one > foreign for the risk-free rates in the following process while pricing the > FX option: > *process = ql.GarmanKohlagenProcess(initialValue, foreignRiskFreeTS, > domesticRiskFreeTS, volTS)* > source: > https://quantlib-python-docs.readthedocs.io/en/latest/stochastic_processes.html#garmankohlagenprocess > > On the following page on Stack Overflow, the second parameter (USD) is > written with the name as domestic and the third parameter (EUR) as foreign > which is the inverse of the above user guide: > > *ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.122)), > usd_domestic, eur_foreign, volTS* > source: > https://stackoverflow.com/questions/66113871/pricing-an-fx-option-using-the-garman-kohlagen-process-in-quantlib-python > > Could you please confirm if I have the FX rate as follows then what is the > correct convention: > For 1 EUR = 1.22 USD convention > conv-1: USD = foreign (2nd param) and EUR = domestic (3rd param) > or > conv-2: EUR = foreign (2nd param) and USD = domestic (3rd param) > > I suppose, when I put the FX rate in inverse convention, the risk-free > rates would also be switched. > > Thanks in advance. > > Regards, > Ashish > > > > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users > |
|
From: Ashish B. <ash...@gm...> - 2022-07-05 08:10:06
|
Hi, I want to know which currency is to be considered domestic and which one foreign for the risk-free rates in the following process while pricing the FX option: *process = ql.GarmanKohlagenProcess(initialValue, foreignRiskFreeTS, domesticRiskFreeTS, volTS)* source: https://quantlib-python-docs.readthedocs.io/en/latest/stochastic_processes.html#garmankohlagenprocess On the following page on Stack Overflow, the second parameter (USD) is written with the name as domestic and the third parameter (EUR) as foreign which is the inverse of the above user guide: *ql.GarmanKohlagenProcess(ql.QuoteHandle(ql.SimpleQuote(1.122)), usd_domestic, eur_foreign, volTS* source: https://stackoverflow.com/questions/66113871/pricing-an-fx-option-using-the-garman-kohlagen-process-in-quantlib-python Could you please confirm if I have the FX rate as follows then what is the correct convention: For 1 EUR = 1.22 USD convention conv-1: USD = foreign (2nd param) and EUR = domestic (3rd param) or conv-2: EUR = foreign (2nd param) and USD = domestic (3rd param) I suppose, when I put the FX rate in inverse convention, the risk-free rates would also be switched. Thanks in advance. Regards, Ashish |
|
From: Jonathan S. <sw...@gm...> - 2022-07-04 20:58:58
|
Hi Michele,
If you want your new FdHestonPartialTimeBarrierEngine to operate on
PartialTimeBarrierOption then it should be parameterized on
PartialTimeBarrierOption::arguments and ::results just like
AnalyticPartialTimeBarrierOptionEngine is.
Whether or not you need to make a new DividendPartialTimeBarrierOption
depends on your modeling requirements and whether PartialTimeBarrierOption
already has everything you need or not.
For the pricing logic in FdHestonPartialTimeBarrierEngine, do you have a
paper or other source that you can refer to? If not, then perhaps someone
else on this mailing list can help point you in the right direction - I’m
afraid I have not worked with this combination of model and instrument
before.
2022년 7월 4일 (월) 22:34, Michele dL <mdi...@gm...>님이 작성:
> Hi Jonathan,
>
> Thanks for your answer. This is what I did indeed. I have a copy of
> fdhestonbarrierengine.hpp and fdhestonbarrierengine.cpp as follows:
>
> Header file:
> class FdHestonPartialTimeBarrierEngine
> : public GenericModelEngine<HestonModel,
> DividendBarrierOption::arguments,
> DividendBarrierOption::results> {
> public:
> // Constructor
> explicit FdHestonPartialTimeBarrierEngine(
> const ext::shared_ptr<HestonModel>& model,
> Size tGrid = 100,
> Size xGrid = 100,
> Size vGrid = 50,
> Size dampingSteps = 0,
> const FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer(),
> ext::shared_ptr<LocalVolTermStructure> leverageFct =
> ext::shared_ptr<LocalVolTermStructure>(),
> Real mixingFactor = 1.0);
>
> void calculate() const override;
>
> private:
> const Size tGrid_, xGrid_, vGrid_, dampingSteps_;
> const FdmSchemeDesc schemeDesc_;
> const ext::shared_ptr<LocalVolTermStructure> leverageFct_;
> const Real mixingFactor_;
> };
>
> Source file:
> FdHestonPartialTimeBarrierEngine::FdHestonPartialTimeBarrierEngine(const
> ext::shared_ptr<HestonModel>& model,
> Size tGrid,
> Size xGrid,
> Size vGrid,
> Size dampingSteps,
> const FdmSchemeDesc&
> schemeDesc,
>
> ext::shared_ptr<LocalVolTermStructure> leverageFct,
> const Real mixingFactor)
> : GenericModelEngine<HestonModel,
> DividendBarrierOption::arguments,
> DividendBarrierOption::results>(model),
> tGrid_(tGrid), xGrid_(xGrid), vGrid_(vGrid),
> dampingSteps_(dampingSteps),
> schemeDesc_(schemeDesc), leverageFct_(std::move(leverageFct)),
> mixingFactor_(mixingFactor) {
> std::cout<<" HestonBarrierEngine \n";
> }
>
> Probably the error arises from the wrong pricing logic. Here I'm using
> DividendBarrierOption and I have not created a
> DividendPartialTimeBarrierOption. Maybe this is the problem?
>
> Thanks,
> Michele
>
> Il giorno lun 4 lug 2022 alle ore 13:31 Jonathan Sweemer <
> sw...@gm...> ha scritto:
>
>> Hi Michele,
>>
>> When you say that you "replaced" DividendBarrierOption arguments and
>> results with PartialTimeBarrierOption, do you mean that you modified the
>> existing fdhestonbarrierengine.hpp file?
>>
>> If that's what you mean, then you'll first have to create a copy of
>> fdhestonbarrierengine.hpp and give your class a new name such as
>> FdHestonPartialTimeBarrierEngine and then also copy the cpp file and modify
>> the code to implement the pricing logic.
>>
>> If that's not what you mean then could you share your code along with the
>> full compiler error that you're seeing?
>>
>> On Mon, Jul 4, 2022 at 8:21 PM Michele dL <mdi...@gm...> wrote:
>>
>>> Hi all,
>>>
>>> I'm trying to use the Heston model to price a window barrier option.
>>>
>>> With standard barrier option under BSM model one could use the
>>> analytical engine with the following inheritance
>>> class AnalyticPartialTimeBarrierOptionEngine
>>> : public PartialTimeBarrierOption::engine
>>>
>>>
>>> In my case, I would like to use something similar to the
>>> fdHestonBarrierEngine
>>>
>>> class FdHestonBarrierEngine
>>> : public GenericModelEngine<HestonModel,
>>> DividendBarrierOption::arguments,
>>> DividendBarrierOption::results>
>>>
>>> However, in this case a problem with argument arises. I tried in vain
>>> replacing DividentBarrierOption::arguments and
>>> DividentBarrierOption::results with PartialTimeBarrierOption::arguments and
>>> PartialTimeBarrierOption::results, respectively.
>>> It seems that inside the engine it requires arguments_.cashFlow which is
>>> not defined inside PartialTimeBarrierOption.
>>>
>>> Can anyone suggest any possible fix to use PartialTimeBarrierOption with
>>> fdHestonBarrierEngine, please?
>>>
>>> Thanks
>>>
>>> _______________________________________________
>>> QuantLib-users mailing list
>>> Qua...@li...
>>> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>>>
>>
|
|
From: Michele dL <mdi...@gm...> - 2022-07-04 13:34:18
|
Hi Jonathan,
Thanks for your answer. This is what I did indeed. I have a copy of
fdhestonbarrierengine.hpp and fdhestonbarrierengine.cpp as follows:
Header file:
class FdHestonPartialTimeBarrierEngine
: public GenericModelEngine<HestonModel,
DividendBarrierOption::arguments,
DividendBarrierOption::results> {
public:
// Constructor
explicit FdHestonPartialTimeBarrierEngine(
const ext::shared_ptr<HestonModel>& model,
Size tGrid = 100,
Size xGrid = 100,
Size vGrid = 50,
Size dampingSteps = 0,
const FdmSchemeDesc& schemeDesc = FdmSchemeDesc::Hundsdorfer(),
ext::shared_ptr<LocalVolTermStructure> leverageFct =
ext::shared_ptr<LocalVolTermStructure>(),
Real mixingFactor = 1.0);
void calculate() const override;
private:
const Size tGrid_, xGrid_, vGrid_, dampingSteps_;
const FdmSchemeDesc schemeDesc_;
const ext::shared_ptr<LocalVolTermStructure> leverageFct_;
const Real mixingFactor_;
};
Source file:
FdHestonPartialTimeBarrierEngine::FdHestonPartialTimeBarrierEngine(const
ext::shared_ptr<HestonModel>& model,
Size tGrid,
Size xGrid,
Size vGrid,
Size dampingSteps,
const FdmSchemeDesc&
schemeDesc,
ext::shared_ptr<LocalVolTermStructure> leverageFct,
const Real mixingFactor)
: GenericModelEngine<HestonModel,
DividendBarrierOption::arguments,
DividendBarrierOption::results>(model),
tGrid_(tGrid), xGrid_(xGrid), vGrid_(vGrid),
dampingSteps_(dampingSteps),
schemeDesc_(schemeDesc), leverageFct_(std::move(leverageFct)),
mixingFactor_(mixingFactor) {
std::cout<<" HestonBarrierEngine \n";
}
Probably the error arises from the wrong pricing logic. Here I'm using
DividendBarrierOption and I have not created a
DividendPartialTimeBarrierOption. Maybe this is the problem?
Thanks,
Michele
Il giorno lun 4 lug 2022 alle ore 13:31 Jonathan Sweemer <sw...@gm...>
ha scritto:
> Hi Michele,
>
> When you say that you "replaced" DividendBarrierOption arguments and
> results with PartialTimeBarrierOption, do you mean that you modified the
> existing fdhestonbarrierengine.hpp file?
>
> If that's what you mean, then you'll first have to create a copy of
> fdhestonbarrierengine.hpp and give your class a new name such as
> FdHestonPartialTimeBarrierEngine and then also copy the cpp file and modify
> the code to implement the pricing logic.
>
> If that's not what you mean then could you share your code along with the
> full compiler error that you're seeing?
>
> On Mon, Jul 4, 2022 at 8:21 PM Michele dL <mdi...@gm...> wrote:
>
>> Hi all,
>>
>> I'm trying to use the Heston model to price a window barrier option.
>>
>> With standard barrier option under BSM model one could use the analytical
>> engine with the following inheritance
>> class AnalyticPartialTimeBarrierOptionEngine
>> : public PartialTimeBarrierOption::engine
>>
>>
>> In my case, I would like to use something similar to the
>> fdHestonBarrierEngine
>>
>> class FdHestonBarrierEngine
>> : public GenericModelEngine<HestonModel,
>> DividendBarrierOption::arguments,
>> DividendBarrierOption::results>
>>
>> However, in this case a problem with argument arises. I tried in vain
>> replacing DividentBarrierOption::arguments and
>> DividentBarrierOption::results with PartialTimeBarrierOption::arguments and
>> PartialTimeBarrierOption::results, respectively.
>> It seems that inside the engine it requires arguments_.cashFlow which is
>> not defined inside PartialTimeBarrierOption.
>>
>> Can anyone suggest any possible fix to use PartialTimeBarrierOption with
>> fdHestonBarrierEngine, please?
>>
>> Thanks
>>
>> _______________________________________________
>> QuantLib-users mailing list
>> Qua...@li...
>> https://lists.sourceforge.net/lists/listinfo/quantlib-users
>>
>
|
|
From: Jonathan S. <sw...@gm...> - 2022-07-04 12:31:09
|
Hi Michele, When you say that you "replaced" DividendBarrierOption arguments and results with PartialTimeBarrierOption, do you mean that you modified the existing fdhestonbarrierengine.hpp file? If that's what you mean, then you'll first have to create a copy of fdhestonbarrierengine.hpp and give your class a new name such as FdHestonPartialTimeBarrierEngine and then also copy the cpp file and modify the code to implement the pricing logic. If that's not what you mean then could you share your code along with the full compiler error that you're seeing? On Mon, Jul 4, 2022 at 8:21 PM Michele dL <mdi...@gm...> wrote: > Hi all, > > I'm trying to use the Heston model to price a window barrier option. > > With standard barrier option under BSM model one could use the analytical > engine with the following inheritance > class AnalyticPartialTimeBarrierOptionEngine > : public PartialTimeBarrierOption::engine > > > In my case, I would like to use something similar to the > fdHestonBarrierEngine > > class FdHestonBarrierEngine > : public GenericModelEngine<HestonModel, > DividendBarrierOption::arguments, > DividendBarrierOption::results> > > However, in this case a problem with argument arises. I tried in vain > replacing DividentBarrierOption::arguments and > DividentBarrierOption::results with PartialTimeBarrierOption::arguments and > PartialTimeBarrierOption::results, respectively. > It seems that inside the engine it requires arguments_.cashFlow which is > not defined inside PartialTimeBarrierOption. > > Can anyone suggest any possible fix to use PartialTimeBarrierOption with > fdHestonBarrierEngine, please? > > Thanks > > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users > |
|
From: Michele dL <mdi...@gm...> - 2022-07-04 11:18:29
|
Hi all, I'm trying to use the Heston model to price a window barrier option. With standard barrier option under BSM model one could use the analytical engine with the following inheritance class AnalyticPartialTimeBarrierOptionEngine : public PartialTimeBarrierOption::engine In my case, I would like to use something similar to the fdHestonBarrierEngine class FdHestonBarrierEngine : public GenericModelEngine<HestonModel, DividendBarrierOption::arguments, DividendBarrierOption::results> However, in this case a problem with argument arises. I tried in vain replacing DividentBarrierOption::arguments and DividentBarrierOption::results with PartialTimeBarrierOption::arguments and PartialTimeBarrierOption::results, respectively. It seems that inside the engine it requires arguments_.cashFlow which is not defined inside PartialTimeBarrierOption. Can anyone suggest any possible fix to use PartialTimeBarrierOption with fdHestonBarrierEngine, please? Thanks |
|
From: Peter C. <pca...@gm...> - 2022-07-03 08:24:19
|
Hi, you can't derive implied swaption volatilities from other, publicly available data. Same for swap rates by the way. Thanks Peter On Thu, 23 Jun 2022 at 16:17, El Yousfi Fahd <fah...@gm...> wrote: > > Hi, > now i am using swaption volatilities to calibrate HW 1 factor short rate model. > but i am getting these data from a service provider and swaptions and swaps are OTC so getting these type of data kinda hard. > I want to know if there is a way to generate swaption volatilities (something like pricing swaps then swaption in quantlib and getting the volatilities) or that's kind ambitious ? > Thank you. > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users |
|
From: Diego D'A. <die...@gm...> - 2022-07-01 18:26:30
|
Hi Ashish, Thanks for your reply. I am still interested in using QuantLib to price YoYIIS cap and floors tho. The solution that I have adopted is to create a ql.IborIndex() with the zero rates extrapolated from the ZCIIS quotes. Following the example on the QuantLib cookbook for interest rate caps and floors, I am replicating the following term structure: term_structure = ql.ZeroCurve(dates, yields, day_count, calendar, interpolation, compounding, compounding_frequency) where 'yields' is a list of the zero rates extrapolated from the 'ql.PiecewiseZeroInflation()' curve, bootstrapped from the ZCIIS rates, with the method '.zeroRate()'; àdatesà is simply a list with the curve nodes. The rest of my script follows the example and I will validate the implied vol that I get from my model. I would appreciate your thoughts on the above solution. Best regards, Diego <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Mail priva di virus. www.avast.com <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> <#m_6208026811929552842_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> On Wed, Jun 29, 2022 at 6:20 PM Ashish Bansal <ash...@gm...> wrote: > Hi Diego, > > I don't think YoY helper is part of Quantlib. Could not find in the C++ > documentation. > > I can however see it in Open Source Risk guide: > > https://www.opensourcerisk.org/docs/qle/class_quant_ext_1_1_yo_y_cap_floor_helper.html > > It is dependant on QL but is a different library. It has its own SWIG so > YoY helper should be available in ORE python. Although I have not used it > myself. > > Regards > Ashish > > On Wed, Jun 29, 2022, 9:13 PM Diego D'Alessandro < > die...@gm...> wrote: > >> Hi, >> >> Is there any example on how to model a YOYIIS cap with Quantlib? >> >> I am trying to use the example on the QuantLib Cookbook related to >> interest rate cap (chapter 20. Caps and floors) but I am having issues >> with parsing the CPI index in the Ibor leg. >> >> Related to this, does the YoYCapFloorHelper work on python? I am getting >> the error message "AttributeError: module 'QuantLib' has no attribute >> 'YoYCapFloorHelper'". The ZeroCouponInflationSwapHelperworks tho. >> >> Many thanks, >> Diego >> _______________________________________________ >> QuantLib-users mailing list >> Qua...@li... >> https://lists.sourceforge.net/lists/listinfo/quantlib-users >> > <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Mail priva di virus. www.avast.com <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> |
|
From: Ashish B. <ash...@gm...> - 2022-06-29 17:20:21
|
Hi Diego, I don't think YoY helper is part of Quantlib. Could not find in the C++ documentation. I can however see it in Open Source Risk guide: https://www.opensourcerisk.org/docs/qle/class_quant_ext_1_1_yo_y_cap_floor_helper.html It is dependant on QL but is a different library. It has its own SWIG so YoY helper should be available in ORE python. Although I have not used it myself. Regards Ashish On Wed, Jun 29, 2022, 9:13 PM Diego D'Alessandro < die...@gm...> wrote: > Hi, > > Is there any example on how to model a YOYIIS cap with Quantlib? > > I am trying to use the example on the QuantLib Cookbook related to > interest rate cap (chapter 20. Caps and floors) but I am having issues > with parsing the CPI index in the Ibor leg. > > Related to this, does the YoYCapFloorHelper work on python? I am getting > the error message "AttributeError: module 'QuantLib' has no attribute > 'YoYCapFloorHelper'". The ZeroCouponInflationSwapHelperworks tho. > > Many thanks, > Diego > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users > |
|
From: Diego D'A. <die...@gm...> - 2022-06-29 15:41:51
|
Hi, Is there any example on how to model a YOYIIS cap with Quantlib? I am trying to use the example on the QuantLib Cookbook related to interest rate cap (chapter 20. Caps and floors) but I am having issues with parsing the CPI index in the Ibor leg. Related to this, does the YoYCapFloorHelper work on python? I am getting the error message "AttributeError: module 'QuantLib' has no attribute 'YoYCapFloorHelper'". The ZeroCouponInflationSwapHelperworks tho. Many thanks, Diego |
|
From: El Y. F. <fah...@gm...> - 2022-06-28 15:56:26
|
Hi, I want to implement the floater callable bond in python using quantlib. Is it possible? Or should i use c++ Anyone have an implementation i can refer to or study on how to model these kind of bonds? Any kind of help is appreciated Thank you |
|
From: Luigi B. <lui...@gm...> - 2022-06-28 11:17:03
|
> > Just to confirm, will the TW engine, which is part of 1.27, be exposed in > SWIG in the same release? > Yes, it will. |
|
From: Michele dL <mdi...@gm...> - 2022-06-28 10:26:26
|
Hi all, Could you please suggest which FD engines are available for PartialTimeBarrierOption? For example, with standard BarrierOption one could use fdHestonBarrierEngine. Is there a dedicated Heston engine for PartialTimeBarrierOption? Regards, Michele |