Googleシート:株やFXの価格データを表示する(ほぼリアルタイム)

Posted on October 19th, 2016Updated on May 6th, 2019
Googleシート:株やFXの価格データを表示する(ほぼリアルタイム)

※ この記事は最終更新日から5年以上が経過しています。

どんな記事

googleが提供している表計算「googleスプレッドシート」。筆者はかなり活用しています。

googleシートはgoogleのサービスとの相性がよく、googleファイナンスが対応している銘柄であれば、(ほぼ)リアルタイムの値段を表示させることができます。ちょっとだけその解説を――。

googleスプレッドシートとは

まずは「googleスプレッドシートってなんぞや」って方向けに。(「知ってるよっていう方」はスルーしてください)
簡単に特徴を列挙すると次の用な感じです。

  • googleが提供
  • いつでもどこからでもアクセス
  • 共同作業ができる(投資には不要かな)
  • 自動保存
  • EXCELに対応
  • googleのサービスとの相性が良い
  • マクロもあるよ(似たことができる)
  • 詳しくはコチラ

こんな感じでしょうか。

筆者は大好きで、いつも便利に使わせてもらっています。作成はgoogleドライブにアクセスして下図を参考に、「新規」▷「Google スプレッドシート」の順でクリックしてください(googleのアカウントが必要)。

161018-google-drive-add

価格データの取得

では、さっそく実践編です!
基本から応用まで、3通りあげてみようと思います。

GoogleFinance(基本)

161017-spreadsheet-google-finance

さて、googleシートにはgoogleファイナンスにアクセスすることができる関数が用意されています。

アクセスできるのは米国の株価と各国の株価指数、為替です。googleファイナンスでは日本の株価もみることができますが、この関数では残念ながら対応していません。上図以外にも結構できることがあります。興味のある方はコチラからどうぞ。

「日本の株価に対応してないとか全然使えないなあ」という方は次をご覧くださいね!

ImportHtml(基本)

161017-spreadsheet-importhtml

筆者自身は個別株のトレードをしていないのでこの機能は使っていないのですが、個別株も図のように対応可能です可能です。これは、一般に公開されているWebサイトからtableタグやlistタグを判別して取得できる関数です。なかなか便利!EXCELにも同じような機能はあるようです(未確認)。

図はyahooファイナンスからデータを取得しています。(ご利用にあたって、規約等は各自ご確認ください)

google apps script(応用)

この方法をこの記事だけで説明するのはちょっとむずかしいので、、詳細はまたの機会にします。簡単にさわりだけ――。

端的にいうとEXCELのマクロを発展させたようなもの(?)です。

spreadsheetの独自関数を定義したり、googleの他のサービスとの連携やWebサイトへのアクセスなど、かなり幅広いことができます(EXCELのマクロはさわったことがないので、明確に「マクロより優れている」と断言はできませんが――)。

参考に筆者がGAS(google apps script)でやってることをあげてみます。

  • 毎日の価格を自動で取得(このデータをもとに全ての計算をしています)
  • テクニカルや相関係数、破産の確率等の計算
  • 上記の中で必要な情報をひとつのスプレッドシートに
  • 進捗をメールで報告(自分に)
  • バックテスト
  • twitterへの自動投稿
  • このブログの「破産の確率」計算機

ご興味ある方はコメントでご質問ください。要望があるものから優先的にブログの記事にしていこうと思います。

記事作成しました!

こんな使い方とか

じつは、筆者はこの関数(GoogleFinance、ImportHtml)をあまり使っていません。使用しているのは1ヶ所だけで、海外銘柄の取引の資金管理の計算に使用しています。

資金管理の計算(海外銘柄)

取引量=現在の総資金の1%(取引単位×20日ATR×為替レート)\text{取引量} = \frac{ \text{現在の総資金の1%} }{ ( \text{取引単位} \times \text{20日ATR} \times \text{為替レート} ) }
※「為替レート」を取得するのにGoogleFinanceを使用しています

式だけだとちょっとアレなので、簡単な例を。

総資金を100万円としましょう。EURUSDの20日ATR(1日の最大変動幅)は0.005ドル。1000通貨で取引をしています。USDJPYは計算しやすいように現在ちょうど100円だとしましょう。

これを上の式に当てはめて計算すると、

取引量=10,000円(1000通貨×0.005ドル×100円)=20\text{取引量} = \frac{\text{10,000円}}{(\text{1000通貨} \times \text{0.005ドル} \times \text{100円})} = 20

となります。

これはEURUSDの1回のエントリーでの取引量を表しています。ここでは2万通貨までということですね。タートルズはこれを1ユニットとして、すべての資金管理をこの「ユニット」をもとに行っています。ご興味ある方はタートル流 投資の魔術トレーダーズバイブルをお読みください(どちらもamazonへのリンク)。

オススメ記事

この記事に興味を持った方には、次の記事も参考になるかもしれません。

エクセルで「リスクの調整、資金管理、統計と分析」 1日5分!株、FX、投資なら何でも!

開発を承っています

  • Pineスクリプト(インジケーターやストラテジー)
  • Google Apps Script
  • Python
  • MQL4

などの開発を承っています。とくに投資関連が得意です。過去の事例は「実績ページ(不定期更新)」でご確認ください。ご相談は「お問い合わせ」からお願いします。

yuya takahashi

タカハシ / 11年目の兼業投資家

投資やプログラミング、動画コンテンツの撮影・制作・編集などが得意。更新のお知らせは、LINE、メールで行っています。

このブログと筆者についてご質問はこちら

  • 記事をシェア
© Investment Tech Hack 2023.