파이썬 , 자바 , C# 등 사실 다양한 언어로 API를 연동할 수 있습니다.
그런데 유독 엑셀을 사용하여 업비트의 정보를 불러오려고 합니다.
이유를 생각해보니 엑셀이 보기 편하고 정리하기 편해서였습니다.
그래서 엑셀을 사용한 업비트 API 실시간 캔들 값을 자동 경신하도록 만들었습니다.
엑셀에서 불러온 엑셀 값을 마음껏 수정하셔도 되고 텔레그램을 연결하여 특정 조건에 맞는 경우 핸드폰 알람 설정까지 가능합니다.
5분 양봉일 때 알람 되는 프로그램은 하나 올려놨습니다.
그리고 업비트 API에서 캔들을 1종류씩 밖에 불러올 수가 없습니다.
하지만 엑셀에서 최대 5개까지 업비트 API를 통해 캔들을 불러올 수 있도록 만들었습니다.
업비트 자체적으로는 캔들을 여러 개 동시에 볼 수 없지만 엑셀로 정리하면서 여러 코인을 한꺼번에 볼 수 있다는 장점이 생겼습니다.
필요에 따라 해당 데이터를 엑셀로 가공하여 사용하시면 틀림없이 좋은 투자가 될 수 있다고 생각합니다.
코드
무식하게 진행한 파싱 부분까지 코드를 포함해서 공유하겠습니다.
여러 개가 되는 건 직접 만드셔도 되고 제가 올려둔 파일에서는 5개까지 밖에 안됩니다.
그리고 VBA 도구 > 참조 > Microsoft WinHTTP Services, version 5.1을 체크하셔야 합니다.
Sub Candles()
Dim WH As New WinHttp.WinHttpRequest
baseurl = "https://api.upbit.com/v1/candles/minutes/" & Range("b4")
Symbol = '가상화폐 심벌 예) KRW-BTC
Query = "?market=" & Symbol & "&count=3" 'count 개수를 변경하시면 해당 개수만큼 캔들값 나옴
WH.Open "get", baseurl & Query
WH.SetRequestHeader "user-agent", "Windows10"
WH.Send
WH.WaitForResponse
resulttext = Split(Replace(WH.ResponseText, """", ""), "},{") ' 결과값
Set WH = Nothing
For Each RText In resulttext
Parse RText, KSTTime, Opening, Highing, lowing, trade
KSTTime = '거래시간
Opening = '해당 캔들의 시가
Highing = '해당 캔들의 고가
lowing = '해당 캔들의 저가
trade = '해당 캔들의 종가
Next
i = i + 1
Loop
End Sub
Sub Parse(RText, KSTTime, Opening, Highing, lowing, trade)
sp1 = InStr(RText, "candle_date_time_kst:") + 21
sp1len = InStr(sp1, RText, ",") - sp1
KSTTime = Mid(RText, sp1, sp1len)
sp2 = InStr(RText, "opening_price:") + 14
sp2len = InStr(sp2, RText, ",") - sp2
Opening = Mid(RText, sp2, sp2len)
sp3 = InStr(RText, "high_price:") + 11
sp3len = InStr(sp3, RText, ",") - sp3
Highing = Mid(RText, sp3, sp3len)
sp4 = InStr(RText, "low_price:") + 10
sp4len = InStr(sp4, RText, ",") - sp4
lowing = Mid(RText, sp4, sp4len)
sp5 = InStr(RText, "trade_price:") + 12
sp5len = InStr(sp5, RText, ",") - sp5
trade = Mid(RText, sp5, sp5len)
End Sub
엑셀 파일
공유하는 엑셀 파일은 암호가 걸려있습니다.
거의 모든 코드가 다 공개되어있지만 제가 한 코드가 궁금하시면 댓글로 남겨주시면 비밀번호 공유드립니다.
사용법은 간단합니다.
엑셀 안에 버튼이 있으며 , 초록색 부분만 값을 입력하시면 됩니다.
입력 가능한 부분은 이렇게 리스트가 존재합니다.
'코인 > 업비트API' 카테고리의 다른 글
VBA에서 regexmatch(정규식) 를 이용한 코인 거래소 API 파싱하기 (0) | 2021.06.17 |
---|---|
코인 거래소 (업비트 코인원 빗썸 등) API 엑셀 파싱 사용하기 - VBA json 파싱 (1) | 2021.05.16 |
엑셀로 업비트 코인 거래하기 업비트 API 적용 - VBA (18) | 2021.05.04 |
VBA 일정 시간 간격으로 업비트 코인가격 갱신하기 (0) | 2021.05.02 |
업비트 연속 양봉 또는 음봉 일 때 핸드폰 알람 프로그램 - 오토핫키+텔레그램 (1) | 2021.05.01 |
댓글