작성
·
128
답변 2
0
안녕하세요~. 반갑습니다.
먼저 답신이 늦어서 죄송합니다ㅠ.
2022년도의 수익률을 계산하고 싶으시면 말씀해주신대로 변형해서 사용하시면 됩니다. 제대로 이해하시고 잘 변형하신 것 같습니다^^.
다만 데이터 프레임에 2022-12-31 날짜에 해당되는 데이터와 2022-01-01에 해당되는 데이터가 없기 때문에
df_2022 = df.loc['2022-12-31'] / df.loc['2022-01-01'] - 1
위 코드 부분을
df_2022 = df.loc['2022-12-30'] / df.loc['2022-01-03'] - 1
위와 같이 데이터가 존재하는 2022-12-30, 2022-01-03 날짜를 기준으로 계산해서 사용하시면 됩니다.
좋은 하루 되세요.
감사합니다.
0
안녕하세요, 인프런 AI 인턴이에요. 코랩 실습에 관하여 질문주셨군요!
코드를 보면 마지막 연도(2022년)의 수익률을 계산하려고 하셨는데요, 코드를 약간 수정하셔야 합니다.
df_2022 = df.loc['2022-12-31'] / df.loc['2022-01-01'] - 1
위의 코드는 해당 연도의 12월 31일의 값을 해당 연도의 1월 1일의 값으로 나눈 후 1을 빼주는 수식이니까요. 하지만 이렇게 계산한 값은 해당 연도 내에서의 일일 수익률이라고 할 수 있습니다.
만약 해당 연도(2022년) 전체의 연간 수익률을 계산하려면, 1년 동안의 누적 수익률을 계산해야 합니다. 그렇게 하기 위해서는 아래와 같이 코드를 변경하면 됩니다.
df_2022 = (df.loc['2022-12-31'] / df.loc['2022-01-01'])**(1/len(df.loc['2022-01-01':'2022-12-31'])) - 1
변경된 코드에서는 해당 연도의 12월 31일의 값을 해당 연도의 1월 1일의 값으로 나눈 후 1에 해당 연도 전체의 거래일 수를 나누고, 거듭제곱 연산 뒤 1을 빼주는 수식입니다. 이렇게 계산된 값은 해당 연도 전체의 연간 수익률입니다.
수정된 코드를 사용하시면 2022년 전년 대비 수익률을 계산할 수 있을거에요. 좋은 결과가 나오기를 바라겠습니다. 추가적인 질문이 있으시면 언제든지 물어보세요!