このエントリーをはてなブックマークに追加
自分の資産評価額をリアルタイムでチェックするのに便利な方法がありますので紹介したいと思います。

24)


この画面は、このブログ上部メニューのポートフォリオで公開しているもので、Googleドキュメントのスプレッドシート(だれでも無料で使えます)を使って自動更新させています。この場合、現在値の部分を外部から引っ張ってきており、その他の部分はMicrosoft Excel等でよくやる単なる表計算です。


  • Googleドキュメントを資産管理に使うメリット

ファイルはGoogle Drive上に保存されますので、インターネットに接続可能な状態であれば、どこからでも確認できます。 証券会社のホームページでは、当然ですがその証券会社の口座の中身しか確認できません。複数の口座に分散させて資産を保有している場合でも、この方法であれば一括で資産状況を確認できます。たくさんのサイトにログインする必要はなくなります。


  • リアルタイムで為替や株価情報を取り込むには

GoogleドキュメントのスプレッドシートにはGoogleFinance(記号,属性)という便利な関数があります。

セルに
=GoogleFinance("GOOG","price")
と入力すればグーグルの現在の株価が、
21)


=GoogleFinance("currency:USDJPY","average")
とすることで米国ドルと日本円のその日の平均為替レートもわかります。
23)

ネット検索で調べたところaverageの部分はhighやlowも選べて、日付指定をしたり、期間指定して時系列データを取得したり応用は効くようですが、私がやるとなぜか上手くいきません。新情報が得られ次第更新したいと思います。また、GoogleFinanceのアップデートも参考になります。


ただ、このGoogleFinance関数、残念ながら日本株には対応していないようです。


  • 日本株の情報を取り込む方法

私は、Google finance関数とは別の方法で日本株をリアルタイムで取得しています。使う関数は、Importhtml(URL,クエリ,指数)です。こちらはかなり自由度が高い関数だと思います。
ここでは、例としてヤフーファイナンスのリアルタイム株価を取り込む方法を紹介します。(ヤフーファイナンスでなくても同様のサービスであれば基本的には同じやり方が使えるはずです。)

これが、ヤフーファイナンスで表示されるリアルタイム株価ですね。

55)

これはtable要素になっており、スプレッドシートに取り込むと以下のようになります。


54)


この例では、関数の引数の入力方法は次の通りです。
①URLに、"http://info.finance.yahoo.co.jp/history/?code=xxxx.y"を入力します。
xxxxは銘柄コードを入力します。yには上場市場を表す記号を入れましょう。東証(一部、二部、JASDAQ、マザーズ)はtです。名証はn、福証はf、札証はsです。

②クエリに、"table"を入力します。
table要素から情報を引き出します。という意味です。

③指数に1を入力します。
そのページの一番最初のtable要素。という意味です。


また、ヤフーファイナンスには2番目のtableとして株価時系列の表がありますので、"table"のあとに,2を入力すれば、下の画像のように、時系列データを取り込めます。

30)


あとは、自分で別に表をつくって、全保有株の現在値を読み込むようにすれば、自動更新される表が完成します。

このように、Importhtmlを使えば、為替、株価だけでなく金価格や投信の基準価額でも同じように、現在価格を取得できます。グーグルドライブにアクセスするだけで、あらゆる資産の評価額の合計が一目でわかるようなシートを一度作ってしまえば、それを眺めてニヤニヤすることができるでしょう。


  • Googleドキュメント使用上の注意点

Googleドキュメントの共有の設定には十分注意しましょう。人に知られたくないものまで誤ってweb上に一般公開してしまっては大変です。資産額と一緒に名前とか住所とかは書かないように。(そんな人いない?)
さらに、非公開で自分だけで楽しんでいるつもりでも、Googleさんには筒抜けですので、それがイヤであればそもそも使うべきではありません。
参考 : Google Driveの利用規約がヤバすぎる

また、データを持ってくる元のページが更新されて、データの場所が変わる等すると対応できないので、なるべく更新の少なそうなところから取ってきましょう。(そんなのわからない?)


  • このブログで使っているシートについて

私の使い方を紹介します。
私は銘柄ごとに株価取得用シートを作っており、わかりやすいようにそのシート名は銘柄コードと同じにしています。それらをまとめシートから読みにいっています。

また、まとめシートには一工夫加えています。
私は出来高の少ない株を多く保有しているため、出来高が0の日は現在値が"---"と表示されてしまいます。下の画像のC2セルのように…

25)

そうなると、この"---"を掛けたり足したりすることはできないので、まとめシートで資産合計を計算しようとするとエラーがでてしまいます。

それを避けるために、株価時系列の表が役に立ちます。最後に出来高があった日の終値をかわりに取ってくるようにすれば解決しました。もし出来高0の場合は、上の画像E3の数字を読み込めばいいわけです。

33)

ここでは、IF(条件式,真の場合,偽の場合)を使っています。
シート3261のC1の値が"---"なら、シート3261のE3を、そうでないならC1を参照しなさい。
という意味です。


  • Google Apps Scriptを使って応用も

株価の急な値動きをアラートしてくれる機能をつけたり応用の幅も広いと思います。(@kapok__さんがTwitterでおっしゃってたアイデア)
思いつく方法としては、マクロを使って自分にメールを送ることでしょうか。例えば、保有株が前日比で5%以上変動したら、「大変です!」というメールを送るとか。Google Appsのマクロを使えばできそうです。

参考: Spreadsheet のスクリプト機能が便利すぎる!ガントチャートもどきの自動生成やToDoリスト管理、そしてモテプログラミングまで


  • 補足とテンプレート公開 

Googleドキュメント スプレッドシートは非常に自由度が高く、うまく使いこなせば資産運用にかなり便利なツールであると言えるでしょう。(保有株が頻繁に変わる短期投資家の場合は、ここで紹介した方法で管理するのは向かないと思います。)
なお、Excel 2013でも、新たにWEBSERVICE関数なるものが追加され、ここで紹介したことと似たようなことができるようになったと思われます。

スプレッドシートはMicrosoft Excelと同様の感覚で操作できますので、馴染みやすい方も多いのではないでしょうか。それでも、一から作るのはちょっと敷居が高い…と思われたかたは、ブログで使用しているものを公開しましたのでこちらをご自由にお使いください。この方法がみなさんのお役に立てたら幸いです。
株式投資資産管理テンプレート