首页 > 其他分享 >R语言布朗运动模拟股市、物种进化树状图、二项分布可视化

R语言布朗运动模拟股市、物种进化树状图、二项分布可视化

时间:2023-05-15 23:35:00浏览次数:54  
标签:语言 进化树 方差 布朗运动 二项分布 状图 模拟 随机

全文链接:http://tecdat.cn/?p=32393

原文出处:拓端数据部落公众号

本文模拟了在连续和离散时间布朗演化一些简单的方法。

布朗运动的数学模型(也称为随机游动)也可以用来描述许多现象以及微小颗粒的随机运动, 如股市的波动和在化石中的物理特性的演变。

布朗运动是随机模式,即改变了从一次到下一个是随机从正态分布绘制均值为0.0,方差为σ2×ΔT。换句话说,根据布朗运动的预期方差通过时间与瞬时差σ2线性增加。

股市模拟

首先,模拟股市一个实例为100的离散时间布朗运动,其中,扩散过程的方差为σ2=0.01。

## 首先模拟随机数  
x <- rnorm(n = length(t) - 1, sd = sqrt(sig2))  
## 计算累加和  
x <- c(0, cumsum(x))

image.png

画图

我们得出各t的时间间隔的随机正偏离改变;然后在每个时间间隔,我们计算累积总和。从而可以看出布朗运动的变化的分布是不变的,并且不依赖于时间的状态。

