Cryptocurrency Python Trend

Google TrendのデータをPytrendsで取得〜人気仮想通貨のトレンドを考察する〜

Cryptocurrency

はじめに

  • Google TrendからPyrendsを用いて、検索データを取得する
  • statsmodelsを用いて時系列分析を行う
  • 仮想通貨の銘柄トレンドの考察を行う

分析する仮想通貨

  • BTC
  • ETH
  • USDT
  • XRP

2017年〜2020年まで分析する。

Pyrendsとは?

pytrendsは、Google トレンドの非公式APIです。

検索ワードの検索数を入手することができます。

from pytrends.request import TrendReq

pytrend = TrendReq(hl='ja-jp')

# キーワード
keywords = ['BTC','ETH','USDT','XRP']
pytrend.build_payload(kw_list=keywords, timeframe='2017-01-01 2020-11-01')

df=pytrend.interest_over_time()

詳細は、こちらを参照ください。

statsmodelsとは?

Statsmodelsは、統計モデルの推定や推論などの統計計算のためのscipyを補完するPythonのライブラリです。

出力は、「生データ」「トレンド成分」「季節成分」「残差」になります。

import statsmodels.api as sm
res = sm.tsa.seasonal_decompose(df['BTC'])
res.plot()

実装

年代別仮想通貨の検索数の変化把握

  • ・plotで2017〜2020年の検索数の変化をプロットする。
  • ・yearlyで年代別の検索数の増減を棒グラフでプロットする。
from pytrends.request import TrendReq
import matplotlib.pyplot as plt
import numpy as np
import statsmodels.api as sm

def plot(df,keywords,keywords_label):

    m=0
    for n in keywords:
        plt.plot(df[n], label=keywords_label[m])
        m=m+1

    plt.xlabel('Date')
    plt.xticks(rotation=90, size='small')
    plt.legend(loc='upper left')

    # Visualize
    plt.show()

def yearly(df):
    yealy = df.resample('Y').sum().plot.bar(stacked=True)
    plt.xticks(np.arange(4),('2017','2018','2019','2020'))
    plt.xlabel('Year')
    plt.legend()
    plt.show()

pytrend = TrendReq(hl='ja-jp')

# キーワード
keywords = ['BTC','ETH','USDT','XRP']
#keywords_label = ['BTC','ETH','USDT','XRP']
pytrend.build_payload(kw_list=keywords, timeframe='2017-01-01 2020-11-01')

df=pytrend.interest_over_time()

plot(df,keywords,keywords_label)

df_y=df.drop('isPartial',axis=1)
yearly(df_y)

各銘柄のトレンド分析

from pytrends.request import TrendReq
import matplotlib.pyplot as plt
import numpy as np
import statsmodels.api as sm

pytrend.build_payload(kw_list=keywords, timeframe='2017-01-01 2020-11-01')
df=pytrend.interest_over_time()
keywords = ['BTC']
res = sm.tsa.seasonal_decompose(df['BTC'])
res.plot()
plt.show()

結果

年代別仮想通貨の検索数の変化把握結果

人気順

  • 1番人気:BTC
  • 2番人気:ETH
  • 3番人気:XRP
  • 4番人気:USDT

月別のグラフ

2019/09にBTCの検索数が増加している

年代別のグラフ

  • ・2019年にBTCの検索数が増加している
  • ・2018年は、ETH,XRPの検索数が他の年と比べ増加している

各銘柄のトレンド分析結果

BTC

トレンドは、2019-03から2020-04にピークがある。

ETH

トレンドは、2017-07から2018-07にピークがある。

USDT

トレンドは、2017-07から2018-07と2020-01から現在にピークがある。

XRP

トレンドは、2017-07から2018-07にピークがある。

考察

仮想通貨には大きく分けて2つのトレンドがあることが分かります。

1つ目は、2017年後半〜2018年前半です。

この時期は、仮想通貨が暴騰し、コインチェック事件を皮切りに暴落と、脚光を浴びた時期である。そのため、検索数が伸びたと推定される。特にETHやXRPといったアルトコインに注目度が高まっていることが分かる。

2つ目は、2019年後半〜2020年です。

これは、BTCが暴落後、上昇トレンドを形成した2020年6月に最高高値をとった後、9月に下落することで、注目を集めました。長らく、三角保ち合いを上方にブレイクしたことも、注目を集めた要因かと思います。

一方で、USDTは最近検索数が伸びています。ステーブルコインということもあり、価格の高騰は期待しにくいです。しかし、注目を集めているのは、中国トレーダの影響を受けている可能性が高いと推定されます。というのも中国政府は、人民元と仮想通貨の取引を禁止しているためです。そこで、ドルに連動するテザーへの注目度が高まっていると思われます。

結論

どの年代でも人気度が高いのは、BTCでした。

2017年〜2018年は、ETH、XRPのいわゆるアルトコインへの注目度が比較的高かったが、近年BTC,USDTへの注目が集まっている。その裏には、仮想通貨の機能、性能よりは、資産の担保としてコモディティ面が重要視されていると言える。

コメント

タイトルとURLをコピーしました