使用R for循环创建时间序列

时间:2016-03-18 09:40:11

标签: r for-loop

我预测股票价格'St1'在时间t从'Stt = 10'开始。日期并不重要。我想使用以下公式找到接下来的100个价格:

St1 <- Stt*exp((r-0.5*sigma^2)*T/n+sigma*E*sqrt(T/n))

所以我从10开始,然后需要接下来的100个值并将它放在data.frame或其他任何容易的东西中。我该怎么做呢?我一直在努力尝试......

Stt = 10
r = 0.15
sigma = 0.2
T = 1
n = 100
E = 0.15

St1 = Stt
for (i in 1:100)
{
    St1[i] <- Stt*exp((r-0.5*sigma^2)*T/n+sigma*E*sqrt(T/n))
}

1 个答案:

答案 0 :(得分:1)

一种方法是

./build

没有r = 0.15 sigma = 0.2 T = 1 n = 100 E = 0.15 Stt<- rep(NA,n) # preallocate Stt[1] <- 10 for (i in 2:100) { Stt[i] <- Stt[i-1]*exp((r-0.5*sigma^2)*T/n+sigma*E*sqrt(T/n)) } 循环,并且为了for使用rnorm,此代码可以正常工作:

E