見出し画像

Twitterで出てくる知見は本当か自分で調べてみよう。4 「マグロの初競り価格で今年の株高は予想できるのか」(Python コードあり)

一連のTwitterの知見は本当か自分で調べるシリーズの4段目です。

今回は「マグロの初競り価格で今年の株高は予想できるのか」に関する記事です。

本当なのでしょうか?早速調べてみましょう。

まず、過去の築地マグロ初競り最高落札価格を調べます。
幸いにも以下のサイトで、価格自体と、kg単価まで知ることができました。

画像1

2019年は278キロの青森県大間産クロマグロが3億3360万円(1キロあたり120万円)の最高額だったそうです。

今年は価格も高かったですし、日経平均も上がりました。しかし、過去ではどうだったのでしょうか?日経平均との相関はあるのでしょうか?

早速確認していきます。今回もGoogle Colaboratoryのpythonを使うことにします。

!apt install chromium-chromedriver
!cp /usr/lib/chromium-browser/chromedriver /usr/bin
!pip install selenium
!apt-get -y install fonts-ipafont-gothic

import pandas as pd
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
driver= webdriver.Chrome('chromedriver',options=options)

driver.get(URL)
html_iframe = driver.page_source.encode("utf-8")
dfs5 = pd.read_html(driver.page_source,flavor='bs4', header=1)
display(dfs5[0])

画像2

次に指数のダウンロードと年毎のパーセントでの騰落を出します。

import datetime
import fix_yahoo_finance as yf
import matplotlib.pyplot as plt

start_D="1999-12-1"
end_D="2019-12-31"
codelist = ["^DJI","^N225"]
data2 = yf.download(codelist, start=start_D, end=end_D)["Adj Close"]
df_Y=data2.resample("Y",how="last")
df_Y["N225pct"]=100*df_Y["^N225"].pct_change().dropna()
df_Y["price_kg"]=0

for i in range(0,len(dfs5[0])):
   df_merge.ix[i,"price_kg"]=dfs5[0].ix[i,"kg単価"]   
df_merge.ix[19,"price_kg"]=1200000
df_merge["kg_pct"]=100*df_merge["price_kg"].pct_change()    
display(df_merge)

画像3

kg単価と日経平均のパーセントでの騰落と、
kg単価の変化率と日経平均のパーセントでの騰落
を調べてみました。

数字で見てみると2011年は一キロ当たり95,000円の値段がついたけれども指数は-17%だったりしたようです。

逆に2014年は前年一キロ当たり70万円から32,000円への急落でしたが、指数自体は7%の上昇だったようです。

なんとなく微妙です。(ー_ー;)。o O

クロスプロットしてみましょう。

import matplotlib
import matplotlib.pyplot as plt
import seaborn as sns
plt.rcParams["font.size"] = 18
matplotlib.rcParams.update({'font.size': 18, 'font.family': 'IPAexGothic'})

sns.jointplot("price_kg",'N225pct',df_merge,kind='reg')
plt.grid(True)

sns.jointplot("kg_pct",'N225pct',df_merge,kind='reg')
plt.grid(True)

画像4

上昇しやすい傾向はあるようですが、外れ値の影響を受けてそうな気もしないではないです。サンプルの数も少ないですし。。

最終判断は皆さんにお任せします。2020年の初競りでどのような価格になるか注目ですね。

--------------------------------------------------------------------------------------

Pythonで資産運用モデルを作成する記事をまとめました。
Pythonを用いて、株価取得、チャート表示、株価分析、株価予測、株価の機械学習、ポートフォリオの構築、ポートフォリオの最適化、スクレイピングなどを行う記事を集めました。読んでみてください。


サポートしていただき大変ありがとうございます。 励みになります。