파이썬 패키지 cryptocompare, 비트코인 데이터 쉽게 수집하기

목차

    2022. 1. 31. 10:44

    파이썬은 프로그래밍 언어이기 때문에, 여러가지 목적으로 사용할 수 있다. 데이터를 수집하고 분석하는 목적으로도 편리하게 사용할 수 있다. 최근에 금과 같은 자산의 개념으로 비트코인이 많은 각광을 받고 있다.

     

    비트코인 데이터를 수집하기 위해 업비트나 빗썸의 API를 이용할 수도 있지만, 파이썬 패키지를 이용하면 좀 더 쉽게 작업할 수 있다. 오늘은 파이썬 패키지 cryptocompare로 비트코인 데이터를 쉽게 수집하는 방법에 대해서 알아보도록 하겠다.

     

     

    비트코인

     

     

    파이썬에서 데이터를 수집하는 방법은 여러가지가 있다. 비트코인은 데이터 수집을 도와주는 패키지가 있기 때문에 어렵지 않게 할 수 있다. 해당 패키지는 cryptocompare이다.

    아래와 같이 터미널에서 pip명령을 이용하면 어렵지 않게 설치할 수 있다.

     

    pip install crptocompare

     


    cryptocompare 패키지를 이용하기 위해서는, cryptocompare 사이트에서 API키를 발급받아야 한다. 해당 사이트에서 이메일 주소를 입력하고 가입하면, 쉽게 API키를 받을 수 있다.

     

     

    cryptocompare 사이트, https://www.cryptocompare.com/

     

     

    API키를 발급받았다면, 파이썬에서 패키지를 불러오고 API키를 입력한 후에 사용하면 된다.

     

    cryptocompare.cryptocompare._set_api_key_parameter("API키 입력")

     

     

    cryptocompare의 주요 함수는 아래와 같다.

     

    get_coin_list: 코인 리스트 가져오기
    get_price: 현재 가격 가져오기
    get_historical_price: 과거 가격 리스트 가져오기
      ( get_historical_price_day: 일별, get_historical_price_hour: 시간별, get_historical_price_minute: 분별)
    get_avg: 평균 정보 가져오기
    get_exchanges: 거래소 정보가져오기
    get_paris: 거래소의 비트코인 거래정보

     

     

    1. 암호화폐 가격정보 가져오기

    비트코인의 가격정보를 불러와 보았다. 환율은 유로가 디폴트로 되어 있다. 하지만, 달러(USD)나 원(WON)으로도 가격 정보를 가져올 수 있다.

     

    cryptocompare.get_price("BTC",  currency='KRW')
    
    [결과]
    {'BTC': {'KRW': 55689930.31}}

     

     

    2. 거래소 정보 

    아래와 같이 입력하면, 거래소 정보에서 빗썸을 확인할 수 있다.

     

    ex = cryptocompare.get_exchanges()
    ex["Bithumb"]

     

     

    Recommendation 포스팅

     

     

    3. 거래기록

    아래와 같이 입력하여 거래기록 정보를 가져와 보았다. toTs에서 어느 시점까지의 정보를 가져올 것인지 입력하고, limit로 해당 시점으로부터 몇 개의 데이터를 가져올 지 입력한다.

     

    dic = cryptocompare.get_historical_price_day('BTC',
                                                 currency='KRW',
                                                 limit=100,
                                                 toTs=datetime.datetime(2021,3,6))

     

    거래 기록은 DataFrame함수를 이용해서, 바로 pandas 데이터프레임으로 바꿀 수 있다. time칼럼도 int로 저장되어 있는데, timestamp 포맷으로 변경하였다.

     

    df = pd.DataFrame(dic)
    df['time'] = df['time'].apply(datetime.datetime.fromtimestamp)

     


    cryptocompare패키지는 아래 Github페이지에서도 자세한 내용을 확인할 수 있다.
    ( 참조: https://pypi.org/project/cryptocompare/ )

     


    비트코인 최근 300일간 거래기록을 그래프로 그려보았다. 21년 8월부터 가격을 회복하다가 최근에 테이퍼링, 금리인상, 양적긴축 등의 이슈로 가격이 크게 하락한 것을 알 수 있다.
    ( 참조: 테이퍼링 뜻과 미국 테이퍼링 효과에 따른 주가 향방은?! )

     

    비트코인 가격 변동

     

     

    오늘은 이렇게 파이썬으로 비트코인 데이터를 수집하는 방법에 대해서 알아보았다. cryptocompare 패키지를 이용해서 쉽게 데이터를 수집할 수 있었다.