SwaptionVolCube1 in QLXL

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

SwaptionVolCube1 in QLXL

Philip Hong

Hello,

I’m using SwaptionVolCube1 in QuantlibXL and I have a few questions:


-  I’m trying to input vol quotes into SwaptionVolCube1 (from ATM - 200bps to ATM + 200bps, expiries from 1M to 30Y, swap tenors from 1Y to 30Y).  However, for the ATM-200/short expiry/short swap tenor swaptions, a lot of those are not quoted (since rates in the front end are so low, ATM-200 would take us negative).  So should I just leave those vol quotes blank in the input matrix?  Does anyone know what’s the quantlib convention for inputting a sparse matrix where there’s no values for certain cells?

-  Again, since front end rates are so low, when I include ATM-200 or even ATM-100 in my strike spreads, I’ll almost certainly run into negative strike territory in the short expiry/tenors.  In fact, when I tried to price a swaption (NPV) using the VolCube1 in the pricing engine, I get the following error:

“qlInstrumentNPV - strike (-0.00485626) must be non-negative”

I tried excluding -200 and -100 and was able to get it to work.  However, i do want to include at least ATM-100 for the longer expiries/strikes, but have not figured out how to do so.  Does anyone have any suggestions ?

Any pointers would be much appreciated. Thanks,

 

Philip


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: SwaptionVolCube1 in QLXL

Peter Caspers-2
Though a quote object can be invalid it does not help for the spread vol quotes, because the cube does not check this property. I can send some adjustments to the code which make it run with the full quotes matrix ignoring cells with negative strikes if of interest. Regards, Peter

Am 27.09.2011 16:46, schrieb Philip Hong:

Hello,

I’m using SwaptionVolCube1 in QuantlibXL and I have a few questions:


-  I’m trying to input vol quotes into SwaptionVolCube1 (from ATM - 200bps to ATM + 200bps, expiries from 1M to 30Y, swap tenors from 1Y to 30Y).  However, for the ATM-200/short expiry/short swap tenor swaptions, a lot of those are not quoted (since rates in the front end are so low, ATM-200 would take us negative).  So should I just leave those vol quotes blank in the input matrix?  Does anyone know what’s the quantlib convention for inputting a sparse matrix where there’s no values for certain cells?

-  Again, since front end rates are so low, when I include ATM-200 or even ATM-100 in my strike spreads, I’ll almost certainly run into negative strike territory in the short expiry/tenors.  In fact, when I tried to price a swaption (NPV) using the VolCube1 in the pricing engine, I get the following error:

“qlInstrumentNPV - strike (-0.00485626) must be non-negative”

I tried excluding -200 and -100 and was able to get it to work.  However, i do want to include at least ATM-100 for the longer expiries/strikes, but have not figured out how to do so.  Does anyone have any suggestions ?

Any pointers would be much appreciated. Thanks,

 

Philip

------------------------------------------------------------------------------ All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: SwaptionVolCube1 in QLXL

Philip Hong
In reply to this post by Philip Hong
Hi Peter, that would be of great help! Can you please send the adjustments?
Thank you very much, 
Philip

> Though a quote object can be invalid it does not help for the spread vol 
> quotes, because the cube does not check this property. I can send some 
> adjustments to the code which make it run with the full quotes matrix 
> ignoring cells with negative strikes if of interest. Regards, Peter

