見出し画像

Twitterで出てくる知見は本当か自分で調べてみよう。2 「新規保険失業申請件数の反転」(Python コードあり)

ーーーーーーーーーーー2021/07/29 追記ーーーーーーーーーーー

今後こちらに移行します。

ーーーーーーーーーーー2021/07/29 追記ーーーーーーーーーーー


前回の記事「Twitterで出てくる知見は本当か自分で調べてみよう。1 (Python コードあり)」に引き続きの記事になります。

今回は「新規保険失業申請件数の反転」に関する記事です。

画像1

アメリカ株は史上最高値を更新中で皆さん油断してませんか?
「鉱山のカナリア」的に危険を事前に教えていただけることもあります。

なぜ、「新規保険失業申請件数の反転」が大事なのでしょうか?
それは株価指数や、景気循環と関係があるのでしょうか?

自分で調べてみましょう!
前回同様、命の次に大事なお金が減ることを考えたら、

必要ないはやらなくていいけど、
めんどくさいはやる!

の精神です。

今回もGoogle Colaboratoryのpythonを使うことにします。


まずは失業者のデータですが、これはFederal Reseveのデータを利用します。

今まではYahooの株価データばかりでしたが、Fredのデータを利用すると失業率や、米国債のデータなどもPythonから利用することができます。

今回利用するのは
IC4WSA : 4-Week Moving Average of Initial Claims
ICSA : Initial Claims 新規失業保険申請件数 です。

ブレがある数字なので、4週の平均を使ってみます。
Pythonで関数をちょっと利用してみます。

また、グラフを左右に二つ並べるタイプの表示をしています。

!pip install fix_yahoo_finance

import datetime
import pandas_datareader.data as web
import matplotlib.pyplot as plt
import matplotlib.dates as mdates

start_D="1990-1-7"
end_D="2019-12-31"

data2 = web.DataReader([
   "IC4WSA",
   "ICSA",
], "fred", start_D, end_D)

def SidePlot(df_all):
       dateformat=mdates.DateFormatter('%y/%m/%d')
       plt.rcParams["font.size"] = 18
       fig, axs = plt.subplots(1,2, figsize=(15, 8),sharey=False)
       axs[0].plot(df_all.index,df_all,linewidth = 3.0)
       axs[0].grid(True) 
       axs[0].xaxis.set_major_formatter(dateformat)
       for code in df_all.columns :
           axs[1].plot(df_all[code][zone_start:].index,df_all[code][zone_start:],linewidth = 3.0,label=code)
           
       axs[1].legend(loc='center left', bbox_to_anchor=(1, 0.5), fontsize=18)   
       axs[1].grid(True) 
       axs[1].xaxis.set_major_formatter(dateformat)
       fig.autofmt_xdate() #x軸のオートフォーマット    

df_tmp=data2.copy()
zone_start="2017-1-1"
df_tmp.columns=["4week Ave.  Initial Claims","Initial Claims"]
plotlist=["4week Ave.  Initial Claims"]

SidePlot(df_tmp[plotlist])

画像2

左側が全期間で、右側のものが直近のものになります。

画像3

もともとのグラフは文字がつぶれていて見にくいですが2008年以降でしょうか。600,000 (600K)からの下落で200,000 (200K)での反転でしょうか。

なにか直近再度上昇しそうな、、そんな気配を感じます。反転すると何か問題なのでしょうか。株式指数の値動きを比較をしてみましょう。

S&P500のデータを読み込んで新規失業保険申請件数との比較を可視化します。上下にグラフをプロットし、X軸を共有化します。

import fix_yahoo_finance as yf

codelist1 = [
"^GSPC",
]

df3 = yf.download(codelist1, start=start_D, end=end_D)

plt.rcParams["font.size"] = 18
yyyymm=mdates.DateFormatter('%y/%m')
fig, (ax1 ,ax2 )= plt.subplots(2,1,figsize=(10,9), 
                                      gridspec_kw = {'height_ratios':[1, 1]},sharex=True)
ax1.plot(data2.index,data2["IC4WSA"],label="IC4weekMA")
ax1.legend(loc='center left', bbox_to_anchor=(1, 0.5), fontsize=18)  
ax1.grid(True)
ax2.plot(df3.index,df3["Adj Close"],label="SPX")
ax2.set_yscale('log')
ax2.legend(loc='center left', bbox_to_anchor=(1, 0.5), fontsize=18)  
ax2.grid(True)

画像4

なんか、失業率(新規失業保険申請件数)があがると株価指数が下がる、、の相関が見て取れそうですね、、だまし的な動きもありますが、おおむね、失業率と株価指数は関係あるようです。

失業率の反転の傾向があるということは、、、シートベルトはすぐに締められるように確認しながらの史上最高値更新を楽しみたいものです。

ーー

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





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