본문 바로가기
  • 데이터야 놀자
데이터 분석 환경

Talib로 OBV, MFI, ADL 거래량관련 지표 그래프 그리기

by 데이터랑 2023. 5. 8.
728x90

주식 기술적 보조지표 중 거래량과 관련된 OBV, MFI, ADL에 대해서 알아보고 이것을 Talib로 계산해서 그래프로 그려보고자 합니다.

 

OBV , ADL, MFI 해석 및 비교

 

OBV (On Balance Volume) ADL (Accumulation/Distribution Line) Money Flow Index (MFI)
현재 종가 >  이전 종가 :
       OBV = 이전 OBV + 현재 볼륨

현재 종가 < 이전 종가:
      OBV = 이전 OBV - 현재 볼륨

현재 종가 = 이전 종가:
      현재 OBV = 이전 OBV
ADI = 이전  ADI + 현재 Money Flow Multiplier × 현재 거래량

Money Flow Multiplier = ((현재 종가 - 최저가) - (최고가 - 현재 종가)) ÷ (최고가 - 최저가) × 거래량

첫 번째 거래일의 ADI 값은 일반적으로 0으로 시작
중심가격(Typical Price)
= (고가 + 저가 + 종가) / 3

Money Flow (MF)
= 중심가격 x 거래량

Positive Money Flow (PMF)
= 양수의 MF의 합

Negative Money Flow (NMF)
= 음수의 MF의 합

Money Ratio (MR) = PMF / NMF
Money Flow Index (MFI)
= 100 - (100 / (1 + MR))
OBV 값이 양수이면 적극적인 매수세가 형성되고 있으며, 음수이면 적극적인 매도세가 형성되고 있다고 해석 값이 양수인 경우, 해당 주가는 매수세가 매도세보다 강하다는 것을 나타냅니다. 반대로, 음수인 경우에는 해당 주가는 매도세가 매수세보다 강하다고 해석 80 이상이면 과매수구간으로 매도준비, 20 이하이면 과매도구간으로 매수 준비로 해석

 

 

OBV&#44; ADL&#44; MFI
OBV, ADL, MFI

 

Talib 적용예제

 

#####    OBV 계산 #####
obv = talib.OBV(df['price_close'], df['volume_tr'])

#####    ADL 계산     #####    #####
adl = talib.AD(df['price_high'], df['price_low'], df['price_close'], df['volume_tr'])

#####     MFI 계산    #####
mfi = talib.MFI(df['price_high'], df['price_low'], df['price_close'], df['volume_tr'], timeperiod=period)

https://datawith.tistory.com/104

 

Talib로 파라볼릭 PSAR, RSI ,DMI 그래프 그리기

지금까지 공부했던 지표를 Talib를 이용하여 하나의 Figure에 그리는 테스트해봤습니다. ^^ ADX 지표와 DMI 지표 차이점 구분 ADX DMI 목적 추세의 강도 추세 방향과 강도 범위 0 ~ 100 0 ~ 100 해석 25 이상 :

datawith.tistory.com


 

728x90
728x90

댓글