Skip to content

Correlation between environmentally-friendly companies and oil-related companies

Notifications You must be signed in to change notification settings

seogihyun/seogihyun-EDA_Project_related-stock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 

Repository files navigation

친환경 관련 기업주 & 유류 관련 기업주 & 유가 EDA - 날짜, 현재가, 종가 중심으로

  • 친환경 관련 기업주와 유류 관련 기업주, 유가에 대해 탐색적 데이터 분석을 진행한다.
  • 날짜를 기준으로 현재가, 종가의 상관관계를 분석하여 주식투자 시 의사결정과 종목 분석 등에 활용할 수 있다.

Built With

  • [서기현]: 데이터 가공, 상관관계 및 시각화, PPT 작성, 발표, Readme 작성
  • [이재석]: 데이터 제공, 상관관계 분석, 자료 조사

프로젝트 주제 선정 배경

코로나 19의 전 세계 확산으로 인해 주가들이 한 달 사이에 크게 폭락했고, 이에 따라 몇몇 대기업들과 중견 중소기업들이 크게 휘청거리거나 부도가 났다. 이러한 위기 상황에서 20~30대들은 주식투자를 하나의 기회로 보고 마치 모두 약속이라도 한 듯 투자계좌를 개설하여 삼성전자를 비롯해 국내외 다양한 기업들의 주식을 사기 시작했다. 많은 투자 종목 중 친환경 관련주와 유류 관련 주로 선정한 이유는 코로나 19로 인해 친환경에 많은 관심을 가지게 되었고, 이와 정반대인 종목과 유의미한 관계가 있는지 비교해보고 싶어 유류 관련주로 선정했다. 친환경 기업에 투자를 한다는 가정하에 투자 전 먼저 데이터를 탐색해 봄으로써 투자의사 결정에 유의미한 인사이트를 얻고자 하며, 통상적으로 알려진 상식으로 판단하여 투자해도 괜찮은지 살펴본다.

Getting Started

You will require Python 3 and the following libraries

Prerequisites

  • numpy - Used for fast matrix operations.
  • pandas - Used for performing Data Analysis.
  • matplotlib - Used to create plots.
  • preprocessing - Used for making a comparison easier to see

Dataset

  • 2015년 1월 ~ 2019년 12월 풍국주정, 한온시스템, 에코바이오, 세종공업, 유니슨, 동국S&C, 금호페트롤, 한화솔루션, 포스코케미칼, SK케미칼, 롯데케미칼, S-OIL, Dubai, WTI, Brent 데이터
    • 대신증권 HTS 프로그램 (.xlsx)

EDA Project Progress

    1. 데이터를 읽어온다 (친환경 기업, 유류 관련 기업, 유가)
    1. 데이터 프레임을 만들고, 비교할 데이터만 불러온다
      • 기업 : 날짜, 현재가
      • 유가 : 날짜, 종가
    1. 기업 데이터와 유가 데이터 가공 : merge 사용
      • 데이터 개수 통일
    1. 친환경 기업, 유류 관련 기업, 유가 간의 상관관계 분석 : preprocessing.minmax_scale 사용 => 모든 데이터를 0~1 사이값으로 변경
      • z = (x - min(x)) / (max(x) - min(x))
      • np.corrcoef 사용 => 상관계수 도출
    1. 상관계수가 높은 순으로 전체 데이터 정렬
    1. 양의 상관관계, 음의 상관관계 선그래프로 시각화
    1. 인사이트 도출

Team Questions

  • Q1) 친환경 관련주랑 친환경과 정반대인 유류 관련 기업주는 주가도 서로 정반대일까?
  • Q2) 친환경 관련 기업주와 유가는 음의 상관관계일까?
  • Q3) 그럼 유류 관련 기업주와 유가는 당연히 양의 상관관계?

상관계수 데이터 정렬 (ascending=False)

corr_result.sort_values(by=['상관계수'], axis=0, ascending=False)
corr_result["상관계수"] = round(corr_result["상관계수"],2)
corr_result.rename(columns={"상관계수" : "상관계수(%)"}, inplace=True)
corr_result.sort_values(by=['상관계수(%)'], axis=0, ascending=False)

