상세 컨텐츠

본문 제목

파이썬과 CCXT로 비트코인 OHLCV 데이터 수집 및 CSV 파일로 저장하기

파이썬

by 코딩트리01 2024. 1. 29. 09:49

본문

암호화폐 시장은 빠르게 변화하고 있으며, 이에 따라 암호화폐 데이터를 분석하려는 수요도 증가하고 있다. 오늘은 Python과 CCXT 라이브러리를 활용하여 비트코인의 OHLCV(Open, High, Low, Close, Volume) 데이터를 수집하고, 이를 1년 동안의 데이터로 CSV 파일로 저장하는 방법에 대해 알아본다.

 

1. 필요한 라이브러리 설치하기

먼저, ccxt 라이브러리를 설치한다. 이 라이브러리는 다양한 암호화폐 거래소의 API를 Python에서 쉽게 사용할 수 있게 해준다.

(Window : 아나콘다 프롬프트 또는 명령 프롬프트 Mac : 터미널)

2. 데이터 수집을 위한 코드 작성

다음은 비트코인의 OHLCV 데이터를 수집하는 파이썬 코드이다. Binance 거래소에서 BTC/USDT 거래 쌍의 일별 데이터를 지난 1년 동안 수집한다.

import ccxt
import pandas as pd
import datetime

# 교환소 설정
exchange = ccxt.binance()

# 데이터 설정
symbol = 'BTC/USDT'  # 비트코인 대 USDT
timeframe = '1d'     # 일별 데이터
since = exchange.parse8601('1 year ago UTC')  # 1년 전부터 현재까지

# 데이터 수집
ohlcv = exchange.fetch_ohlcv(symbol, timeframe, since)

# Pandas 데이터프레임으로 변환
df = pd.DataFrame(ohlcv, columns=['Timestamp', 'Open', 'High', 'Low', 'Close', 'Volume'])
df['Date'] = pd.to_datetime(df['Timestamp'], unit='ms')
df.set_index('Date', inplace=True)
del df['Timestamp']

# CSV 파일로 저장
df.to_csv("bitcoin_ohlcv.csv")

 

이 코드는 타임스탬프, 시가, 고가, 저가, 종가, 거래량을 포함하는 데이터프레임을 생성하고 이를 CSV 파일로 저장한다.

 

주의사항

  • 이 코드는 Binance 교환소의 API를 사용한다. 다른 거래소를 사용하는 경우 API 사용 방법이 다를 수 있다.
  • ccxt 라이브러리는 교환소의 API 제한에 따라 요청을 제한할 수 있으므로, 대량의 데이터를 빠른 시간 내에 요청하는 경우 주의가 필요하다.
  • 실제 투자나 거래 결정에 이 데이터를 사용하기 전에, 데이터의 정확성과 최신성을 확인하는 것이 중요하다.

이상으로 Python과 CCXT 라이브러리를 활용한 비트코인 데이터 수집 및 CSV 파일 저장 방법에 대해 알아보았다. 이 방법을 활용하여 암호화폐 시장의 다양한 데이터를 분석하고, 투자 전략을 세우는 데 활용해 보자.

관련글 더보기