こんにちは、ミナピピン(@python_mllover)です。
ビットコインの年度別の曜日ごとの平均価格変化率をPythonで計算してみました。
<ソースコード>
import numpy as np import pandas as pd import time import requests import json from datetime import datetime def get_btcprice(ticker,max_): """ [coingeckoのAPIからビットコインの価格データを取得する] 引数 ticker{str}: ティッカー(例:bitcoin、ethereum、ripple) max_{str}: 期間(例:max、14days) Return r2{json}:価格、出来高、市場全体の時価総額 """ url = 'https://api.coingecko.com/api/v3/coins/' + ticker + '/market_chart?vs_currency=jpy&days=' + max_ r = requests.get(url) r2 = json.loads(r.text) return r2 def reshape_pricedata(r2): """ [jsonから価格データだけをPandasに変換して抽出する] 引数 r2{json}: get_btcprice()で取得したデータ Return data{dataframe}: データフレーム """ data = pd.DataFrame(r2['prices']) data.columns = ['date','price'] date = [] for i in data['date']: tsdate = int(i / 1000) loc = datetime.utcfromtimestamp(tsdate) date.append(loc) data.index = date del data['date'] return data #ビットコインの全期間の価格データを取得する r2 = get_btcprice('bitcoin', 'max') btc = reshape_pricedata(r2) btc['date'] = btc.index btc['dotw'] = btc['date'].dt.dayofweek btc['change'] = btc['price'].pct_change() btc['change2'] = btc['change'].shift(-1) print(btc[btc['dotw'] == 0]['change2'].mean()) print(btc[btc['dotw'] == 1]['change2'].mean()) print(btc[btc['dotw'] == 2]['change2'].mean()) print(btc[btc['dotw'] == 3]['change2'].mean()) print(btc[btc['dotw'] == 4]['change2'].mean()) print(btc[btc['dotw'] == 5]['change2'].mean()) print(btc[btc['dotw'] == 6]['change2'].mean())
月 | 火 | 水 | 木 | 金 | 土 | 日 | |
2014 | 0.534856446 | -0.056044655 | -1.830412835 | 0.114370384 | 0.109177677 | 0.04879259 | -0.015038037 |
2015 | 0.052735215 | -1.278955794 | 1.19087685 | 0.779517693 | -0.238504043 | -0.218342661 | 0.835900796 |
2016 | -0.166065904 | 0.36267087 | 0.392801017 | 0.241070549 | 0.63868635 | 0.108675318 | 0.15278819 |
2017 | 1.46591417 | 0.395141356 | 1.611077589 | -0.528081257 | 0.650567517 | 0.485202518 | 1.757963238 |
2018 | -0.597665264 | 0.029202366 | -1.144921485 | 0.243541078 | 0.085103525 | -0.349223348 | -0.347694546 |
2019 | 0.752792189 | -0.227251553 | 0.477775591 | -0.828687583 | 1.141019676 | 0.46516554 | -0.054422202 |
2020 | 1.346895417 | 0.496289522 | 0.717759944 | -0.198471184 | 0.044675568 | -0.066019096 | -0.757609093 |
グラフを見るに土曜日は基本的に値動きが小さい傾向にあるようで、2018年からは土日は価格が下落する傾向にあるみたいです。万年的には金曜日がマシっぽい?
コメント
[…] 関連記事:ビットコインの曜日別の価格変化率を調べてみた […]