자동매매/업비트(22)
-
[파이썬] 업비트 지표 구하기 - MACD(이동평균수렴·확산지수)
MACD란, Moving Average Convergence & Divergence의 약자로, 한국어로 번역하면 이동평균수렴·확산지수라고 한다. 기본적으로 장단기 이동평균선간의 차이를 이용하여 매매신호를 포착하려는 기법으로, 장기 이동평균선과 단기 이동평균선이 멀어지게 되면(Divergence) 언젠가는 다시 가까워져서(Convergence) 어느 시점에 서로 교차하게 되는 성질을 이용한 것이다. MACD는 기본적으로 단기 이동평균선에는 12일 지수이동평균을 사용하고, 장기 이동평균선에는 26일 지수이동평균선을 이용하므로, 앞에서 스터디한 이동평균선을 구하는 코드를 이용해서 쉽게 만들어낼 수 있는 지표 중 하나이며, MACD의 기본 공식은 아래와 같다. (이동평균 관련 코드는 블로그 하단 링크 참고) 1..
2023.02.23 -
[파이썬] 업비트 지표 구하기 - 가중이동평균(WMA)
가중이동편균(WMA) 역시 지수이동평균(EMA)과 같이 최근 데이터에 더 높은 가중치를 부여하는 이동평균이지만, 차이점은 가중치가 등차수열로 반영된다는 점이다. 아래의 코드는 일봉데이터 100개(100일)를 받아와서 30일 가중이동평균을 구하는 코드로, 지수이동평균을 구할 때와 비슷하게 가중이동평균을 계산하는 부분인 'wma_30 = df.ewm(alpha=1/30, min_periods=30).mean().iloc[-1]'에서 'alpha=1/30' 부분의 숫자 1/30을 1/60으로 바꾸고, 'min_periods=30' 부분의 숫자 30을 60으로 바꾸면 60일 가중이동평균을 구할 수 있으며, 120일 지수이동평균을 구하고 싶다면 'df = pyupbit.get_ohlcv(ticker, interv..
2023.01.15 -
[파이썬] 업비트 지표 구하기 - 지수이동평균(EMA)
지수이동편균(EMA)은 각 거래일의 종가에 동일한 가중치를 사용하는 단순 이동평균과는 달리, 최근 데이터에 더 높은 가중치(지수 가중치)를 부여하는 이동평균으로, 단순이동평균 보다 최근의 가격변동(추세)을 좀 더 많이 반영하는 지표이다. 아래의 코드는 일봉데이터 100개(100일)를 받아와서 30일 지수이동평균을 구하는 코드로, 단순이동평균을 구할 때와 비슷하게 지수이동평균을 계산하는 부분인 'ema_30 = df.ewm(span=30, adjust=False).mean().iloc[-1]'에서 'span=30' 부분의 숫자 30을 60으로 바꾸면 60일 지수이동평균을 구할 수 있으며, 120일 지수이동평균을 구하고 싶다면 'df = pyupbit.get_ohlcv(ticker, interval="day..
2023.01.14 -
[파이썬] 업비트 지표 구하기 - 단순이동평균(SMA)
이동평균선은, 주식시장이나 파생상품시장에서 기술적 분석을 할 때 쓰이는 기본 도구 중 하나이며, 풀네임보다는 줄여서 이평선이라고 많이 부른다. 거래액, 매매대금, 주가 등 다양한 분야에서 접목할 수 있는데, 과거의 평균적 수치에서 현상을 파악(주로 추세)하여 현재의 매매와 미래의 예측에 접목할 수 돕는 것이 목적으로 단순이평(SMA)이 자주 쓰이지만 지수평균(EMA), 가중평균(WMA) 등을 사용하는 경우도 있다. 아래의 코드는 일봉데이터 100개(100일)를 받아와서 30일 단순이동평균을 구하는 코드이다. 'sma_30 = df.rolling(30).mean().iloc[-1]'에서 'rolling(30)' 부분의 숫자 30을 60으로 바꾸면 60일 단순이동평균을 구할 수 있다. 만약에 120일 이동평..
2023.01.13 -
[파이썬] 업비트 코인 매수정보 확인
내가 매수한 코인의 평균 단가는 얼마인지, 몇 개를 가지고 있는지, 평가금액은 얼마인지를 아는 것은 매우 중요하다. 코인을 매수 한 다음, 보유 중인 코인의 현재 수익률을 계산해서 손실이 심하면 손절을 할지, 물타기를 할지 수익이 나고 있으면 수익을 실현할지, 아니면 좀 더 보유할지 등을 판단할 수 있게 하는 중요한 값들이다. 아래의 코드는 매수한 코인의 평균 단가, 보유수량, 현재가를 확인하고 확인한 값을 바탕으로 보유 중인 BTC의 평가금액을 확인하는 코드이다. import pyupbit def get_current_price(ticker): return pyupbit.get_orderbook(ticker=ticker)["orderbook_units"][0]["ask_price"] # Upbit 로그..
2023.01.12 -
[파이썬] 업비트 코인 가격 데이터 받아오기
파이업비트를 이용해서 업비트의 코인 가격 데이터를 받아오기 위해서 프로그램 시작 부분에 아래의 코드를 작성하여 가격데이터를 받아올 수 있도록 정의를 해준다. def get_ohlcv10(ticker): df = pyupbit.get_ohlcv(ticker, interval="day", count=10) return df interval 항목은 쉽게 말해서 차트의 종류(범위, 기간 = 각 데이터의 간격)를 정하는 것으로 "day" 부분을 아래의 옵션들로 교체하면 1분봉 부터 월봉까지 다양한 차트(범위, 기간 = 각 데이터의 간격)를 선택할 수 있다. day : 일봉 minute1 : 1분봉 minute3 : 3분봉 minute5 : 5분봉 minute10 : 10분봉 minute15 : 15분봉 minut..
2023.01.06