Way*_*yne 4 c# random distribution
如何在C#中生成具有稳定分布的随机数?Random类具有均匀分布.互联网上的许多其他代码显示正常分布.但我们需要稳定的分布意味着无限的方差,也就是胖尾分布.
原因是产生实际的股票价格.在现实世界中,价格的巨大变化远比正常分布更可能.
有人知道将随机类输出转换为稳定分布的C#代码吗?
编辑:嗯.精确分布不如确保它会随机产生至少20西格玛的巨大西格玛.我们希望在真正的胖尾分布中测试弹性的交易策略,这正是股票市场价格的行为方式.
我刚刚读到有关ZipFian和Cauchy的评论.因为我必须选择,让我们选择柯西分布,但我也会尝试使用ZipFian进行比较.
一般来说,方法是:
选择稳定的肥尾分布.说,Cauchy分布.
查找所选分布的分位数函数.
对于Cauchy分布,那就是p --> peak + scale * tan( pi * (p - 0.5) ).
合理?看到
http://en.wikipedia.org/wiki/Inverse_transform_sampling
详情.
警告:自从我统计以来,已经很长很长时间了.
更新:
我非常喜欢这个问题,我只是写了一篇博文:看
http://ericlippert.com/2012/02/21/generating-random-non-uniform-data/
我的文章探讨了一些Zipfian发行版的有趣例子:
http://blogs.msdn.com/b/ericlippert/archive/2010/12/07/10100227.aspx
| 归档时间: |
|
| 查看次数: |
1498 次 |
| 最近记录: |