GASで日本の個別株を取得する方法のサムネイル

※当サイトの商品・サービスのリンク先にPRを含みます。

Google Apps Script 時短ツール

【便利】GASで日本の個別株の株価を取得する方法

お仕事おつにゃッス🐈

文系未経験から社内SEになった、あっきょ(@daily_code_JP)です!

あなたが保有する日本の個別株の損益をいちいち管理するのは面倒くさいですよね?

また、日々変動するのでエクセルで管理するのも難しいですよね。

この記事ではそのお悩みを、GASで解決します。

あっきょ
この記事は以下で悩んでいる人におすすめッス!

  • 自分が持っている株式の損益管理を自動化したい
  • エクセルを使っているけど、もっと便利で使いやすいものに変えたい
  • JavaScriptを学んだけど、何をつくればいいかわからない

誰でも無料で簡単にできますので、お気軽に学んでいきましょう!

株価予想を学べるプログラミングスクール3選

DMM WEBCAMPは未経験者向けプログラミングスクールでNo.1。

  • 経験豊富な現役エンジニアが講師
  • 自己調整学習理論で即戦力
  • データサイエンスコースで株価予測を実践的に経験

実務でも使えるスキルを身に着けたい人におすすめです。

デイトラは業界最安値級のスクール。

  • 受講生14,000人突破
  • 1年間の長期間サポート
  • Pythonコースで株価予想アプリを学習

少しでも受講料を抑えたい人におすすめです。

Aidemyは社会人が選ぶDX人材育成サービスNo.1の実績。

  • 受講料70%オフの教育給付金対象講座
  • 運営企業は東証グロース上場
  • データ分析講座で株価予想を学習

AIや機械学習も専門的に学ぶならおすすめです。

日本株の損益計算する完成イメージ

GASで日本株の損益計算をスプレッドシートで行うアプリのイメージ

スプレッドシートで日本の株式の損益計算を行います。

個別株を行ごとに分け、リアルタイムで「終値」を取得して損益も自動計算する仕組み。

この記事では、日本の自動車メーカーの株式を500株ずつ保有している想定で開発します。

この記事で例に出した銘柄はあくまで例です。運営者が保有もしくは売買を推奨している株式ではありません。

日本の株式データを取得する方法

GASで日本株を取得する方法のイメージ

GASで日本株を取得するには「スクレイピング」という技術を使用します。

スプレッドシートにはアメリカの株式のデータ取得する関数はありますが、日本株には未対応。

なので、Googleファイナンスのサイトにアクセスして情報を収集する必要があります。

スクレイピングとは?

スクレイピングとは、WEB上にある特定のデータを自動的に取り出して保存する技術

トレンド調査や競合調査など、大規模にデータを集めるときに使います。

収集から保存までの流れを自動化すると手間と作業時間を大いに減らせるます。

このように、1クリックで必要な情報を手に入るのがスクレイピングです。

スクレイピングで気を付けること

スクレイピングを行うには運営サイトが許可しているかを確かめる必要があります。

サーバーへの過度な負荷や抽出したデータの公開による著作権侵害の可能性があるため

スクレイピングの許可は公開されているGoogleファイナンスのrobot.txtを確認します。

「Allow: /finance」とあるので個人利用のスクレイピングは問題ないといえます。

Google ファイナンスのrobot.txt

日本株の管理をする準備

Google Apps Script で日本の株価を取得する準備をします。ファイルは1つ必要です。

必要なファイル

  • Google スプレッドシート ・・・ 株式データの保存と株価のリアルタイム更新

Google スプレッドシートの作成

Google スプレッドシートを作成していきます。

シートには下のリストの6項目を登録します。

項目詳細
コード購入した株式の証券コード
企業名購入した日本の株式の企業名
保有数購入した株式数
取得単価購入した株の平均取得単価
終値市場が大引したときの株価
損益「終値 - 取得単価」で算出される損益

スプレッドシートの1行目に各見出しを記入。

