米ドル/日本円の為替データ
分析1(途中)
概要
- データの期間:1999年1月から2010年1月まで
- 用いたデータ・月時データの終値
- =一番下にある"mon-usdjpy-19992010.csv"というファイル
1. Rによる時系列モデルの推測・作成・検定
(1)ACF/PACFの確認
#読み込みからACF
/PACFの確認
#月次データ
#ファイル名
:mon-usdjpy-19992010.csv
DY9910 <- read.table("mon-usdjpy-19992010.csv",sep=",")
DY9910
summary(DY9910)
#時系列化
ts1 <-ts(DY9910,start=c(1999,1),frequency=12)
ts.plot(ts1,xlab='1999-2010',ylab='MONTHLY USD/JPY',main="MONTHLY USD/JPY,2008-2009")
decompose(ts1, type = c("additive", "multiplicative"), filter = NULL)
par(mfrow=c(1,2))
acf(ts1,main="月次・米ドル/日本円")
pacf(ts1,main="月次・米ドル/日本円")
decompose(・・・)の結果
$seasonal
Jan Feb Mar Apr May Jun
1999 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2000 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2001 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2002 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2003 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2004 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2005 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2006 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2007 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2008 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
2009 -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
Jul Aug Sep Oct Nov Dec
1999 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2000 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2001 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2002 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2003 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2004 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2005 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2006 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2007 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2008 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
2009 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
$trend
Jan Feb Mar Apr May Jun
1999 NA NA NA NA NA NA
2000 98.05954 99.01537 99.84745 100.49370 100.76038 101.06830
2001 109.03663 110.19038 111.57663 112.90788 114.30829 115.65995
2002 118.76077 118.23952 117.49620 116.87537 116.62996 116.51288
2003 115.27581 115.03457 114.71332 114.22165 113.45957 112.55290
2004 106.96333 106.83750 106.79750 107.01542 107.07458 107.14333
2005 109.88083 110.71333 111.57542 112.33667 113.25958 114.20708
2006 119.80042 119.76542 119.95833 120.56125 121.58042 122.84458
2007 125.88625 126.31417 126.32084 125.92667 125.46583 124.51250
2008 116.09000 114.65958 113.40000 112.26042 110.62458 109.35125
2009 106.55042 107.39333 108.60167 109.65042 110.78958 111.82333
2010 NA
Jul Aug Sep Oct Nov Dec
1999 93.58371 93.47912 93.76871 94.49622 95.52121 96.85496
2000 102.01829 103.63663 105.21871 106.57496 107.64496 108.30163
2001 116.85746 117.71454 118.17579 118.43787 118.64579 118.85286
2002 116.25996 116.07370 116.19579 116.33996 116.12163 115.64622
2003 111.51874 110.33333 109.01167 107.86583 107.27875 107.07083
2004 107.41625 107.66667 108.11000 108.56000 108.79250 109.17833
2005 115.17458 116.24250 117.25875 118.32125 119.27208 119.76292
2006 124.10417 125.24000 125.79917 125.83084 125.73584 125.65792
2007 123.07208 121.61208 120.36875 119.26708 118.23000 117.24667
2008 108.68125 107.81167 106.97333 106.42833 106.15375 106.20958
2009 112.55667 NA NA NA NA NA
2010
$random
Jan Feb Mar Apr May
1999 NA NA NA NA NA
2000 -7.71916952 -7.61817577 -2.72573785 -0.99879910 5.62978006
2001 -2.19626119 3.54691590 1.17498298 3.50702590 0.84197173
2002 2.25960131 1.88777840 -0.06457952 1.14953423 1.90019673
2003 2.36445965 4.00263256 6.73839965 3.24325506 0.39069256
2004 -2.95296119 -2.62020077 -2.24578369 -0.15051160 3.28567590
2005 -3.80046119 -2.55603410 -0.32370035 -1.37176160 -1.41932410
2006 0.42995548 -0.12811744 4.20338298 2.99365465 0.48984131
2007 9.04412048 5.88313090 -1.29911869 -2.47176285 -5.57557452
2008 0.61037215 0.72771590 -1.40828369 -2.21551160 -2.21432410
2009 1.17995548 -3.90603410 -4.82995035 -4.46551160 -4.10932410
Jun Jul Aug Sep Oct
1999 NA -0.65579202 1.95823923 1.08238715 3.27313740
2000 7.97428715 4.07962465 1.57073506 -0.16771285 -3.49550427
2001 0.38262881 -0.11954202 4.54282256 3.09520798 0.37147906
2002 1.11959965 -3.32214619 -2.52623994 -4.05468785 -3.30050427
2003 -1.65031702 -0.74082119 -0.41586494 -0.95056702 -2.54637927
2004 2.25924965 2.28166631 0.31079756 0.93109965 1.00945406
2005 2.97549965 3.60333298 2.63496423 1.57234965 -0.27179594
2006 -4.11200202 -5.97625202 -6.55253744 -2.14806869 1.86862906
2007 -5.46991702 0.22583298 2.17538090 -1.65765035 3.91237073
2008 -2.42866702 -1.02333369 -2.71420244 0.19776631 0.94112073
2009 -1.83075035 0.21124965 NA NA NA
Nov Dec
1999 2.96081906 0.01984090
2000 -8.07283094 -5.12693410
2001 -1.19375594 -1.11806327
2002 1.21050240 -0.60142160
2003 -0.51661844 -3.21603410
2004 -4.86036844 -0.84353410
2005 -1.66995177 -2.35811744
2006 6.67630656 7.27688090
2007 7.64213156 -0.65186744
2008 -3.73161844 3.27521590
2009 NA NA
$figure
[1] -0.3703721 -1.1172992 -1.6517163 -1.0849051 -0.3602592 -0.2925830
[7] 1.7320837 0.8825358 0.4389004 0.7905459 0.3278684 0.7052008
$type
[1] "additive"
attr(,"class")
[1] "decomposed.ts"
以下他ページのコピペ、編集中
(2)モデルの推計
#ARモデルの検証
#引き続きRのコード
。
#コレログラムの形状よりAR
モデルに近いと予測される。
#よって以下の操作を行う
。
(DY1126.ar <-ar(DY1126)) #ユールウォーカー法によるモデル推定
summary(DY1126.ar)
- (DY1126.ar <-ar(DY1126))の結果(係数・残差の分散)
Call:
ar(x = DY1126)
Coefficients:
1
0.9593
Order selected 1 sigma^2 estimated as 0.9219
Length Class Mode
order 1 -none- numeric
ar 1 -none- numeric
var.pred 1 -none- numeric
x.mean 1 -none- numeric
aic 24 -none- numeric
n.used 1 -none- numeric
order.max 1 -none- numeric
partialacf 23 -none- numeric
resid 244 -none- numeric
method 1 -none- character
series 1 -none- character
frequency 1 -none- numeric
call 2 -none- call
asy.var.coef 1 -none- numeric
(3)モデルの診断
#以上の結果よりAR
モデルに近いと推測される。
#また係数の結果より下記の式
(1)を導出する。
# y(t)= 0.9593084*y(t-1)+ e(t)
# ※(t)は変数の時期を示す。
#以下の残差の検定を行う
。
Box.test(DY1126.ar$res, type="Ljung")#H0:(帰無仮説)データは無作為である。
#(対立仮説)テータは無作為でない
Box.test(DY1126.ar$res, type="Pierce")
#あるいはBox
.test(DY1126, lag = 1, type = c("Box-Pierce", "Ljung-Box")
- Box.test(DY1126.ar$res, type="Ljung")の結果
Box-Ljung test
data: DY1126.ar$res
X-squared = 0.0769, df = 1, p-value = 0.7815
Box-Pierce test
data: DY1126
X-squared = 224.5465, df = 1, p-value < 2.2e-16
2. Rによる単位根
#単位根検定
library(tseries)
ts1126 <- ts(DY1126)
PP.test(ts1126, lshort = TRUE)#Phillips-Perron検定
adf.test(ts1126)
adf.test(diff(ts1126))$p.value #1階の差分をとった場合
Phillips-Perron Unit Root Test
data: ts1126
Dickey-Fuller = -2.3446, Truncation lag parameter = 4, p-value = 0.4309
Augmented Dickey-Fuller Test
data: ts1126
Dickey-Fuller = -1.9255, Lag order = 6, p-value = 0.6072
alternative hypothesis: stationary
[1] 0.01
警告メッセージ:
In adf.test(diff(ts1126)) : p-value smaller than printed p-value
3.
- arimaモデル
- 係数を求めるプログラム 参考:ttp://mjin.doshisha.ac.jp/R/34/34.html
#数字を大きくすると収束しないケースもあり
…。
#スペースが入ると文字化けするので左寄せで表記
。
data<-DY1126; T<-0
for(p in 1:3)
for(d in 0:1)
for(q in 0:1){
fit<-arima(data,order=c(p,d,q))
T<-T+1
if(T==1){
minaic<-fit$aic
orderP<-p; orderD<-d;orderQ<-q;
}else{
if (fit$aic<-minaic){
orderP<-p; orderD<-d;orderQ<-q;
}
}
}
#計算後
…、
cat("結果: p=",orderP,"d=",orderD,"q=",orderQ,"AIC=",minaic,"\n");
結果: p= 3 d= 1 q= 1 AIC= 612.5965
#スペースが入ると文字化けするので左寄せで表記
。
data<-DY1126; T<-0
for(p in 0:4)
for(d in 0:1)
for(q in 0:1){
fit<-arima(data,order=c(p,d,q))
T<-T+1
if(T==1){
minaic<-fit$aic
orderP<-p; orderD<-d;orderQ<-q;
}else{
if (fit$aic<-minaic){
minaic<- fit$aic;
orderP<-p; orderD<-d;orderQ<-q;
}
}
}
#計算後
…、
cat("結果: p=",orderP,"d=",orderD,"q=",orderQ,"AIC=",minaic,"\n");
結果: p= 4 d= 1 q= 1 AIC= 1291.704
結果: p= 5 d= 1 q= 1 AIC= 1291.704
分析2(途中)
- 2008年6月23日から2009年11月26日まで
- 終値
- 使用コード
#以下Rのコード
DY <- read.table("USDJPNowarine.csv",sep=",")#ファイルの読み込み
ts.plot(DY)
#まずは自己相関
par(mfrow=c(1,2))
acf(DY,main="米ドル/日本円")
pacf(DY,main="米ドル/日本円")
#下に出てきたファイル画像
#大きさ未調整
。ブラウザによってはでかすぎw
#ref error :ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (002acf_pafc.jpeg)
#引き続きRのコード
。
#コレログラムの形状よりAR
モデルに近いと予測される。
#-
こちらも参照
(DY.ar <-ar(DY)) #「ユールウォーカー法によるモデル推定」
summary(DY.ar) #「項目リスト」
#arモデルに関しては
#以下結果
「ユールウォーカー法によるモデル推定」
Call:
ar(x = DY)
Coefficients:
1 2
0.8992 0.0814
Order selected 2 sigma^2 estimated as 1.636
「項目リスト」
Length Class Mode
order 1 -none- numeric
ar 2 -none- numeric
var.pred 1 -none- numeric
x.mean 1 -none- numeric
aic 26 -none- numeric
n.used 1 -none- numeric
order.max 1 -none- numeric
partialacf 25 -none- numeric
resid 350 -none- numeric
method 1 -none- character
series 1 -none- character
frequency 1 -none- numeric
call 2 -none- call
asy.var.coef 4 -none- numeric
#以下続く
最終更新:2010年07月10日 01:49