金融データのプロット
quantstrat で構築するトレーディング戦略には、市場データから作成するインジケーター、特定のインジケーターの組み合わせで発火するシグナル、そしてシグナルに基づいて実行されるルールなどの要素があります。どのトレーディングシステムでも、最初のステップは市場データを取得し、その見た目を確認することです。
動画で見たように、quantmod パッケージにはさまざまなソースからデータを取得する関数があります。これは getSymbols() コマンドで、シンボル名と同じ名前のオブジェクトを返します。
この演習では、米国の時価総額上位500社に連動する上場投資信託(ETF)である SPY のデータを取得します。データは Yahoo! Finance から取得します。これは「引け値を見てすぐに引け値で買う」といった瞬時の執行を必要としない戦略には十分なデータソースです。取得後にプロットし、トレンドラインを追加します。
たとえば、Yahoo! Finance から 2013 年の SPY の調整済みデータを取得し、その後に各日の高値をプロットするには、次のコードを実行します。SPY データへの最初の参照だけが引用符で囲まれている点に注意してください。
getSymbols("SPY",
from = "2013-01-01",
to = "2013-12-31",
src = "yahoo",
adjust = TRUE)
plot(Hi(SPY))
quantmod パッケージは読み込まれています。
この演習はコースの一部です
Rで学ぶ金融トレーディング
演習の手順
getSymbols()を使って、Yahoo! Finance から 2000 年 1 月 1 日から 2016 年 6 月 30 日までの SPY の調整済みデータを取得してください。Cl()を使って SPY の終値をプロットしてください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Get SPY from yahoo
getSymbols(___,
from = ___,
to = ___,
src = ___,
adjust = ___)
# Plot the closing price of SPY
___(___(___))