|
From: Peter C. <pca...@gm...> - 2020-10-25 13:08:34
|
Hi Philippe, the Jamshidian engine uses a) discount bond prices conditional on the state of the model (i.e. the short rate in the case of the Hull-White model) and b) zero bond option prices in the model to come up with a model swaption price. It retrieves this information via the discountBond() and discountBondOption() methods in the OneFactorAffineModel interface. The methods account for the adjustment term theta(t) in the Hull-White model SDE already, there is nothing that the engine needs to do in addition to that. I don't know if that answers your question? The HullWhiteProcess also takes into account the adjustment to the initial curve already. To see that you can look into the implementation of HullWhiteProcess::drift() https://github.com/lballabio/QuantLib/blob/master/ql/processes/hullwhiteprocess.cpp#L38 which coincides with e.g. Brigo Mercurio, Interest Rate Models, Theory and Practice, Formulas (3.33) and (3.34) observing that in this context https://github.com/lballabio/QuantLib/blob/master/ql/processes/ornsteinuhlenbeckprocess.hpp#L90 level_ is zero, speed_ is the Hull-White mean reversion parameter and x stands for the short rate at time t. Does that make sense? Thanks, Peter On Sun, 25 Oct 2020 at 12:47, philippe hatstadt via QuantLib-users <qua...@li...> wrote: > > Is there any information about how the Jamshidian engine does the drift adjustment to match the initial curve for the Hull White model? > If I want to use the QL HW Process in a MC model, I assume II have to do the drift adjustment myself, or is there existing QL functionality to do that? > > Regards > > Philippe Hatstadt > +1-203-252-0408 > https://www.linkedin.com/in/philippe-hatstadt > > > > _______________________________________________ > QuantLib-users mailing list > Qua...@li... > https://lists.sourceforge.net/lists/listinfo/quantlib-users |