-
퀀트 프로젝트 | PER+PBR 콤보 전략 구현하기Capital/Quant 2024. 11. 10. 00:09
1. PER+PBR 콤보 전략
모든 한국거래소 상장 기업의 투자지표를 확보했다면 투자 전략에 따라 투자 종목을 선별해보자. 수많은 투자 전략이 있지만, 이번 프로젝트에서는 가치 지표를 활용한 콤보 전략을 파이썬으로 구현해보자. 콤보 전략은 여러 가치 지표의 순위를 매겨 종합한 수위에 따라 투자하는 전략이다. PER, PBR, PSR, PCR 네 개 지표의 순위를 각각 매긴 후 각 순위를 모두 더해 종합순위를 산출한 뒤, 종합순위 상위 5% 종목에 투자하는 것이다. 하지만 이번 프로젝트에서는 문제를 단순화하기 위해 PER과 PBR만을 가지고 투자 종목을 선별할 것이다.
2. 프로젝트
# 라이브러리 추가 import pandas as pd import numpy as np # 엑셀함수 불러오기 및 정리 함수 def read_clean_table(path): table = pd.read_excel(path) table = table.set_index(keys=['Unnamed: 0'], inplace=False, drop=True) big_col = [] small_col = list(table.iloc[0]) temp = list(table.columns) for num, col in enumerate(temp): if 'Unnamed' in col: big_col.append(big_col[num-1]) else: big_col.append(temp[num]) table.columns = [big_col, small_col] table = table.loc[table.index.dropna()] return table # 저장된 투자지표 불러오기 invest_table = read_clean_table('invest_table.xlsx') # 2022년 12월 기준 invest_table = invest_table['2022/12'] # PER, PBR 순위 생성 invest_table['PER_rank'] = invest_table['PER'].rank() invest_table['PBR_rank'] = invest_table['PBR'].rank() # 종합순위 생성 및 정렬 invest_table['Rank_sum'] = invest_table['PER_rank'] + invest_table['PBR_rank'] invest_table['Combo_rank'] = invest_table['Rank_sum'].rank() invest_table = invest_table.sort_values('Combo_rank') # 종합순위 상위 5% 선별 invest_table = invest_table.iloc[0:int(len(invest_table)*0.05)] # 투자목록 저장 invest_table.to_excel('fianl_invest_list.xlsx')
[함께 읽으면 좋은 페이지]
참고문헌
- 박준규. (2019). 퀀트 전략 파이썬으로 세워라. 비제이퍼블릭.반응형'Capital > Quant' 카테고리의 다른 글
퀀트 프로젝트 | 전자공시시스템 DART 오픈API 인증키 신청 (0) 2024.11.16 투자 지표: 계량투자의 종목 선택 기준 (5) 2024.11.11 퀀트 프로젝트 | CompanyGuide 투자지표 PER, PBR 크롤링 (0) 2024.04.12 퀀트 프로젝트 | CompanyGuide 재무비율 ROA, ROE 크롤링 (0) 2024.04.05 퀀트 프로젝트 | CompanyGuide 재무제표 크롤링 (0) 2024.03.29