sentdex.comで配布されてるデータ
sentdex.com/GBPUSD.zip
tb <- read.table("GBPUSD1d.txt",sep=',',colClasses=c("character","numeric","numeric"))
df <- data.frame(strptime(tb$V1,"%Y%m%d%M%S"),tb$V2,tb$V3)
names(df) <- c("time","bid","ask")こんな感じ
>head(df)
time bid ask
1 2013-05-01 1.55358 1.55371
2 2013-05-01 1.55357 1.55369
3 2013-05-01 1.55353 1.55367
4 2013-05-01 1.55349 1.55367
5 2013-05-01 1.55349 1.55367
6 2013-05-01 1.55348 1.55367これだとグラフの重ね書きが難しいので悩ましい。
ggplot(df,aes(x=time,y=ask,bid))+geom_smooth()→askとbidの両方はプロットされない
ふつうのplotだとpar(new=T)で重ね書きできるけど、ggplotではできない。
ggplot(df,aes(x=time,y=ask,bid))+geom_smooth() par(new=T)→ggplotでは使えない ggplot(df,aes(x=time,y=bid))+geom_smooth()
こういう時はmeltを使う。
df2 <- melt(df,id="time",measure=c("bid","ask"))プロット
ggplot(df2,aes(x=time,y=value,col=variable))+geom_line()
