株価を自動で更新するGoogle Finance関数が便利|Googleスプレッドシート

関数Utility
この記事は約8分で読めます。

米国の株価推移や株価指数のデータを入手し自分で分析したいときに役立つ方法

株価の分析やマーケットの株価指数の動向を自分で分析したいと思ったとき、元データをどうやって入手しようかと考えたことはありませんか?ここでは、米国の情報に限られますがGoogleスプレッドシートのGoogle Finance関数を使えば課題を解決できそうです。

但し、読み込みには20分のdelayが生じるためにデイ・トレードには向きません。また、利用においてはすべて自己責任でお願いします。詳細は公式ヘルプを参照してください:ドキュメントエディタヘルプ|GOOGLEFINANCE

スポンサーリンク

ゴールのイメージ

「GAFA」、言わずとしれた「GOOGLE」「APPLE」「AMAZON」「FACEBOOK」の巨大IT企業ですが、その株価推移を可視化することを目的とします。

GoogleスプレッドシートのFinance関数を利用する

GoogleスプレッドシートのGoogle Finance関数をご存知でしょうか?

GoogleスプレッドシートにAPIの一種で、簡単な構文をセルに入力することで株価を自動取得することができます。

以下の表示する内容は、Googleの公式ヘルプ ドキュメントエディタヘルプ|GOOGLEFINANCE からの抜粋になります。

構文
GOOGLEFINANCE(銘柄, [属性], [開始日], [終了日|日数], [間隔])

使用例
GOOGLEFINANCE("NASDAQ:GOOG", "price", DATE(2014,1,1), DATE(2014,12,31), "DAILY")
GOOGLEFINANCE("NASDAQ:GOOG","price",TODAY()-30,TODAY())
GOOGLEFINANCE(A2,A3)

構文の銘柄に入力する銘柄コードは、使用例にあるように取引所コードと銘柄コードの両方を入力する必要があります。それぞれのコードは、Google検索のファイナンス項目から取得可能です。

構文の要素の詳細を -google ドキュメントエディタより- 抜粋させていただき以下に転記いたしました。注意事項も定められていますので、よくお読みください。

構文の説明-銘柄-
銘柄 – 検証する証券の銘柄コードです。取引所コードと銘柄コードの両方を使用して正確な結果を取得し、矛盾が起きないようにする必要があります。たとえば、”GOOG” ではなく”NASDAQ:GOOG” のようにします。

取引所コードを指定しない場合は、GOOGLEFINANCE で最適と判断されたものが自動的に選択されます。

注: ロイター銘柄コードのサポートは終了しました。たとえば、123.TO や XYZ.AX の銘柄はご利用いただけません。代わりに、TSE:123 や ASX:XYZ をご利用ください。

構文の説明-属性-
属性 – [省略可 – デフォルトは “price”] – Google Finance から銘柄について取得する属性です。日付を指定する場合には必須です。

リアルタイム データの属性は、次のいずれかです。

“price” – リアルタイムの見積価格。最大 20 分まで遅延する場合があります。

“priceopen” – 当日の始値。

“high” – 当日の高値。

“low” – 当日の安値。

“volume” – 当日の取引量。

“marketcap” – 株式の時価総額。

“tradetime” – 最終取引の時刻。

“datadelay” – リアルタイム データの遅延度。

“volumeavg” – 1 日の平均取引量。

“pe” – 株価収益率。

“eps” – 1 株当たりの収益。

“high52” – 52 週高値。

“low52” – 52 週安値。

“change” – 前取引日の終値からの株価の変動。

“beta” – ベータ値。

“changepct” – 前取引日の終値からの株価の変動率。

“closeyest” – 前日の終値。

“shares” – 発行済み株式数。

“currency” – 証券の販売通過。通貨には取引可能な期間の設定がないため、この引数に対しては open、low、high、volume が返されません。

過去のデータの attribute は、次のいずれかです。

“open” – 指定した日付の始値。

“close” – 指定した日付の終値。

“high” – 指定した日付の高値。

“low” – 指定した日付の安値。

