포트폴리오 - 8. 더 정확한 데이터 수집(2)

2023. 10. 31. 14:47투자&경제

-이전 포스팅

https://terrykim132.tistory.com/17

 

포트폴리오 - 7. 더 정확한 데이터 수집(1)

-이전 포스팅 https://terrykim132.tistory.com/16 포트폴리오 - 6. 동적 자산배분 포트폴리오 비교(2) https://terrykim132.tistory.com/15 포트폴리오 - 5. 동적 자산배분 포트폴리오 비교 https://terrykim132.tistory.com/14

terrykim132.tistory.com

이어서, 정확한 일별 데이터를 가져오는 방법을 R Code로 적어보도록 하겠다.

 

--------------------------------------------------아래-------------------------------------------------

 

symbols = c ('SHY') getSymbols(symbols, src = 'yahoo', from = '2002-01-01', to = '2023-10-29' )

 

Directory = c("~/Documents/Stock_Data_For_Backtest/Precise Data/SHY_2002~2023(Daily data by Yahoo).csv")

 

write.zoo(SHY, file = Directory)

 

-------------------------------------------------------------------------------------------------------

 

 

해당 CSV를 Import 할 때는 아래 코드를 이용하면 된다.

 

--------------------------------------------------아래-------------------------------------------------

 

library(readr)

 

#참조 : '<-'는 '=' 와 같은 의미이며 대체가능하다.

 

GLD_2004_2023_Daily_data_by_Yahoo_ <- read_table("~/Documents/Stock_Data_For_Backtest/Precise Data/GLD_2004~2023(Daily data by Yahoo).csv")

 

-------------------------------------------------------------------------------------------------------

 

 

중기채권 ETF를 불러오는 함수이며, 일별 데이터를 야후에서 쉽게 크롤링하고, 데이터를 저장할 수 있는 코드이다. 이어서 미국 장기채권 TLT, 초단기채권인 BIL의 데이터 또한 저장해보도록 하겠다.

나머지 데이터는 코드를 변형해 쉽게 수집할 수 있었다. SNP의 경우 야후파이낸스 사이트에 들어가서 히스토리칼 데이터를 직접 스크롤하여 크롤링하였다. 앞으로는 수집한 데이터를 활용해서 전략들을 다시 구사해 보도록 하겠다.

 

---------------참고-----------------

-야후 파이낸스 링크

https://finance.yahoo.com/quote/%5EGSPC/history?period1=-1325635200&period2=1698537600&interval=1d&filter=history&frequency=1d&includeAdjustedClose=true

Historical Data 탭에 들어가서 Time Period 시점을 All로 변경 후 Apply, 하단에 나오는 데이터 값을 10년 단위로 스크롤 한 후  엑셀에 붙여넣기 하면 코드를 사용한 데이터 수집보다 더 Long Term인 데이터를 구할 수 있다.

---------------참고-----------------