|
From: U.Mutlu <um...@mu...> - 2023-09-10 09:30:07
|
As said in other posting here, after fixing the test program by skipping the first item (the initial price) in the generated sample path, BoxMullerGaussianRng now passes the said test. The bugfixed test code and the new test results can be found here: https://www.elitetrader.com/et/threads/simulating-stock-prices-using-gbm.375533/page-4#post-5861666 That important fact that the generated sample path contains not timeSteps elements but 1 + timeSteps elements needs to be documented in the library doc. For example on this API doc page one normally would expect to find such an important information, but it's missing: https://www.quantlib.org/reference/class_quant_lib_1_1_path_generator.html If you or someone else can change/extend the test program by using the suggested alternative(s) to BoxMullerGaussianRng, I would be happy to hear about it. Thx. Ioannis Rigopoulos wrote on 09/09/23 16:28: > If you search within the QuantLib code for BoxMullerGaussianRng, you will see > it is used only in the experimental folder. It is therefore not surprising if > it doesn't produce the expected results. > > I use myself the MultiPathGenerator with PseudoRandom::rsg_type, which is used > extensively in other areas of QuantLib. > > This type expands to InverseCumulativeRsg< RandomSequenceGenerator< > MersenneTwisterUniformRng > , InverseCumulativeNormal > and gives me good > results. > > Ioannis Rigopoulos, founder of deriscope.com > > On 9/9/2023 11:25 AM, U.Mutlu wrote: >> A short standalone test code in C++ with test results posted online at >> https://www.elitetrader.com/et/threads/simulating-stock-prices-using-gbm.375533/page-4#post-5861368 >> >> demonstrates that the GBM method in QuantLib >> is fatally buggy and has been so since start. >> >> Can the experts please check it and comment it. >> It's suspicious that such a flaw in a very important part of the library >> (GBM and Monte Carlo) >> got undetected by the experts and the user community for more that 20+ years. >> >> Can the experts verify / confirm / duplicate the findings made there? >> Or is maybe that test code itself buggy or the test method maybe unscientific? |