Dear QuantLib-users, I have started using QuantLib around three weeks ago, so my question is maybe a bit basic, but I can’t find a reasonable answer by myself. I want to use a GeometricBrownianMotionProcess to simulate paths for a Monte Carlo simulation. However, I could not get correct answers so I decided to compare the paths obtained with this class and those obtained with the more general BlackScholesMertonProcess. Again, I could not get the same answers (from the same realizations of the random generator). I had a deeper look in the code (and in the documentation) and I can see that the evolve method is the way to construct paths (from MultiPathGenerator) from a process. Then, I get lost in the evolve method of the GeometricBrownianMotionProcess class. Where is the exponential function hidden? I can’t understand why this evolve corresponds to the geometric Brownian motion. Is there a transformation to apply after having called evolve? All the answers are highly appreciated! Best regards, Samuel Quinodoz ------------------------------------------------------------------------------ LogMeIn Central: Instant, anywhere, Remote PC access and management. Stay in control, update software, and manage PCs from one command center Diagnose problems and improve visibility into emerging IT issues Automate, monitor and manage. Do more in less time with Central http://p.sf.net/sfu/logmein12331_d2d _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
Hi,
I actually had the same surprise when I looked closer at the evolve method of GeometricBrownianMotionProcess, i.e it outcomes the log of the value of the GBM process for each time step and I would have naturally expected to get the true value of the process. Is there any fundamental reason for that? I might be missing a point here... Kind regards, Mathieu
|
In reply to this post by Samuel Quinodoz
Hi,
I'm not sure I get the question. GeometricBrownianMotionProcess doesn't use logs; it uses the true value of the underlying (and accordingly, the mu it's taking should not be corrected with Ito's lemma; that is, for Black-Scholes it should be r-q without the 0.5*sigma^2 term). evolve() just adds the drift and diffusion term to the underlying value. Instead, logarithms are used in the GeneralizedBlackScholesProcess, and this causes some inconsistency between its methods. drift() and diffusion() return the drift and diffusion terms for the log of the underlying; instead, evolve() returns the new true value for the underlying (the exponentiation happens in the apply() method, which is called by evolve(). This might cause the differences you're seeing. Later, Luigi On Tue, Nov 20, 2012 at 3:36 PM, mathusard <[hidden email]> wrote: > > Hi, > > I actually had the same surprise when I looked closer at the evolve method > of GeometricBrownianMotionProcess, i.e it outcomes the log of the value of > the GBM process for each time step and I would have naturally expected to > get the true value of the process. > > Is there any fundamental reason for that? I might be missing a point here... > > Kind regards, > Mathieu > > > Samuel Quinodoz wrote: >> >> Dear QuantLib-users, >> >> I have started using QuantLib around three weeks ago, so my question is >> maybe a bit basic, but I can't find a reasonable answer by myself. >> >> I want to use a GeometricBrownianMotionProcess to simulate paths for a >> Monte Carlo simulation. However, I could not get correct answers so I >> decided to compare the paths obtained with this class and those obtained >> with the more general BlackScholesMertonProcess. Again, I could not get >> the same answers (from the same realizations of the random generator). >> >> I had a deeper look in the code (and in the documentation) and I can see >> that the evolve method is the way to construct paths (from >> MultiPathGenerator) from a process. Then, I get lost in the evolve method >> of the GeometricBrownianMotionProcess class. Where is the exponential >> function hidden? I can't understand why this evolve corresponds to the >> geometric Brownian motion. Is there a transformation to apply after having >> called evolve? >> >> All the answers are highly appreciated! >> >> Best regards, >> >> Samuel Quinodoz >> >> ------------------------------------------------------------------------------ >> LogMeIn Central: Instant, anywhere, Remote PC access and management. >> Stay in control, update software, and manage PCs from one command center >> Diagnose problems and improve visibility into emerging IT issues >> Automate, monitor and manage. Do more in less time with Central >> http://p.sf.net/sfu/logmein12331_d2d >> _______________________________________________ >> QuantLib-users mailing list >> [hidden email] >> https://lists.sourceforge.net/lists/listinfo/quantlib-users >> >> > > -- > View this message in context: http://old.nabble.com/Question-on-GeometricBrownianMotionProcess-tp34633802p34701943.html > Sent from the quantlib-users mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------------ > Monitor your physical, virtual and cloud infrastructure from a single > web console. Get in-depth insight into apps, servers, databases, vmware, > SAP, cloud infrastructure, etc. Download 30-day Free Trial. > Pricing starts from $795 for 25 servers or applications! > http://p.sf.net/sfu/zoho_dev2dev_nov > _______________________________________________ > QuantLib-users mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/quantlib-users ------------------------------------------------------------------------------ Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft MVPs and experts. ON SALE this month only -- learn more at: http://p.sf.net/sfu/learnmore_122712 _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
Free forum by Nabble | Edit this page |