私はRに比較的慣れておらず、トピックについてできる限り読んでいますが、他の質問で探しているものを見つけることができないようです.
毎月のデータを使用して、TTR と ROC を使用して 12 期間の変化率 (モメンタム) を計算しようとしていますが、最新の月は無視したいと思います。言い換えれば、t-2 から t-12 までの ROC を探しています (2016 年 1 月 2016 年 1 月を除く株式の 12 か月の勢い)。これは、ポートフォリオ構築に関する文献でモメンタムを計算する際の標準です。
私のデータは、南アフリカ証券取引所 (JSE) に上場されているすべての株式です。日付ヘッダーは 1 列目 (つまり、日付は行の変数) で、在庫は後続の列に表示されます。
以下のコードは非常に簡単ですが、いくつか試してみたところ、エラーが発生しました。20 年間で約 250 の株式 (列) があるため、観測ごとに新しいラグ変数を作成することはお勧めできません。
x <- Prices.df
x$DATE <- as.Date(x$DATE, format = "%Y/%m/%d")
y <- xts(x[,-1], order.by = x$DATE) library(TTR)
roc <- ROC(y, n = 12, type = "discrete")
どんな助けでも大歓迎です。