이번에는 chatGPT가 아니라 인간이 직접 코딩한 결과물입니다.ㅎㅎ
바로 갑니다.
심플하게 financeDataReader를 통해서 코스피와 환율정보를 불러옵니다.
모듈설치가 안되어 있으시면 pip install finance-datareader 로 설치하셔야하겠죠.
불러올때는 데이터프레임으로 불러오므로 df로 명명하였습니다.
df = fdr.DataReader('USD/KRW', '2010') # 특정 년도 이후 데이터만 보려면 년도하나만 적어준다.
df1 = fdr.DataReader('KS11', '2010') # 특정 기간동안의 데이터를 보려면 기간을 적어준다.
USD/KRW가 환율, KS11이 코스피 이고, 2010으로 해두면 2010년 이후부터 현재까지의 데이터를 모두 불러오게 됩니다.
그리고 나서 코스피와 환율을 같은 x축(기간)과 y축은 메인축(환율), 보조축(코스피)으로 나눠서 그려보고자 합니다.
그 이유는 겹쳐서 그렸을때 훨씬 상관성을 보기 수월하기 때문입니다.
해당 코드가 아래 플롯설정하는 부분에 있구요.
전체코드는 다음과 같습니다.
import FinanceDataReader as fdr
import pandas as pd
# import pandas_datareader as pdr
import numpy as np
import matplotlib.pyplot as plt
df = fdr.DataReader('USD/KRW', '2010') # 특정 년도 이후 데이터만 보려면 년도하나만 적어준다.
df1 = fdr.DataReader('KS11', '2010') # 특정 기간동안의 데이터를 보려면 기간을 적어준다.
# 다중 플롯을 지정 : ax1은 y1에 대한 그래프
fig, ax1 = plt.subplots()
ax1.plot(df['Close'], color = 'red', alpha = 1)
ax1.set_ylabel('USD/KRW', color = 'red', rotation = 90)
# ax1.set_ylim(400, 1500) # 축 레인지 설정
# ax2는 y2에 대한 그래프, twinx로 x축을 공유
ax2 = ax1.twinx()
ax2.plot(df1['Close'], color = 'blue', alpha = 1)
ax2.set_ylabel('KOSPI', color = 'red', rotation = -90)
# ax2.set_ylim(1000, 3300) # 축 레인지 설정
plt.title('comapre')
plt.xlabel('time')
plt.ylabel('price')
plt.show()
이렇게 작성하고 실행을 하면, 아래와 같은 결과가 나오게 됩니다.
빨간색이 환율, 파란색이 코스피 입니다.
어떻게 보시나요?
두 그래프가 화실히 반대로 움직이는 경향성이 있어보이는 것 같죠?
그래프화 하여 보니 그런 관계가 더 쉽고 명확해지는 것 같습니다.
끝.
반응형
'주식공부 > 파이썬 주식' 카테고리의 다른 글
stocahstic(스토캐스틱)과 RSI를 활용한 매수,매도 신호 그리기 (8) | 2022.12.15 |
---|---|
볼린저밴드로 매수포인트 찾기 (2) | 2022.12.14 |
파이썬으로 볼린저밴드를 만들어보기(feat. chatGPT) (2) | 2022.12.13 |
Type error : not enough arguments for format string 해결 방법 (0) | 2022.12.12 |
파이썬 판다스 에러 / ValueError: Columns cannot be a set (2) | 2022.12.02 |