2017-06-08 24 views
0

Ich bekomme den folgenden Fehler von Xts-Paket, wenn ich periodReturns Funktion aufrufen. Ich habe die Pakete Quantmod und Xts von github aktualisiert, aber der Fehler bleibt bestehen. Kann jemand vorschlagen, wie man das repariert?Xts Fehler bei der Berechnung der Rückgabe

Danke,

getSymbols('AAPL', src = 'yahoo', from = '2016-01-01', auto.assign = T) 

> periodReturn(AAPL,by=years,from='2003-01-01') 
Error in lag.xts(x1, K.) : 
INTEGER() can only be applied to a 'integer', not a 'double' 

> sessionInfo() 
R version 3.4.0 (2017-04-21) 
Platform: x86_64-w64-mingw32/x64 (64-bit) 
Running under: Windows 8.1 x64 (build 9600) 

Matrix products: default 

locale: 
[1] LC_COLLATE=English_Australia.1252 LC_CTYPE=English_Australia.1252 LC_MONETARY=English_Australia.1252 
[4] LC_NUMERIC=C      LC_TIME=English_Australia.1252  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] PerformanceAnalytics_1.5.1 quantmod_0.4-9    TTR_0.23-1     xts_0.10-0     
[5] zoo_1.8-0     

loaded via a namespace (and not attached): 
[1] Rcpp_0.12.10    lattice_0.20-35   codetools_0.2-15   IKTrading_1.0    
[5] foreach_1.4.4    grid_3.4.0    curl_2.6     boot_1.3-19    
[9] blotter_0.11.3   iterators_1.0.8   FinancialInstrument_1.2.0 compiler_3.4.0   
[13] quantstrat_0.10.0   
+0

Das sieht sehr ähnlich dem, was in [xts Ausgabe # 180] diskutiert wurde (https://github.com/joshuaulrich/xts/issues/180). Versuchen Sie, xts von GitHub neu zu installieren und/oder starten Sie RStudio neu. Beachten Sie auch, dass 'by' kein Argument für' periodReturn' ist und daher ignoriert wird ... was gut ist, weil 'by = years 'wahrscheinlich einen Fehler zurückgibt (Sie haben wahrscheinlich' by = "years" 'gemeint). –

Antwort

0

ich nicht dein Fehler reproduzieren konnten. Obwohl Sie Daten herunterladen from = '2016-01-01' und Berechnung from='2003-01-01' Rückkehr Ihr Code arbeitete immer noch für mich. Vielleicht können Sie versuchen, das zu beheben und zu sehen?

> getSymbols('AAPL', src = 'yahoo', from = '2016-01-01', auto.assign = T) 
[1] "AAPL" 
> class(AAPL) 
[1] "xts" "zoo" 
> periodReturn(AAPL, by = years, from = '2003-01-01') 
      monthly.returns 
2016-01-29 -5.135956e-02 
2016-02-29 -6.677563e-03 
2016-03-31 1.272106e-01 
2016-04-29 -1.399211e-01 
2016-05-31 6.528700e-02 
2016-06-30 -4.265975e-02 
2016-07-29 9.006277e-02 
2016-08-31 1.813645e-02 
2016-09-30 6.550429e-02 
2016-10-31 4.334348e-03 
2016-11-30 -2.659859e-02 
2016-12-30 4.795515e-02 
2017-01-31 4.774649e-02 
2017-02-28 1.288835e-01 
2017-03-31 4.868968e-02 
2017-04-28 -6.967841e-05 
2017-05-31 6.341804e-02 
2017-06-08 1.459813e-02 
Verwandte Themen