역사적인 방법으로 월말에 VaR을 계산하고 싶습니다. 내 시간 시리즈는 2000 년 초부터 지금까지 시작됩니다. 계산이 시작되어 2005 년에 충분한 데이터가 있다고 말하도록해야합니다. 비슷한 게시물 rolling computations in xts by month이 있고 내 경우 코드를 수정하려고했습니다. 매월 말 VaR은 과거 데이터를 사용해야합니다.개월당 xts로 롤링 계산 2 부
여기 (그렇지 않으면 오래 걸릴 것이기 때문에 여기에 2012 년 시작) 내 코드 : 모든
library(quantmod)
getSymbols("^GSPC",return.class = "zoo",from = "2012-01-01",to = Sys.Date())
sp500 <- Ad(GSPC)
ldr_sp500 <- Return.calculate(sp500, method = "log")
ldr_sp500 <- na.omit(ldr_sp500)
idx <- index(ldr_sp500)[endpoints(ldr_sp500, 'months')]
out <- lapply(idx, function(i) {
as.xts(rollapplyr(as.zoo(ldr_sp500), 30, VaR))
})
sapply(out, NROW)
먼저 내 코드에 큰 오류가 있습니다. 폭은 무엇이되어야합니까? 출력물을 동물원 개체로 제공 할 수 있습니까? 스피 기능 이런 종류의 초보자 ... 나는 역사의 방법을 사용하고 싶지만 오히려 가우스 방법은 내가 사용하는 것 해달라고하는 경우 :
apply.monthly(as.xts(ldr_sp500), VaR, method="gaussian")
이 중복되지 않은 기간에 잘 작동 것 같다 ...
코드에서