見出し画像

米国株、ドル円レートを反映してチャート化!

米国株、ETFの株価を取得し、その時のレートで円に換算してチャート出力するPythonのツールを作りました。

チャートを見るのはドル建てが適切だと思いますが、資産運用としてはドル円レートを意識して、円換算で評価するのも良いかもしれません。

良かったら使ってみてください。

1.Googleコラボにアクセス。

Googleコラボにアクセス、リンクはこちら

スクリーンショット 2021-10-19 15.01.37

上記の様な画面が開くので「ノートブック新規作成」をクリック。

スクリーンショット 2021-10-19 15.02.14

次に「+コード」をクリックし、入力欄を追加し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.実行結果

下記のような結果が出力されます。

スクリーンショット 2021-10-19 10.41.30

これを見ると、S&P500(USD)の株価は高値を更新していませんが、最近の急激な円安により、S&P500(JPY)で見ると、最高値を更新していますね。

チャートでテクニカルや需給を見るのはドル建てが適切だと思いますが、資産運用としてはドル円のレートも意識しながら、円換算で見るのも良いかもしれませんね。

何かの参考になれば幸いです。

では!

おつかれさん「缶コーヒー1杯ぐらい、ご馳走してあげよう」という太っ腹な方は投げ銭を!
課金しなくても、参考になったら「ハートボタンフォローリツイート」をお願いします。読まれる可能性があがるので、次の記事を書くやる気が出ます。

おまけに、下記のように株価ではなく、上昇率を表示するように変更したものをつけておきます。

スクリーンショット 2021-11-20 7.29.10

ここから先は

1,487字

¥ 100

この記事が気に入ったらサポートをしてみませんか?