> Am <a href="tel:27.09.2011%2016" value="+12709201116" target="_blank">27.09.2011 16:46, schrieb Philip Hong:
>
> Hello,
>
> I’m using SwaptionVolCube1 in QuantlibXL and I have a few questions:
>
>
> -  I’m trying to input vol quotes into SwaptionVolCube1 (from ATM - 
> 200bps to ATM + 200bps, expiries from 1M to 30Y, swap tenors from 1Y 
> to 30Y). However, for the ATM-200/short expiry/short swap tenor 
> swaptions, a lot of those are not quoted (since rates in the front end 
> are so low, ATM-200 would take us negative). So should I just leave 
> those vol quotes blank in the input matrix? Does anyone know what’s 
> the quantlib convention for inputting a sparse matrix where there’s no 
> values for certain cells?
>
> -  Again, since front end rates are so low, when I include ATM-200 or 
> even ATM-100 in my strike spreads, I’ll almost certainly run into 
> negative strike territory in the short expiry/tenors.In fact, when I 
> tried to price a swaption (NPV) using the VolCube1 in the pricing 
> engine, I get the following error:
>
> “qlInstrumentNPV - strike (-0.00485626) must be non-negative”
>
> I tried excluding -200 and -100 and was able to get it to 
> work.However, i do want to include at least ATM-100 for the longer 
> expiries/strikes, but have not figured out how to do so.Does anyone 
> have any suggestions ?
>
> Any pointers would be much appreciated. Thanks,
>
> Philip
>
>
> ------------------------------------------------------------------------------
> All the data continuously generated in your IT infrastructure contains a
> definitive record of customers, application performance, security
> threats, fraudulent activity and more. Splunk takes this data and makes
> sense of it. Business sense. IT sense. Common sense.
> http://p.sf.net/sfu/splunk-d2dcopy1
>
>
> _______________________________________________
> QuantLib-users mailing list
> QuantLib-users@...
> https://lists.sourceforge.net/lists/listinfo/quantlib-users


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: SwaptionVolCube1 in QLXL

Peter Caspers-3
Here it is. I transfered the changes from another cube, so it would be good if you could test a little bit. It should work for both a sparse cube as well as for an atm calibrated cube.

Peter

----------------------------------------------------------------------
From: "Philip Hong" <[hidden email]>
To: <[hidden email]>
Date: Thu, 29 Sep 2011 21:36:26 +0200
Subject: Re: [Quantlib-users] SwaptionVolCube1 in QLXL


> Hi Peter, that would be of great help! Can you please send the
adjustments?
>
> Thank you very much,
>
> Philip
>
>
> > Though a quote object can be invalid it does not help for the spread
vol
> > quotes, because the cube does not check this property. I can send
some

> > adjustments to the code which make it run with the full quotes matrix
> > ignoring cells with negative strikes if of interest. Regards, Peter
>
> > Am 27.09.2011 16:46, schrieb Philip Hong:
> >
> > Hello,
> >
> > I’m using SwaptionVolCube1 in QuantlibXL and I have a few questions:
> >
> >
> > -  I’m trying to input vol quotes into SwaptionVolCube1 (from ATM -
> > 200bps to ATM + 200bps, expiries from 1M to 30Y, swap tenors from 1Y
> > to 30Y). However, for the ATM-200/short expiry/short swap tenor
> > swaptions, a lot of those are not quoted (since rates in the front
end
> > are so low, ATM-200 would take us negative). So should I just leave
> > those vol quotes blank in the input matrix? Does anyone know what’s
> > the quantlib convention for inputting a sparse matrix where there’s
no

> > values for certain cells?
> >
> > -  Again, since front end rates are so low, when I include ATM-200 or
> > even ATM-100 in my strike spreads, I’ll almost certainly run into
> > negative strike territory in the short expiry/tenors.In fact, when I
> > tried to price a swaption (NPV) using the VolCube1 in the pricing
> > engine, I get the following error:
> >
> > “qlInstrumentNPV - strike (-0.00485626) must be non-negative”
> >
> > I tried excluding -200 and -100 and was able to get it to
> > work.However, i do want to include at least ATM-100 for the longer
> > expiries/strikes, but have not figured out how to do so.Does anyone
> > have any suggestions ?
> >
> > Any pointers would be much appreciated. Thanks,
> >
> > Philip
> >
> >
> > ---------------------------------------------------------------------
---------
> > All the data continuously generated in your IT infrastructure
contains a
> > definitive record of customers, application performance, security
> > threats, fraudulent activity and more. Splunk takes this data and
makes
> > sense of it. Business sense. IT sense. Common sense.
> > http://p.sf.net/sfu/splunk-d2dcopy1
> >
> >
> > _______________________________________________
> > QuantLib-users mailing list
> > QuantLib-users@...
> > https://lists.sourceforge.net/lists/listinfo/quantlib-users
>

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2dcopy2
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users

swaptionvolcube1.cpp (39K) Download Attachment