Pythonで投資のチャート分析をしよう【年初来リターン】
2023-03-04 by 内田裕之
- 「Pythonで投資のチャート分析をしたい」
- 「プログラミングを使って効率よく稼ぎたい」
この記事はそんな方へ向けて書いています。
こんにちは。
Pythonで投資のチャート分析をしているうっちゃんです。
私は最低限の投資で最大の利益を目指して投資分析をしています。
今回は年初来リターンを分析したので紹介します。
投資とプログラミング学習に役立つと嬉しいです。
この記事は内容に広告・プロモーションを含みます。
チャート分析ならPythonがおすすめ
よい投資先を見つけるためにエクセルを編集してグラフ作成するのは大変ですよね。
プログラミングを活用して簡単に分析できればいいなあと思ったのは私だけではないと思います。
書店で見かけた一冊の本をきっかけにこの悩みは解消されました。
これはプログラミング言語Pythonを使ってデータ系列の扱い、グラフ作成、自動売買、ポートフォリオ分析まで多岐にわたる分析を可能とする本です。
今回は年初来リターンを分析するのに活躍しました。
年初来リターン
年初来リターンとは、昨年末の価格に対する現在の価格の変動率のことです。
単位は「%」で表します。
3月4日時点でどの資産クラスが最も値上がりしたのか気になったのでグラフ化しました。
できあがったグラフがこちら。
黄色がゴールド、青色がS&P500、緑色がビットコイン、黒色が米ドル円、橙色が原油です。
3月4日時点ではビットコインが+50%と圧倒的なリターンを叩き出しました。
2022年末から投資していた方はおめでとうございます。
やはり時価総額が小さいので投資資金が流入すると値上がり幅がすごいですね。
チャートは随時更新しますので、今後もお楽しみに。
分析に使用したコード
チャート分析に使用したPythonコードをまとめます。
なお、開発環境はJupyter Notebookを使用しています。
今回はいずれのデータもYahoo!Finaceから取得しました。
#ライブラリーのインポート
from pandas_datareader import data
import pandas as pd
from pylab import mpl, plt
import numpy as np
import datetime
plt.style.use('seaborn')
mpl.rcParams['font.family'] = 'serif'
%matplotlib inline
yf.pdr_override()
#データの期間
start = '2022-12-30'
end = datetime.date.today()
#Yahoo!Financeからデータ取得
def yahoo(symbol,start,end):
df = data.get_data_yahoo(symbol, start, end)
date = df.index
change = df['Close'] / df['Close'][0] * 100
return date, change
#ゴールド
gold_date, gold_change = yahoo('GC=F', start, end)
#S&P500
sp500_date, sp500_change = yahoo('^GSPC', start, end)
#ビットコイン
btc_date, btc_change = yahoo('BTC-USD', start, end)
#ドル円
fx_date, fx_change = yahoo('JPY=X', start, end)
#原油
oil_date, oil_change = yahoo('CL=F', start, end)
#グラフの作成
plt.figure(figsize=(20, 10))
plt.plot(gold_date, gold_change, lw=2,label = 'Gold', color='y')
plt.plot(sp500_date, sp500_change, lw=2,label = 'S&P500', color='b')
plt.plot(btc_date, btc_change, lw=2,label = 'Bitcoin-USD', color='g')
plt.plot(fx_date, fx_change, lw=2,label = 'USD-JPY', color='black')
plt.plot(oil_date, oil_change, lw=2,label = 'Crude Oil', color='orange')
plt.legend(loc=2, fontsize=18)
plt.xlabel('date', fontsize=18)
plt.ylabel('Change(%)', fontsize=18)
plt.tick_params(labelsize=18)
plt.savefig("invest20230304.png")
読み込むシンボルを変えれば色んな種類のチャート分析ができます。
引き続きいろんなチャート分析を紹介したいと思います。
まとめ
今回はPythonで投資のチャート分析をする方法を紹介しました。
コーディングは以下の本を参考にしています。
この記事が面白いと思ったらTwitterやブログで紹介していただけますと嬉しいです。
おすすめ記事
ロバートキヨサキが「2023年に金(ゴールド)は2倍に値上がりする」と予想した理由とは?