Great sample files. I think there is an error in the Monte Carlo simulation though. If my understanding is correct, time=0:20 is the number of steps in each simulation. As such, we need to adjust the drifts and std's by it. So in the montecarlo.m file,
drifts = mRet.*dt/(tLen-1);
stds = valat.*sqrt(dt/(tLen-1));
Otherwise we are not projecting one-day returns.