【Google App Script】+【Google App Enginge ( Go )】+ Google Data Portal】 を利用して金融資産を可視化する
はじめに
今回は ランニングコストをかけずに自分の金融資産を可視化したくて 勉強がてらに開発してみました。 資産は色々なところに分散して管理している事もあり一元的に確認できるものが欲しかったので作りました。 (セキュリティの事もあるので、証券会社等へログインする情報は万が一漏洩するとリスクが高いため利用していません。購入した際に保有数は手動で更新。保有数の更新であればさほど手間ではないので)
システムの構成図
- GitHub
- "Google App Script" と "Google App Engine" のソースコードを管理
- GitHub Actions を利用して "Google App Script"と"Google App Engine" にデプロイ
- Google App Script ( GAS )
- Google App Engine ( GAE )
- スプレッドシート
- 取得したデータを保存。データソースとしての利用
- Google Data Portal
- データソースにSpreadshetを指定してデータを可視化
GAEについて
GAEを無料で使うために
無料枠内で利用するためにスケールアウトしないように設定をしておく。
- app.yaml(一部抜粋)
env: standard instance_class: F1 automatic_scaling: min_idle_instances: automatic max_idle_instances: 1 min_pending_latency: 3000ms max_pending_latency: automatic max_instances: 1
貴金属の情報取得について
以下の記事にまとめています。 yhidetoshi.hatenablog.com
投資信託の情報取得について
以下の記事にまとめています。 yhidetoshi.hatenablog.com
仮想通貨の情報取得について
以下の記事にまとめています。 yhidetoshi.hatenablog.com
Gogle App Script ( GAS )
Claspを用いた開発環境の設定
以下の記事にまとめています。 yhidetoshi.hatenablog.com
GASで情報を取得
以下の記事にまとめています。 yhidetoshi.hatenablog.com
GitHub
GitHub Actions
GAEとGASのデプロイについては、GitHub Actionsでデプロイをしています。 それについてまとめた記事は以下です。
GASのデプロイ(Claspの利用) 以下の記事にまとめています。 yhidetoshi.hatenablog.com
GAEのデプロイ 以下の記事にまとめています。 yhidetoshi.hatenablog.com
Google Data Portal
以下のページは一部ですがこんな感じで、円グラフや折れ線グラフ、テキスト、ツリーマップ等を使って可視化しました。 データは1日1回の定期実行で更新されるようになっています。
さいごに
今回はデータの可視化部分については、Google Data Portalを利用しましたがフロントの部分を勉強しつつ、jsで実装できればと思っています。 データの保存に関しても今回はお手軽 & コスト重視だったので 無料で使える スプレッドシートを利用しました。 DBを無料で使うには...GCEの一番安いインスタンスであれば無料で使えるようなのでそこでDBを稼働させるなど方法を考えようと思います。 GAEに関しても オートスケーリングの設定をいじって無料枠で収まるように工夫しています。 勉強しながら実用的に必要なものを作るのはやりがいもあって面白いので引き続き改良できるようにしていきたいと思います。