|
From: Chris K. <chr...@ya...> - 2009-10-20 12:46:53
|
Hi Nando,
virtual is better because some of the time processing gets involved. I'd like the following virtual:
virtual void initializeExerciseTime() const; // currently not virtual
virtual Real varianceImpl(Rate strike) const; // currently not virtual
virtual Volatility volatilityImpl(Rate strike) const = 0; // OK
i.e. I need the calculation parts virtual. Exercise time, for inflation, could mean time-for-volatility-to-build-up OR time-from-referenceDate()-to-exercise. For interest rates these are the same. Having exercise time virtual gives more possibilities for descendants to change things. At a pinch I could make do with only varianceImpl(Rate strike) as virtual.
Best,
Chris
________________________________
From: Ferdinando Ametrano <na...@am...>
To: lui...@gm...
Cc: Chris Kenyon <chr...@ya...>
Sent: Tue, October 20, 2009 12:07:45 PM
Subject: Re: SmileSection
On Tue, Oct 20, 2009 at 10:22 AM, Luigi Ballabio
<lui...@gm...> wrote:
> Chris needs to modify slightly the SmileSection class in order to make
> it work for inflation volatility, namely,
>
>> For the volatility stripping the SmileSection class is unusable for
>> inflation because of assumptions on timing. [...] mostly on how much
>> time has passed up to T. For inflation time starts passing from
>> (referenceDate-Lag, adjusted by interpolation setting) rather than
>> just referenceDate. [...] To enable reuse most of its methods should
>> be virtual then I could use it.
>
> As you (Nando) are the one with the design most clearly in mind, I
> thought I'd refer Chris to you so that the two of you can work it out.
> Let me know what you come up with (in the next few days, possibly?)
it's ok for me to make it virtual, or just add a default null lag to
the base class, whatever makes more sense
ciao -- Nando
PS this and other questions (e.g. bachelier) would be probably better
discussed on the mailing list, where others might join with better
insight...
|