“volume” – 指定した日付の取引量。

“all” – 上記のすべて。

投資信託データの attribute は、次のいずれかです。

“closeyest” – 前日の終値。

“date” – 純資産価値が報告された日付。

“returnytd” – 年初からの収益。

“netassets” – 純資産。

“change” – 直近に報告された純資産価値と前回報告された純資産価値の変動。

“changepct” – 純資産価値の変動率。

“yieldpct” – 流通利回り(過去 12 か月の所得分布(株式配当や債権利息の支払いなど)と純資産価値の増分の和を前月の純資産価値の数値で割った値)。

“returnday” – 1 日の総収益。

“return1” – 1 週間の総収益。

“return4” – 4 週間の総収益。

“return13” – 13 週間の総収益。

“return52” – 52 週間(年間)の総収益。

“return156” – 156 週間(3 年間)の総収益。

“return260” – 260 週間(5 年間)の総収益。

“incomedividend” – 直近の現金分配額。

“incomedividenddate” – 直近の現金分配の日付。

“capitalgain” – 直近のキャピタルゲイン分配額。

“morningstarrating” – モーニングスターの「スター」評価。

“expenseratio” – ファンドの経費率。

構文の説明-開始日-
開始日 – [省略可] – 過去のデータを取得する期間の開始日です。

開始日を指定し、終了日|日数を指定しない場合、1 日分のデータのみが返されます。

構文の説明-終了日|日数-
終了日|日数 – [省略可] – 過去のデータを取得する期間の終了日、またはデータを返す期間の開始日からの日数です。
構文の説明-間隔-
間隔 – [省略可] – データの取得頻度を “DAILY”(毎日)か “WEEKLY”(毎週)で指定します。

間隔 には 1 または 7 も指定できます。その他の数値は指定できません。

スポンサーリンク

Google ドキュメントヘルプからの注意事項抜粋

使用制限: このデータは、金融業界の専門家による使用や、金融機関以外の専門家(政府機関を含む)による使用を目的としたものではありません。専門家による使用には、サードパーティのデータ プロバイダにより追加のライセンス料が適用される場合があります。

  • すべてのパラメータは二重引用符で囲むか、テキストを含むセルへの参照でなければなりません。 
    間隔 を数値として指定する場合と 終了日|日数として指定する場合を除きます。
  • リアルタイムの結果は、1 つのセル内の値として返されます。過去のデータは、1 日分の場合でも列見出しを含む展開された配列として返されます。
  • 属性によっては結果が返されないコードもあります。
  • 日付パラメータを指定した場合、過去のデータを取得するリクエストとみなされるため、過去の属性のみを指定できます。
  • GOOGLEFINANCE は英語でのみ使用でき、大半の国際取引はサポートしていません。
  • Sheets API や Google Script を使用して過去のデータをダウンロードしたり、過去のデータにアクセスしたりすることはできません。ダウンロードやアクセスを試みると、スプレッドシートの対応するセルに値ではなく #N/A エラーが表示されます。
  • 株価情報はすべての市場から提供されているわけではなく、また、最大 20 分の遅延の可能性があります。情報は「現状有姿」で提供されるものであり、取引目的や助言ではなく、情報提供のみを目的として提供されています。
  • GOOGLEFINANCE に渡される日付は UTC 正午を起点とします。この時刻より前に取引が終了した場合、日付が 1 日前に移動することがあります。
  • 銘柄 – 検証する証券の銘柄コードです。取引所コードと銘柄コードの両方を使用して正確な結果を取得し、矛盾が起きないようにする必要があります。たとえば、”GOOG” ではなく”NASDAQ:GOOG” のようにします。
    • 取引所コードを指定しない場合は、GOOGLEFINANCE で最適と判断されたものが自動的に選択されます。
    • 注: ロイター銘柄コードのサポートは終了しました。たとえば、123.TO や XYZ.AX の銘柄はご利用いただけません。代わりに、TSE:123 や ASX:XYZ をご利用ください。

※投資は自己責任でお願いします。一切の責任を負いかねます。