파이썬의 sum 함수를 사용하면 루프를 사용할 필요는 없다. 위 코드에서 for문은 다음과 같이 한 줄로 계산할 수 있다.
arimean = sum(returns) /3
이번에는 기하평균을 구하는 코드다.
# returns 리스트를 for 루프로 반복한다. 반복하는 동안 각 수익률을 변수 r로 받는다
for r in returns:
geomean = geomean * ( 1+r )
# 기간 수익률로 변환한다
geomean = geomean ** ( 1/n ) - 1
# 기하평균을 출력한다. 문자열의 포맷(format)을 이용해 출력 양식을 만든다. { }는 geomean 변수의 출력 위치인데, 그 안의 :.2%는 소수점 둘째 자리(.2)로 백분율(%)을 표현하라는 의미다
print( 'GeoMean is {:.2%}'.format( geomean ) )
기하평균은 곱의 평균인데, 곱의 평균을 이해하기 위해 재미있는 예를 하나 들어본다.