こんにちはーーー
Pythonを使って米国株の分析を色々やっていこうと思います。
今回は、EPS(1株当たり利益)の予測と実績をcsv出力とグラフ化したので、それについて記事にします。
コード
コードは↓です。
例としてクラウドストライクのEPSを出力します。
import yahoo_fin.stock_info as si import pandas as pd import matplotlib.pyplot as plt from matplotlib import dates from datetime import datetime as dt # 複数記載してもOKです。例えばcodelist = ['CRWD','RIDE'] # 例としてクラウドストライクのEPSを出力します codelist = ['CRWD'] for i in range(len(codelist)): # EPS情報の取得 ticker=codelist[i] ticker_earnings_hist = si.get_earnings_history(ticker) # グラフ作成のためにデータの体裁を整える df =pd.DataFrame.from_dict(ticker_earnings_hist).loc[:,["startdatetime","epsestimate","epsactual"]] df.rename(columns={'epsestimate':'EPS Estimate','epsactual':'EPS Actual'},inplace=True) df['day'] = pd.to_datetime(df["startdatetime"], format='%Y-%m-%d') df['startdatetime'] = df['day'].dt.strftime('%Y-%m-%d') df = df.sort_index(axis='index',ascending=False)[["startdatetime","EPS Estimate", "EPS Actual"]] # データプロット df[(df['startdatetime'] > '2000-01-01')].plot.\ bar(title=ticker , x="startdatetime",color=['blue','red'], figsize=(14,6),fontsize=10) #CSVへの出力 df.to_csv('./test.csv', mode='w', header=False, index=False) #グラフ作成 plt.title(ticker, fontsize=50) plt.xlabel(xlabel="", fontsize=20) plt.ylabel(ylabel="EPS", fontsize=20) plt.legend(fontsize=25) plt.show()
実行結果
実行した結果は↓です。
csv
グラフ化
意図通り出力できました!
備考
プログラムを実行したところを動画にしています。
役立つ情報を心掛けていますのでチャンネル登録してくれたらとても嬉しいです。
ではまた!!
コメント