【问题标题】:How to generate a pseudo random number based on previous number in Python如何根据Python中的先前数字生成伪随机数
【发布时间】:2016-02-25 02:08:46
【问题描述】:

我正在尝试使用 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 值符合当前使用的正态分布,同时受到先前数据的影响。

提前致谢。

【问题讨论】:

  • 如果您的主要问题是生成 f... 加载的随机数而不循环通过相同的序列,也许您会对从 qrng.anu.edu.au/index.php 流式传输它们感兴趣

标签: python numpy random statistics


【解决方案1】:

您的问题是,当您需要捕捉“接近以前”的行为时,您正在生成独立的观察结果。您似乎在描述一个autoregressive model,特别是一个 AR(1) 过程。如果您的下一个值与 k 个先前值相关/依赖于 k 个先前值,则它将是一个 AR(k) 过程。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-07
    • 2014-10-30
    • 1970-01-01
    • 2023-01-03
    • 1970-01-01
    • 2011-05-20
    • 2022-06-19
    • 2010-09-08
    相关资源
    最近更新 更多