我正在尝试使用numpy运行蒙特卡罗模拟,如下所示:
from numpy import random
btcpremiummean = -2.61
btcpremiumsd = 1.63
trialsize = 1000000
for x in range(trialsize):
btcpremium = random.normal(btcpremiummean, btcpremiumsd)
...
我从回溯测试中得出平均值和标准差,并用它们生成随机数字。在
然而,尽管数据符合这种正态分布,但现实生活中的btcpremium并不是真正的随机的,而是通常等于或接近之前的btcpremium。在
我想不出如何更改我的代码,使btcpremium值符合当前使用的正态分布,同时受到以前数据的影响。在
提前谢谢。在
你的问题是,当你需要捕捉“接近先前”的行为时,你产生了独立的观察结果。您似乎在描述一个autoregressive model,特别是一个AR(1)过程。如果您的下一个值与k个先验值相关/依赖,那么它将是一个AR(k)过程。在
相关问题 更多 >
编程相关推荐