Task :
•
리스크 구하기
# 평균 성장률
yearly_price = df.groupby('계약연도')['평단가'].mean().sort_index()
start_price = yearly_price.iloc[0] # 시작 가격
end_price = yearly_price.iloc[-1] # 끝 가격
years = yearly_price.index[-1] - yearly_price.index[0]
cagr = (end_price / start_price) ** (1/years) - 1
# 지가 변동률
yearly_price = df.groupby('계약연도')['평단가'].mean().sort_index()
pct_changes = yearly_price.pct_change().dropna()
land_idx = pct_changes.mean()
JavaScript
복사
# CAGR 정규화
cagr_min = df['CAGR'].min()
cagr_max = f['CAGR'].max()
result_df['CAGR_Score'] = (result_df['CAGR'] - cagr_min) / (cagr_max - cagr_min)
# 지가변동률 정규화
land_min = df['지가변동률'].min()
land_max = df['지가변동률'].max()
result_df['Land_Score'] = (result_df['지가변동률'] - land_min) / (land_max - land_min)
# 2. 최종 점수 계산 (단순 평균)
result_df['Final_Score'] = (result_df['CAGR_Score'] + result_df['Land_Score']) / 2
JavaScript
복사
MDD 수치
(현재 가격 - 과거 최고 금액) / 과거 최고 금액
상위 20%와 하위 20%를 각각 측정 후 평균
실행 및 진행 사항 정리
결과



