3
WolframAlpha的 可以基於歷史的參數生成對數正態分佈隨機遊動 6個月,1年,提前生成數正態隨機遊動
例如GSPC索引2歲: http://www.wolframalpha.com/input/?i=GSPC
我想知道如何在R中做到這一點,我會很樂意提供一些指導。
library(quantmod)
getSymbols("^GSPC", from ="2000-01-01")
WolframAlpha的 可以基於歷史的參數生成對數正態分佈隨機遊動 6個月,1年,提前生成數正態隨機遊動
例如GSPC索引2歲: http://www.wolframalpha.com/input/?i=GSPC
我想知道如何在R中做到這一點,我會很樂意提供一些指導。
library(quantmod)
getSymbols("^GSPC", from ="2000-01-01")
我怎樣才能改善這種允許
波動根據一個簡單的馬爾可夫鏈通過時間而改變?
library(ggplot2)
library(quantmod)
getSymbols("^GSPC", from ="2000-01-01")
oldata <-GSPC[,6]
oldata <-na.omit(oldata)
lastprice <-tail(olddata,1)
oldsteps <- tail(diff(log(oldata)),-1)
head(oldsteps)
n_days =100
percent <- exp(cumsum(rnorm(n_days,mean(oldsteps), apply(oldsteps, 2, sd))))
path2 <- exp(cumsum(rnorm(n_days,mean(oldsteps), apply(oldsteps, 2, sd))))
path3 <- exp(cumsum(rnorm(n_days,mean(oldsteps), apply(oldsteps, 2, sd))))
paths <- data.frame(T=c(1:100),path1,path2,path3)
plot1 <- ggplot(data=paths, aes(x=T,y=percent)) + geom_line()
plot1 <- plot1+ geom_line(aes(x=T,y=path2))+ geom_line(aes(x=T,y=path3))
plot1 <- plot1+ ggtitle("pathways")
plot1
你是否能夠改善自從你發佈以來你有什麼?我正在嘗試做同樣的事情,並對您的解決方案非常感興趣。 –
您的免費試用版已過期嗎? http://demonstrations.wolfram.com/MarkovVolatilityRandomWalks/ –
類似'oldsteps < - diff(log(oldata)); exp(cumsum(rnorm(n_days,mean(oldsteps),sd(oldsteps))))? –
非常感謝您的幫助。我已經填寫了下面的代碼。 –