1)  
X <- cbind(rep(0, nsim), t(apply(X, 1, cumsum)))  
plot(t, X[1, ], xlab = "time", ylab = "phenotype", ylim = c(-2, 2), typ

image.png

为了看到这结果如何取决于σ2,我们比较除以10 的SIG2的结果:

X <- matrix(rnorm(n = nsim * (length(t) - 1), sd = sqrt(sig2/10)), nsim,

image.png

然后,我们使用for循环 :

e = "l")  
for (i in 1:nsim) lines(t, X[i, ])

image.png

如上所述,根据布朗运动的预期方差只是σ2。然后,我将使用模拟10000个相同的条件下的结果,以“理顺”我们的结果是:

v <- apply(X, 2, var)  
plot(t, v, type = "l", xlab = "time", ylab = "variance among simulation

image.png

物种进化

然后,我们尝试用布朗运动模拟物种进化树状图。查看数据的变化情况:

t <- 100  # 总时间  
n <- 30  # 总分支  
b <- (log(n) - log(2))/t

image.png

现在,来模拟树,我们只需要分别模拟在每个分支的所有分支,然后由最终状态“转向”每个子分支它的父节点。 因为在每个时间步布朗进化的结果是独立于其它所有时间步长。

沿着每条边模拟进化

yy <- sapply(yy, function(x, y) y[[x]][length(y[[x]])], y = X)  
text(x = max(H), y = yy, tree$tip.label)

image.png

在现实中,布朗运动的大部分模拟使用连续的而不是离散的时间进行。这是因为布朗运动意味着不同物种之间的协方差之间的预期差异。

关于布朗进化的一些其他特点:

在某些情况下,在树的不同部分的布朗进化有可能存在不同的速率。因此可以简单的模仿不同部门的不同的速率布朗运动。

tree <- sim.history(tree, Q, anc = "1")

image.png

els = TRUE,  
    spread.cost = c(1, 0))

1111.png 下面模拟不同的树从而通过散点图证实相同的父节点产生的树拥有相似的协方差。

plot(tree, edge.width = 2, direction = "downwards")

image.png

rplotMatrix(t(X))

image.png

布朗运动不假定在其下个体谱系移动的过程是高斯过程。其结果将服从高斯分布 - 和中心极限定理。

t <- 0:100    
sig2 <- 0.01  
nsim <- 1000

二项分布的布朗运动

我们模拟二项分布的布朗运动 并查看方差是否和之前一样等于1

apply(X[2:nsim, ], 1, function(x, t) lines(t, x), t = t)

image.png

image.png

image.png

布朗运动,一般认为是没有趋势;然而它(在某些情况下)可以模拟一个模型的趋势。这里是一个模拟(使用如上述相同的一般方法)趋势的一个例子。

X <- matrix(rnorm(mean = 0.02, n = nsim * (length(t) - 1), sd = sqrt(sig2/4)),  
    nsim, length(t) - 1)

image.png

对于布朗运动的数学模型的简单形式的形式: S_T= eS_t-1  其中e是从概率分布绘制。因此,后续还有更多的应用值得进一步研究。


thumb-gettyimages-1312389354.jpg 最受欢迎的见解

1.R语言泊松Poisson回归模型分析案例

2.R语言进行数值模拟:模拟泊松回归模型

3.使用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模拟进行股价预测

4.R语言对布丰投针(蒲丰投针)实验进行模拟和动态可视化

5.用R语言模拟混合制排队随机服务排队系统

6.GARCH(1,1),MA以及历史模拟法的VaR比较

7.R语言做复杂金融产品的几何布朗运动的模拟

8.R语言进行数值模拟:模拟泊松回归模型

9.R语言对巨灾风险下的再保险合同定价研究案例:广义线性模型和帕累托分布Pareto distributions

标签:语言,进化树,方差,布朗运动,二项分布,状图,模拟,随机
From: https://www.cnblogs.com/tecdat/p/17403453.html

相关文章

  • 基于线性二项分布回归模型(logistic)的时间序列预测 matlab代码
    基于线性二项分布回归模型(logistic)的时间序列预测matlab代码ID:5129665933564536......
  • el-tree 根据多个结果筛选树状图(增加checkbox勾选)
    <template><divclass="wrapper-jjy"><el-dialogtitle="接警员查找"v-model="jjyDialogVisible":draggable="true"width="735px"height="300":close-on-click-modal="true&q......
  • 大语言模型进化树重磅发布,感慨技术方向选择的残酷,文末有彩蛋
    文/高扬 今天说点有深度的内容。五一假期,学习了一篇论文《HarnessingthePowerofLLMsinPractice:ASurveyonChatGPTandBeyond》。    这篇论文来自Amazon以及TexasA&MUniversity研究团队,他们通过追踪近年来语言模型的发展,构建了一个现代大语言模型......
  • JFreeChart构建柱状图
    JFreeChart构建柱状图前言Java开发中,可以采用许多库和框架来实现图表统计功能。以下是一些常见的Java图表统计库和框架:JFreeChart:JFreeChart是一个流行的Java图表库,可用于生成各种类型的图表,包括线图、柱状图、饼图等。Chart.js:Chart.js是一个基于HTML5Canvas的JavaScript图......
  • echarts数据可视化-动态柱状图
    效果如下:此处用的echarts柱状图为:AxisAlignwithTick本文的要讨论的内容:1、柱状图样式修改2、多数据的缩放展示柱状图样式修改//数据constcity=reactive([{value:335,name:'长沙'},{value:310,name:'武汉'},{value:274,name:'岳阳'}......
  • day 60 84. 柱状图中最大的矩形
    给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为1。求在该柱状图中,能够勾勒出来的矩形的最大面积。  classSolution{publicintlargestRectangleArea(int[]heights){if(heights==null||heights.length==0){......
  • highchart 生成一个3d的柱状图
    highchart生成一个光秃秃的柱状图Highcharts.chart('container',{chart:{type:'column',margin:0,options3d:{enabled:true,alpha:15,//控制x轴角度beta:15,//控制y轴角度depth:50,//柱子深度viewDistance......
  • 饼状图的优缺点,你真的了解吗?
    简介饼状图顾名思义就是形如圆饼状的图形,它是一种常用的图表类型,通常用于展示数据的占比关系。饼状图通过将一个圆形区域划分为多个子区域,反应出不同子类数据之间的的对比关系以及子类数据在大类中的百分比。饼状图将一个数据集按照每个数据项所占比例的大小,将整个数据集表示为......
  • highchart 柱状图不要x轴,y轴,图例只要保留图
    光秃秃的柱状图前几天有个需要,做个迷你小柱状图,不要x轴、y轴、图例等等就一个光秃秃的柱状图,就是这个样子(随手截图画的,将就看吧),直接上代码。 letreport={chart:{type:'column'},title:{tex......
  • R语言生态学进化树推断物种分化历史:分类单元数与时间关系、支系图可视化|附代码数据
    全文链接:http://tecdat.cn/?p=31434最近我们被客户要求撰写关于生态学进化树的研究报告,包括一些图形和统计输出。我们围绕进化树技术进行一些咨询,分析生物类群在时间上的多样性是如何变化的我们将用到分类单元数-时间图(Lineages-through-timeplot),该图可以用来描述物种多样化......