Python과 CryptoCompare API로 30일간의 비트코인 달러 차트 분석하기
안녕하세요, 암호화폐 데이터 분석에 관심 있는 여러분! 오늘은 Python과 CryptoCompare API를 이용해 30일간의 비트코인 달러 차트를 만드는 방법을 알아볼 거예요.
비트코인 가격은 암호화폐 시장에서 가장 중요한 지표 중 하나로, 투자자들에게 큰 영향을 미칩니다. 이 포스트에서는 데이터를 가져오는 방법과 시각화하는 방법을 두 부분으로 나누어 소개할게요.
비트코인 달러 차트란?
비트코인 달러 차트는 특정 기간 동안 비트코인의 가격 변화를 미국 달러(USD)로 시각적으로 나타낸 것입니다. 이 차트를 통해 우리는 다음과 같은 정보를 얻을 수 있습니다:
- 가격 추세: 비트코인의 가격이 상승하고 있는지 하락하고 있는지를 쉽게 파악할 수 있습니다.
- 변동성: 가격의 급격한 변화가 있었던 시점을 확인할 수 있습니다.
- 투자 결정: 과거의 가격 데이터를 기반으로 미래의 투자 결정을 내리는 데 도움을 줄 수 있습니다.
이제 Python을 사용해 30일간의 비트코인 달러 가격 데이터를 가져오는 방법부터 살펴보겠습니다.
1. Python으로 30일간의 비트코인 달러 가격 데이터 가져오기
먼저, 필요한 라이브러리를 설치하고 임포트해볼게요.
import requests
import pandas as pd
from datetime import datetime, timedelta
# CryptoCompare API 키 필요
API_KEY = '여기에_API_키_입력'
# 30일 기간 설정
end_date = int(datetime.now().timestamp())
start_date = int((datetime.now() - timedelta(days=30)).timestamp())
url = f"https://min-api.cryptocompare.com/data/v2/histoday"
params = {
'fsym': 'BTC',
'tsym': 'USD',
'limit': 30,
'api_key': API_KEY
}
try:
response = requests.get(url, params=params)
data = response.json()['Data']['Data']
# 데이터 프레임 생성
df = pd.DataFrame(data)
df['date'] = pd.to_datetime(df['time'], unit='s')
print(df.head()) # 데이터 확인
except Exception as e:
print(f"error: {e}")
코드 해설
import requests
,import pandas as pd
: 필요한 라이브러리를 임포트합니다.API_KEY
: CryptoCompare API 키를 입력합니다. 무료 가입 후 발급받아야 합니다.(애로를 격는 분들을 위해서 별도로 포스트를 작성하겠습니다.)end_date
와start_date
: 현재 날짜를 기준으로 30일 전부터 현재까지의 타임스탬프를 설정합니다.url
: CryptoCompare API의 엔드포인트 URL을 설정합니다.params
: 요청할 파라미터를 설정합니다.response = requests.get(url, params=params)
: API에 GET 요청을 보냅니다.data = response.json()['Data']['Data']
: JSON 응답에서 필요한 데이터를 추출합니다.df = pd.DataFrame(data)
: 데이터를 데이터프레임으로 변환합니다.df['date']
: 타임스탬프를 날짜 형식으로 변환합니다.
2. 30일간의 비트코인 달러 차트 그리기
이제 가져온 데이터를 사용하여 비트코인 달러 차트를 시각화해볼까요?
import matplotlib.pyplot as plt
# 시각화
plt.figure(figsize=(15, 7))
plt.plot(df['date'], df['close'], color='blue', linewidth=2, marker='o')
plt.title('Bitcoin Price Over Last 30 Days (USD)', fontsize=16)
plt.xlabel('Date', fontsize=12)
plt.ylabel('Price (USD)', fontsize=12)
# x축 날짜 형식 지정
plt.gcf().autofmt_xdate()
plt.grid(True, linestyle='--', alpha=0.7)
plt.tight_layout()
# 각 포인트에 가격 표시
for x, y in zip(df['date'], df['close']):
plt.text(x, y, f'${y:,.0f}', fontsize=9,
verticalalignment='bottom',
horizontalalignment='center')
plt.savefig('bitcoin_price_30days.png', dpi=300)
plt.show()
코드 해설
import matplotlib.pyplot as plt
: 데이터 시각화를 위해 matplotlib 라이브러리를 임포트합니다.plt.figure(figsize=(15, 7))
: 그래프의 크기를 설정합니다.plt.plot(...)
: 비트코인 가격을 선 그래프로 표현합니다.plt.title(...)
,plt.xlabel(...)
,plt.ylabel(...)
: 그래프 제목과 축 레이블을 설정합니다.plt.gcf().autofmt_xdate()
: x축 날짜 형식을 자동으로 조정합니다.plt.grid(...)
: 그래프에 그리드를 추가하여 가독성을 높입니다.- 각 데이터 포인트에 해당 날짜의 가격을 표시하여 정보를 더 명확하게 전달합니다.
마무리
여러분, 이렇게 Python 코딩과 CryptoCompare API를 통해 30일간의 데이터를 가저와서 비트코인 달러 차트로 시각화하는 방법을 알아보았습니다. 이러한 데이터 분석 스킬은 암호화폐 투자 결정에 큰 도움이 될 수 있어요.
앞으로도 이런 흥미로운 주제로 자주 찾아뵐게요! 여러분의 생각은 어떠신가요? 혹시 이 코드를 실행해보셨나요? 30일간의 데이터를 분석해보니 어떤 인사이트를 얻으셨나요? 파이썬이 아닌 R 코딩을 통해서도 이런 시각화가 가능합니다. 또 다른 비트코인 달러 시세의 춤을 R로 추적하기: 초보자도 할 수 있는 가격 추세 분석 포스트에서 확인해 보세요!