はじめに
IT業界7年目にして初投稿です。何の変哲もないSEをやっています。
流行りで投資を初めて2年になりますが、相場が良いおかげで何とかなっている感が否めず
頭もよろしくないので、なんとなく気絶投資をやっている状態です。
そこで一応IT系だし生成AI君に助けてもらえば億も夢ではないのではという動機で作ってみました。
前準備
日本株の銘柄情報のAPIとして無料で使用できて、複数の情報を取れそうなものがyfinanceというヤフーファイナンスのAPIしか見つからなかったのですが(いいのがあれば教えてください)、chatGPTではインターネットアクセスが制限されているためコードをそのまま実行ができませんでした。そのため自前でAPIを立ててそこにリクエストを投げレスポンスをchatGPTで処理してもらうようにしました。
クラウド環境については無料で使えるものが限られているため、とりあえずGCPの「Cloud run」というサーバーレスのサービスにデプロイしてリクエストがある時だけにすれば無料枠で何とかなってくれるのではと思い採用しました。
また、APIを立てたついでに、本日年初来安値を付けた銘柄について処理を実施させたいと思いスクレイピングで情報を取ってこれるAPIを作成しておきました。
コードについては余裕があれば記載します。
GPTの作成
有料プランに入っているのでその前提で書きますが
メイン画面のタブから左上の「GPTを探す」をクリックすると、GPTの一覧画面に遷移するので
次に右上の「作成する」から自作のGPTを作成することができます。
ここに指示やAPIのアクセス情報等を記載すると独自のGPTになっていくようです。
作成したものの画像が下記になります。課金されると困るのでAPIについては隠しています。
- 指示
処理したい内容について記載してください。できるだけ具体的かつ詳細に記載することである程度の方向性を持たせることができます。
右側にプレビューが出ている(今は切り取っていますが)ので、そこで都度確認しつつ文言をブラッシュアップしてください。
プロンプトエンジニアリングなるものがあり手法もあるようですが、よく知らないので詳しいことは分かりません。
- 新しいアクションを作成する
ここにAPIの情報を記載します。yamlのような形式でスキーマなるもので記載します。
調べて書くのが面倒だったのでchatGPTにこのレスポンスを貼り付けてスキーマを作ってくれとお願いすれば作ってくれます。プライバシーポリシーのURLは公開するわけでなければなんでもよさそうです。
sample
openapi: 3.0.0
info:
title: Stock Data API
description: An API to fetch stock data for My API.
version: 1.0.0
servers:
- url: https://test
paths:
/getStockData:
get:
operationId: getStockData
summary: Get Stock Data
description: Fetches stock data.
responses:
"200":
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
銘柄コード:
type: string
example: "1234"
銘柄名:
type: string
example: Example Corp
市場:
type: string
example: 東証
業種:
type: string
example: 情報・通信業
現在値:
type: string
example: "1234"
前日比:
type: string
example: "+12"
前日比(%):
type: string
example: 1.00%
出来高:
type: string
使ってみた感じ
まとめ
基本情報しか取得していないので、まだ単純な感じにはなります。
今のchatGPTはwebを検索してデータを取得してくれますし、わざわざAPIを立てる必要もないかもしれませんが、チャート情報や財務情報、シグナルを入力に組み込むことで総合的な見解を合わせて提供してくれそうですね。