GASで日本株の損益計算をスプレッドシートで行うアプリのスプレッドシートの準備

2行目以降に保有している個別株の情報を記入します。

スプレッドシートの準備は以上です。

GASで日本株の損益計算をスプレッドシートで行うアプリのスプレッドシートに個別株を記入

サンプルコードを貼り付ける方法

サンプルコードはGoogle スプレッドシートにコピペ。

上バーの「拡張機能」の中にある「Apps Script」をクリックしてコードを貼り付けます。

GASをスプレッドシートに記入する際の「Apps Script」の表示

Parserライブラリの導入

GASでスクレイピングを行うには「Parserライブラリ」をダウンロードする必要があります。

コードを貼り付けるApps Scriptの左側にある「ライブラリ」をクリック。

ライブラリの選択

スクリプトIDに1Mc8BthYthXx6CoIz90-JiSzSafVnT6U3t0z_W3hLTAX5ek4w0G_EIrNw」と記入して検索ボタンを押します。

Parserライブラリの選択

Parserのバージョン8を導入します。

確認できたら追加ボタンを押すと準備は完了です。

Parserライブラリを導入

日本株の株価を管理するサンプルコード

日本株の現在の価値をリアルタイムで表示する関数を紹介していきます。

解説の項目

  • GETPRICE() | 日本株の株価を自動取得する自作関数
  • サンプルコード
  • 【質問】コード内のdivは何?

GETPRICE() | 日本株の株価を自動取得する自作関数

スクレイピングで日本の個別株の株価を取得する自作関数GETPRICEの説明

スクレイピングで日本株の株価を取得するには、自作関数のGETPRICE関数を使用します。

引数には4桁の証券コードを記入します。

例えばトヨタ自動車の場合、引数に「7203」と書きます。

サンプルコード

右上にあるマークを押すとコードのコピペが一瞬でできます。

function GETPRICE(code){
  const url = "https://www.google.com/finance/quote/" + code + ":TYO"; //URL
  const html = UrlFetchApp.fetch(url).getContentText(); //fetch通信でサイト内の文章を取得
  let stockPrice = Parser.data(html)
    .from('<div class="YMlKec fxKbKc">') //現在の株価が書かれている箇所
    .to("</div>")
    .build();

  return stockPrice.replace("¥",""); //replaceメソッドで「¥」と取り除いて数字のみを返す
}

【質問】コード内のdivは何?

HTMLのイメージ

紹介したコードの中には「div」の文字がありますが、GASには存在しません。

これはHTML(HyperText Markup Language)というWebサイト作成で使う言語でページを構造化する役割があります。

スクレイピングでは、この構造化したHTMLを読み取って株式データを抽出しています。

HTMLがわかれば、サイトに掲載されたPERや時価総額なども取得できるッス!
あっきょ

日本株の株価を取得するテスト

実際に日本の株式のデータを取得してみましょう。

E列に「=GETPRICE(A2)」と記入。

スクレイピングで日本の個別株の株価を取得する自作関数GETPRICEの準備

スクレイピングが完了して株価が現れます。

2022年9月20日現在の結果が表示されました。

スクレイピングで日本の個別株の株価を取得する自作関数GETPRICEの結果

次はF列に現在の損益を計算します。

「=E2*C2-D2*C2」と記入します。

スクレイピングで日本の個別株の株価の損益計算の準備

損益の計算式は以下の通り。

計算式

損益 = 現在の株価 × 取得数 - 取得単価 × 取得数 

現在の損益が反映されました。

スクレイピングで日本の個別株の株価の損益計算のした結果

同じ方法で他の株式にも反映してみましょう。

含み損の場合は数字の前にマイナスがついています。

スクレイピングで日本の個別株の株価の損益計算の一覧

株価を予想するアプリを作れるプログラミングスクール3選

プログラミングで株価を予測するスキルが身に付くスクールを3つ紹介。

というのも、プログラミング独学の挫折率は60%近くと高め

