inflearn logo
강의

Course

Instructor

Building a Python Trading Room for Quantitative Investing - Part 2

Lecture0. About Dash & Code Writing Format

sell in may heatmap

376

trulife72

6 asked

0

sell in may... 가 맞는지 알아 보기 위해서 heatmap 그릴 때, 모든 ETF의 연도별 월별 수익률 평균을 구해 보는 것은 의미가 있을까요? 이렇게 구해보면 sell in may... 라는 말은 맞이 않는 것 같습니다. 이렇게 하는 것도 의미가 있을까요?

import pandas as pd

import numpy as np

import plotly.graph_objects as go

df = pd.read_excel('df_etf.xlsx', index_col = 0)

df_copy = df.copy()

# KODEX ETF data 추출

condition_kodex = [df_copy.columns[i] for i in range(df_copy.shape[1]) if 'KODEX' in df_copy.columns[i]] # list comprehension

df_copy_kodex = df_copy.loc[:, condition_kodex]

df_copy_kodex['YEAR'] = df_copy_kodex.index.year

df_copy_kodex['MONTH'] = df_copy_kodex.index.month

# 년도별 월별 모든 ETF 수익률 평균

YEAR = 2012 # ETF data 기간 : 2012 ~ 2022

empty_df = pd.DataFrame()

while YEAR < 2023 :

YEAR = YEAR

df_copy_kodex_yr = df_copy_kodex[df_copy_kodex['YEAR'] == YEAR]

df_copy_gr = df_copy_kodex_yr.groupby('MONTH')

df_sell_in_may = df_copy_gr.mean()

df_month_return = np.round((df_sell_in_may.mean(axis = 1).pct_change(periods = 1))*100, 2)

empty_df[YEAR] = df_month_return

YEAR = (YEAR + 1)

trace = go.Heatmap(x = empty_df.columns,

y = empty_df.index,

z = empty_df)

fig = go.Figure(data = trace)

fig.show()

 

python 차트분석 anaconda plotly 퀀트

Answer 1

0

quanttrader

안녕하세요 trulife72님

우선 강의를 열심히 들어주셔서 정말 감사합니다

Sell in May라는 이벤트를 확인해보려면 명확한 기준이 더 필요하다고 생각합니다. 날짜를 월초에서 월말로 할지 아니면 5월의 전반적인 평균으로 설정해서 전월 평균치 대비 증가한 모습으로 보여줄지, 혹은 대통령 선거가 있는 연도라든지 등등... Sell in May전략을 확인하려면 더 세세한 조건부들이 필요합니다.

 

물론 그러한 조건들을 반영해서 HeatMap으로 결과를 표현해 줄 수 있구요.

 

HeatMap을 이용한 실습과제로 Sell in May를 선택한 이유는 전반적인 시계열의 변화를 한 눈에 볼 수 있다는 것을 보여주기 위함입니다.

 

그리고 가장 중요한 것은 Sell in May에서 사용할 데이터도 굉장히 중요합니다. 어떤 S&P, 나스닥, 다우, 코스피, 코스닥 등등 어떤 데이터로 이용해 Sell in May라는 주장을 펼칠지도 굉장히 중요하다고 할 수 있습니다.

 

Practice에서 보여주는 것은 하나의 방법론일뿐, 해당 방법론을 이용해서 trulife72님 만의 주장을 표현하는 차원에서 강의를 수강해주셨으면 좋겠습니다.

 

열심히 들어주셔서 정말 감사합니다.

오늘도 즐거운 하루 보내시기 바랍니다!

0

trulife72

빠른 답변 감사 드립니다.

6-6

0

5

0

작업형 1 유형 부분

0

10

1

수강평 이벤트

0

17

2

작업형 1 (삭제예정, 구 버전)

0

30

2

강의노트는 어디있나요?

0

17

1

노션 학습 자료 권한 요청

0

17

1

수강기간 연장 문의드립니다.

0

21

1

2유형 레이블 인코딩 VS 원핫 인코딩

0

24

3

part2강의 문의사항입니다.

0

19

2

수강기간 연장 문의드립니다.

0

26

1

인덱스 슬라이싱

0

27

2

코드를 첨부해야하는 이유가 있나요?

0

20

2

소리가 겹쳐서 들려요

0

20

2

데스크톱과 노트북 연결

0

26

1

div3 graph > df_trace.pct_change(periods = -1).iloc[0]*100 에서 에러가 납니다.

0

136

1

df_etf.xlsx 업데이트 어떻게 하나요?

0

148

1

사이트 주소가 나오질 않습니다.

0

246

1

수업자료 - 파이썬 파일 내용 누락됨 (Lecture7. dash_core_components_ Slider & RangeSlider)

1

401

1

파트3관련

0

284

1

안녕하세요..! SPyder에서 dash를 처음 실행 하는데

0

347

1

pt3은 언제쯤 나올까요?

0

387

1

df_etf.Xlsx 파일 최신 날짜로 업데이트

0

593

1

spyder에서 실행시 dash.html이 없다는 에러가 나옵니다.

1

667

1

plotly heatmap annotation표기

1

494

1