matthew as a q.

競技プログラミングメイン

RFinanceYJを使えるようにするまでに必要だったこと+α

基本的にこれでおk 

install.packages("RFinanceYJ")

参考(Rで株価〜RFinanceYJ関数を使う2 | ウェブディレクターのための統計入門



使うCRAN国内ミラーを指定していなかったため、パッケージのインストールが出来なかった。

$ ~/.Rprofile

options(repos="http://cran.md.tsukuba.ac.jp")

と記入して、使うCRANミラーを指定しておく。

参考(CRAN国内ミラーの使い方 - RjpWiki



そしてまたRを起動して、install.packages("RFinanceYJ")して、

> mufj <- quoteStockTsData('8306.t',since='1970-01-01')
> mufj2 <- quoteStockTsData('8306.t',since='2008-01-01')

を実行すると以下の様なエラーが出た。

> 以下にエラー order(financial.data$date) :  引数 1 がベクトルではありません

RFinanceYJは直接Yahoo Financeのページからデータを取ってきているため、細かいページの変更でも使えなくなる可能性が高いそうだ。

以下のページに書かれているように修正する。
Rでチャートを書いてみる(5) - なんだかなぁ


もう一度、

> mufj <- quoteStockTsData('8306.t',since='1970-01-01')

を実行してしばらく待つとmufjにデータが格納された。

確認してみる。

> head(mufj)
           date    open    high     low   close volume adj_close
3297 2001-04-02 1180000 1220000 1150000 1220000  40225      1220
3296 2001-04-03 1200000 1260000 1190000 1250000  17521      1250
3295 2001-04-04 1260000 1300000 1230000 1300000  21559      1300
3294 2001-04-05 1300000 1310000 1250000 1250000  11709      1250
3293 2001-04-06 1250000 1250000 1190000 1250000  11414      1250
3292 2001-04-09 1210000 1250000 1190000 1200000  14017      1200

データを保存したい場合は、

> write.table(mufj, "~/yourownpath/mufj.txt")

グラフを表示するには、

> plot(mufj2[,1],mufj2[,5],type="l",xlab="Year",ylab="ClosingPrice")

f:id:takeknock:20140906195233p:plain