Nur kennen Zeitreihen, und als Leitfaden für the following exercise: der vergebliche Versuch, die Zukunft Renditen in der Börse vorhersagen ... Nur eine Übung das Konzept der Zeitreihen zu verstehen.Voraussagen und plotten nach der Anpassung `arima()` Modell in R
Das Problem ist, dass wenn ich die vorhergesagten Werte plotte ich eine konstante Linie, die im Widerspruch zu den historischen Daten ist. Hier ist es, in Blau, am Ende der stationär gemachten historischen Dow Jones Tagesrenditen.
In Wirklichkeit ein Ich möchte mehr „optimistisch“ visuelle oder eine „re-tendierte“ Plot wie die, die ich für die vorhergesagte Anzahl von Flugreis bekam:
Dies ist der Code:
library(quantmod)
library(tseries)
library(forecast)
getSymbols("^DJI")
d = DJI$DJI.Adjusted
chartSeries(DJI)
adf.test(d)
dow = 100 * diff(log(d))[-1]
adf.test(dow)
train = dow[1 : (0.9 * length(dow))]
test = dow[(0.9 * length(dow) + 1): length(dow)]
fit = arima(train, order = c(2, 0, 2))
predi = predict(fit, n.ahead = (length(dow) - (0.9*length(dow))))$pred
fore = forecast(fit, h = 500)
plot(fore)
Leider Prognose, ich erhalte eine Fehlermeldung, wenn ich den gleichen Code verwenden für die Flugreisenden versuchen. Zum Beispiel:
fit = arima(log(AirPassengers), c(0, 1, 1), seasonal = list(order = c(0, 1, 1), period = 12))
pred <- predict(fit, n.ahead = 10*12)
ts.plot(AirPassengers,exp(pred$pred), log = "y", lty = c(1,3))
auf das aktuelle Problem angewandt könnte möglicherweise etwas wie dies geht (?):
fit2 = arima(log(d), c(2, 0, 2))
pred = predict(fit2, n.ahead = 500)
ts.plot(d,exp(pred$pred), log = "y", lty = c(1,3))
Error in .cbind.ts(list(...), .makeNamesTs(...), dframe = dframe, union = TRUE) : non-time series not of the correct length