【株価を自動取得】googleスプレッドシートでポートフォリオを管理する方法

  • B!

今回は、googleスプレッドシートでポートフォリオを管理する方法を紹介します。

googleスプレッドシートでは、関数を入力すると、自動で株価を取得できます。さらにこんな円グラフがつくれちゃいます。



目的

この記事では、googleスプレッドシートの関数をまとめてみました。
たとえば、

・excelやgoogleスプレッドシートは、なんとなく使ったことあるけど、詳しくは知らない。
・米国株と、日本の投資信託をまとめて管理したい。
・米国株の評価額を日本円換算したい。

…という方のお役に立てれば幸いです。


ポートフォリオ作成例(コピペ利用可能)



参考までに、作成例を配布します。
閲覧のみ。編集はできません。
コピペ利用は可能です。各自アレンジしてご利用ください。

こちらをクリックすると、ポートフォリオ作成例(コピペ利用可能)が開きます。

https://docs.google.com/spreadsheets/d/12oNgZi3SSSXvt_UJTgB1aDsQ2SDNhHmnc84qmUdKMDg/edit?usp=sharing

リンク先の作成例シートからコピーする際、右クリックは反応しませんが、ショートカットキー「ctrl」+「c」でコピーできます。

作成例の解説――各セルの背景色について
・赤:手動で入力する部分です。株の売買ごとに、その都度、修正が必要です。
・白:関数を設定しておけば、自動で情報が取得されます。
・青、灰色:各項目の名称など。

※取得金額 (円)は、関数ではなく、株を取得するごとに手動で入力しています。
最新のドル円レートではなく、取得時のドル円レートで計算されるためです。

関数――四則演算など

googleスプレッドシートの関数は、基本的にexcelと同じです。


 関数 備考
 足し算  =●+○ 
 ●と○にそれぞれ、セル名や数値を入力します。

 たとえば、「B2」と「B3」を足し算する場合、「=B2+B3」と入力します。
 また、「B2」の値を100で割り算する場合、「=B2/100」と入力します。
 引き算  =●-○ 
 掛け算  =●*○ 
 割り算  =●/○ 

  




 関数 備考
 ( )を含む四則演算  =(○-●)/☆  ○●☆にそれぞれ、セル名や数値を入力します。
 たとえば「=(B2-B3)/C4」や、
「=(B2-B3)/100」といった具合です。
    合計  =SUM(○:●)  A2からA4までの値を合計する場合、
「=SUM(A2:A4)」と入力します。
    等しい    = 「A1」セルに「C3」セルの値を反映させる場合、
「A1」セルに「=C3」と入力します。

  



関数――「Google Finance」から、為替や株価を自動取得する


   為替 関数
 ドル円レート =GOOGLEFINANCE("currency:USDJPY", "average")
 リンギット円レート =GOOGLEFINANCE("currency:MYRJPY", "average")

現在の為替を取得するための関数について、「USDJPY」は、ほかの通貨に置き換え可能です。
たとえば「USDJPY」を「MYRJPY」に置き換えると、マレーシアリンギット円レートを取得できます。



 銘柄 ティッカー 関数
 デルタ航空 dal =GOOGLEFINANCE("dal","price")
 サウスウエスト航空 luv =GOOGLEFINANCE("luv","price")

現在の株価を取得するための関数について、デルタ航空を指定する「dal」は、ほかの銘柄に置き換え可能です。
「dal」を「luv」に置き換えると、サウスウエスト航空の株価を取得できます。
「price」を「pe」に置き換えると、PER(株価収益率)を取得できます。

ほかにも、「Google Finance」からさまざまなデータを自動取得できるようですね。
興味のある方はこちらをどうぞ。


関数――日本の投資信託webサイトから、株価を自動取得する


 関数
 eMAXIS Slim 米国株式(S&P500) =importhtml("https://emaxis.jp/fund/253266.html","table","1") 
 eMAXIS Slim 新興国株式インデックス =importhtml("https://emaxis.jp/fund/252878.html","table","1") 

「eMAXIS Slim」であれば、公式webサイトから、現在の情報を取得できます。
上記の関数を入力すると、基準日、基準価額、前日比、解約価額、純資産総額がまとめて取得できます。

