Я новичок в R Code и эконометрике. В настоящее время я создал пороговую модель GARCH для прогнозирования волатильности цен на активы. Мне трудно понять, как построить два графика друг над другом, пытаясь сравнить волатильность с фактическими временными рядами или даже использовать это, чтобы увидеть, как модель работает с фактическими данными.
spec.tgarch <- ugarchspec(variance.model = list(model = "fGARCH",
submodel = "TGARCH",
garchOrder = c(1,1)),
mean.model = list(armaOrder=c(1,0)))
tGarchModel <- ugarchfit(spec.tgarch, data=dl_data)
tGarchModel
vol <- ts(tGarchModel@fit$sigma^2,end = c(2024,1), frequency = 12)
plot(vol, xlab = "", ylab = "", main = "Threshold GARCH Volatility")
plot(ts_data, type = "l", col = "blue", ylab = "Price", xlab = "Time", main = "Comparison of Actual Volatility vs Model Predicted Volatility")
lines(vol, col = "red")
# Add a legend
legend("topright", legend = c("Actual Volatility", "Model Predicted Volatility"), col = c("blue", "red"), lty = 1)
Тем не менее, мне удается добавить на график только данные временных рядов (синие), а красная линия не появляется. Также появляется легенда.
@datawookie ts_data — данные временных рядов, dl_data = diff(log(ts_data)
Спасибо. Я предлагаю добавить это в код вашего вопроса, пожалуйста.
Я не совсем уверен, что вы хотите построить, но если предположить, что вы хотите увидеть доходность смоделированной волатильности на суше, возможно, что-то вроде этого?
spec.tgarch <- ugarchspec(
variance.model = list(
model = "fGARCH",
submodel = "TGARCH",
garchOrder = c(1,1)
),
mean.model = list(armaOrder=c(1,0))
)
tGarchModel <- ugarchfit(spec.tgarch, data=dl_data)
tGarchModel
plt <- plot(
dl_data,
col = "darkgrey",
xlab = "",
ylab = "",
main = "Threshold GARCH Volatility",
grid.col = "lightgrey"
)
plt <- addSeries(sigma(tGarchModel), col = "red", on = 1)
plt <- addSeries(-sigma(tGarchModel), col = "red", on = 1)
plt
Да, действительно, возможно, это то, чего я хотел достичь. Пока самый близкий ответ на вопрос.
Обнаружение ошибки: ошибка в get(".xts_chob", .plotxtsEnv): объект '.xts_chob' не найден
Пожалуйста, вам нужно будет предоставить больше контекста. Пожалуйста, попробуйте свой код в новом сеансе R. Если ошибка не исчезнет, добавьте к вопросу свой текущий код, чтобы я мог воспроизвести ошибку. Кстати, я не получаю эту ошибку при запуске только кода, который я предоставил в новом сеансе R.
Какая связь между
dl_data
иts_data
? Я предполагаю, что первое — это временной ряд вашей доходности. Непонятно, откуда взялось последнее.