본문 바로가기

파이썬

바이낸스(Binance) 웹소켓(WebSocket)+파이썬(Python)으로 실시간 데이터 수신하기 이전 포스팅에서는 업비트 웹소켓을 사용해 실시간 차트 데이터를 얻는 방법을 설명했었습니다. 2021.08.03 - [코인/코인 개발] - 업비트(Upbit) 웹소켓(WebSocket)+파이썬(Python)으로 실시간 데이터 수신하기 업비트(Upbit) 웹소켓(WebSocket)+파이썬(Python)으로 실시간 데이터 수신하기 이전 포스팅에서는 업비트 API를 사용해 차트 데이터를 얻는 방법을 설명했었습니다. 2021.07.07 - [코인/코인 개발] - 업비트 API를 이용한 코인 거래량 급등 알리미 프로그램 업비트 API를 이용한 코 blog.coinali.me 이번 포스팅에서는 마찬가지로 파이썬으로 바이낸스 실시간 시세를 확인하는 방법을 알아보겠습니다. 동일한 부분은 설명을 생략하도록 하겠습니다. 먼.. 더보기
업비트(Upbit) 웹소켓(WebSocket)+파이썬(Python)으로 실시간 데이터 수신하기 이전 포스팅에서는 업비트 API를 사용해 차트 데이터를 얻는 방법을 설명했었습니다. 2021.07.07 - [코인/코인 개발] - 업비트 API를 이용한 코인 거래량 급등 알리미 프로그램 업비트 API를 이용한 코인 거래량 급등 알리미 프로그램 거래량 급등 알리미가 있으면 좋겠다는 말을 듣고 빠르게 작성해본 파이썬 프로그램. 일단 API 작성이야 어려운 건 아닌데 거래량 급등 조건 알림 방식 이 2가지가 관건이다. 거래량 급등 조건은 blog.coinali.me 해당 API는 REST API로, 만약 실시간으로 변경되는 시세를 확인하기 위해선 주기적인 호출(Polling)이 필요하게 되고 이는 서버에 과부하를 줄 수 있어 업비트에서는 요청 제한을 걸어두고 있습니다. 2021.07.09 - [코인/코인 개.. 더보기
코인 거래량 급등 텔레그램(Telegram) 알림 봇 파이썬(Python)으로 만들기 (2) 이전 포스팅에서 python-telegram-bot을 사용해 알림을 보내는 기능에 대해 소개했었습니다. 2021.07.08 - [코인/코인 개발] - 코인 거래량 급등 텔레그램(Telegram) 알림 봇 파이썬(Python)으로 만들기 코인 거래량 급등 텔레그램(Telegram) 알림 봇 파이썬(Python)으로 만들기 지난 블로그에서 업비트 코인 거래량 급등 알리미를 파이썬으로 작성했었는데, 2021.07.07 - [암호화폐] - 업비트 API를 이용한 코인 거래량 급등 알리미 프로그램 업비트 API를 이용한 코인 거래량 blog.coinali.me 해당 코드에서 설명이 부족해 사용하기 어렵다는 질문을 받아, 좀 더 쉽게 사용할 수 있도록 개선하고 코드 또한 첨부하였습니다. 먼저, 해당 코드는 두 개의.. 더보기
바이낸스 API와 Python TA-lib를 이용한 스토캐스틱, RSI 등 보조 지표 활용 이전 포스팅에서는 업비트 API와 Python TA-lib를 이용해 스토캐스틱, RSI 등의 보조 지표를 활용하는 방법을 알아보았었습니다. 이번 포스팅에서는 업비트가 아닌 바이낸스 데이터를 이용해 보조 지표를 활용하는 방법을 알아보겠습니다. 바이낸스의 경우 빠른 응답 속도와 웹소켓을 이용한 데이터 스트림의 제공으로 업비트보다 정교한 수준의 데이터 활용이 가능합니다. 먼저, API 이용을 위해서는 API Key를 발급받아야 하는데, 이는 이전 포스팅에서 다루었으니 참고 바랍니다. 먼저 이번 포스팅에서는 REST 형식으로 바이낸스에서 제공하는 Endpoint에 직접 호출하기보다는 바이낸스가 제공하는 SDK인 binance-connector를 이용하도록 하겠습니다. 설치 방법은 다음과 같이 pip를 이용할 수.. 더보기
업비트 API와 Python TA-Lib를 이용한 캔들 패턴 인식(Candle Pattern Recognition) 지난 포스팅에서는 업비트 API를 통해 가져온 캔들 데이터를 바탕으로 TA-Lib를 이용해 스토캐스틱, RSI 등의 보조 지표를 활용하는 방법을 설명했습니다. 이전에 언급했다시피, TA-Lib는 보조 지표 외에도 캔들 패턴 인식에도 사용할 수 있는데 이번 포스팅에서는 이를 다뤄보려고 합니다. 먼저, 캔들 패턴에 대해서 간단히 설명하자면 캔들 차트에 표현되는 각각의 캔들에 의미를 부여, 패턴을 인식하고 이를 통해 시장 움직임을 파악하고자 하는 분석 방법입니다. 예를 들면, 도지(Doji) 패턴이 나타나면 매수/매도세가 중립으로 나타나며 향후 흐름이 바뀔 것이라고 예측하는 것입니다. 아래는 상승 흐름에서의 약세 전환을 나타내는 도지 패턴의 예시입니다. 이러한 캔들 패턴 분석을 프로그램에 이용할 수 있도록 T.. 더보기
업비트 API와 Python TA-lib를 이용한 스토캐스틱, RSI 등 보조 지표 활용 이전 포스팅에서는 업비트 API를 통해 가져온 캔들 데이터를 pandas의 DataFrame으로 변환한 뒤, RSI 값을 생성해 알림 등에 활용하는 코드를 Python으로 작성해보았습니다. 이번에는 RSI 뿐만 아니라 MACD(Moving Average Convergence/Divergence), 스토캐스틱(Stochastic), ADX(Average Directional Movement Index) 등등 다양한 보조 지표를 쉽게 생성할 수 있도록 도와주는 TA-lib를 사용하는 코드를 파이썬으로 작성해보도록 하겠습니다. 먼저 Python TA-Lib를 설치해야 합니다. 참고로 Python TA-Lib는 TA-Lib의 Wrapper이므로 먼저 TA-Lib가 깔려 있어야 합니다 (Python TA-Lib의.. 더보기
업비트 API를 이용한 코인 RSI 알리미 프로그램 이전 포스팅에서 업비트 API Key 발급 및 거래량 급등 알리미를 작성해보았습니다. 지난 포스팅에서 업비트 API를 이용해 데이터를 가져오고 NaverTTS 및 AudioPlayer를 이용해 음성으로 알림을 생성 및 재생하는 부분은 다루었으니, 이번 포스팅에서는 업비트 API를 이용해 가져온 캔들 데이터를 이용해 RSI(Relative Strength Index)를 계산하는 코드를 파이썬으로 작성해보도록 하겠습니다. pandas 라이브러리를 이용해 업비트 API를 이용해 가져온 캔들 데이터를 DataFrame으로 변경해줍니다. import pandas as pd rsi_periods = 14 unit = 240 # 4 hours candles = upbit.candles('KRW-BTC') min_ca.. 더보기
파이썬으로 캔들차트 그리기 지난 블로그에서는 업비트 API를 이용한 거래량 급등 코인 알리미, 텔레그램 알림 봇 등을 다루었는데요. 이번에는 파이썬으로 주어진 캔들 데이터를 이용해 캔들차트를 그리는 법을 다루어 봅니다. 예제로 쓸 데이터는 삼성전자의 2020년 6월 9일부터 1년간의 일봉 데이터인데, 해당 데이터를 먼저 pandas_datareader로 가져옵니다. 데이터 소스는 Naver Finance를 사용했습니다. from pandas_datareader import data as web import datetime start = datetime.datetime(2020, 6, 9) end = datetime.datetime(2021, 6, 9) Stock = namedtuple('Stock', ['ticker', 'name.. 더보기