|
Hi, I really like the libor market model implementation in quantlib. However, I wonder why the displaced diffusion in the model implementation is "hardcoded" as (admittedly popular)
dF_i(t) = ( F_i(t) + displacement_i ) sigma_i(t) dW_i
while the volatility and correlation structure can be exchanged by user classes. Is there any reason for this restrictive design w.r.t. the skew parametrization?
I would rather like it as (the now more common?)
dF_i(t) = ( skew_i(t) F_i(t) + (1-skew_i(t)) initialRate_i ) sigma_i(t) dW_i
with the skew functions user definable. The first formulation destroys any chance for a time homogeneous skew formulation. Also, the interpretation of sigma(t) is dependent on the displacement (changing from relative/lognormal volatility for displacement=0 to absoulte/normal volatility for displacement=1-F_i), which destroys the time homogenity of the volatility sigma(t), even if it is specified homogeneous.
Or am I getting something wrong?
Best regards
Peter
|