🛈️当サイトはアフィリエイト広告を利用して収益を得ています。**

投資AIチャットをゼロから構築:GAS × FMP × Gemini で作る相場分析システム

投資・相場分析AIチャットを支える技術まとめ

本記事では、当サイトに設置している「投資・相場分析AIチャット」が、
どのような技術で動いているのかを、できるだけ専門用語を抑えつつ整理して紹介します。
実際に動いている仕組みを分解すると、 「フロントエンド(画面)」「バックエンド(API)」「外部データ」「AIモデル」 の4つに分けて考えることができます。

AI株価予測ツール - 銘柄診断【無料】(AI Stock Predictor - Free Analysis)


1. Google Apps Script(GAS)によるバックエンドAPI

投資AIチャットの「裏側の処理」を担当しているのが、Google Apps Script(GAS)です。
JavaScript に似た文法で書けるスクリプトを、Google のサーバー上で動かすことができ、 Webアプリ(API)として公開できるのが大きな特徴です。

今回は GAS 上に doGet(e) / doPost(e) を定義し、 「URLにアクセスすると JSON を返す API サーバー」 として動作させています。

・GASでやっていること
  - Webアプリ(exec URL)の公開
  - 外部API(FMP / CoinGecko)へのアクセス
  - 取得したデータを整形して JSON で返す
  

2. 外部データAPI(FMP / CoinGecko)による市場データ取得

AIが分析するためには、リアルタイムの市場データが必要です。
そこで利用しているのが、以下の外部APIです。

  • Financial Modeling Prep(FMP):株価、企業プロフィール、財務指標(PER / EPS / ROE など)
  • CoinGecko:仮想通貨の価格、時価総額、24時間変動率など

GAS からこれらの API にアクセスし、銘柄コードやコインIDを指定してデータを取得します。
取得したデータは JSON 形式で返ってくるため、GAS 側で必要な項目だけを抜き出し、 投資AIが扱いやすい形に整えています。

・FMPで取得している主な情報
  - 株価(price)
  - 変動率(changesPercentage)
  - 取引量(volume)
  - セクター / 業種 / 国
  - PER / EPS / ROE などの財務指標

・CoinGeckoで取得している主な情報
  - 現在価格(USD / JPY)
  - 時価総額
  - 24時間の価格変動率
  

3. JSON形式によるデータの受け渡し

GAS が返すデータは、JSON(JavaScript Object Notation)という形式を使っています。
JSON は Web API で標準的に使われるデータ形式で、 人間が読んでも分かりやすく、JavaScript からも扱いやすいのが特徴です。

今回の投資AIでは、GAS が ContentService.createTextOutput(JSON.stringify(obj)) を使って JSON を返し、
フロント側(Blogger の JavaScript)が response.json() でそれを受け取って画面に表示しています。

・JSONの役割
  - 「バックエンド(GAS)」と「フロントエンド(Blogger)」の共通言語
  - データ構造をそのままやり取りできる
  - AIの応答やエラー内容も JSON で統一
  

4. Blogger + HTML/CSS/JavaScript によるチャットUI

ユーザーが実際に触れる部分は、Blogger 上に埋め込んだ HTML / CSS / JavaScriptで構成されています。
いわゆる「フロントエンド」の部分です。

主な構成は以下の通りです。

  • HTML:チャット画面の骨組み(メッセージ欄、入力欄、ボタンなど)
  • CSS:白基調のミニマルなデザイン、レスポンシブ対応
  • JavaScript:メッセージの追加、スクロール制御、ボタン制御、GAS への通信

特に JavaScript では、fetch() を使って GAS の Web アプリ(FINAL_ROUTER_URL)にアクセスし、
返ってきた JSON の answer フィールドをチャット画面に表示するようにしています。

・フロント側でやっていること
  - 入力欄のテキストを取得
  - 「送信」ボタン or Enterキーで送信
  - 「分析中です…」という一時メッセージを表示
  - GASからの応答を受け取り、AIの吹き出しとして表示
  - 画面のスクロールを自動で一番下に移動
  

5. Gemini(AIモデル)による文章理解と分析生成

投資AIチャットの「頭脳」にあたるのが、Gemini 系の大規模言語モデルです。
これは、ユーザーの自然文の質問を理解し、必要に応じて銘柄や市場を特定し、
FMP / CoinGecko から取得したデータをもとに、人間が読みやすい分析文を生成する役割を担っています。

実際の流れとしては、以下のようなイメージです。

1. ユーザーが「テスラの今後の見通しは?」と入力
2. フロントエンドがテキストを GAS(ルーター)に送信
3. ルーター側で Gemini にプロンプトを投げる
4. Gemini が「TSLA(テスラ)」と認識し、必要な指標を整理
5. FMP / CoinGecko からデータを取得
6. 取得データを踏まえて、自然な日本語の分析文を生成
7. その文章を JSON としてフロントに返す
  

これにより、単なる「数値の羅列」ではなく、
「今の相場状況を踏まえたコメント」としてユーザーに提示できるようになっています。


6. 全体構成のイメージ

最後に、全体の流れを図式的にまとめると、以下のようになります。

[ユーザー]
   ↓(質問入力)
[Blogger のチャットUI(HTML/CSS/JS)]
   ↓ fetch()
[Google Apps Script(ルーター)]
   ↓
[Gemini が質問を解析]
   ↓
[必要な銘柄データを FMP / CoinGecko から取得]
   ↓
[Gemini が分析文を生成]
   ↓ JSON で返却
[Blogger が AI の回答として表示]
  

このように、フロントエンド(Blogger)・バックエンド(GAS)・外部API(FMP/CoinGecko)・AIモデル(Gemini)が連携することで、
ブラウザ上で動作する投資・相場分析AIチャットが実現しています。


おわりに

本システムは、あくまで技術検証・学習・情報提供を目的として構築したものであり、
金融商品取引法上の「投資助言」には該当しません。
実際の投資判断は、必ずご自身の責任で行ってください。

Google Apps Script
Next Post Previous Post
No Comment
Add Comment
comment url