他のwebサイトからも同様のことはできますが、これはスクレイピング行為に該当します。
スクレイピングを禁止しているwebサイトも多いようです。
「eMAXIS Slim」webサイト(三菱ufj国際投信)が、スクレイピングを禁止しているかどうかは不明です。
このあたりは自己責任でお願いします。


※「円」の一文字を削除する方法

 関数 入力例
 一文字減らす =left(●, LEN(●)-○) =left(C19,len(C19)-1)

●に該当するセル名を入力し、○に削除する文字数を入力します。
入力例では、任意のセルに「C19」と同じ値を反映したうえで、右から一文字を削除しています。
たとえば「C19」で取得した基準価額から、「円」の一文字を削除するときに使用します。



関数――自動取得した情報を結びつける

自動取得した情報を結びつけるための関数です。
人によって、必要な項目が色々あると思います。必要に応じてアレンジしてください。

 米国株
 計算法
 関数(入力例)
 評価額(ドル)
 現在の株価 (ドル)×保有数
 =D4*F4
 評価額 (円)
 評価額 (ドル)×ドル円レート
 =C4*D2
 取得金額 (ドル)
 取得時の平均株価 (ドル)×保有数
 =E4*F4
 評価損益
 パターンA
(100%基準)
 評価額 (ドル)÷取得金額 (ドル)
 =C4/G4
 評価損益
 パターンB
(0%基準)
 (評価額-取得金額)÷取得金額
 =(B4-H4)/H4

パターンA(100%基準)は、ドルでの評価損益です。
「評価額 (円)÷取得金額 (円)」であれば、円での評価損益を表示できますね。

また証券会社の評価損益の画面では、パターンB(0%基準)が多いかもしれませんね。
たとえば100円が60円になると、パターンAでは「60%」と表示されますが、パターンBでは「-40%」と表示されます。どちらも同じことですが、お好みの方を使ってみてください。
それはさておき、「-40%」って、めっちゃ含み損ですね、トホホ…。


・日本の投資信託の場合
 日本の投資信託 計算法 関数(入力例)
 評価額(円) 保有口数×現在の基準価額÷10000 =F9*D9/10000

投資信託の「基準価額」とは、個別株でいう「株価 (1万口当たり)」に相当します。そのため、必ず「10000」で割り算します。
べつに手動入力でも構いませんが、ここまでくると、意地でも自動入力したいっていうね(笑)


・ポートフォリオの内訳に現金を加える場合

 計算法 関数(入力例)
 現金(買付余力) 投資資金-取得金額(円)の合計 =1000000-(SUM(H4:H7)+H9+H12)

入力例では、投資資金100万円で計算しています。



その他、表示形式について、小数点の切り捨てとか、%表示とか、色々微調整すれば完成です。
こんな円グラフも作れちゃいますね。



注意点

・ブログでgoogleスプレッドシートを公開する場合、くれぐれも個人情報の取り扱いには注意してくださいね。

・Yahoo!ファイナンスなど、スクレイピングを禁止しているwebサイトも多いようです。相手方のサーバーに負荷をかけたり、著作権侵害と見なされることもあるようです。下手すりゃハッキング行為と見なされちゃいます。気を付けてくださいね。
株価取得のために行う程度であれば、さほど気にする必要ないと私は個人的に思っていますが…。株価と法律は移ろいゆくもので、なんとも言えませんね…。



参考webサイト
こちらのブログでは、日本株の情報を自動取得する方法についても紹介されています。スゴイですね!


  • B!

コメント

にほんブログ村 株ブログ 株 中長期投資へ

このブログの人気の投稿

セレクト・セクターSPDRファンドーーS&P500 部門別に投資するETF

【EDV】米国債ETFの買い時を考える【2021年3月版】

外国株式インデックス 長期チャートを見る方法

長短金利差(イールドカーブ)と米株価の相関性

【投資日記 2022/12】今年1年を振り返る、現在のポートフォリオ、来年は円安だけは来ないよね?

【相場雑感 2020/05】米株式市場は曇り空。一方その頃、新興国株は…