요새 모두가 주식에 관심이 폭증하는데, 주식 정보 및 데이터를 추출하는 방법을 검색해보고
따라해 봤다.
검색해 보니까 방법이 여러 가지가 있는데,
① 주식 사이트에서 크롤링으로 하는 방법(Investing, Naver)
② Google 스프레드 시트에서 =GoogleFinance 함수를 이용해서 가져오는 방법
install.packages("quantmod")
install.packages("xts")
③ R의 여러 Package 들을 이용하는 방법 (R에서도 1) 형태로 가져오는 방법도 있음)
그 중에서 현재 시점 버전으로 ③ 형태로 데이터를 가져오는 방법을 테스트 해봤다.
우선 R, R Studio가 설치되어 있어야 한다.
1. 설치 및 다운로드( 이 부분은 Skip... ) https://rstudio.com/
2. 관련 Package Install
install.packages("quantmod")
install.packages("xts")
3. Library 불러오기
library(xts)
library(quantmod)
4. 기본적인 주가 가져오기
quantmod package | R Documentation
Quantitative Financial Modelling Framework Specify, build, trade, and analyse quantitative financial trading strategies. Functions in quantmod Name Description Defaults Manage Default Argument Values for quantmod Functions addADX Add Directional Movement I
www.rdocumentation.org
## 기본 함수 형태
getSymbols(Symbols = NULL,
env = parent.frame(),
reload.Symbols = FALSE,
verbose = FALSE,
warnings = TRUE,
src = "yahoo",
symbol.lookup = TRUE,
auto.assign = getOption('getSymbols.auto.assign',TRUE),
...)
## 데이터 가져오기
## Symbols <- 가져오고자하는 종목 ticker 지정. KOSPI 는 뒤에 KS, KOSDAQ 은 뒤에 KQ
## ★KOSDAQ 은 되지 않음(당일 결과만 가져옴, 나머지는 NA)
## src : 데이터를 가져오는 데이터 소스
## 현재 가져올 수 있는 데이터 소스 yahoo, google(18년 종료), MySQL, FRED, csv, RData, oanda, av
## from, to : 데이터를 가져오는 기간
Samsung <- getSymbols(Symbols="005930.KS", src = "yahoo",
from= Sys.Date()-180, to = Sys.Date(),
auto.assign = FALSE)
# error. 당일 1 row만 가져옴.
Seegeen <- getSymbols(Symbols="096530.KQ", src = "yahoo",
## from= "2020-01-01", to = "2021-01-31", ( from, to 쓰면 에러 발생)
auto.assign = TRUE)
tail(Samsung, n=5)
tail(seegeen, n=5)
결과
5. 차트 그리기
##시가,고가,저가,종가,거래량,수정율
colnames(Samsung) <- c('open','high','low','close','volume','adjusted')
chartSeries(Samsung, up.col='red', dn.col='blue', theme = 'white')
addMACD()
addBBands()
addSMA();addSMA(30,col='blue')
결과
※ 기타 그릴수 있는 차트 리스트
코스닥이 조회안되는게 안 좋네요.
'List' 카테고리의 다른 글
[도서] 홍성현 - 파이낸셜 모델링 바이블 (0) | 2024.05.15 |
---|---|
Test (1) | 2023.12.05 |
[주식] VPCI(Volume Price Confirmation Indicator) (3) | 2022.04.03 |
포탈 글꼴 바꿔치기 - Chrome (0) | 2021.06.06 |
만약 - 러디어드 키플링 (0) | 2021.03.17 |
이덕일의 한국통사 (0) | 2020.10.30 |
MS OneNote 아래첨자/윗첨자 넣기 단축키 (0) | 2015.02.05 |
집에 있는 NAS를 네트워크 드라이브로 연결 (0) | 2015.01.13 |
MSSQL 인덱스 조각모음 [Microsoft SQL Server 2000 Index Defragmentation Best Practices] (0) | 2013.07.13 |
Database Shrink를 하지 말아야 하는 이유 (0) | 2013.06.14 |