주식공부/파이썬 주식

파이썬으로 코스피와 환율관계를 그려보기(feat.human)

일찍자요 2022. 12. 13. 23:01
반응형

이번에는 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()

 

 

이렇게 작성하고 실행을 하면, 아래와 같은 결과가 나오게 됩니다.

빨간색이 환율, 파란색이 코스피 입니다.

 

어떻게 보시나요?

두 그래프가 화실히 반대로 움직이는 경향성이 있어보이는 것 같죠?

 

그래프화 하여 보니 그런 관계가 더 쉽고 명확해지는 것 같습니다.

 

 

 

 

 

끝.

반응형