S&P500は年初から17%下落しているのにFOMCで利上げした3月、5月、6月のたった3日のみ保有していたら+7%というTweetを拝見しました。
Twitterで出てくる知見は本当か自分で調べてみるシリーズで、このTweetが正しいのかどうか自身でGoogle ColabのPythonを利用して、確認してみたいと思います。
目標とすること
今年(年初来)のS&P500のデータを取得し、FOMCの日のデータとそうでない日のデータを比較します。その確認をするなかで、Pythonでのデータの取得や、プログラムのコードなどを確認します。
使用するツール
使用するツールはGoogle Colaboratoryのpythonを使いますので、無料で、簡単に行うことができます。Google Colaboratoryについては以前書いた記事をご参照いただければと思います。
実際のコードは以下の通りです。
今回使ったコードはGoogle Colabのファイルとして以下にシェアしてあります。
!pip install yfinance --upgrade --no-cache-dir
import yfinance as yf
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import datetime
start_D="2021-12-31"
end_D=datetime.date.today()
codelist1 = ["^GSPC"]
data2 = yf.download(codelist1, start=start_D, end=end_D)
display(data2.dropna().head(1).append(data2.dropna().tail(1)))
data2["Adj Close"].plot()
plt.show()
df_tmp=data2.copy()
df_tmp["pct"]=100*df_tmp["Adj Close"].pct_change()
#FOMC
#"2022-01-26","2022-03-16","2022-05-04","2022-06-15","2022-07-27"
df_tmp.loc[(df_tmp.index == "2022-03-16") |
(df_tmp.index == "2022-05-04") |
(df_tmp.index == "2022-06-15") ,'FOMC_flg'] ="FOMC"
display(df_tmp[df_tmp["FOMC_flg"]=="FOMC"])
FOMCは今年は今2022/07/28日現在5回開催されています。
今回のTweetではそのうちの3月、5月、6月の3回を例に挙げていますので、その日時が一致する日をFOMC_flg列を作って、フィルターとして利用します。
df=df_tmp[["pct","FOMC_flg"]].copy()
display(df[df["FOMC_flg"]=="FOMC"])
display(df["pct"][:"2022-07-26"].sum())
display(df["pct"][:"2022-07-26"][df["FOMC_flg"]=="FOMC"].sum())
display(df["pct"][:"2022-07-26"][df["FOMC_flg"]!="FOMC"].sum())
前日比のパーセントのデータにしたのち、FOMCのフィルターでその日がどのくらいの前日比上昇していたかを確認します。
また、前日2022/07/26までのデータで、年初来の合計騰落や、FOMCの3日間だけの合計騰落、逆にその3日を除いた日の騰落合計を計算させています。
年初来はー17%となっていますし、FOMCの行われた3日間の合計は7%で、その3日間を除いた合計は-24%となっています。
年初来を2021/12/31からとするか2022/01/01からとするかなど、若干の誤差は出そうですが、大筋では間違ってないように思われます。
考察
FOMCというイベントでここ3回(昨日2022/07/27も含めると4回)上がることが分かりましたが、このような検証結果もあるようです。
”パウエルが発言すると下がるイメージ”とのことで、なかなか手厳しいですが、以前はデータ時にはそうだったようですね、、今回の検証も未来永劫続くわけではないと思いますので、そのあたりはご注意ください。
また、このような分析結果もあるようです。
ディスクレーマー
投資に関する免責事項情報の提供・作業代行を目的としており、投資勧誘を目的とするものではありません。
—
投資に関する記事をご紹介します。
コメント