米国株、ドル円レートを反映してチャート化!
米国株、ETFの株価を取得し、その時のレートで円に換算してチャート出力するPythonのツールを作りました。
チャートを見るのはドル建てが適切だと思いますが、資産運用としてはドル円レートを意識して、円換算で評価するのも良いかもしれません。
良かったら使ってみてください。
1.Googleコラボにアクセス。
Googleコラボにアクセス、リンクはこちら。
上記の様な画面が開くので「ノートブック新規作成」をクリック。
次に「+コード」をクリックし、入力欄を追加し2つ用意する。
この破線部分に、次のプログラムのコードを入力する。
2.ライブラリのインストール
入力欄に下記をコピペして左端の「▶︎」をクリックして実行。
pip install yfinance
3.実行するプログラム
同様に、入力欄に下記をコピペして左端の「▶︎」をクリックして実行。
import yfinance as yf
import pandas as pd
import datetime
import matplotlib.pyplot as plt
%matplotlib inline
# 1:変換したい通貨レート、2:対象の株価
codelist=["USDJPY=X","^GSPC"]
# 1:対象の株価の表示名、2:レート変換後の表示名
displist=["S&P500 USD ","S&P500 JPY"]
start = datetime.date(2021,1,1)
end = datetime.date.today()
data_stock = yf.download(codelist, start=start, end=end)["Adj Close"]
# codelist1番目と2番目を掛け算しdisplist2番目の値として格納
data_stock[displist[1]]=data_stock[codelist[0]]*data_stock[codelist[1]]
fig, ax1 = plt.subplots(figsize=(8, 4.5),facecolor="white")
# ax1とax2を関連させる
ax2 = ax1.twinx()
# 1つ目のデータをグラフ化
ax1.plot(data_stock[codelist[1]].dropna(),
color="red", label=displist[0],linewidth=2,alpha=0.5)
# 2つ目のデータをグラフ化
ax2.plot(data_stock[displist[1]].dropna(),
color="blue", label=displist[1],linewidth=2,alpha=0.5)
# 凡例
handler1, label1 = ax1.get_legend_handles_labels()
handler2, label2 = ax2.get_legend_handles_labels()
# 凡例をまとめて出力
ax1.legend(handler1 + handler2, label1 + label2, loc=2, borderaxespad=0.5)
# 軸を45度傾けて表示
ax1.tick_params(axis='x', labelrotation=45)
plt.show()
# ここまで
プログラム中の下記を変更すると、取得する情報を変えることができます。
下記を変更すると他の株価もみれます。
# 1:変換したい通貨レート、2:対象の株価
codelist=["USDJPY=X","^GSPC"]
# 1:対象の株価の表示名、2:レート変換後の表示名
displist=["S&P500 USD","S&P500 JPY"]
下記を変更すると期間を変更できます。
start = datetime.date(2021,1,1)
4.実行結果
下記のような結果が出力されます。
これを見ると、S&P500(USD)の株価は高値を更新していませんが、最近の急激な円安により、S&P500(JPY)で見ると、最高値を更新していますね。
チャートでテクニカルや需給を見るのはドル建てが適切だと思いますが、資産運用としてはドル円のレートも意識しながら、円換算で見るのも良いかもしれませんね。
何かの参考になれば幸いです。
では!
おつかれさん「缶コーヒー1杯ぐらい、ご馳走してあげよう」という太っ腹な方は投げ銭を!
課金しなくても、参考になったら「ハートボタン、フォロー、リツイート」をお願いします。読まれる可能性があがるので、次の記事を書くやる気が出ます。
おまけに、下記のように株価ではなく、上昇率を表示するように変更したものをつけておきます。
ここから先は
1,487字
¥ 100
この記事が気に入ったらチップで応援してみませんか?