戦略をテストするために MFI を使用して売買シグナルを生成しようとしています。それは実際にはかなり単純なはずですが、R は私に苦労を与えています。
これが私のコードです:
q <- get(getSymbols('spy',src='yahoo'))
q$mfi <- MFI(q[,2:4],q[,5],5)
sig <- function(row) {
if (row$mfi < 20) { return (1)}
else if (row$mfi > 80) { return (-1)}
else { return (0)}}
q$result<-apply(q,1,sig)
私が得ているエラーは次のとおりです。
Error in row$mfi : $ operator is invalid for atomic vectors
単純な条件を使用して戦略をテストするより良い方法があれば、それをいただければ幸いです...