有偏见的随机数源

时间:2009-09-09 00:12:42

标签: testing random

我不确定适当的术语是什么,但在尝试运行模拟时,我总是发现创建好的假数据很棘手。

我没有特定的应用程序,但是假设我想玩一些愚蠢的股票市场预测算法 - 如果我只是使用一个标准的随机数发生器来获取我的测试数据,它会全部徘徊在.5左右,即使是在很短的时间间隔内,这也不会真正产生股票市场通常在白天产生的那种数据(将其与股票图表进行比较)。即使市场在没有收益或损失的情况下收盘,您仍可能在中间发现波动 - 简单的随机行走不会产生同样的影响。

我猜你可以把rngs叠加在一起,一个较大的值,一个整天的值,一个较小的每小时幅度,以及每秒的幅度,将它们相加在一起以获得更像步骤的模式,但是这真的太可预测了 - 你知道作为开发人员,这些步骤将是,或者如果你将持续时间随机化,可能就是这样。

我猜你可以从字面上模拟个人买家和卖家的个性,但这是很多工作和计算。 (据我所知,真实的股票市场数据不能以原始形式免费提供)

那么,我们可以去寻找免费,易于访问,快速流动,“有趣”的数据吗?

3 个答案:

答案 0 :(得分:4)

实施股票价格变动的天真方式是使用normal(高斯)分布但不会生成实际数据。高斯分布低估了价格大幅下跌的风险(称为“肥尾”现象)。

回到60年代,Mandelbrot(是的分形家伙)表明cotton price movements符合Levy distribution

看看:

另一件需要考虑的事情是,随着时间的推移,股票价格的调整(股价等)价格会上涨。在统计学术语中,这称为异方差,从建模的角度来看,这往往是不可取的。这通常以两种方式解决:

  1. 您不会生成随机的价格序列,而是生成一系列随机的价格变化(增量);和
  2. 您可以对系列的对数进行建模,而不是实际系列。
  3. 希望有所帮助。

答案 1 :(得分:3)

为什么要使用假数据?为什么不从几年前收集一些随机库存数据并使用它们来测试你的算法?

答案 2 :(得分:0)

您可以使用Google Finance API从过去一年中随机日的一组100个符号中获取随机符号的实际库存数据。这应该提供真正的数据,希望随机足够用于您的目的。