Проблема, по-моему, заключается в том, как вводится CurrentDay. Он был создан ранее:
Transaction <- function(PnL, Day)
results <- list(a = PnL, b = Day)
return(results)
Оба значения PnL и Day являются числовыми значениями.
Day <- Transaction(PnL, Day)["b"]
Если транзакция вернула список, а b - целое число.
moving_avg <- function(StockData, MA, CurrentDay){
#MA = Days long the MA is
#CurrentDay = What day we are currently on
MAValue <- NULL
total <- 0
start <- CurrentDay - MA
for(i in 1:length(MA)) {
total <- total + StockData[[start, 4]]
start <- start + 1
}
MAValue <- total/MA
return(MAValue)
}
Кто-нибудь знает, почему я получаю эту ошибку?
Ошибка в CurrentDay - MA: нечисловой аргумент для двоичного оператора