Hi all, I have a question regarding the classes SwaptionVolatilityMatrix and CapFlatVolatilityVector in QuantLib.
Why is this? Thanks, Luca Berardi DISCLAIMER: Privileged/Confidential Information may be contained in this message and in any of its attachments (the "message"). If you are not the addressee indicated in this message (or responsible for delivery of the message to such person), you may not copy or deliver this message to anyone. In such case, you should destroy this message and kindly notify the sender by reply e-mail. The contents of this message shall be understood as neither given nor endorsed by Banca Profilo S.p.A., nor Profilo SGR S.p.A., nor Profilo Asset Management SGR S.p.A., nor Profilo Academy S.p.A.. Banca Profilo S.p.A., Profilo SGR S.p.A., Profilo Asset Management SGR S.p.A., Profilo Academy S.p.A. do not accept liability for corruption, interception or amendment, if any, or the consequences thereof. Il presente messaggio e/o i suoi allegati (di seguito il "messaggio") possono contenere informazioni privilegiate e/o confidenziali. Se non siete i destinatari indicati nel messaggio (o persona incaricata di inoltrare il messaggio al/i destinatario/i), non potete copiare o inoltrare il messaggio ad altri e siete invitati a distruggerlo dandone informazione al mittente a mezzo e-mail. Il contenuto del presente messaggio non deve essere considerato come trasmesso o autorizzato nè da Banca Profilo S.p.A., nè da Profilo SGR S.p.A., nè da Profilo Asset Management SGR S.p.A., nè da Profilo Academy S.p.A.. Nè Banca Profilo S.p.A., nè Profilo SGR S.p.A., nè Profilo Asset Management SGR S.p.A., nè Profilo Academy S.p.A. si assumono alcuna responsabilità per eventuali intercettazioni, modifiche o danneggiamenti del presente messaggio e-mail e per le eventuali conseguenze. |
On 2004.03.31 11:03, Berardi Luca wrote:
> I have a question regarding the classes SwaptionVolatilityMatrix and > CapFlatVolatilityVector in QuantLib. Which should be rewritten. Too little time, too much to do... > They both derive the volatility(...) method from the corresponding > base classes and give a concrete implementations by means of the > private method volatilityImpl(...); However, volatilityImpl(...) > accepts as third argument 'strike' of the type 'Rate', but it is by > no means used in the implementation of the method. > Why is this? In the methods defined in the base classes, it makes sense to get the strike as an argument since the volatilities might be smiled. In SwaptionVolatilityMatrix and CapFlatVolatilityVector, they are not smiled (the matrix is a matrix and not a cube, and the vector is a vector and not a matrix) therefore the strike is not used. However, C++ rules require that the signature of their methods be the same declared in the base class, otherwise the virtual function mechanism would not work. HTH, Luigi |
Free forum by Nabble | Edit this page |