2010年10月19日火曜日

[Rcode]実質実効為替レートのグラフ

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
実質実効為替レートのデータダウンロード->グラフ描画のコードです。

#plotting real effective exchange rate
#基準時=(1)
styear <- "2008-09"
#グラフタイトル
titlename <- paste( "Real Effective Exchange Rate(",styear,"=1)")
#始期(グラフ)
startptyear <- 2005
startptmonth <- 1
#凡例位置
legendx <- 2005
legendy <- 1.25


#BISからデータダウンロード(csv)
x <- read.csv("http://stats.bis.org/bis-stats-tool/org.bis.stats.ui.StatsApplication/ResultDownload?format=csv&bookmark=true&query=eJxjYGBU%2BbNfipVBwMkzONzVKd7ZMSTY2cPV15VBCCri6hrk4hji6ObjH84ABJwMDOyrgTQHkL5Z%2F%2F%2F%2Ff0ZGII%2BJgQuoLt7JMdjbNQTIZ2RgdGJgcQtyDYRwfBkAIc4V%2Bg%3D%3D" ,skip=4, header=T)

y <- x[c(1:nrow(x)),]

#時間(1列目、検索用)
time <- y[,1]

#基準年の行数検索(基準年を100とするための除算用)
r_s <- grep(styear,time)

#関数(基準年を1とする計算)
strize <- function(a,b,st)
{
 tmp <- 0 ;tmp2<-0 ; ans<- 0;
 tmp <- a[b]
 tmp2 <- tmp[st,]
 ans <- tmp / tmp2 *1
 return(ans)
}
#各通貨をピックアップ、基準年を1とする
CAD<-strize(y,"M.R.B.CA",r_s)
EUR<-strize(y,"M.R.B.XM",r_s)
GBP<-strize(y,"M.R.B.GB",r_s)
JPY<-strize(y,"M.R.B.JP",r_s)
USD<-strize(y,"M.R.B.US",r_s)

#bind,グラフ描画
w  <- cbind(CAD,EUR,GBP,JPY,USD)
tw <- ts(w, start=c(1994,1),frequency=12)
forplottw <- window(tw,start=c(startptyear ,startptmonth))

ts.plot(forplottw,col=c(1:5))
title(main=titlename)
legend(legendx,legendy,c("CAD","EUR","GBP","JPY","USD"),col=c(1:5),lty=c(1,1,1,1),horiz=T)

grid()

0 件のコメント:

コメントを投稿