拓端tecdat|R語(yǔ)言模擬和預(yù)測(cè)ARIMA模型、隨機(jī)游走模型RW時(shí)間序列趨勢(shì)可視化
原文鏈接:http://tecdat.cn/?p=25122?
原文出處:拓端數(shù)據(jù)部落公眾號(hào)
當(dāng)一個(gè)序列遵循隨機(jī)游走模型時(shí),就說(shuō)它是非平穩(wěn)的。我們可以通過(guò)對(duì)時(shí)間序列進(jìn)行一階差分來(lái)對(duì)其進(jìn)行平穩(wěn)化,這將產(chǎn)生一個(gè)平穩(wěn)序列,即零均值白噪聲序列。例如,股票的股價(jià)遵循隨機(jī)游走模型,收益序列(價(jià)格序列的差分)將遵循白噪聲模型。
讓我們更詳細(xì)地了解這種現(xiàn)象。
由于隨機(jī)游走序列的差分是白噪聲序列,我們可以說(shuō)隨機(jī)游走序列是零均值白噪聲序列的累積和(即積分)。有了這些信息,我們可以以 ARIMA 模型的形式定義 Random Walk 系列,如下所示:
ARIMA(0,1,0)
其中
- 自回歸部分,p = 0
- 積分部分,d = 1
- 移動(dòng)平均部分,q = 0
模擬隨機(jī)游走序列
我們現(xiàn)在可以通過(guò)為arima.sim
提供適當(dāng)?shù)膮?shù)來(lái)模擬 R 中的隨機(jī)游走序列,?如下所示:
R <- arima.sim
我們可以使用該plot.ts
繪制新生成的序列?。
> plot.ts

正如我們可以清楚地觀察到的,這是一個(gè)非平穩(wěn)序列,它的均值和標(biāo)準(zhǔn)偏差隨時(shí)間變化不是恒定的。
一階差分序列
為了使序列平穩(wěn),我們?nèi)⌒蛄械囊浑A差分。
if <- diff
繪制時(shí),您會(huì)注意到差分序列類(lèi)似于白噪聲。

該?RW_diff
?序列的統(tǒng)計(jì)數(shù)據(jù)計(jì)算如下:
> mean(Rf)
> sd(Wf)
?


帶偏移的隨機(jī)游走序列
我們模擬的上述隨機(jī)游走序列在均值附近上下徘徊。但是,我們可以讓隨機(jī)游走系列跟隨上升或下降趨勢(shì),稱(chēng)為偏移。為此,我們?yōu)楹瘮?shù)提供了一個(gè)額外的參數(shù)均值/截距?arima.sim()
?。這個(gè)截距是模型的斜率。我們還可以更改模擬序列的標(biāo)準(zhǔn)差。在下面的代碼中,我們提供了 1 的平均值和 5 的標(biāo)準(zhǔn)差。

估計(jì)隨機(jī)游走模型
為了擬合具有時(shí)間序列偏移的隨機(jī)游走模型,我們將遵循以下步驟
取數(shù)據(jù)的一階差分。
arima()
?使用階數(shù)為 的函數(shù)?將白噪聲模型擬合到差分?jǐn)?shù)據(jù)?c(0,0,0)
。繪制原始時(shí)間序列圖。
abline()
?通過(guò)提供通過(guò)將白噪聲模型擬合為斜率得到的截距,使用該函數(shù)添加估計(jì)趨勢(shì)?。
1. 一階差分
為了使這個(gè)數(shù)列平穩(wěn),我們將取數(shù)列的差值。
> plot.ts

2. 將白噪聲模型擬合到差分?jǐn)?shù)據(jù)
我們現(xiàn)在可以使用arima
將白噪聲模型擬合到差分?jǐn)?shù)據(jù)。
> whodl <- arima

我們可以看到擬合的白噪聲模型的截距為 0.67。
3. 繪制原始隨機(jī)游走數(shù)據(jù)
這可以使用以下命令完成:
> plot.ts

4.添加估計(jì)趨勢(shì)
現(xiàn)在在同一個(gè)圖上,我們要添加估計(jì)的趨勢(shì)。在本課開(kāi)始時(shí),我們解釋了隨機(jī)游走序列如何是零均值白噪聲序列的累積和(即積分)。因此,截距實(shí)際上是我們隨機(jī)游走序列的斜率。
我們可以使用函數(shù)繪制趨勢(shì)線?abline
,其中 a 是截距,b 是線的斜率。在我們的例子中,我們將指定白噪聲模型的“a=0”和“b=intercept”。
> abline
估計(jì)的趨勢(shì)線將添加到我們的圖中。


最受歡迎的見(jiàn)解
1.在python中使用lstm和pytorch進(jìn)行時(shí)間序列預(yù)測(cè)
2.python中利用長(zhǎng)短期記憶模型lstm進(jìn)行時(shí)間序列預(yù)測(cè)分析
3.使用r語(yǔ)言進(jìn)行時(shí)間序列(arima,指數(shù)平滑)分析
4.r語(yǔ)言多元copula-garch-模型時(shí)間序列預(yù)測(cè)
5.r語(yǔ)言copulas和金融時(shí)間序列案例
6.使用r語(yǔ)言隨機(jī)波動(dòng)模型sv處理時(shí)間序列中的隨機(jī)波動(dòng)
7.r語(yǔ)言時(shí)間序列tar閾值自回歸模型
8.r語(yǔ)言k-shape時(shí)間序列聚類(lèi)方法對(duì)股票價(jià)格時(shí)間序列聚類(lèi)
9.python3用arima模型進(jìn)行時(shí)間序列預(yù)測(cè)