R-код: почему ожидаемая бесконечность возврата?
Целью R-кода является чтение исторических цен MSFT от Yahoo и вычисление их доходности для ежедневных цен открытия.
#load packages
library(quantmod)
library(PerformanceAnalytics)
getSymbols("MSFT") #read data
#Call function to analyze open price
table.AnnualizedReturns(MSFT[,1]) #End of the code
Результат всегда показывает, что его возвращение равно бесконечности следующим образом:
MSFT.Open
Annualized Return Inf
Annualized Std Dev 136.4471
Annualized Sharpe (Rf=0%) Inf
Я ценю, если кто-то может помочь мне определить ошибку, вызывающую бесконечность.
1 ответ
Решение
Я думаю, что вам нужно сначала преобразовать цены в возврат, чтобы использовать таблицу.AnnulizedReturns
#load packages
library(quantmod)
library(PerformanceAnalytics)
getSymbols("MSFT") #read data
#Call function to analyze open price
r <- Return.calculate(MSFT[,1]) #Returns
table.AnnualizedReturns(na.omit(r)) #End of the code
MSFT.Open
Annualized Return 0.0683
Annualized Std Dev 0.2735
Annualized Sharpe (Rf=0%) 0.2498