|
From: Yee M. C. <ym...@ya...> - 2008-07-10 22:03:47
|
I think there is now a new class called EquityModelHelper according to Klaus' email. I think it has something to do with calibration but I never tried it. Yee Man PS My email exchange with Klaus ------------------------------- ----- original message -------- Subject: Re: GJR-GARCH pricing engine and QuantLib Sent: Tue, 22 Apr 2008 From: Yee Man Chan<ym...@ya...> > > --- Klaus Spanderen <kl...@sp...> wrote: > > > Hi > > > > I've just looked onto the problem and have seen that > > the HestonModelHelper > > will also work with the GJRGARCH engine w/o any > > change (in fact for the next > > release I'll rename it into EquityModelHelper). The > > only small change I made > > was on the GJRGARCH model and I've applied the > > Heston Dax calibration to the > > GJR-GARCH model. Please find the new test case > > enclosed in the attached files > > > > That's great news. I think I can try it out some time. > > > Two question remain > > 1.You set > > const Real v0 = omega/(1.0-m1) > > but I guess v0 is a free parameter of the model, > > right (no constraint needed > > during the calibration for v0)? > > Yeah this is a free parameter that is to be estimated. > The Duan et al (2006) paper simply set v0 to the > long-term vol which is omega/(1-m1) > > > 2. Are the parameter constraints > > arguments_[0] = > > ConstantParameter(process->omega(), > > > > PositiveConstraint()); > > arguments_[1] = > > ConstantParameter(process->alpha(), > > > > PositiveConstraint()); > > arguments_[2] = > > ConstantParameter(process->beta(), > > > > PositiveConstraint()); > > arguments_[3] = > > ConstantParameter(process->gamma(), > > > > BoundaryConstraint(-1.0, 1.0)); > > arguments_[4] = > > ConstantParameter(process->lambda(), > > > > BoundaryConstraint(-1.0, 1.0)); > > arguments_[5] = > > ConstantParameter(process->v0(), > > > > PositiveConstraint()); > > plus the Volatility Constraint correct and all we > > need? > > > > Oops. I think the constraints are not quite right. > They should be: > > omega - > 0 > alpha, beta - >= 0 and < 1 > beta+gamma >= 0 which implies gamma > -1 and < 1 > v0 - > 0 > lambda should have no constraints but my experience is > that it seems to be between -0.1 to 0.1 > > You can refer to the GJR (1993) paper for reference. > > Regards, > Yee Man > > > cheers > > Klaus > > > > > > On Saturday 19 April 2008 23:06:12 you wrote: > > > Great! So how do I get started implementing the > > > calibration helper? I think I need to read some > > > documentation or paper. > > > > > > Yee Man > > > > > > --- Klaus Spanderen <kl...@sp...> wrote: > > > > Hi Yee Man, > > > > > > > > thanks it's in. Makes it easier for dummies like > > me > > > > to use the pricing engines > > > > properly. > > > > > > > > cheers > > > > > > > > On Friday 18 April 2008 03:22:01 you wrote: > > > > > Hi Klaus > > > > > > > > > > I added a parameter called daysPerYr_ to > > > > > > > > GJRGARCH > > > > > > > > > process. I think this solves the daily > > constant > > > > > problem. I also updated the relevant files and > > > > > > > > added > > > > > > > > > comments to tell people to set this new > > variable. > > > > > > > > > > Please take a look and let me know if it is > > ok. > > > > > > > > > > Regards, > > > > > Yee Man > > > > > > > > > > --- Klaus Spanderen <kl...@sp...> > > wrote: > > > > > > Hi Yee Man, > > > > > > > > > > > > done it's in. > > > > > > > > > http://quantlib.svn.sourceforge.net/viewvc/quantlib/trunk/QuantLib/ > > > > > > > > > On Wednesday 16 April 2008 01:54:55 you > > wrote: > > > > > > > In the case that you calibrate the model > > using > > > > > > > > the > > > > > > > > > > > time series of the underlying, I think you > > > > > > > > might > > > > > > > > > > want > > > > > > > > > > > > > to multiply by 251 (is'nt it 252 as > > suggested > > > > > > > > by > > > > > > > > > > the > > > > > > > > > > > > > Hull book?) > > > > > > > > > > > > Seems that we here in Germany have more > > holidays > > > > > > than the rest of the world;-) > > > > > > Yepp, you are right. > > > > > > > > > > > > > instead of 365 as in my code. The problem > > > > > > > here is that the Duan et al paper I used > > for > > > > > > > > test > > > > > > > > > > data > > > > > > > > > > > > > assumes 365 trading days. So I suppose > > maybe > > > > > > > > it > > > > > > > > > > should > > > > > > > > > > > > > be the caller of GJR-GARCH's job to > > annualize > > > > > > > > the > > > > > > > > > > > parameters? > > > > > > > > > > > > May be we should add some extra comment on > > this > > > > > > > > to > > > > > > > > > > the GJRGarchProcess to make > > > > > > this clear (I as a more "practitioner" would > > > > > > > > have > > > > > > > > > > expected annualized > > > > > > parameters, e.g. "my" beta would be 365 > > times > > > > > > > > your > > > > > > > > > > beta). > > > > > > > > > > > > > Do you mean it is very easy to write this > > > > > > > CalibrationHelper? If so, I think I can do > > it. > > > > > > > > But > > > > > > > > > > the > > > > > > > > > > > > > problem is I don't know if I can find > > testing > > > > > > > > > > > > data. > > > > > > > > > > > > > > > > > > We need something like the > > HestonModelHelper. > > > > > > > > > > > > Could it be that this model wasn't > > calibrated to > > > > > > > > a > > > > > > > > > > real volatility surface at > > > > > > all in the literatur so far? But the real > > > > > > > > problem is > > > > > > > > > > the pricing engine and > > > > > > that you've done already. The rest is not a > > big > > > > > > issue. Should we do it > > > > > > together? > > > > > > > > > > > > cheers > > > > > > Klaus > > > > > > -- > > > > > > Klaus Spanderen > > > > > > Ludwig Erhard Str. 12 > > > > > > 48734 Reken (Germany) > > > > > > EMail: kl...@NO... (remove > > NOSPAM > > > > > > > > from > > > > > > > > > > the address) > > > > > > --- On Thu, 7/10/08, Sylvain Bertrand <syl...@gm...> wrote: > From: Sylvain Bertrand <syl...@gm...> > Subject: Re: [Quantlib-dev] processes calibration > To: ym...@ya... > Cc: qua...@li... > Date: Thursday, July 10, 2008, 11:06 AM > I couldn't find the calibration part in SVN Head's > "hestonprocess.cpp". > > Is it commited yet or did I just look too quickly at the > code? > > Regards, > Sylvain > > > On 7/10/08, Yee Man Chan <ym...@ya...> wrote: > > > > > > > > During my email exchange with Klaus Spanderen, he told > me he extended the > > Heston process calibration code to work with other > processes. He said the > > new code works with my GJR-GARCH process. I have never > tested it myself > > however. > > > > Yee Man > > --- On Thu, 7/10/08, Sylvain Bertrand > <syl...@gm...> > > wrote: > > > > > From: Sylvain Bertrand > <syl...@gm...> > > > Subject: [Quantlib-dev] processes calibration > > > To: qua...@li... > > > Date: Thursday, July 10, 2008, 10:26 AM > > > Hi everyone, > > > > > > I was wondering if there was currently a task in > progress > > > to implement > > > calibration for the processes? > > > > > > Or is it something that is voluntarily left to > the quantlib > > > user? > > > > > > Thanks > > > > > > > > > Sylvain------------------------------------------------------------------------- > > > Sponsored by: SourceForge.net Community Choice > Awards: VOTE > > > NOW! > > > Studies have shown that voting for your favorite > open > > > source project, > > > along with a healthy diet, reduces your potential > for > > > chronic lameness > > > and boredom. Vote Now at > > > > > > http://www.sourceforge.net/community/cca08_______________________________________________ > > > QuantLib-dev mailing list > > > Qua...@li... > > > > https://lists.sourceforge.net/lists/listinfo/quantlib-dev > > > > > > > > |