エラーを解決できなかったり相談できる人がいなかったりと理由はさまざまです。

モチベを保てる環境を整えたのがスクールで挫折率を1割未満に抑えられます。

そこで、デイコーで調査した82社から厳選して解説します。

投資がもっと楽&スキルアップできるッスよ!
あっきょ
  • DMM WEBCAMP | 現役エンジニアが学習サポート
  • デイトラ | 業界最安値級
  • Aidemy | 東証グロースに上場

DMM WEBCAMP | 現役エンジニアが学習サポート

DMM WEBCAMPのトップ画面
引用:DMM WEBCAMP

DMM WEBCAMPはIT企業大手のDMM.comが運営するプログラミングスクール。

経験豊富な現役エンジニアがあなたの学習をサポートします。

  • 週2回のオンラインメンタリング
  • 24時間いつでもOKのチャットサポート
  • 無制限で受けられるレビュー

自己調整学習理論にもとづく独自メソッドで即戦力のスキルが身に付きます。

データサイエンスコースでは、Pythonを用いて機械学習を学習。

株価データをモデリングと予測を実践的に経験していきます。

未経験者の割合が97%と学びやすいのがわかるッス!
あっきょ
無料相談で不安解消! 公式サイト

デイトラ | 業界最安値級

デイトラのトップ画面
引用:デイトラ

デイトラは業界最安値級で学べるオンラインスクール。

未経験者でも挫折しないで勉強できるサポートが充実しています。

  • 1年間の長期間サポート
  • 閲覧無制限&アップデートされるカリキュラム
  • 現役プロに質問や作品のフィードバック

Pythonコースでは、Djangoというフレームワークを使ってオリジナルアプリを開発。

株価予想アプリやYoutube人気動画分析アプリなど幅広く作成します

プログラミングの基礎基本も学ぶので初心者でも安心です。

学習内容を詳しく紹介 Pythonコースの詳細
最短10秒で無料会員登録! 公式サイト

Aidemy | 東証グロースに上場

アイデミーのトップ画面
引用 : Aidemy

AidemyはDX時代の新スキルを基礎から学ぶ Python 特化型のプログラミングスクール。

初心者にとって難しい内容でも挫折しないで学べる環境が整っています。

  • 仲間と学べるバーチャル学習室
  • チャットで質問し放題
  • 講師のコードレビュー
  • 1回25分のオンラインカウンセリング
  • オリジナルのポートフォリオ作成支援

転職サポートもあるので、未経験からエンジニアも目指せます。

データ分析講座では、Pythonを利用してデータを分析するスキルを習得。

自然言語処理と時系列分析を用いて株価の予測を行います

最新技術で一歩先を目指すビジネスマンにおすすめです。

給付金の受け取り方は公式サイトをチェック!
あっきょ
学習内容を閲覧可能 データ分析講座の詳細
1分で無料オンライン相談予約! 公式サイト

まとめ | GASで株式の管理を楽に!

以上がGoogle Apps Scriptで保有している日本株の情報を管理する方法でした。

そのままコピペしたり株式管理に使ったりしてみましょう。

今回紹介したサンプルコード以外にも、GASで株式の管理をすることは可能。

【1行だけ】スプレッドシートで米国株の損益を自動更新 | デイコー
【1行だけ】スプレッドシートで米国株の損益を自動更新

続きを見る

スプレッドシートで米国株の損益を日本円に自動換算

続きを見る

【不安解消】GASでLINEに日本株の1日の値動きを通知

続きを見る

【便利】GASで米国株の1日の値動きをLINEに毎朝通知

続きを見る

ヒューマンエラーが起きやすく時間がかかる作業をGASに任せましょう。

不明点やスクール選びで悩んでいるならデイコーのお問い合わせまでご連絡を。

あなたのお力になります。

-Google Apps Script, 時短ツール
-, , , , , , , , , , , , , , , , , , , , , , , , , , , ,