본문 바로가기
Quant

퀀트, 파이썬 / 기초코드 저장소(3) / numpy 이용해서 MMD 구해보기

by KTC_CHANCE 2022. 6. 16.

*해당 게시글은 2022.06.16 파이썬 금융코드 작성본을 업로드한 게시글입니다.

 

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# numpy로 MDD(maximum drawdown 구하기)
# mdd란 기간중 최고값에서 최저값의 비율 나타내는 수치
# 투자자들에게는 투자를 계획하면서 내가 어느정도까지 손실을 감내할 수 있는지 파악하고
# 해당 포트폴리오가 목적에 맞는지 파악하는데 사용함.
 
 
import numpy as np
 
 
def mdd(x) :
    arr = np.array(x)
    idx_lower = np.argmin(arr - np.maximum.accumulate(arr))
    idx_upper = np.argmax(arr[:idx_lower])
    return ((arr[idx_lower]-arr[idx_upper])/arr[idx_upper])
 
 
values = np.array([100,120,130,100,65,80,100,120,140,160])
print(mdd(values))
 
 
## mdd(고점대비 저점값)은 50% 를 뜻한다.
## 내포트폴리오가 50%까지 떨어질 가능성이 있다는 의미.
cs

댓글