Screen Shot 2020-11-19 at 5 57 25 PM

양의 상관관계 Top5 시각화

corr_result.sort_values(by=['상관계수(%)'], axis=0, ascending=False).head(5)

Screen Shot 2020-11-19 at 6 01 01 PM

1위 - 금호페트롤 vs Brent 비교 (상관계수 : 0.83)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["금호페트롤_현재가"]), label="geumhopetrol_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["Brent_종가"]), label="brent_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 03 37 PM

2위 - 금호페트롤 vs Dubai 비교 (상관계수 : 0.82)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["금호페트롤_현재가"]), label="geumhopetrol_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["두바이_종가"]), label="dubai_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 04 58 PM

3위 - 금호페트롤 vs WTI 비교 (상관계수 : 0.81)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["금호페트롤_현재가"]), label="geumhopetrol_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["WTI_종가"]), label="wti_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 06 16 PM

4위 - 풍국주정 vs 포스코케미칼 비교 (상관계수 : 0.76)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["풍국주정_현재가"]), label="poonggook_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["포스코케미칼_현재가"]), label="poscochemical_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 07 22 PM

5위 - 포스코케미칼 vs Dubai 비교 (상관계수 : 0.76)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["포스코케미칼_현재가"]), label="poscochemical_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["두바이_종가"]), label="dubai_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 08 38 PM

양의 상관관계 Top5 시각화 결과

    • 대부분 예측했던 대로 유류 관련 기업주와 유가는 높은 양의 상관관계를 보였다.
    • 친환경 기업인 풍국주정과 유류 관련 기업인 포스코케미칼이 높은 양의 상관관계를 가진다는 것은 특이한 점이다.

음의 상관관계 Top5 시각화

corr_result.sort_values(by=['상관계수(%)'], axis=0, ascending=False).tail(5)

Screen Shot 2020-11-19 at 6 14 47 PM

1위 세종공업 vs 포스코케미칼 비교 (상관계수 : -0.78)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["세종공업_현재가"]), label="sejong_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["포스코케미칼_현재가"]), label="poscochemical_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 16 06 PM

2위 에코바이오 vs 포스코케미칼 비교 (상관계수 : -0.72)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["에코바이오_현재가"]), label="echobio_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["포스코케미칼_현재가"]), label="poscochemical_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 17 32 PM

3위 에코바이오 vs Brent 비교 (상관계수 : -0.67)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["에코바이오_현재가"]), label="echobio_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["Brent_종가"]), label="brent_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 18 48 PM

4위 에코바이오 vs Dubai 비교 (상관계수 : -0.65)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["에코바이오_현재가"]), label="echobio_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["두바이_종가"]), label="dubai_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 19 40 PM

5위 세종공업 vs Soil 비교 (상관계수 : -0.61)

plt.figure(figsize=(20,5))

plt.plot(merge_df[::-1]["날짜"],preprocessing.minmax_scale(merge_df[::-1]["세종공업_현재가"]), label="sejong_minmax")

plt.plot(merge_df[::-1]["날짜"], preprocessing.minmax_scale(merge_df[::-1]["에스오일_현재가"]), label="soil_minmax")
plt.legend(loc=0);

Screen Shot 2020-11-19 at 6 20 38 PM

음의 상관관계 Top5 시각화 결과

    • 대부분 예측했던 대로 친환경 관련 기업주와 유류 관련 기업, 유가는 높은 양의 상관관계를 보였다.

질문에 답하기

Screen Shot 2020-11-19 at 6 30 41 PM

Screen Shot 2020-11-19 at 10 14 24 PM

Screen Shot 2020-11-19 at 6 35 51 PM

Screen Shot 2020-11-19 at 6 36 29 PM

한계 및 시사점

Screen Shot 2020-11-19 at 6 37 44 PM

About

Correlation between environmentally-friendly companies and oil-related companies

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published