Python お金の健康

2022年は金に投資しよう!Pythonで分析して見えたもの

Pythonで投資分析してわかったこと

  • 金は歴史的な割安になっている。
  • まだ大きな価格上昇は来ていない。
  • 今から投資するなら金がおすすめです。

こんにちは、ウチダです。

最近は株式をほとんど売却して、金・銀・仮想通貨を買い集めています。

金と銀への投資は、SBI証券で純金・純銀積立を使っています。

(参考:金へのおすすめの投資方法は?投資コストをシミュレーションします

なぜ金に投資しているかといえば、

歴史的な超割安だからです。

これは高橋ダンさんのゴールド投資を読んで学びました。

今回は金が割安だと理解したチャートの作り方を紹介します。

(参考:2022年は株式と金のどっちに投資するべき?

金は歴史的な割安!?Pythonで投資の分析しよう

金は歴史的な割安!?Pythonで投資の分析しよう

Pythonはデータ分析に強いプログラミング言語です。

コードがシンプルで分かりやすく、誰でも無料で身につけることができます。

今回は金が歴史的な割安レベルにあると理解したチャートを作成します。

そのチャートは、金の価格をアメリカのマネーサプライM2で割った指標です。

マネーサプライとは通貨供給量と呼ばれます。

要するに、アメリカの中央銀行が世の中にどれだけ米ドルを供給しているか

これを表す指標です。

(参考:コロナ禍で歴史的水準に 米マネーサプライの特異性

金はもともとお金と考えられていたので、

米ドルと逆相関があることが知られています。

例えば1972年のニクソンショックまでは固定相場制だったので

金と米ドルの交換レートは固定されていました。

しかし、ニクソンショックにより変動相場制となり

金の価値は大きく変動してきました。

金の価値を考えるには、米ドルの供給量が非常に重要なのです。

今回は金価格をマネーサプライM2で割ったチャートを作成します。

それぞれのデータはFREDから取得します。

Pythonoのコードはこちらです。

#ライブラリをインポート
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

#データの期間
start = '1980-11-03'
end = datetime.date.today()

#金価格のデータ、USD/once単位
gold_df = data.DataReader('GOLDAMGBD228NLBM', 'fred', start, end) 

#M2のデータ、Billions USD単位
m2_df = data.DataReader('WM2NS', 'fred', start, end) 

#指標を作成するデータ
ratio_df = pd.DataFrame()
ratio_df['gold'] = gold_df['GOLDAMGBD228NLBM']
ratio_df['M2'] = m2_df['WM2NS']
#欠損の削除
ratio_df.dropna(inplace=True)

#金価格をM2で割った指標を作成
ratio_df['ratio'] = ratio_df['gold'] / ratio_df['M2'] 
ratio_df.dropna(inplace=True)

#グラフに使用するデータ
ratio_date = ratio_df.index
ratio = ratio_df['ratio']

#グラフの表示と保存
plt.figure(figsize=(20, 10))
plt.plot(ratio_date, ratio, lw=2, label = 'Gold to M2', color='g')
plt.legend(loc=1, fontsize=18)
plt.xlabel('year', fontsize=18)
plt.ylabel('Gold price(USD)/M2(Billions USD)', fontsize=18)
plt.tick_params(labelsize=18)
plt.savefig("goldm2_ratio.png")

作成したグラフがこちらです。

金の価格をマネーサプライで割った指標

指数は上昇すると、金の価格が上昇していることを意味します。

下落は米ドルの供給量が増えていることを意味します。

1980年代は指数が非常に大きい時代でした。

しかし、それ以降下落を続け、近年は非常に低い水準で推移しています。

2000年から2010年頃までは一時的に上昇しました。

これは金の価格が大きく上昇した時期と一致しています。

金価格の推移

しかし、2011年以降は指数が再び下落しています。

金の価格が下落した影響かと思われます。

一方、2020年からM2は急増しています。

マネーサプライM2

(参考:米国のマネーサプライM2のデータ

指標のチャートを全体的に見ると、近年は大きく下落しているように見えます。

高橋ダンさんの本では、指標は平均的に0.1〜0.2の間くらいと言われています。

いまは歴史的にも低い水準にあるので、金の価格上昇が期待できます。

では、今後はどのような動きになるのか?

Pythonでさらに分析します。

金の価格はどうなる?Pythonで投資分析してみた

金の価格はどうなる?Pythonで投資分析してみた

移動平均を使ってトレンドを調べます。

データは1000個で、トレンドは短期(50日移動平均)と長期(200日移動平均)を使って調べます。

Pythonのコードはこちらです。

#単純移動平均の計算
ratio_df['SMA1'] = ratio_df['ratio'].rolling(window=50).mean()
ratio_df['SMA2'] = ratio_df['ratio'].rolling(window=200).mean()

#グラフ用のデータ
ratio_date = ratio_df.index[-1000:]
ratio_close = ratio_df['ratio'][-1000:]
ratio_sma1 = ratio_df['SMA1'][-1000:]
ratio_sma2 = ratio_df['SMA2'][-1000:]

#グラフの表示と保存
plt.figure(figsize=(20, 10))
plt.plot(ratio_date, ratio_close, lw=2, label = 'Gold to M2', color='g')
plt.plot(ratio_date, ratio_sma1, lw=2, label = 'SMA50', color='b')
plt.plot(ratio_date, ratio_sma2, lw=2, label = 'SMA200', color='r')
plt.legend(loc=1, fontsize=18)
plt.xlabel('year', fontsize=18)
plt.ylabel('Gold price(USD)/M2(Billions USD)', fontsize=18)
plt.tick_params(labelsize=18)
plt.savefig("goldm2_SMA_ratio.png")

出来上がったグラフがこちらです。

金価格をマネーサプライM2で割った指標の移動平均線

指数(緑)の上昇は金の価格上昇を意味します。

下落は金価格の下落です。

2012年から2020年までは短期の移動平均が長期を下回っています。

これは金価格の下落を意味するので、

金に投資している人は我慢の時期でした。

2020年からは上昇トレンドに転換するように見えましたが

再び短期ラインが長期を下抜け、デッドクロスを形成しています。

もうしばらくは金の価格上昇は我慢する必要があると考えます。

逆に言えば、金の価格上昇は始まっていないたので

いまから投資するなら、金がおすすめです。

Pythonで分析した結果のまとめ

Pythonで分析した結果のまとめ

今回は金の価格が歴史的にも割安であることをPythonで分析しました。

まだ金の大きな価格上昇は来ていないので、投資するのにおすすめです。

Pythonで投資の分析をしたいなら、こちらの本がおすすめです。

実例付き、チャート付きで、非常にわかりやすいので愛用しています。

ここまで読んでいただきありがとうございました。^^

-Python, お金の健康
-