-
포트폴리오 - 7. 더 정확한 데이터 수집(1)투자&경제 2023. 10. 29. 12:51반응형
-이전 포스팅
https://terrykim132.tistory.com/16
https://www.portfoliovisualizer.com/faq#marketData
정확한 백테스팅에서 가장 중요한 점은 신뢰성 있는 자료와 긴 백테스트 기간일 것이다. 1900년대, 혹은 그 이전 자료는 대부분 연도별 형식의 자료로 되어있어 이를 감안하여 데이터를 규칙 있게 정리한 후 이용할 계획이다. 연도별 형식의 Long-Term Data는 정적 백테스팅에 사용될 예정이며, 정교한 일별, 혹은 월별 데이터를 구하게 된다면 동적 백테스팅을 적극적으로 시도해 볼 것이다.
일단 일별 데이터의 경우 2007년도 이후 데이터는 Yahoo Finance 사이트에서 쉽게 구할 수 있으며 2000년대 이전의 온전한 데이터를 구하는 것에 목표를 둘 것이다.
연간 데이터의 경우 1800년대 데이터 또한 간헐적으로 찾을 수 있지만, 데이터의 신뢰성이 확보된 자료들을 참고하여 적절한 기간의 데이터를 가공하는 것이 목표를 두려고 한다.
자료를 확보한 후 백테스팅에 사용하려는 데이터는 csv파일로 변환, 정리하여 이 블로그에 첨부하려고 한다. 해당 데이터의 출처를 정확하게 남길 수 있도록 하자. 자료의 가공의 경우 각 종목 별 파일을 만들고 개별 종목을 통합한 파일 하나를 만들어 최종 정리하려고 한다.
비교적 정확하며 Long-Term인 데이터를 확보한 후에는 기존에 테스팅했던 포트폴리오를 백테스팅 한 후 결과를 정리하여 포스팅 하려하며 이후에는 다양한 아이디어를 적용한 포트폴리오를 구성하여 테스트할 수 있도록 한다.
기존에는 1000만원을 모을 시 바로 투자를 할 수 있도록 계획 하였다면 기존 계획을 좀 늘려보도록 하겠다. 올해 말 투자를 시작하는 것이 기존이었다면, 올해 말을 가상의 데드라인으로 생각하여 최적의 투자 방법을 찾을 수 있는 원동력으로만 사용하려고 한다. 최대한 빨리 투자를 시작하는 것이 좋을 것이지만, 전략은 쉽게 바꾸면 아니되기에 신중하게 시작할 수 있도록 하겠다.
일단, 수집한 자료 중 필요없는 것들은 정리하면서 원하는 데이터를 추출해 나가도록 하겠다. 일단 목표하는 자료의 종목은 영구 포트폴리오의 구성 종목인 미국 주식, 미국 국채, 미국 단기 국채, 금의 가격이며 원자재에 대한 정보 또한 구할 수 있도록 한다.
-연간 장기간 데이터 출처(1)
Date updated: 01-Jan-23 Created by: Aswath Damodaran, adamodar@stern.nyu.edu What is this data? Historical returns: Stocks, Bonds & T.Bills with premiums US companies Home Page: http://www.damodaran.com Data website: https://pages.stern.nyu.edu/~adamodar/New_Home_Page/data.html Companies in each industry: https://pages.stern.nyu.edu/~adamodar/pc/datasets/indname.xls Variable definitions: https://pages.stern.nyu.edu/~adamodar/New_Home_Page/datafile/variable.htm -일간 장기간 데이터 출처(2)
AQR Capital Management, LLC — Commodities for the Long Run: Index Level Data, Monthly https://www.aqr.com/Insights/Datasets
원자재의 월별 수익률 지표가 무려 1877년부터 있다. 선물가격 지수인 만큼 여러가지의 선물 포트폴리오를 구성해서 원자재의 가격을 표현하였다. 일반적인 원자재 가격 지표를 참고하고 싶으면 동일비중 포트폴리오라 적혀있는 수치를 인용하면 될 것 같다.
일간 데이터는 야후파이넨스 사이트에서 크롤링하여 가져왔다. 크롤링 방법 또한 추후 설명하도록 하겠다.
자료 자체는 비쥬얼라이즈드 포트폴리오 사이트에서 데이터 항목을 클릭하여 다운로드 받을 수 있었다. 하단에 링크를 달도록 하겠다.
https://www.portfoliovisualizer.com/faq#marketData
자료들의 단위 기간은 연간이며, 주로 연말 데이터를 사용한 것으로 보여진다. 1926~1928년부터 2023년까지의 각각 개별적인 연 단위 롱텀 데이터, 형식은 csv이다. 회사채권, 금, SNP, 현금(T-Bill, 3개월 단위 초단기채권), 미국 국채 10년물(T-Bonds), 원자재(일간 롱텀 데이터) 총 6개 섹터의 데이터로 가공하였다.
월간 원자재 가격의 경우 R프로그램을 이용하여 연간 데이터로 변경하였다. 아래에 변경하는데 사용한 코드를 기재하도록 하겠다.
-----------------------------------------------아래-------------------------------------------
Monthly_data = read.zoo("~/Documents/Stock_Data_For_Backtest/Precise Data/Commodities_1877~2023(Monthly data by AQR).csv", header = TRUE, sep = ',', index = 1, tz ='', format = '%Y-%m-%d') %>% as.xts()
colnames(Monthly_data) = c('Commodities')
ep = endpoints(Monthly_data, on = 'years')
wts = list()
for(i in ep[3]:length(ep)) {
vcum = 0
vcum = Return.cumulative(Monthly_data[ep[i-1] : ep[i], ])
wts[[i]] = xts(t(vcum), order.by = index(Monthly_data[i]))
}
Annual_data = do.call(rbind, wts)
colnames(Annual_data) = c('Commodities')
write.zoo(Annual_data, file = "~/Documents/Stock_Data_For_Backtest/Annual Long Term Data/Commodities_1878~2023(Annual data by AQR).csv")
----------------------------------------------------------------------------------------------
가공한 데이터는 추후 다운로드 할 수 있도록 조치하도록 하겠다.
다음 편에서는 나머지 일간 데이터를 크롤링하여 인용할 적절한 데이터를 완성해보도록 하겠다.
반응형'투자&경제' 카테고리의 다른 글
포트폴리오 - EFT & Etc (0) 2023.11.06 포트폴리오 - 8. 더 정확한 데이터 수집(2) (0) 2023.10.31 포트폴리오 - 6. 동적 자산배분 포트폴리오 비교(2) (1) 2023.10.24 포트폴리오 - 5. 동적 자산배분 포트폴리오 비교 (2) 2023.10.17 포트폴리오 - 3. 포트폴리오 백테스트 (1) 2023.10.08